软件工程基础与案例教程 习题及答案 第3部分_第1页
软件工程基础与案例教程 习题及答案 第3部分_第2页
软件工程基础与案例教程 习题及答案 第3部分_第3页
软件工程基础与案例教程 习题及答案 第3部分_第4页
软件工程基础与案例教程 习题及答案 第3部分_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8章习题答案1.阐述面向对象分析所需要的模型及其作用。面向对象建模技术所建立的四种模型,即逻辑模型、交互模型、用例模型和部署模型,分别从四个不同侧面描述了所要开发的系统。用例模型指明了系统应该“做什么”,即系统的功能;交互模型明确规定在何种状态下,对象接受什么样的事件触发“做什么”;逻辑模型则定义了“做什么”的对象组成关系;部署模型描述复杂系统的物理组成、连接关系和构建部署等。逻辑模型、交互模型、用例模型和部署模型相辅相承,使得对系统的需求分析和设计描述更加直观、全面。2.阐述UML提供的基本视图。UML提供了五种视图,包括用例视图、结构模型(逻辑)视图、行为模型(并发)视图、实现模型(组件)视图和部署视图。用例视图从用户角度表达系统功能,使用用例图和活动图来描述;结构模型视图主要使用类图和对象图描述系统静态结构,用状态图、时序图、协作图和活动图描述对象间实现给定功能时的动态协作关系;行为模型视图展示系统动态行为及其并发性,用状态图、时序图、协作图、活动图、构件图和部署图描述;实现模型视图展示系统实现的结构和行为特征,用构件图描述;部署视图展示系统的实现环境和构件是如何在物理结构中部署的,用部署图描述。3.阐述面向对象分析模型的符号及其含义。分析类一般分为边界类、控制类和实体类3种类型。1.边界类边界类用于建立软件与其参与者之间交互的模型,经常代表对窗口、窗体、窗幕、通信接口、打印机接口、传感器、终端以及API等对象的抽象。每个边界类至少应该与一个参与者有关,反之亦然。例如,收银员与“处理销售界面”的边界类交互以支持输入商品和处理支付等交互,如图8.4所示,收银员通过处理销售用户界面类交互输入商品,产生一个销售类。图8.4销售实体类2.实体类实体类用于对长效持久的信息建模。大多数情况下,实体类是直接从业务对象模型中相应的业务实体类得到的。实体对象不一定是被动的,有时可能具有与它所表示的信息有关的复杂行为,能够将变化与它们所表示的信息隔开。实体类经常表示为一种逻辑数据结构,有助于理解系统所依赖的信息。例如,“销售”实体类就是保存完成的一次销售,如图8.4所示。3.控制类 控制类代表协调、排序、事务处理以及其他对象的控制,经常用于封装与某个具体用例有关的控制。控制类还可以用来表示复杂的派生与演算,如业务逻辑。系统的动态特性由控制类来建模,因为控制类处理和协调主要的动作和控制流,并将任务委派给其他对象。 控制类如同设计模型中的控制器类,其是UI层之上的第一个对象,主要负责接收和处理系统操作消息。通常,对于同一用例场景的所有系统事件可使用同一个控制器类。 例如,POS机系统中用若干操作,首先经过控制类将系统请求和输入信息转发给其关联的实体类进行处理。在POS领域内,ProcessSaleHandler是运行软件的特定装置,如图8.5所示。图8.5POS机中的控制类4.给出POS机系统的处理退货功能的类模型。5.阐述释逻辑架构的概念和表示方法。逻辑架构是类的宏观组织结构,它将类组织为包、子系统和层等。层是对类、包或子系统的甚为粗粒度的分组,是有对系统主要方面加以内聚的职责。6.完成ATM机的面向对象分析模型。略。7.完善POS机系统的面向对象分析模型。分析考虑POS系统中会员的情况,比如会员会有积分,甚至积分支付,会员打折等。需要添加一个客户类customer,记录用户的积分、等级。购物时需要出示会员卡和计算折扣。需要一个会员管理类users管理会员。第9章习题答案1.阐述面向对象分析与面向对象设计的关系。面向对象分析和面向对象设计之间有着密切的衔接关系,从面向对象分析到面向对象设计是一个逐步扩充模型的过程。分析处理是以问题为中心的,可以不考虑任何与特定计算机有关的问题,而面向对象设计则把我们带进了面向计算机的“实地”开发活动中去。但是,在实际的面向对象开发过程中。面向对象分析和面向对象分析设计二者的界限比较模糊。从面向对象分析到面向对象设计实际是一个多次反复、逐步迭代模型的过程。2.举例阐述软件设计原则。单一职责原则里氏替换原则依赖倒置原则抽象隔离原则开闭原则3.什么是部署图,有哪些组成要素?部署图表示的是,如何将具体软件制品(例如可执行文件)分配到计算节点(具有处理服务的某种事物)上。部署图表示了软件元素在物理架构上的部署,以及物理元素之间的通信。部署图中最基本的元素是节点,有两种类型的节点: (1)设备节点:具有处理和存储能力,可执行软件的物理计算资源,例如典型的计算机或者移动电话。 (2)执行环境节点:在外部节点中运行的软件计算资源,其自身可以容纳和执行其他可执行软件元素。例如:操作系统是容纳和执行程序的软件;虚拟机容纳和执行程序;数据库引擎接收SQL语句并执行之,并且容纳和执行内部存储过程;Web浏览器容纳和执行JavaScript、Javaapplets、Flash和其他可执行的元素;工作流引擎;Servlet容器或EJB容器。4.完善ATM机系统的顺序图。5.绘制ATM机系统的事务管理的构件图和部署图。BankBankCustomerATMClientATMApplicationServerATMDataServerinternetintranet::ATMClient:ATMApplicationServer:ClientManager:TransactionManagerwithdrawalwithdrawaldepositAppserverManagertransferDesignModelImplementationModelbusiness.c«file»transaction.c«file»transaction.exe«executable»«trace»«trace»«compilation»6.对POS机系统进行精化设计,完成部属图和构件图设计。第10章习题答案1.阐述面向对象实现的特点。面向对象实现就是使用面向对象语言编程实现类的代码和系统功能实现代码。面向对象的编程语言使程序能够比较直接反映问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开发。面向对象编程语言具有封装、构造方法、方法重载、继承、多态、接口、常量、异常处理等特点。2.阐述面向对象测试实现测试的层次。面向对象分析阶段的测试包括对对象的测试、对结构的测试、对主题的测试、对属性与实例关联的测试,以及对服务和消息关联的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论