UML系统建模与分析设计(刁成嘉主编)课后答案第一章一、选择 1.A 2.C 3.D 4.B二、填空5.实时处理软件分时软件交互式软件批处理软件6.软件定义软件开发软件使用与维护7.瀑布模型渐增模型演化模型螺旋模型智能模型8.封装继承多态9.唯一性连续性维护性复用性逐步完善三、解释名词10.软件:是程序以及开发、使用、维护程序所需要的所有文档。
11.类:是一组具有相同属性和相同操作的对象的集合,是对象的抽象,他抽象的描述了属于该类的全部对象的属性和操作。
12.封装:是指把相关的数据(属性)和对这些数据的操作结合在一起,组成一个独立的对象。
13.继承:是指子类(也成派生类、特化类)可以自动拥有某父类的全部属性和操作,即一个类可以定义为另一个一般的类的特殊情况。
14.消息:实现对象类之间的通信和任务传递。
15.运行期间,当实际发送消息时才进行实例连接,称为动态绑定。
16.多态性:是指同一个消息被不同的对象接收时,产生不同的动作或执行结果。
四、综合题17、简述软件危机产生的背景计算机科学的不断发展,使得软件需求量不断增大,他的要求、复杂度、开发成本也越来越高,但软件开发放大和技术却停留在“小程序”、“个体化”的操作上面,致使软件设计犹如泥潭,大批设计者深陷其中,甚至出现上述存在的种种缺点。
18、试述软件生存周期过程一个软件产品从概念开始,经过开发、使用和维护,直到最后该软件更新换代为止的全部过程就是软件的生存周期。
软件生存周期有软件定义、软件开发和软件使用与维护三部分组成。
分为软件系统的可行性分析、需求分析、概要设计、详细设计、实现、组装测试、确认测试、使用、维护和更新换代十个阶段。
19、试述软件开发的几种基本方法结构化软件开发方法、模块化软件开发方法、面向数据结构软件开发方法、面向对象软件开发方法20、写出面向对象的基本要素面向对象方法有三大重要特征:封装性、继承性、多态性。
其涉及的基本概念有:对象,类,封装,继承、消息和多态等。
21、试比较软件生存周期与面向对象系统开发过程面向对象系统开发过程由客户需求分析阶段、系统分析阶段、系统实现、测试、维护阶段组成。
可以说面向对象的开发过程符合软件生存周期的模式,并且有详尽的系统分析阶段,引入各个模型使之表达软件各个功能的使用及运作机制,是软件开发定位准确,易于交流开发。
22、用简要的语言表述完成一个实际课题的完整步骤①需求分析阶段:与客户访谈需求,与专家讨论需求现场实际观察需求。
建立资料库,编写文档,引入用例等模型完善表达。
②系统分析阶段:清楚业务流程,引入静态模型,动态模型,功能模型,定义范围。
③系统设计:选择开发工具,体系结构设计,对象设计,模式设计。
④系统实现、测试、维护:使用选择好的工具和语言进行编码,并具附有详尽文档,交付使用后要跟踪维护,漏洞及时修补与升级。
23、说出面向对象分析的步骤面向对象分析的步骤①识别类与对象活动,定义类与对象。
②识别结构活动,确认继承和组合结构。
③识别主题活动,将性质相同类与对象归纳为同一主题。
④定义属性活动,确认对象属性。
⑤定义服务活动,确认操作与关联对象的状态。
24.说出面向对象设计的步骤面向对象设计步骤:OOD模型由四个部件模型和四个活动组成。
四个部件模型是:人机接口部件模型,问题领域部件模型,任务管理模型和数据管理部件模型。
相应的四个活动是设计问题领域部件,设计人及接口部件、设计任务管理部件、设计数据管理部件。
25.说出面向对象实现的方法面向对象实现方法:①程序编写开始前,要选择合适的编程语言。
②编写代码过程中,要指定每个模块测试方案、测试数据和预期测试结果。
③变成结束后,要保存相应文档资料。
26.说出面向对象测试的步骤和方法面向对象测试的步骤和方法:组装测试:根据模块测试方案和测试数据进行模块测试。
根据组装测试方案和测试数据逐步进行组装测试。
进行系统各模块连接正确性测试。
进行软件系统或子系统的正确性和容错性能测试。
保存相应文档资料。
确认测试:有专家、客户、开发人员组成系统测试评审小组。
向用户提供最终的用户手册,操作手册,原程序清单及其他软件文档资料。
三方共同根据组装测试方案和测试数据逐条严格进行组装测试,确认系统是否到达用户的需求。
确认测试结束适应建立确认测试报告、项目开发总结报告。
保存相应文档资料。
27.说出面向对象维护的内容与方法面向对象维护的内容与方法:对发现的软件产品中潜伏的错误进行修改维护。
对用户提出的软件需求进行修改维护。
软件运行环境发生变化时需呀对软件进行修改维护。
对软件定义和软件开发个阶段生成的文档资料进行修改维护。
28.简述建立文档资料对于软件开发的重要性文档资料的编写与使用贯穿于软件生命周期的各个阶段。
它不仅是软件开发指导性文本,也是记录软件发开发各个细节的详尽资料。
通过文档可以查阅软件相应各阶段信息,使方便软件的维护与纠错,也为客户提供了一个透明的开发文本,同时文档资料对今后类似的软件开发提供了一个经验性的文本,也可作为复用构件的文本资料。
第二章一、选择 1.A 2.B 3.C. 4.D 5.B二、填空6.用例动态静态7.开始阶段详细规划阶段系统构造阶段移交阶段8.需求分析系统设计实现测试配置9.用例逻辑构件进程配置10.用例类对象包构件配置活动顺序状态合作三、解释名词11.特性规格说明:也叫标记值,是ULL的扩充,用来描述模型元素特征。
12.修饰:使用UML建模时,可以将图形修饰附加到UML图中的模型元素上。
13.公共划分:类型-实例法,接口-实现法。
14.构造型:用于对子模型元素进行分类在已有的基本模型元素上定义新的模型元素。
15.标记值:也称特性规格说明,与约束直接对某个模型元素附加一些性质和语义。
16.约束:约束扩展了模型元素的语义,允许增加新的规则或修改现有规则。
四、综合17.简单叙述UML统一建模语言的意义UML统一建模语言的意义:概念明确,建模表示法简洁明了,图形结构清晰,易于掌握使用。
18.试说明一个复杂的面向对象软件系统的层次结构组成业务应用、应用框架层、特定领域框架层、跨领域框架层、基础框架层、操作系统层。
19.UML中用什么方法描述软件系统的体系结构?利用若干视图从不同角度来描述一个软件系统的体系结构,从某个角度观察到的系统构成系统的一个视图。
20.UML的扩展机制是什么?构造型,标记值,约束。
21.简述UML实际建模过程简述UML实际建模过程:开始阶段,详细规划阶段,系统构造阶段。
22.UML软件开发过程的特征是什么?UML开发过程的特征:以用例驱动开发过程,以系统体系结构为中心的质量控制和风险管理为目标。
采取反复、渐增式的螺旋上升式开发过程。
24.UML中类图建模目的与意义是什么?类图建模的目的与意义:展示了系统的逻辑结构。
类图是构造其他图的基础,没有类图就无法表示系统其他的各个方面。
25.UML中对象图建模目的与意义是什么?对象图建模的目的与意义:表达了对象模型的静态结构,能够有效的建立专业领域的计算机系统的对象模型。
26.UML中包图建模目的与意义是什么?包图建模的目的与意义:降低系统复杂性,维护和控制系统总体结构。
27.UML中的系统体系结构建模包括哪几个模型图?静态模型:类图,对象图,包图,构件图,配置图。
动态模型:状态图,活动图,顺序图,和作图。
28.UML中配置图建模目的与意义是什么?配置图描述系统中硬件和软件物理配置情况和系统体系结构,显示系统运行时刻的结构,描述结点间的连结以及通信类型。
29.UML中构建图建模目的与意义是什么?显示代码本身的逻辑结构,米搜狐系统中存在的软件构件以及它们之间的依赖关系。
30.UML软件开发过程的详细规划阶段包括哪些内容?①对开发项目的问题领域和功能作详细分析②建立系统基础体系结构③进行风险分析,并制定相应对策④制定开发计划31.UML软件开发过程的系统构造阶段包括哪些内容?①渐增是开发②集成测试③测试演示④保存测试案例32.UML软件开发过程的系统移交阶段包括哪些内容?①系统测试②产品包装③用户培训33.UML中顺序图建模目的与意义是什么?描述对象之间动态交互关系,着重体现对象间消息传递的时间顺序。
34.UML软件开发过程的开发步骤中,分析包括哪些内容?①建立问题领域的业务模型②建立用户需求分析模型35.UML软件开发过程的开发步骤中,设计包括哪些内容?①结构设计:是高层设计,定义包和主要通信机制。
②详细设计:细化包的内容,创建类图、对象图、顺序图、合作图、状态图、活动图、构件图、配置图。
36.UML软件开发过程的开发步骤中,实现包括哪些内容?编写代码、反复编译、连接、排错37.UML软件开发过程的开发步骤中,测试包括哪些内容?测试包括哪些内容:依靠用例图验证系统,集成测试会用到的配置图、顺序图、合作图,以发现代码中的错误。
38.UML软件开发过程的开发步骤中,配置包括哪些内容?根据系统工作环境和硬件设备,将组成系统体系结构的软件费配到相应的计算机上。
39.UML软件开发过程产生哪些模型?业务模型、领域模型、用例模型、分析模型、设计模型、测试模型。
40.UML软件开发过程产生哪些文档?技术文档、管理文档42.UML软件开发过程的基本特征之一:以用例驱动开发过程的具体内容是什么?①分析阶段:描述系统功能②设计阶段:用例必须被实现③实现阶段:用例必须被实现④测试阶段:用例用于测试系统43.UML软件开发过程的基本特征之一:以系统体系结构为中心的具体内容是什么?①定义系统组成成分及之间关系和交互。
②定义成分之间的通信机制。
③定义增加或修改体系结构中成分的全部规则。
④实现系统功能性要求。
⑤完成非功能性要求。
44.UML软件开发过程的基本特征之一:以质量控制和风险管理为目的的具体内容是什么?①用质量目标和质量指标衡量软件系统的质量。
②每一个阶段都要进行质量评价。
③将评价、结果作为下一次反复迭代的输入。
45.UML软件开发过程的基本特征之一:采用反复(迭代、循环)、渐增式的螺旋上升式开发过程的具体内容是什么?①每次跌代要经过若干次较小的迭代。
②每次跌代增加一些新信息。
③每次跌代都包括分析设计实现测试阶段。
④每次迭代集中开发n个功能。
46.UML中活动图建模目的与意义是什么?用来描述操作的行为或描述用例和对象内部工作过程,并可用于并行过程,着重描述操作实现中完成的工作以及用例或对象内部的活动。
47.UML描述的5种视图中,为什么说用例视图驱动了面对对象的软件开发全过程?不仅在开发过程中保证了系统所有功能的实现,而且被用于验证和检测所开发的系统,从而影响到开发工作的各个阶段UML的各个模型。
48.UML中状态图建模目的与意义是什么?描述一个特定对象所有可能的状态即引起状态迁移的事件。