一. 单选题(共12题,60分)
1. (单选题, 5分)Object technology is . . . ?
- A. Based on the principles of abstraction and modularity.
- B. A dynamic new language by Grady Booch.
- C. A new theory striving to gain acceptance.
- D. A set of principles guiding software construction.
正确答案: D: A set of principles guiding software construction.;
0分
2. (单选题, 5分)Which project would be least likely to require a model?
- A.
- B.
- C.
- D.
正确答案: A:;
0分
答案解析:
建模是在分析解决复杂问题时可以采用的一种有效手段,问题越复杂越需要建模,问题越简单越不需要建模。
3. (单选题, 5分)The best models are connected to . . .?
- A. Java-script code
- B. Issues that tie it to an object-oriented developer
- C. Reality
- D. C ++
正确答案: C:Reality;
5分
4. (单选题, 5分)Which process characteristic is not essential to working with the UML?
- A. Resilient //有弹性
- B. Iterative and incremental //迭代和增量
- C. Architecture-centric
- D. Use-case driven //用例驱动
正确答案: A:Resilient;
5. (单选题, 5分)
下列描述中,( )不是建模的基本原则。
- A. 对一个重要的系统用一个模型就可以充分描述
- B. 模型要与现实相联系
- C. 要仔细的选择模型,因为模型关系着系统解决方案的构造
- D. 每一种模型可以在不同的精度级别上表示所要开发的系统
正确答案: A
5分
6. (单选题, 5分)Why do we model?
- A. Helps to visualize a system
- B. Documents our decisions
- C. Gives us a template for constructing a system
- D. All of the above
正确答案: D:All of the above;
5分
7. (单选题, 5分)下面关于UML文档的叙述中正确的是()。
- A. UML文档指导开发人员如何进行面向对象设计
- B. UML文档描述了面向对象分析与设计的结果
- C. UML文档指导开发人员如何进行面向对象分析
- D. UML文档给出了软件的开发过程和设计流程
正确答案: B:UML文档描述了面向对象分析与设计的结果;
5分
8. (单选题, 5分)4+1 Views Model已成为架构设计的标准,用例视图、逻辑视图、实现视图、进程视图以及部署视图面向的涉众(Stakeholder)分别是()。
- A. 系统分析设计人员、终端用户、系统工程师、编码人员和系统集成人员
- B. 系统工程师、系统分析设计人员、系统集成人员、终端用户和编码人员
- C. 终端用户、系统分析设计人员、编码人员、系统集成人员和系统工程师
- D. 编码人员、系统工程师、系统分析设计人员、系统集成人员和终端用户
正确答案: C:终端用户、系统分析设计人员、编码人员、系统集成人员和系统工程师;
0分
9. (单选题, 5分)A model . . .?
- A. Is an excuse for building an elaborate plan.
- B. Is not necessary when team members understand their job.
- C. Is a simplification of reality.
- D. Has to be structural AND behavioral.
正确答案: C:Is a simplification of reality.;
5分
10. (单选题, 5分)下列关于模型的理解中,不正确的是()
- A. 模型是对目标系统的语义上封闭的抽象,也就是从一个特定的视点对系统的完整描述。
- B. 一种图只能出现在一个模型中,但不能被多个模型所包含。
- C. 每个模型都可以包括一个或多个不同种类的图。
- D. 一个在模型中仅出现一次的模型元素 (如类) ,可以在不同的图中多次出现。
正确答案: B
11. (单选题, 5分)UML的扩展机制使得UML具有广泛的应用范围,其中()可以用来为UML增加新的词汇,即增加新的元素。
- A. 约束
- B. 构造型
- C. 标记值
正确答案: B:构造型;
0分
12. (单选题, 5分)Views are “slices” of architecture. Which view focuses on structural issues?
- A. Process
- B. Logical
- C. Implementation
- D. Use case
正确答案: B:Logical;
二. 判断题(共4题,20分)
13. (判断题, 5分)
公共机制指人们在使用UML时共同遵守的四种机制,使得使用UML变得比较简单。这四种公共机制是Specification(规格说明)、Adornment(修饰)、Common Divisions(公共划分)和Extensibility Mechanisms(扩展机制)。
- A. 对
- B. 错
14. (判断题, 5分)UML适合在用例驱动的、以体系结构为中心的、迭代和渐增的过程模型中应用。
- A. 对
- B. 错
15. (判断题, 5分)UML是一种灵活的、可定制可扩展的语言,所以其不仅可以应用在面向对象软件开发中,而且可以用在任何类型的分析设计项目中,甚至是软件领域之外的其他项目也可以使用UML进行可视化建模。
- A. 对
- B. 错
16. (判断题, 5分)模型和图在概念上是一致的,每一种UML图都只能用于一个模型中,同样一个模型也只能够用一种图来表示。
- A. 对
- B. 错
- 正确答案: 错
三. 简答题(共2题,20分)
17. (简答题, 10分)请说明传统结构化技术和面向对象技术在解决问题时的差异是什么?用面向对象方法的好处是什么?
传统结构化技术和面向对象技术在解决问题时的差异:
1. 概念上的差异:传统结构化技术主要关注数据流程和顺序控制,而面向对象技术则更加强调对象、类及其相互作用。
2. 技术实现上的差异:传统结构化技术使用"自顶向下"的设计方法,采用"模块化"的方式将程序分割成可管理的单元;而面向对象技术则倾向于"自底向上"的设计方法,以实例及其相互作用为基础,建立事物的抽象逻辑模型。
3. 开发效率和可维护性方面的差异:面向对象技术提供了更高层次的封装,隐藏了内部的复杂性,提高了可重用性,并且有利于克服软件生命周期中的变化。这消除了在很多早期开发项目中纠缠程序员:“如何降低程序耦合度,并使得对单个程序模块进行修改时只影响引用它的其他过程的最短的那一条连接”。
用面向对象方法的好处:
1. 可重复使用的代码:面向对象编程具有较高的可重用性,因为它使得开发人员能够将代码封装在紧凑的、独立的模块中,这些模块可以在不同的项目或应用程序中被重复使用。
2. 构建大规模系统:面向对象技术能够分解较大程序为更小但部分相互连接的模块,这些模块可能由不同的开发人员工作。因此,整个系统的开发过程更容易管理,并且存在更少的错误和故障。
3. 可维护性和可扩展性:面向对象编程具有良好的可维护性和可扩展性,因为它允许开发人员通过修改现有的类或对象来实现更改操作,而无需重写整个程序。这可以节省时间并提高效率。
4. 更好的设计和可读性:面向对象编程使得程序设计更清晰、更模块化,并且更易于阅读和理解。这降低了出现错误的风险,有益于开发和维护软件。
18. (简答题, 10分)解释模型(model)和图(diagram)的概念,并说明它们的区别和联系。
正确答案:
A model is a semantically closed abstraction of a subject system. The RUP methodology defines a model as a complete description of a system from a particular perspective.
Diagrams graphically depict views of different parts of the system. In another word, diagrams depict system’s building blocks in a graphical way.
(1) A model can contain one or more diagrams.
(2) Different diagrams graphically depict views of different parts of your model.
(3) A model element that appears only once in your model can appear on one or more diagrams, to show it in different contexts.