附录A 习题答案9
(2)逻辑视图:描述系统设计特征。
(3)进程视图:表示系统内部的控制机制。 (4)配置视图:描述系统的物理配置特征。
(5)实现视图:表示系统的实现特征,常用构件图表示。
三、综合题
1. 类、属性、操作、继承、多态、封装及抽象类的概念:(举例略) 1) 类,又称对象类(Object Class),是一组具有相同属性和相同操作的对象的集合。 2) 类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。 3) 类具有操作,它是对象的行为的抽象,操作实现的过程称为方法。
4) 继承是类间的基本关系,它是基于层次关系的父类和子类之间共享数据和操作的一种机制。
5) 多态是指同一个操作作用于不同的对象上可以有不同的解释,并产生不同的执行结果。 6) 封装是一种信息隐蔽技术,用户只能看见对象封装界面上的信息,对象的内部实现对用户是隐蔽的。
7) 抽象类是没有实例的类,它把一些类组织起来,提供一些公共的行为,但并不需要使用这个类的实例,而仅使用其子类的实例。 2. 面向对象开发方法及每个方法的特点: (1)Booch方法
Booch方法描述了面向对象的软件开发方法的基础问题,指出面向对象开发是一种根本不同于传统的功能分解的设计方法。Booch方法的开发模型包括静态模型和动态模型,Booch方法偏向于系统的静态描述,对动态描述支持较少。 (2)Coda/Yourdon方法
在Coda/Yourdon方法中,对于一个复杂问题建立问题域的分析模型,构造和评审OOA概念模型的顺序由5个层次组成,OOD模型是在OOA模型5个层次基础上,建立4个组元的设计模型。该方法简单、易学。 (3)OMT方法
OMT方法使用了建模的思想,讨论如何建立一个实际的应用模型。从3个不同而又相关的角度建立了三类模型,三类模型描述的角度不同,却又相互联系。 (4)OOSE方法
OOSE的开发活动主要分为三类:分析、构造和测试。OOSE将面向对象的思想应用于软件工程中,建立五个模型。OOSE方法的最大特点是面向用例,建立了Use Case 模型。OOSE方法比较适合支持商业工程和需求分析。
附录A 习题答案10
第5章习题答案
一、判断题
题号 1 答案 N 2 Y 3 Y 4 Y 5 Y 6 7 8 9 10 11 12 13 14 Y Y Y Y Y Y Y Y Y 15 Y 二、填空题
题号 1 2 3 4 5 6 7 A 对象层 主题图 流程图 发现潜在对象 初步确定 分析 选择 B 关系层 交互图 IPO图 筛选对象 筛选 选择 精炼 C 伪码 为对象分类 完善 构造 D 三、简答题
1. 面向对象分析:
面向对象分析就是运用面向对象的方法进行需求分析,其主要任务是分析和理解问题域,找出相应的描述问题域和系统责任所需的类及对象,分析它们的内部构成好外部关系,正确地抽象为规范的对象,定义其内部结构和外部消息传递关系,建立问题域精确模型的过程。
2. 面向对象分析的模型的构成:
(1) 基本模型:基本模型是一个类图。构成类图的元素所表达的模型信息,分为
三个层次:对象层、特征层和关系层。 (2) 补充模型:补充模型有主题图和交互图。 (3) 详细说明
3. 面向对象分析的过程:
(1) 获取客户对系统的需求 (2) 标识类和对象 (3) 定义类的结构和层次 (4) 建造对象-关系模型 (5) 建立对象-行为模型
4. 确定服务:
(1) 确定访问对象属性的操作 (2) 来自事件驱动的操作
附录A 习题答案11
(3) 处理对应的操作 (4) 消除冗余操作
5. 动态模型:
对于一个系统来说,功能模型指明了系统应该“做什么”,而动态模型则明确规定了“什么时候做”。即在何种状态下、接受了什么事件的触发,来确定对象的可能事件的顺序。
6. 准备脚本:
在建立动态模型的过程中,脚本是指在某一执行期间内系统中的对象(或其他外部设备)与目标系统之间发生一个或多个典型的互换信息时产生的事件,所互换的信息值就是该事件的参数,对于各事件,应确定触发事件的动作对象和该事件的参数。 7. 准备事件跟踪图:
事件跟踪图能形象、清晰地表示事件序列以及事件与对象的关系。在事件跟踪图中,一条竖线代表一个类和对象,每个事件用一条水平的箭头线表示,箭头方向从事件的发送对象指向接受对象。事件按照先后顺序排列,时间从上向下递增。 8. 确定基本系统模型图:
基本系统模型是用来确定系统的边界和输入/输出数据流的,表明一个计算如何从输入值得到输出值,表明值之间的依赖关系及相关的功能,它不考虑计算的次序。 9. 面向对象分析的目的:
面向对象分析的目的是对客观世界的系统进行建模,是定义所有与待解决问题相关的类。完成对所求解问题的分析,确定系统“作什么”,并建立系统的模型。 10. 面向对象分析的基本任务:
面向对象分析的基本任务是运用面向对象的方法,软件工程师和用户必须充分沟通,以了解基本的用户需求,对问题域和系统责任进行分析和理解。 11. 为建立分析模型,要运用的基本原则:
(1) 建立信息域模型; (2) 描述功能; (3) 表达行为; (4) 划分功能、数据、行为模型,揭示更多的细节; (5) 用早期的模型描述问题的实质,用后期的模型给出实现的细节。
12. 建立对象-行为模型的步骤:
(1) 评估所有的用例,完全理解系统中交互的序列。 (2) 标识驱动交互序列的事件,理解这些事件如何和特定的对象相关联。 (3) 为每个用例创建事件轨迹(event trace)。 (4) 为系统建造状态机图。 (5) 复审对象—行为模型,以验证准确性和一致性。
四、综合题
1.完成实例《图书管理系统》面向对象的分析过程,包括:静态模型、动态模型和功能模型。 系统需求:
在图书馆管理系统中,要为每个借阅者建立一个账户,并给借阅者发放借阅卡(借阅卡号,借阅者名),账户存储借阅者的个人信息、借阅信息以及预定信息。
持有借阅卡的借阅者可以借阅书刊、返还书刊、查询书刊信息、预定书刊并取消预定,但这些操作都是通过图书管理员进行的,也即借阅者不直接于系统交互,而是图书
附录A 习题答案12
管理员充当借阅者的代理与系统交互。
在借阅书刊时,需要输入所借阅的书刊名、书刊的ISBN/ISSN号,然后输入借阅者的图书卡号和借阅者名,完成后提交所填表格,系统验证借阅者所借阅的书刊是否存在,若存在,则借阅者可借出书刊,建立并在系统中存储借阅记录。
借阅者还可预定该书刊,一旦借阅者预定的书刊可以获得,就将书刊直接寄给预定人。另外,不考虑书刊的最长借阅期限,假设借阅者可以无限期地保存所借阅的书刊。 答:分析模型