文档介绍:第7章软件体系结构设计****题与参考答案)
[选择题]
1. ( )系统体系结构的最佳表示形式是一个可执行的软件原型。(B)
A. 真
B. 假
2. ( )软件体系结构描述是不同项目相关人员之间进行沟通的使能器。(A)
A. 真
B. 假
3. ( )良好的分层体系结构有利于系统的扩展与维护。(A)
A. 真
B. 假
4. ( )消除两个包之间出现的循环依赖在技术上是不可行的。(B)
A. 真
B. 假
5. ( )设计模式是从大量成功实践中总结出来且被广泛公认的实践和知识。(A)
A. 真
B. 假
6. 程序编译器的体系结构适合使用( )。(A)
A. 仓库体系结构
B. 模型-视图-控制器结构
C. 客户机/服务器结构
D. 以上选项都不是
7. 网站系统是一个典型的( )。(C)
A. 仓库体系结构
B. 胖客户机/服务器结构
C. 瘦客户机/服务器结构
D. 以上选项都不是
8. 在分层体系结构中,( )实现与实体对象相关的业务逻辑。(D)
A. 表示层
B. 持久层
C. 实体层
D. 控制层
9. ( )可以帮助人们简单方便地复用已经成功的设计或体系结构。(B)
A. 商业组件
B. 设计模式
C. 遗留系统
D. 需求规格说明
10. ( )用于封装具体的平台,从而使应用程序可以在不同的平台上运行。(A)
A. 抽象工厂模式
B. 外观模式
C. 观察者模式
D. 以上选项都不是
[练****题]
1. 良好的软件体系结构设计有什么好处?
答案要点:
软件体系结构设计过程的核心在于建立系统的一个基本框架,即识别出系统的主要组件以及这
些组件之间的通信。
良好的体系结构设计具有以下主要好处:
y 项目相关人员之间的沟通:软件体系结构是系统的一种高层表示,它可以成为不同项目相
关人员之间沟通的使能器;
y 系统分析:在系统分析过程中确定系统的初步体系结构,将对系统是否满足关键性需求(如
性能、可靠性和可维护性等)产生很大的影响;
y 大规模复用:体系结构可以在具有相似需求的系统之间互用,从而支持大规模的复用。
2. 消除包之间的循环依赖性有哪两种主要方法?
参考答案:
(1)
PackageA
PackageA
将 PackageA 中的循环依赖
元素提取到 PackageC 中
PackageB PackageB PackageC
(2)
PackageA PackageA
将 PackageC 中的循环依赖
元素提取到 PackageD 中
PackageB PackageB
PackageC PackageC PackageD
3. 给下面的系统设计一个适当的体系结构:
(1) 火车站自动售票系统
(2) 三维几何造型系统
(3) 网上银行系统
参考答案:
(1) 火车站自动售票系统
这是一个典型的胖客户机模型,其中自动售票机作为客户机负责处理应用逻辑并
实现与系统的交互,服务器是一个大型主机,运行火车票的数据库。
(2) 三维几何