文件名称:
2009年下半年系统架构设计师考试下午真题与答案
开发工具:
文件大小: 625kb
下载次数: 0
上传时间: 2019-03-23
详细说明:系统架构设计师考试下午真 题。
阅读以下软件架构设计的问题,在答题纸上回答问题 1 和问题 2。 某软件开发公司欲为某电子商务企业开发一个在线交易平台, 支持客户完成网上购物活动中 的在线交易。在系统开发之初,企业对该平台提出了如下要求........本题主要结合实际案例,考査实现各种质量属性的策略。
(1)在线交易平台必须在1s内完成客户的交易请求。该要求主要对应性能,可以采用的架
构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据
复制等)和资源调度(先进先出队列、优先级队列等)。
(2)该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安
全性,可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵
检测等)、从攻击中恢复(部分可用性策略)和信息审计等。
〔3)当发生故障时,该平台的平均故障恢复时间必须小于0s。该要求主要对应可用性,可
以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等
4)由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能
或进行平台升级必须在6小时内完成。该要求主要对应可修改性,可以采用的架构设计策略
有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。
试题2
阅读以下关于结构化软件系统建模的叙述,在答题纸上回答问题
至问题3。
某公司拟开发一个商业情报处理系统,使公司能够及时针对市场环境的变化及时调整发展战
略,以获取最大的商业利益。项目组经过讨论,决定采用结构化分析和设计方法
在系统分
析阶段,为了更好地对情报数据处理流程及其与外部角色的关联进行建模,
项目组成员分别
给出了自己的设计思路
〔1)小张提出先构建系统流程图( System Flowcharts),以便更精确地反映系统的业务处理
过程及数据的输入和输出
2)小李提岀先构建系统数据流图( Data Flow Diagrams),来展现系统的处理过程和定义
业务功能边界,并给出了情报分类子系统的0层和1层数据流图,后者如图2-1所示
样本数据
分类
数据汇集系统
训练
规则文件
分类规则
配置信息
规则库
分类规则
用户
分类结果
分类
处理
图2-1情报分类子系统的1层数据流图
项目组经讨论确定以数据流图作为本阶段的建模手段。
工程师老王详细说明了流程图和数据
流图之间的区别与联系,并指出了图2-1的数据流图中存在的错误。
问题1】(11分)
流程图和数据流图是软件系统分析设计中常用的两种手段,请用300字以內文字简要说明流
程图与数据流图的含乂及其区别,并说明项目组为何确定采用数据流图作为建模手段。
【问题2】(8分)
请分析指岀图2-1所示的数据流图中存在的错误及其原因,并针对图2-1的1层数据流图绘
制出情报分类子系统的0层数据流图。
【问题3】(6分)
高质量的数据流图是可读的、内部—致的并能够准确表示系统需求。请用300字以內文字说
明在设计高质量的数据流图时应考虑的三个原则
2.试题答案:
问题1】
数据流图作为一种图形化工具,用来说明业务处理过程、系统边界内所包含的功能和系统中
的数据流。
流程图以图形化的方式展示应用程序从数据输入开始到获得输出为止的逻辑过程,
描述处理
过程的控制流。
两者的区别主要包括
(1)数据流图中的处理过程可并行;流程图在某个时间点只能处于一个处理过程。
2)数据流图展现系统的数据流;流程图展现系统的控制流。
3)数据流图展现全局的处理过程,过程之间遵循不同的计时标准;流程图中处理过程遵
循一致的计时标准
〔4)数据流图适用于系统分析中的逻辑建模阶段;流程图适用于系统设计中的物理模阶段。
如图所示的数据流图中存在的错误有以下4种
(1)“分类训练”加工:只有输入没有输出,产生数据黑洞
(2)“分类处理”加工:有输出没有输入,无中生有
3)“规则文件”数据流:外部实体没有经过加工处理,直接到数据存储;
(4)“配置信息″数据流:外部实体之间没有加工处理,存在直接数据流
数据汇集系统
样本数据
规则文件
情报分类子系统
配置信息
分类结束
用户
问题3】
高质量数据流图设计时应考虑的三个原则
(1)复杂性最小化原则。DFD分层结构就是把信息划分为小的且相对独立的一大批子集例
子,这样就可以单独考查每一个DFD如果要了解某个过程更加详的信息,可以跳转到该过
程的下一层;如果要知道一个DFD如何与其他DFD相关联,可以跳转到上一层的DFD进行
考查
(2)接口最小化原则。接囗最小化是复杂性最小化的种具体规则。在设计模式时,应使
得模型中各个元素之间的接口数或连接数最小化。
3)数据流-致性原则。一个过程和它的过程分解在数据流内容中是否有差别?是否存在
有数据流岀但没有相应的数据流入的加工?是否存在有数据流入但没有相应的数据流岀的
加工
试题分析
本题考查考生对于结构化系统建模方法的掌握情况。
【问题1】
数据流图和流程图是结构化建模中使用的重要工具,能够帮助开发人员更好地分析和设计系
统,增强系统开发人员之间交流的准确性和有效性。
数据流图作为一种图形化工具,用来说
明业务处理过程、系统边界內所包含的功能和系统中的数据流,适用于系统分析中的逻辑建
模阶段。流程图以图形化的方式展示应用程序从数据输入开始到得输出为止的逻辑过程
描述处理过程的控制流,往往涉及到具体的技术和环境,适用于系统设计中的物理建模阶段。
本题项目组为了更好地对情报数据处理流程及其与外部角色的关联进行建模
符合数据流图
的应用场景要求,因此,首先构建数据流图以反映数据流向和系统边界。
数据流图和流程图是为了达到不同的目的而产生的
其所采用的标准符号集合也不相同。在
实际应用中,区别主要包括是否可以描述处理过程的并发性;描述内容是数据流还是控制流
等几个方面。
问题2】
数据流图中常见的错误分为两种类型:
类是语法错误,包括外部实体之间、数据存储之间
或外部实体与数据存储之间不经过加工而存在直接数据流;另一类是逻辑错误,包括数据黑
洞(只有输入没有产生输出)、灰洞(输入不足以产生输出)和无输入。
分类训练”加工属于数据黑洞错误;
分类处理”加工属于无输入错误;
规则文件”和“配置信息″数据流属于语法错误
对于复杂系统,一般采用分层数据流图逐步细化系统的内部处理逻辑
0层数据流图是1层
数据流图更高级别的抽象。“分类训练”和“分类处理”加工属于内部加工,“分类规则”
数据流属于內部数据流,抽象为“情报分类子系统″加工。其中,“样本数据″、“规则文
件”和“配置信息”为输入数据流;“分类结果”为输岀数据流。
【问题3】
高质量的数据流图首先要求满足数据流一致性要求,即数据流的输λ输岀应该匹配,输入数
据的信息量足以产生输岀数据,所有的输岀数据都能够从输入数据中找到数据的来源。对于
复杂性系统,可以采用DFD分层结构将系统的复杂性逐步分解降低,以提高数据流图的有
效性。高质量的数据流图应该简化复杂的接口,最小化接口或连接的数目。
所属试卷
试题3
试题
阅读以下关于嵌入式软件体系架构的叙述,在答题纸上回答问题
1至问题3
某公司承担了一项宇航嵌入式设备的硏制任务。本项目除对硬件设备环境有很高的要求外,
还要求支持以下功能
1)设备由多个处理机模块组成,需要时外场可快速更换(即
RM结构);
2)应用软件应与硬件无关,便于软硬件的升级
3)由于宇航飲入式设备中要支持不同功能,系统应支持完成不同功能任务间的数据隔离
4)宇航设备可靠性要求高,系统要有故障处理能力。
公司在接到此项任务后,进行了反复论证,提出三层栈(TLS)软件总体架构,如图3-1所
示,并将软件设计工作交给了李工,要求其在三周内完成软件总体设计工作,给出总体设计
方案。
应用层(AL)
操作系统层(OSL)
TLS结构
模块支持层(MSL)
硬件平台
图3-1宇航嵌入式设备软件架构
【问题1】(8分)
用150字以内的文字,说明公司制定的TLS软件架构的层次特点,并针对上述功能需求
(1)~(4),说明架构中各层内涵
【问题2】(10分)
在πLS软件架构的基础上,关于选择哪种类型的嵌入式操作系统冋题,李工与总工程师
发生了严重分歧。李工认为,宇航系统是实时系统,操作系统的处理时间越快越好,隔离意
味着以时间作代价,没有必要,建议选择类似于∨ XWorks5.5的操作系统;总工程师认为
应用软件间隔离是宇航系统安全性要求,宇航系统在选择操作系统时必须考虑这一点,建议
选择类似于Liux的操作系统
请说明两种操作系统的主要差异,完成表3-1中的空白部分,并针对本任务要求,用200
字以内的文字说明你选择操作系统的类型和理由
表3-1两种操作系统的主
要差异
比较类型
VxWorks5. 5
Linux
工作方式操作系统与应用程序处于同一
存储空间
多任务支持支持多任务(线程)操作
实时性
实时系统
安全性
④4
⑤
标准API
支持
支持
问题3】(7分)
故障处理是宇航系统软件设计中极为重要的组成部分。故障处理主要包括故障监视、故
障定位、故障隔离和系统容错(重组)。用150字以内的文字说明嵌入式系统中故障主要
分哪几类?并分别给出两种常用的故障滤波算法和容错算法。
3.试题答案
问题1】
TLS结构框架的主要特点
1)应用软件仅与操作系统服务相关,不直接操作硬件。
2)操作系统通过模块支持原软件访问硬件,可与具体硬件无关。
〔3)模块支持层将硬件抽象成标准操作。
〔4)通过三层栈的划分可实现硬件的快速更改与升级,应用软件的升级不会引起硬件的变
更
LS结构框架的各层内涵是
(1)应用层主要完成宇航设备的具体工作,由多个功能任务组成,各功能任务间的隔离由
操作系统层实现。
2)操作系统层实现应用软件与硬件的隔离,为应用软件提供更加丰富的计算机资源服务。
操作系统为应用软件提供标准的AP丨接口(如POSⅨ),确保了应用软件的可升级性。
〔3)模块支持层为操作系统管理硬件资源提供统-管理方法,用一种抽象的标准接口实现
软件与硬件的无关性,达到硬件的升级要求,便于硬件的外场快速更换。
【问题2】
两种操作系统的差异见下表。
比较类型 VxWorks5.5
Linux
工作方式
①操作系统与应用程序处于不同存储空
多任务支持
②支持多进程、多线程操作
实时性
③硬实时系统
安全性
④任务间无隔离保护⑤支持进程间隔离保护
标准API
选择类似于Linuⅹ的嵌入式操作系统。理由如下
1)LinuⅨⅹ操作系统是一种安全性较强的操作系统。內核工作在系统态,应用软件工作在
用户态,可以有效防止应用软件对操作系统的破坏。
2) Linux操作系统调度的最小单位是线程,线程归属于进程,进程具有自己独立的资源
进程通过存储器管理部件(MMU)实现多功能应用间隔离。
3)嵌入式 Linux操作系统攴持硬件抽象,可有效实现仉LS结构,并将硬件抽象与操作系
统分离,可方便实现硬件的外场快速更换。
【问题3】
(1)嵌入式系统中故障主要分为
①硬件故障:如CPU、存储器和定时器等;
②应用软件故障∶如数值越界、异常和超时等
③操作系统故障∶如越权访问、死锁和资源枯竭等。
(2)滤波算法:
①门限算法
②递减算法
③递增算法
④周期滤波算法
(3)容错算法
①N+1备份
②冷备
③温备
④热备
试题分析:
本题考查嵌入式系统设计的概念,主要包括嵌入式软件体系结枃的框架设计
提高宇航设备
可靠性的设计方法和掌握根据用户需求开展软件需求分析的手段。
此类题目要求考生认真阅读题目对用户需求的描述,在分析、论证和概念设计的基础上,根
据实例要求完善问题的解析。本题重点考查考生归纳问题、分析问题和解决冋题的能力。
本题首先给出用户针对宇航设备的4项功能要求
1)设备由多个处理机模块组成,需要时外场可快速更换(即
LRM结构)
2)应用软件应与硬件无关,便于软硬件的升级;
3)由于宇航嵌入式设备中要支持不同功能,系统应支持完成不同功能任务间的数据隔离;
4)宇航设备可靠性要求高,系统要有故障处理能力
从4项要求分析看,第一项要求是考査考生的基础硬件知识,宇航设备应该由多个硬件模
块组成,各个模块承担着不同功能,外场可快速更换是指在实验现场〔如机场、发射基地)
能够用备份模块替换掉故障硬件模块,从而节省维修时间。此项要求是本题设计软件体系总
体架构的基础,也是采用三层栈(TLS)的首要点。第二项要求是考查考生从软/硬件升级
方面理解三层栈(πLS)架构的优势,因为硬件要方便升级的基础是不会引起软件的更改(或
极少更改),要想达到应用软件与硬件的无关性,必须采用操作系统实现硬件隔离。第三项
要求是考査考生根据用户软件的技术要求,如何考虑操作系统的分析方法。要支持任务间的
数据隔离,具有进程管理的操作系统最为合适,这里考査了考生必须深入了解什么是操作系
统的进程概念。第四项要求是考査考生掌握设计高可靠性设备通常采用的技术。
如果考生理解了上述4个用户要求,就能容易地回答本题的三个问题。
问题1】
本题给岀的πLS结构框架主要通过硬件抽象,形成模块支持层软件,将操作系统对硬件资
源的管理抽象成对—种逻辑上相关的抽象资源的管理,这样就将操作系统软件与硬件进行了
分离。而应用软件访问硬件资源靠操作系统提供的服务进行,
这样,应用软件仅仅和具体功
能实现有关,而不需关心硬件配置。因此,TLS结构框架的主要特点可概述为以下4点
1)应用软件仅与操作系统服务相关,不直接操作硬件。
2)操作系统通过模块支持原软件访问硬件,可与具体硬件无关。
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.