UML面向对象分析与设计教程课后习题答案简答题部分
UML_简答题和第13章的题目和答案
P25 1.5 习题第一章3.简答题(1)面向对象设计的基本特征有哪些?这些特征对软件设计有何帮助?(P6—P9)答:抽象、封装、继承、多态是面向对象的基本特征。
1)抽象忽略了事物中与当前目标无关的非本质特性,强调与当前事物相关的特性,并将事物正确地归类,得出事物的抽象模型,并且为对象的重用提供了保障。
2)封装能让程序员不必修改公有接口的代码即可实现程序的移植。
3)在软件开发过程中,继承性实现了软件模块的可重用性、独立性,缩短了开发的周期,提高了软件的开发效率,同时使软件易于维护和修改。
4)继承性和多态性的结合,可以生成一系列虽然类似但又独一无二的对象。
由于继承性,这些对象共享许多相似的特征;由于多态性,针对相同的消息,不同对象可以有独特的表现方式,实现个性化的设计。
上述面向对象的几个特征的运用,对提高软件的开发效率起着非常重要的作用,通过编写可重用代码、编写可维护代码,修改代码模块、共享代码等方法充分发挥其优势。
(2)类和对象的区别是什么?(P4—P5)答:对象是系统用来描述客观事物的实体,是构成系统的基本单位,由状态和行为组成。
从更抽象的角度来说,对象是问题域或实现域中某些事物的一个抽象。
而类是对一类对象的抽象,它描述了一组有相同特性和相同行为的对象。
类和对象的抽象层次不同。
对一组具有共同的属性和行为的对象集合抽象得到类;对类进行实例化之后可以得到对象。
(3)什么是软件生命周期?软件生命周期包括了几个阶段?(P19)答:正如任何事物一样,软件也有其孕育、诞生、成长、成熟和衰亡的生存过程,我们称其为“软件生命周期”。
软件生命周期可分为6个阶段:制定计划、需求分析、设计、编码、测试、运行和维护。
(4)简述面向对象和UML的关系。
(P1)答:面向对象是UML的基础。
UML统一建模语言的出现正是由于面向对象建模思想发展的产物。
没有面向对象,就没有UML。
它们的关系密不可分。
(5)面向对象设计和传统的软件相比,有何优点?(P3)答:由于现代应用程序的规模越来越大,对代码的可重用性和易维护性的要求也越来越高,面向对象技术对这些提供了很好的支持。
面向对象分析与及设计习题及答案
面向对象分析与及设计习题及答案一、单项选择题1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是(D)的形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。
A. Simula67语言B. Smalltalk语言C. Java语言D. 统一建模语言(UML)的标准2. 面向对象的运动产生了多种面向对象的语言, 其中(C)是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。
A. SmalltalkB. EiffelC. C++D. Java3.下列不属于面向对象技术的基本特征的是(B)。
A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与(C) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是(C)。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好6. (D)是从用户使用系统的角度描述系统功能的图形表达方法。
A. 类图B. 对象图C. 序列图D. 用例图7. (C) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作图和其他图的基础。
A.对象图 B. 组件图 C. 类图 D. 配置图8.(D)描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。
A.对象图 B. 协作图 C. 状态图 D. 序列图9.(D)就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统中软件和硬件的物理架构。
A. 组件图B. 协作图C. 状态图D. 配置图10. 使用UML进行关系数据库的(B)时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。
面向对象设计与UML复习及答案
一、单选题1、用例图是从谁的角度出发对如何使用系统进行描述的?( A )A 、用户B 、系统分析师C 、系统设计师D 、程序员2、在UML2.0版本中。
<<include>>表示是用例间什么关系( D )A 、 关联关系B 、依赖关系C 、扩展关系D 、包含关系3、用例图展示了外部参与者与系统所提供的用例之间的连接,UML 中的外部参与者是指( D )A .人员B .单位C .人员或单位D .人员或外部系统 4、在UML 的用例图图形表示方式中,“角色.”的表示方式是下列图形中的哪一个( D )A 、、、、5、包含关系是在下面哪种关系的基础上构造的?(B )A 、组成关系B 、 依赖关系C 、聚合关系D 、泛化关系 6、在用例之间,会有三种不同的关系,下列哪个不是他们之间可能的关系( D ) A.包含(include ) B.扩展(extend ) C.泛化(generalization ) D.关联(connect )7、在ATM 自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面哪个是“Actor ”( A )A.用户B.ATM 取款机C.ATM 取款机管理员D.取款 8、用例(usecase)用来描述系统在对事件做出响应时所采取的行动。
用例之间是具有相关性的。
在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户帐号是否正确。
那么,用例“创建新订单”、“更新订单”与用例“核查客户帐号”之间是 ___ 关系。
( A ) A .包含(include) B .扩展(extend) C .分类(classification) D .聚集(aggregation)9、系统分析员Analyst 在做储蓄系统的需求开发时,发现:①“取款”用例、②“查询余额”用例、③“更改密码”用例都要使用④“验证卡号和密码”用例的功能。
那么①②③3个用例与用例④的关系是( D )A 、使用关系B 、扩展关系C 、组成关系D 、包含关系 10、在电影院管理系统中,有3个用例,分别是“购买电影票”、“预定电影票”、“登记电影制片厂”,其中“购买电影票”是高风险、高业务价值的用例;“预定电影票”是低风险、高业务价值的用例;“登记电影制片厂”是低风险、低业务价值的用例。
UML面向对象分析与设计、建模与设计课后选择判断
U M L面向对象分析与设计、建模与设计课后选择判断本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March第一章1.选择题(1)软件工程的概念是在()年被首次提出的。
(2)下列不属于软件工程的目标的一项是()A.提高软件产品的质量B.提高软件产品的可靠性C.减少软件产品的需求D.控制软件开发成本(3)软件危机产生的主要原因是()A.软件工具落后B.软件生产能力不足C.对软件认识不够D.软件本身的特点及开发方法(4)人们公认的第一门面向对象编程语言是()。
A. SimulaB. SmalltalkC. C++D. Java(5)下列编程语言中不支持面向对象的特性的是()。
A. C++B. ANSI CC. JavaD. Objetive c(6)下列选项中不是面向对象方法的相关原则的是()A.封装B.继承C.多态D.结构(7)()是面向对象方法中用来描述”对客户隐藏对象的属性和实现细节”的概念。
A.封装B.继承C.多态D.抽象(8)下列选项中不属于面向对象方法的优势之-的是()。
A.复用性强B.改善了软件结构C.软件的执行效率更高D.抽象更符合人类的思维习惯2.判断题(1)软件就是程序,编写软件就是编写程序。
对错(2)软件危机的主要表现是软件需求增加,软件价格上升。
对错(3) C语言对面向对象的发展起到了重要作用。
对错(4)面向对象方法中的对象是从客观世界中抽象出来的一个集合体。
对错(5)面向对象可以保证开发过程中的需求变化完全不会导致系统结构的变化。
对错(6)面向对象方法就是使用面向对象的程序设计语言进行编程。
对错(7)对象的自治性指的是对象是完全封闭的,不受任何外界影响。
对错(8)类是面向对象程序中的构造单位,也是面向对象程序设计语言的基本成分。
对错第二章1.选择题1.选择题(1)下列关于模型的表述,不正确的项是()。
uml面向对象的分析与设计考题与答案
u m l面向对象的分析与设计考题与答案集团文件版本号:(M928-T898-M248-WU2669-I2896-《面向对象的分析与设计》练习题一、选择题1.UML 语言不支持的建模方式有(D )。
A. 静态建模B.动态建模C. 模块化建模D. 功能建模2.一个设计得好的OO系统具有( B )。
A. 低内聚、低耦合的特征B.高内聚、低耦合的特征C. 高内聚、高耦合的特征D.低内聚、高耦合的特征3.下列不属于面向对象技术的基本特征的是( B)。
A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与 ( C ) 封装在一起,作为一个相互依存、不可分割的整体来处理。
A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点,下列不正确的叙述是(C )。
A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好6.用例之间的关系不包括以下哪种关系?DA.泛化B.包含C. 扩展D. 聚集和组合7.顺序图中不包括以下哪种元素?(A)A.用例B. 对象C. 生命线D. 消息8. 用例图中不包括以下哪种元素?(B)A. 用例B. 类C. 参与者D. 关联9. 继承机制的作用是 ( C )。
A. 信息隐藏B. 数据封装C. 派生新类D. 数据抽象10. 面向对象方法学中,对象之间仅能通过(C )相联系。
A. 类B.抽象C. 消息D. 封装11. 脚本与用例之间的关系类似与(A)之间的关系。
A. 对象与类B. 参与者与用例C. 顺序图和抽象类D. 消息和对象12. 下列元素中,(D )不属于消息的组成。
A. 提供服务的对象B. 服务C. 输入信息D. 事件13. ( D )描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之间传递消息的时间顺序。
A.对象图 B. 协作图 C. 状态图 D. 顺序图14. ( D)是从用户使用系统的角度描述系统功能的图形表达方法。
《面向对象分析与设计》练习题及参考答案.doc
《面向对象分析与设计》练习题及参考答案一、思考题:1 ・ How many phases are in eluded in system developme nt? (brief description)2. Describe a system and the comp on ents of a system model.3. What two key comp orients distinguish an in formati on system from an automated information system?4. What is systems analysis and design?5. Who are the six stakeholder groups in information systems?6. What are a system designers and system builder's roles in information systems developme nt?7. What is the system analyst role in systems development as it related to the other stakeholders?8. List the six steps of the general problem-solving approach.9. List two types of quality certification applicable to information systems.10. What are legacy systems? Name two types of problems encountered in legacy systems.11 ・ What is ERP? What is electronic commerce?12. Differentiate between management information systems and decision support systems.13. What role dose a data warehouse play in a decision support system?14. List three focuses for an information systems・15. What is the role of the network in information systems?16. 而向过程的系统分析与设计存在的问题是什么?通过什么00技术来解决?仃•请湎图说明而向对象系统的基本构造。
面向对象分析与设计习题及部分答案
《面向对象分析与设计》习题及部分答案第一章 概论1.什么是面向对象方法?面向对象的基本原则主要有哪些?答:面向对象方法是一种运用对象、类、继承、封装、聚合、关联、消息、多态性等概念来构造系统的软件开发方法。
面向对象方法的解决问题的思路是从现实世界中的客观对象(如人和事物)入手,尽量运用人类的自然思维方式来构造软件系统,这与传统的结构化方法从功能入手和信息工程化方法从信息入手是不一样的。
面向对象的基本思想主要有:1)从现实世界中客观存在的事物出发来建立软件系统,强调直接以问题域(现实世界)中的事物为中心来思考问题、认识问题,并根据这些事物的本质特征,把它们抽象地表示为系统中的对象,作为系统的基本构成单位。
这可以使系统直接映射问题域,保持问题域中事物及其相互关系的本来面貌(对象)2)用对象的属性表示事物的性质;用对象的操作表示事物的行为。
(属性与操作)3)对象的属性与操作结合为一体,成为一个独立的、不可分的实体,对外屏蔽其内部细节。
(对象的封装)4)对事物进行分类。
把具有相同属性和相同操作的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个实例。
(分类)5)复杂的对象可以用简单的对象作为其构成部分。
(聚合)6)通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类。
特殊类继承一般类的属性与操作,从而简化系统的构造过程及其文档。
(继承)7)对象之间通过消息进行通讯,以实现对象之间的动态联系。
(消息)8)通过关联表示类(一组对象)之间的静态关系。
(关联)2.与传统开发方法比,面向对象方法有什么优点?答:面向对象方法的解决问题的思路是从现实世界中的客观对象(如人和事物)入手,尽量运用人类的自然思维方式来构造软件系统,这与传统的结构化方法从功能入手和信息工程化方法从信息入手是不一样的。
与传统方法相比,面向对象的方法主要优点有:1)从认识论的角度可以看出,面向对象方法改变了人们认识世界的方式;2)语言的发展——鸿沟变窄;3)面向对象方法使得从问题域到计算机间的鸿沟变窄;4)面向对象方法有助于软件的维护与复用;(1)把易变的数据结构和部分功能封装在对象内并加以隐藏,一是保证了对象行为的可靠性;二是对它们的修改并不会影响其他的对象,有利于维护,对需求变化有较强的适应性。
UML面向对象设计与分析 课后习题答案
等。并使用建模活动图的五个步骤,逐步为用例建模活动图。
<<include>> OvertimeProcess
Librarian
Return Book <<include>>
DisplayLoans
图 4-33 还书用例
用户
系统
输入图书信息
显示过期信息 确定归还
查找该图书的借阅关系
查看是否有过 期的借阅关系
2.请求打印文件 17.出钞请求
5.控制打印
3.1.队列是否为空 3.2.添加到队列 4.返回打印文件
1.打印文件
Computer
PrintServer
Printer
Queue
3.根据 ATM 机上取款工作流的顺序图,为其建立通信图模型。
1.插入IC卡
读卡机
5.输入密码 10.输入取款请求 14.输入取款金额
Instructor
Tutor
1
1
Student
UnderGraduate
Graduate
Teacher
Professor
1 1
1 n
TeacherAssistant
2.根据用例图和系统需求描述创建类图。本练习将根据如下所示的系统需求和如图 3-63 所 示的用例图建模一个类图。
系统需求描述: (1)系统允许管理员通过从磁盘加载存货数据来运行存货清单报告。 (2)管理员通过从磁盘加载存货数据、向磁盘保存存货数据来更新存货清单。 (3)售货员做销售记录。 (4)电话操作员是处理电话订单的特殊售货员。 (5)任何类型的销售都需要更新存货清单。 (6)如果交易使用了信用卡,那么售货员需要核实信用卡。 (7)如果交易使用了支票,那么售货员需要核实支票。
UML课后习题答案
型,使用强大的表达能力来表示出面向对象模型的主要概念。UML中 的类图和对象图显示了系统的静态结构,其中的类、对象是图形元素的
基础。
(4)在类中包含三个部分,分别是类名、类的属性和类的操作。类的 名称栏只包含类名。类的属性栏定义了所有属性的特征。类中列出了操 作类中使用了关联连接,关联中使用名称、角色以及约束等特征定义。 类是一类的对象的抽象,类不存在多重性。 对象包含两个部分:对象的名称和对象的属性。对象的名称栏包含“对 象名:类名”。对象的属性栏定义了属性的当前值。对象图中不包含操 作内容,因为对属于同一个类的对象,其操作是相同的。对象使用链进 行连接,链中包含名称、角色。对象可以具有多重性。 4.上机题 (1)类图位于光盘中学生管理系统.mdl. -> User Case View->类图 (2)对象图位于光盘中学生管理系统.mdl. -> Logical View->类图 (3)对象图位于光盘中学生管理系统.mdl. -> Logical View->类图
UML习题答案
第1章 面向对象设计与UML 1. 填空题
(1) 基本构造块 UML规则 公共机制 (2) 名字 属性 操作 (3) 封装 继承 多态 (4) 继承 (5) 瀑布模型 喷泉模型 基于组件的开发模型 XP开发模型 2. 选择题 (1)C (2)A B C D (3)A B C D (4)A B C (5)A 3.简答题 (1)类是具有相同或相似结构、操作和约束规则的对象组成的集合, 而对象是某一类的具体化实例,每一个类都是具有某些共同特征的对象 的抽象。类与对象的关系就如模具和铸件的关系,类的实例化结果就是 对象,而对一类对象的抽象就是类.类描述了一组有相同特性和相同行 为的对象。 (2)1.UML是一种语言。 2. UML是用来建模的。 3.UML是统一的标 准。 (3)建模能够帮助我们按照实际情况或按我们需要的形式对系统进行 可视化;提供一种详细说明系统的结构或行为的方法;给出一个指导系 统构造的模板;对我们所做出的决策进行文档化。 在建模时应遵循以下原则:选择要创建什么模型对如何动手解决问题和 如何形成解决方案有着意义深远的影响;每一种模型可以在不同的精度 级别上表示;最好的模型是与现实相联系的;单个模型不充分;对每个 重要的系统最好用一组几乎独立的模型去处理。 (4)UML和面向对象软件开发之间有紧密的关系,可以说是面向对象 软件开发促使了UML的产生。但是由于在UML标准化的过程中,吸收 了业务建模、工作流建模和数据库建模等领域的标准规范,形成了适应
(完整word版)UML面向对象分析与设计教程课后习题答案(胡荷芬高斐)选择题部分
UML面向对象分析与设计教程课后习题答案选择题第一章(1) 对象程序的基本特征是(ABCD)A.抽象B.封装C.继承D。
多态(2)类包含的要素有(ABC)A.名字B。
属性 C.操作D。
编号(3)下列关于类与对象的关系说法不正确的是(A)A.有些对象是不能被抽象成类的B。
类给出了属于该类的全部对象的抽象定义C.类是对象集合的再抽象D.类是用来在内存中开辟一个数据区,存储新对象的属性(4)面向对象方法中的(C)机制给予子类可以自动的拥有(复制)父类全部属性和操作.A。
抽象B。
封装C。
继承D。
多态(5)建立对象的动态模型一般包含的步骤有(ABCD)A。
准备脚本B。
确定事件C.准备事件跟踪表D.构造状态图第二章⑴UML中的关系元素包括(ABCD).A.依赖B。
关联C.泛化D。
实现⑵在UML中,定义了面向对象的事物,这些事物分为(ABCD).。
A。
结构事物B。
行为事物C。
分组事物D.注释事物⑶UML中的图包括(ABC)。
A.用例图B。
类图C。
状态图D。
流程图⑷UML的视图不包括(BCD).A.用例视图B。
类视图C。
状态视图D。
物理视图⑸下面不属于UML中的静态视图的是(ABC).A. 状态图B.用例图C.对象图D. 类图第三章(1)下列说法正确的是(ACD)A.在用例视图下可以创建类图B.在逻辑视图下可以创建构件图C.在逻辑视图下可以创建包D.在构件视图下可以创建构件(2)在Rational Rose 的逻辑视图下可以创建(ABCD) A.类图 B.构件图C.包 D.活动图(3)Rational Rose 建模工具可以执行的任务有(ABCD) A.非一致性检查 B.生成C++语言代码C.报告功能 D.审查功能(4)Rational Rose 中支持的视图不包括(D)A.逻辑视图 B.构件视图C.部署视图D。
机构视图(5)在构建视图下的元素可以包括(ABC)A.构件 B.构件图C.包 D.类第四章(1)类中的方法的可见性包括(ABC)A.privateB.publicC.protectedD.abstract(2)下面属于UML中类元的类型的是(ABCD)A.类B.对象C.构件D.接口(3)类之间的关系包括(ABCD)A.泛化B.关联C.实现D.依赖(4)下列关于接口的关系说法正确的是(ABCD)?A.接口是一种特殊的类B.所有接口都是有构造型<<interface>〉的类C.一个类可以通过实现接口从而支持接口所指定的行为D.在程序运行的时候,其他对象可以不仅需要依赖与此接口,还需要知道该类对接口实现的其他信息(5)下列关于类方法的声明正确的是(AB)A.方法定义了类所许可的行为B.从一个类所创建的所有对象可以使用同一组属性和方法C.每个方法应该有一个参数D.如果在同一个类中定义了类似的操作,则他们的行为应该是类似的第五章1.在Rational Rose 2003中,支持(ABCD)的构造模型A。
面向对象设计与UML复习及答案
一、单选题1、用例图是从谁的角度出发对如何使用系统进行描述的(A)A、用户B、系统分析师C、系统设计师D、程序员2、在版本中。
<<include>>表示是用例间什么关系(D)A、关联关系B、依赖关系C、扩展关系D、包含关系3、用例图展示了外部参与者与系统所提供的用例之间的连接,UML 中的外部参与者是指(D)A.人员 B.单位 C.人员或单位 D.人员或外部系统4、在UML的用例图图形表示方式中,“角色.”的表示方式是下列图形中的哪一个(D)A、、、、5、包含关系是在下面哪种关系的基础上构造的(B)A、组成关系B、依赖关系C、聚合关系D、泛化关系6、在用例之间,会有三种不同的关系,下列哪个不是他们之间可能的关系(D)A.包含(include)B.扩展(extend)C.泛化(generalization)D.关联(connect)7、在ATM自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面哪个是“Actor”( A )A.用户取款机取款机管理员 D.取款8、用例(usecase)用来描述系统在对事件做出响应时所采取的行动。
用例之间是具有相关性的。
在一个“订单输入子系统”中,创建新订单和更新订单都需要核查用户帐号是否正确。
那么,用例“创建新订单”、“更新订单”与用例“核查客户帐号”之间是 ___ 关系。
( A ) A.包含(include) B.扩展(extend) C.分类(classification) D.聚集(aggregation)9、系统分析员Analyst在做储蓄系统的需求开发时,发现:①“取款”用例、②“查询余额”用例、③“更改密码”用例都要使用④“验证卡号和密码”用例的功能。
那么①②③3个用例与用例④的关系是(D)A、使用关系B、扩展关系C、组成关系D、包含关系10、在电影院管理系统中,有3个用例,分别是“购买电影票”、“预定电影票”、“登记电影制片厂”,其中“购买电影票”是高风险、高业务价值的用例;“预定电影票”是低风险、高业务价值的用例;“登记电影制片厂”是低风险、低业务价值的用例。
面向对象分析与设计(第二版)习题答案
面向对象分析与设计(第二版)习题答案第一章:面向对象基础知识1.1 什么是面向对象分析和设计?面向对象分析和设计(Object-Oriented Analysis and Design,OOAD)是软件工程中一种常用的方法论,通过将问题领域进行建模,通过对象、类、继承、封装等概念来描述现实世界中的实体、关系和行为。
面向对象分析和设计的目标是开发出可复用、可维护、可扩展、高质量的软件系统。
1.2 面向对象分析和设计的优势有哪些?面向对象分析和设计有以下优势: - 高度模块化:通过将系统划分为多个独立的对象,便于理解和设计系统的各个部分。
- 可复用性:面向对象设计强调对象的复用,通过定义通用的类和接口,可以提高代码的复用程度。
- 可维护性:面向对象的封装特性使得系统的各个部分具有独立性,便于维护和修改。
- 可扩展性:通过继承和多态等特性,可以方便地扩展和修改系统的功能。
- 高可靠性:面向对象的封装和隐藏特性可以减少系统中的错误和安全漏洞。
- 开发效率高:面向对象的分析和设计提供了一种更自然的思考和描述问题的方法,可以提高开发效率。
第二章:面向对象建模2.1 对象的特征有哪些?对象具有以下特征: - 状态(State):对象的状态是对象的属性值的集合,表示对象的某个时刻的状态。
- 行为(Behavior):对象可以执行的操作,描述了对象能够做什么。
- 身份(Identity):每个对象都有唯一的身份,可以通过身份来区分不同的对象。
2.2 类和对象之间的关系有哪些?类和对象之间有以下关系: - 实例化(Instantiation):类是对象的模板,对象是类的一个具体实例。
- 继承(Inheritance):一个类可以继承另一个类的属性和方法。
- 聚合(Aggregation):一个类可以包含其他类的对象作为成员变量。
- 关联(Association):两个类之间存在某种关系,一个类的对象可以访问另一个类的对象。
UML面向对象分析与设计教程课后习题答案胡荷芬高斐简答题部分样本
简答题第一章1.面向对象设计基本特性有哪些?这些特性对软件设计有何协助?封装性继承性多态性在由封装, 继承,多态所构成环境中,程序员可以编写出比面向过程模型更健壮,更具扩展性程序.通过仔细设计类层次构造是重用代码基本.封装能让程序员不必修改公有接口代码即可实现程序移植.多态能使程序员开发出简洁,易懂,易修改代码.2.类与对象区别是什么?类是抽象, 不详细。
就像有些东西可以归为一类, 例如说狗, 猫, 猪。
它们都是动物, 咱们就可以归为一类。
而猫, 狗就是动物类中一种对象。
3.什么是软件生命周期?生命周期涉及几种阶段?软件生命周期, 亦称软件生存周期。
它是按开发软件规模和复杂限度, 从时间上把软件开发整个过程(从筹划开发开始到软件报废为止整个历史阶段)进行分解, 形成相对独立几种阶段, 每个阶段又分解成几种详细任务,然后按规定顺序依次完毕各阶段任务并规定一套原则文档作为各个阶段开发成果, 最后生产出高质量软件。
分为: 普通分为定义, 开发, 维护三大阶段,定义阶段有可行性论证和开发筹划, 需求分析,开发阶段有概要设计, 详细设计和编码, 维护阶段有测试, 运营维护4.面向对象与uml关系?umL是统一建模图, 用于便于描述类之间关系等, 是用来协助你更好进行面向对象设计。
5.面向对象设计与老式软件相比,有何长处?更有针对性更容易让客户满意减少修改提高效率第二章1.uml模型元素有哪些?UML中模型元素太多了, 例如用例图中元素有用例, 角色, 扩展关系, 包括关系, 类图中元素有类, 接口, 关联等等, 每一种框图均有各自独有元素2.简述uml通用机制构成以及它作用?一、修饰。
在使用UML语言建模时, 可以将图形修饰附加到UML图中模型元素上。
例如, 当一种元素代表某种类型时候, 它名称可以用粗体字形类显示;当同一元素表达该类型实例时, 该元素名称用一条下划线修饰。
二、注释。
UML语言中用一条虚线将注释连接到它为之解释或细化元素上。
UML面向对象分析与设计、建模与设计课后选择判断
第一章1.选择题(1)软件工程的概念是在()年被首次提出的。
A.1949B.1968C.1972D.1989(2)下列不属于软件工程的目标的一项是()A.提高软件产品的质量B.提高软件产品的可靠性C.减少软件产品的需求D.控制软件开发成本(3)软件危机产生的主要原因是()A.软件工具落后B.软件生产能力不足C.对软件认识不够D.软件本身的特点及开发方法(4)人们公认的第一门面向对象编程语言是()。
A. SimulaB. SmalltalkC. C++D. Java(5)下列编程语言中不支持面向对象的特性的是()。
A. C++B. ANSI CC. JavaD. Objetive c(6)下列选项中不是面向对象方法的相关原则的是()A.封装B.继承C.多态D.结构(7)()是面向对象方法中用来描述”对客户隐藏对象的属性和实现细节”的概念。
A.封装B.继承C.多态D.抽象(8)下列选项中不属于面向对象方法的优势之-的是()。
A.复用性强B.改善了软件结构C.软件的执行效率更高D.抽象更符合人类的思维习惯2.判断题(1)软件就是程序,编写软件就是编写程序。
对错(2)软件危机的主要表现是软件需求增加,软件价格上升。
对错(3) C语言对面向对象的发展起到了重要作用。
对错(4)面向对象方法中的对象是从客观世界中抽象出来的一个集合体。
对错(5)面向对象可以保证开发过程中的需求变化完全不会导致系统结构的变化。
对错(6)面向对象方法就是使用面向对象的程序设计语言进行编程。
对错(7)对象的自治性指的是对象是完全封闭的,不受任何外界影响。
对错(8)类是面向对象程序中的构造单位,也是面向对象程序设计语言的基本成分。
对错第二章1.选择题1.选择题(1)下列关于模型的表述,不正确的项是()。
A.建模语言只能是图形表示的B.模型所描绘的系统蓝團既可以包括详细的计划,也可以包括系统的总体计划C.模型可以帮助开发组生成有用的工作产品D.最好的模型总是与现实世界联系密切(2) UML的全称是()。
uml面向对象的分析与设计考题与答案
面向对象的分析与设计练习题一、选择题1.UML 语言不支持的建模方式有D ..A. 静态建模B.动态建模C. 模块化建模D. 功能建模2.一个设计得好的OO系统具有 B ..A. 低内聚、低耦合的特征B.高内聚、低耦合的特征C. 高内聚、高耦合的特征D.低内聚、高耦合的特征3.下列不属于面向对象技术的基本特征的是 B..A. 封装性B. 模块性C. 多态性D. 继承性4. 面向对象程序设计将描述事物的数据与 C 封装在一起;作为一个相互依存、不可分割的整体来处理..A. 信息B. 数据隐藏C. 对数据的操作D. 数据抽象5. 关于面向对象方法的优点;下列不正确的叙述是 C ..A. 与人类习惯的思维方法比较一致B. 可重用性好C. 以数据操作为中心D.可维护性好6.用例之间的关系不包括以下哪种关系 DA.泛化B.包含C. 扩展D. 聚集和组合7.顺序图中不包括以下哪种元素 AA.用例B. 对象C. 生命线D. 消息8. 用例图中不包括以下哪种元素 BA. 用例B. 类C. 参与者D. 关联9. 继承机制的作用是 C ..A. 信息隐藏B. 数据封装C. 派生新类D. 数据抽象10. 面向对象方法学中;对象之间仅能通过C 相联系..A. 类B.抽象C. 消息D. 封装11. 脚本与用例之间的关系类似与A之间的关系..A. 对象与类B. 参与者与用例C. 顺序图和抽象类D. 消息和对象12. 下列元素中;D 不属于消息的组成..A. 提供服务的对象B. 服务C. 输入信息D. 事件13. D 描述了一组交互对象间的动态协作关系;它表示完成某项行为的对象和这些对象之间传递消息的时间顺序..A.对象图 B. 协作图 C. 状态图 D. 顺序图14. D是从用户使用系统的角度描述系统功能的图形表达方法..A. 类图B. 对象图C. 序列图D. 用例图15. C 是表达系统的类及其相互联系的图示;它是面向对象设计的核心;建立状态图、协作图和其他图的基础..A.对象图 B. 组件图 C. 类图 D. 配置图二、简答题1.简答控制软件复杂性的基本方法;面向对象技术如何体现这些方法的..基本方法:分解;抽象;模块化;信息隐蔽..面向对象的软件开放方法在描述和理解问题域时采用的方法是:对问题域进行自然分割;以更接近人类的思维方式建立问题域模型;从而使设计出的软件尽可能直接地描述现实世界;具有更好的可维护性;能适应用户需求的变化..2.举例说明类中覆盖和重载的区别..public class A{String name;public String getValue;{return”getValue is”+name;}}public class B extend A {String address;public String getValue;{return”getValue is”+address;}}类B是类A的子类;类B中定义的getValue方法是对类A中getValue 方法的覆盖public class A {int age;String name;public void setValue int i {age=i;}public void setValue String s {name=s;}}类A中定义了两个setValue方法;但这两个方法的参数不同;第二个方法是对第一个方法的重载..3.什么是多态;并以Graph、Circle、Rectangle三个具有继承关系并且都有draw方法的类为例;说明多态的概念..在面向对象技术中;多态指的是一个实体在不同上下文条件下具有不同意义或用法的能力..可以声明一个Graph类型对象的变量;但在运行时;可以把Circle类型或Rectangle类型的对象赋给该变量..就是说;该变量所引用的对象在运行时会有不同的形态..如果调用draw方法;则根据运行时变量是引用的Circle还是Rectangle;来决定调用Circle中的draw方法还是Rectangle中的draw方法..4.某输出类Output中包含一个output方法; 该方法可能使用多种不同的打印机; 如: HP、EPSON、Canon;每种打印机都有不同的print 方法..有下面两个类图..说明哪一个设计更符合OO设计原则中的开闭原则并说明原因..打印输出类图1 打印输出类图2打印输出类图2更符合开闭原则..因为类图2如要增加新的打印机增加新的类;并让新类实现Printer接口即可;类Output内部不需要做任何改动..而类图1如要增加新的打印机Output内部需要做改动..所以类图2更符合开闭原则..三、分析题为方便储户;某银行拟开发计算机储蓄系统..储户填写的存款单或取款单由业务员键入系统;如果是存款;系统记录存款人姓名、住址、存款类型、存款日期、利率等信息;并印出存款单给储户;如果是取款;系统计算利息并印出利息清单给储户..要求:1.画出用例图;其中包括如下用例:开户、存款、取款、计算利息、修改密码、印出存款单、印出利息清单等..8分2.画出开户、取款这两个用例的顺序图..12分3.画出仅包含实体类的类图..12分4.根据你的设计结果;简单说明顺序图和类图的关系..8分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简答题
第一章
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 修改客户信息协作图
(3)对客户服务系统中的客服人员删除客户信息的用例进行动态建模,在逻辑视图(Logical View)中创建完整的协作图,如图9-20所示。
图9-20 删除客户信息协作图
第十章
(1)在客户服务器系统中派工单有五个状态,即新派工单,未分配,已分配未完成,已分配已完成,删除派工单,图中还包括一个起始状态和一个终止状态。
根据以上的描述,创建出派工单的各种状态,如图10-29所示。
图10-29 派工单的状态
(2)当派工单的状态在某一事件或某个条件满足时,就在这五个状态中进行转换。
分配、作废、完成等是状态转换所发生的事件。
根据各种状态以及装换规则,创建派工单完整的状态图,如图10-30所示。
图10-30 派工单状态图
(3)扩展上题创建的派工单简单状态图,让该图包含三个子状态:未分配,已分配未完成,已分配已完成,它们都内嵌在处理派工单超状态中,在嵌套状态中还可以包含一个起始状态和终止状态。
根据以上描述,创建嵌套子状态的状态图,如图10-31所示。
图10-31 派工单嵌套状态图
第十一章
1、在客户服务系统中,可以确定系统业务尸体类包括客户人员、维护人员、部门经理、产
品项目、来电咨询、客户资料和派工单,将这些逻辑元素映射到构建中,如图11-35所示。
图11-35 映射构件
2、在上题的基础上,确定构件之间的依赖关系,并创建完整的客户服务系统的构件图,如
图11-36所示。
图11-36 完整构件图
3、客户服务系统的部署图包括客户端PC、应用服务器和数据库服务器,其中的客户端分别
由管理员、部门领导、客服人员、维护人员在不同的PC上登录。
整个系统部署在企业的局域网中,根据上面的描述创建客户服务系统的部署图,如图11-37所示。
图11-37 客户服务系统部署图。