简答题 第一章
1.面向对象设计的基本特征有哪些?这些特征对软件设计有何帮助? 封装性 继承性 多态性
在由封装,继承,多态所组成的环境中,程序员可以编写出比面向过程模型更健壮,更具扩展性的程序.经过仔细设计的类层次结构是重用代码的基础.封装能让程序员不必修改公有接口的代码即可实现程序的移植.多态能使程序员开发出简洁,易懂,易修改的代码. 2.类与对象的区别是什么?
类是抽象的,不具体的。就像有些东西可以归为一类,比如说狗,猫,猪。它们都是动物,我们就可以归为一类。
而猫,狗就是动物类中的一个对象。
3.什么是软件生命周期?生命周期包括几个阶段?
软件的生命周期,亦称软件的生存周期。它是按开发软件的规模和复杂程度,从时间上 把软件开发的整个过程(从计划开发开始到软件报废为止的整个历史阶段)进行分解,形成 相对独立的几个阶段, 每个阶段又分解成几个具体的任务, 然后按规定顺序依次完成各阶段
的任务并规定一套标准的文档作为各个阶段的开发成果,最后生产出高质量的软件。 分为: 一般分为定义, 开发,维护三大阶段, 定义阶段有可行性论证和开发计划,需求分析,
开发阶段有概要设计,详细设计和编码,维护阶段有测试,运行维护 4.面向对象与uml的关系? umL是统一建模图,用于便于描述类之间的关系等,是用来帮助你更好进行面向对象的设计。 5.面向对象设计与传统软件相比,有何优点?
更有针对性 更容易让客户满意 减少修改提高效率
第二章
模型元素有哪些?
UML中模型元素太多了,比如用例图中的元素有用例,角色,扩展关系,包含关系,类图中的元素有类,接口,关联等等,每一种框图都有各自独有的元素 2.简述uml通用机制组成以及它的作用? 一、修饰。
在使用UML语言建模时,可以将图形修饰附加到UML图中的模型元素上。比如,当一个元素代表某种类型的时候,它的名称可以用粗体字形类显示;当同一元素表示该类型的实例时,该元素的名称用一条下划线修饰。 二、注释。
UML语言中用一条虚线将注释连接到它为之解释的或细化的元素上。 三、通用划分。
UML语言对其模型元素规定了两种类型的通用划分:型-实例(值)和接口-实现。 1、型-实例(Type-Instance):描述一个通用描述符与单个元素项之间的对应关系。实例元素使用与通用描述符相同的表示图形,但是名字的表示与通用描述符不同:实例元素名字带有下划线,而且后面还要加上冒号和通用描述符的名字。
2、接口-实现:接口声明了一个规定了服务的约定,接口的实现负责执行接口的全部语义定义并实现该项服务。
3.在uml中包含哪些视图?视图对应哪些图? 场景视图 use case 逻辑视图 类图
开发视图 类图,组件图 进程视图 无完全对应 部署视图 部署图 4.简述视图与图的内在关系?
视图是几何体在投影面上留下的正投影,它是主视图、俯视图、左视图的总称,满足主视图与俯视图的长对正,主视图与左视图的高平齐,俯视图与左视图的宽相等。 5.简述uml中扩展机制的作用?
UML 提供了几种扩展机制,允许建模者在不用改变基本建模语言的情况下做一些通用的扩展。这些扩展机制已经被设计好,以便于在不需理解全部语义的情况下就可以存储和使用。由于这个原因,扩展可以作为字符串存储和使用。对不支持扩展机制的工具来说,扩展只是一个字符串,它可以作为模型的一部分被导入、存储,还可以被传递到其他工具。
第四章 1、 在一个“客户服务系统”中,需要管理的用户包括客户管理人员、维护人员、部门领导,
他们都具有用户ID、姓名、性别、年龄、联系电话、部门、职位、密码、登录名。其中,维护人员具有三个操作,即接受派工任务、填写维护报告、查询派工任务;部门领导具有五个操作,即安排派工任务、修改派工任务、删除派工任务,查询派工任务,处理投诉;客户人员具有四个操作,增加客户、删除客户、修改客户和查找客户。根据这些信息,创建系统的类图。
2、 在上题中,客户人员,维护人员,部门领导都具有一些共同的属性,所以可以进行抽象
出一个单独的抽象系统用户类,客户人员,维护人员,部门领导分别是系统用户类下的继承,根据这些信息,创建包括类关系的类图
3、 根据图4-51,创建相应带参数的对象图,要求用Actor构造型来表示
第五章
1、 在客户服务系统中,将客户业务的功能单独的作为一个包,在该包中嵌套两个子包,分
别是客户咨询管理,和派工管理。
2、 细化包图,在客服咨询管理中嵌套三个子包,分别是咨询,投诉,报修;派工管理中嵌
套两个子包,维护安排和回访安排,
3、 子包对父包存在这依赖关系,现在要求对包进行分解,并创建他们的关系。
在客户服务管理系统中,有三个参与者,分别是客服人员、部门领导和维护人员。
第六章
1、客服人员登录系统后,通过身份验证,能够维护个人信息、修改密码、修改基本信息、维护客户信息和维护客户咨询信息,根据这些用例在rose中创建客服人员的用例图
2、部门领导登录系统后,通过身份验证们可以处理派工、处理投诉、安排回访、安排上门维护和统计查询客户来电情况,根据这些情况在rose中创建部门领导的用例图
3、维护人员登录系统后,通过身份验证,能够查询派工单、接受派工、填写报告、处理派工等,根据这些用例在rose中创建维护人员的用例图。
第七章
1、对客户服务系统中的客服人员修改客户信息的用例进行动态建模,该交互操作的动态建模由客服对象。客户信息界面类、客服信息控制类和客户信息类组成,在序列图中创建这些对象
2、在上题创建的序列图对象中,根据修改客户信息的用例,添加消息和脚本信息完成如图所示的完整序列图建模
3、对客户服务系统中的客服人员删除客户信息的用例进行动态建模,在逻辑视图中创建序列图
第八章
(1)在客户服务系统中个“客户来电”用例,当客户来电的事件发生后,进入“来电咨询”活动,如果受理,则查询客户信息,否则活动结束。当查询客户信息时,如果查询到客户,则判断咨询类型,否则新增加一个客户的信息。咨询类型有三种:咨询、投诉、保修,如果咨询,判断是否能解答问题,如果能,则直接处理,否则由维护人员跟进;如果是投诉,转入投诉处理;如果是保修,则转入报修处理。咨询处理结束后,填写咨询处理结果,整个活动的流程结束。根据以上描述,创建客户来电活动图中的需要表示的各种动作状态,如图8-31所示。
图8-32 创建动作状态
(2)在上题的基础上,识别出各种状态之间的额转换并考虑分支与合并、分叉与汇合的情况。绘制如图8-32所示的客户来电咨询活动图。
图8-32 客户来电咨询活动图
(3)在上题创建的活动图中有一个主要的缺点,它没有显示出由谁或者怎么负
责来执行某项活动。为了给活动图中活动指明责任者,要求在活动图中放置两个泳道:客户和客户服务人员负责执行这些活动。最后的完整客户来电咨询活动图,如图8-33所示。
图8-33 带泳道的客户来电咨询活动图
第九章
(1) 对客户服务系统中的客服人员修改客户信息的用例进行动态建模,该交互操作的动
态建模由客户对象、客户信息界面CustomerInfoUI、客户信息控制类CustomerInfoController和客户信息类CustomerInfo组成,在协作图中创建这些对象,如图9-18所示。
图9-18 创建协作图对象
(2) 在上题创建的协作图对象中,根据修改客户信息的用例,添加消息和脚本信息,完
成图9-19所示的完整协作图建模。
图9-19 修改客户信息协作图