搜索
您的当前位置:首页正文

电大软件工程作业2

来源:榕意旅游网
电⼤软件⼯程作业2

软件⼯程作业2⼀、选择题

1.从本质上说,⾯向对象是“先”确定(A)后确定执⾏的动作。A.动作的主体B.属性C.关系D.⽅法

2.(B)是对象的静态特征。A.⽅法B.属性C.关系D.操作

3.对象的(D)使对象的动态特征A.特征B.属性C.关系D.操作

4.属于某个类的⼀个具体对象称为该类的(A)。A.实例B.虚拟C.继承D.多态

5.UML是(A)。A)⼀种可视化的建模语⾔B)是⼀种可视化的程序设计语⾔C)是⼀种过程D)是⼀种⽅法

6.封装的的作⽤是(A)。A.复⽤B.对象C.实例D.⽅法

8. ⾯向对象分析的核⼼在于建⽴(B)模型。A. 建⽴正确的模型

B. 识别问题域对象C.识别对象之间的关系D.上⾯所有

9. ⾯向对象分析过程中建⽴的模型有(D)。A. 数据模型、功能模型、活动模型B. 对象模型、功能模型、测试模型C. 属性模型、功能模型、对象模型D. 对象模型、功能模型、动态模型10. 下列的(C)不是分析建模的⽬的。A. 定义可验证的软件需求B. 描述客户需求

C. 开发⼀个简单的问题解决⽅案D. 建⽴软件设计的基础

11. 下列的(C)不属于⾯向对象分析模型。A. ⽤例图B. 类图C. 实体关系图D. 顺序图

12. (A)⽤于描述系统中概念层次的对象。A.分析类B. 界⾯类C.实体类D.控制类

13. 在基于⽤例的⾯向对象分析过程中,定义交互⾏为的关键在于通过描述分析类实例之间的(A)将⽤例的职责分配到分析类中。A. 消息传递B 关联关系C 继承关系D 上下⽂关系

14.⽤例的实现细节不会在(B)描述。A. ⽤例说明B. ⽤例图C.活动图D.顺序图

15.⽤例的职责通常分配给(D)的对象。A. 发送消息

B. 接收消息C.发送和接收双⽅D.分析类

16.组织机构图是(C)。A. UML的⼀个最新图B. 类图的⼀种

C.⽤于识别⾓⾊的辅助图D.⽤例图的⼀种

17.在图书馆系统中,假如已经构造了⼀个⼀般借书者类,后来发现图书馆的学⽣和教师在借书中有不同要求。请问在⾯向对象设计中⽤(B)⽅法可以⽅便地设计这两个类?A.信息隐藏B.继承C.动态联编D.代码复制

18.框架是⼀组可⽤于不同应⽤的(A)集合A. 类B.对象C.模块D.代码

19.下⾯哪个选项不能描述⼦系统之间的关系。(D)A. 请求——服务关系B.继承关系C.依赖关系D.数据关系

20.每个⼦系统的接⼝上定义了若⼲(B),体现了⼦系统的功能。A. 说明B.操作C.属性D.关系

21.通常将具有共性的⾮功能要求设计在(B),以减少重新开发的⼯作量。A. 接⼝层B.中间层C.最低层D.最⾼层

22.每个⽤例⾄少应该有⼀个(C),它通常没有属性⽽只有⽅法,只是起协调和控制作⽤。A. 接⼝类

B.实体类C.控制类D.界⾯类

23.类有三种类型即(A)。A. 边界类、实体类、控制类B. 实体类、数据类、界⾯类C. 控制类、实体类、数据类D. 界⾯类、控制类、公共类

24.下⾯那个选项不是正确的⾯向对象设计思想。(C)A.对接⼝进⾏设计B.发现变化并且封装它C.先继承后组合D.先组合后继承

25.定义类的属性类型时尽量使⽤已有的类型,太多的⾃定义类型会降低系统的(A)指标。A.可维护性B.安全性C.开发效率D.可移植性⼆、简答题

1.举例说明类和对象的关系。

答:学⽣可作为⼀个类---学⽣类,每个学⽣就是这个学⽣类的⼀个实例,例如,学⽣张三就是学⽣类的⼀个实例。2.⾯向对象分析的关键步骤有哪些?应建⽴哪⼏个模型?

答:关键步骤有识别问题域的对象并分析它们相互之间的关系,建⽴简洁、精确、可理解的正确模型;应建⽴的模型有功能模型,对象模型,动态模型。

3.什么是实体类、边界类和控制类?为什么将分析类划分成这三种类型?

答:(1)实体类保存要存⼊永久存储体的信息。实体类通常在事件流或交互图中,是对⽤户最有意义的类。边界类位于系统与外界的交界处,包括所有的窗体、报表、系统硬件接⼝、与其他系统的接⼝。控制类负责协调其他类的⼯作。每个⽤例中⾄少应该有⼀个控制类,它控制⽤况中的事件顺序。(2)分为三种类型是因为它们各⾃的功能不同。界⾯类——描述系统与⾓⾊之间的接⼝。控制类——在分析模型内表⽰协调、顺序、事务处理以及控制其他对象的类。实体类——为需要长久保存的信息进⾏建模的类。4.UML中有哪⼏类个视图,它们的作⽤分别是什么?答:(1)⽤例视图(Use-Case view)

⽤例视图⽤于描述系统的功能集。它是从系统外部以⽤户⾓度,对系统做的抽象表⽰。⽤例视图所描述的系统功能依靠于外部⽤户或另⼀个系统触发激活,为⽤户或另⼀个系统提供服务,实现与⽤户或另⼀个系统之间的交互。

⽤例视图中可以包含若⼲个⽤例,⽤例表⽰系统能够提供的功能,⽤例视图是其他视图的核⼼和基础。其他视图的构造依赖于⽤例视图中所描述的内容,因为系统的最终⽬标是实现⽤例视图中描述的功能,同时附带⼀些⾮功能性的特性,因此⽤例视图

影响着所有其他的视图。(2)逻辑视图(Logical view)

如果说⽤例视图描述系统“做什么”,那么逻辑视图就是描述“怎么做”。系统的静态结构描述类、对象和它们之间的关系,反映的是系统静态特征或结构组成。(3)组件视图(Component view)

组件视图⽤来描述系统实现的结构和⾏为特征,反映系统各组成元素之间的关系。组件视图由组件图实现,主要供开发者和管理者使⽤。

(4)并发视图(Concurrency View)

并发视图⽤来描述系统的动态和⾏为特征。并发视图将任务划分为进程或线程形式,通过任务划分引⼊并发机制,可以⾼效地使⽤资源、并⾏执⾏和处理异步事件。除了划分系统为并发执⾏的进程或线程外,并发视图还必须处理通信和同步问题。(5)配置视图(Deployment View)

配置视图体现了系统的实现环境,反映系统的物理架构。配置视图还包括⼀个映射,该映射显⽰在物理架构中组件是怎样分配的。

5. 顺序图在分析阶段的作⽤?

答:顺序图描述了⼀组交互对象间的交互⽅式,它表⽰完成某项⾏为的对象和这些对象之间传递消息的时间顺序6. 活动图在分析阶段的作⽤?

答:活动图反映系统中从⼀个活动到另⼀个活动的流程,强调对象间的控制流程。活动

图特别适合描述⼯作流和并⾏处理过程。具体地说活动图可以描述⼀个操作过程中需要完成的活动;描述⼀个对象内部的⼯作;描述如何执⾏⼀组相关的动作,以及这些动作如何影响它们周围的对象;说明⼀个业务活动中⾓⾊、⼯作流、组织和对象是如何⼯作的。

7.⽐较结构化设计和⾯向对象设计区别?

答:结构化设计:系统被划分成多个模块,这些模块被组织成⼀个树型结构。根就是主模块,叶⼦是最低级的功能模块。这棵树也表⽰调⽤结构:每个模块都调⽤⾃⼰的直接下级模块,并被⾃⼰的直接上级模块调⽤。顶层模块负责收集应⽤程序最重要的那些执⾏策略,底层模块实现处理细节。在这个体系结构中越靠上层位置,概念的抽象层次就越⾼。但是,由于上层模块需要调⽤下层模块,所以这些上层模块就依赖于下层模块的处理细节。也就是说,当实现细节发⽣变化时,抽象也会受到影响;如果想复⽤某⼀个抽象的话,就必须把它依赖的细节都⼀起拖过去。

⾯向对象设计:上层创建的抽象不依赖于任何细节,⽽细节则⾼度依赖于上层的抽象。这种依赖关系的变化正是结构化设计与⾯向对象设计的根本区别。

8.什么是框架,它与“设计”有什么关系?

答:框架是⼀组可⽤于不同应⽤的类的集合。框架中的类通常是⼀些抽象类并且相互有联系,可以通过继承的⽅式使⽤这些类,当⾯向对象设计进⾏底层设计时,对每个类进⾏详细设计,设计类的属性和操作,优化类之间的关系,就可以设计成框架来对类的设计进⾏构架和优化。9.系统的物理构架中应该包括哪些信息?

答:⽤UML的配置图描述系统的物理构架,然后将需求分析阶段捕获的系统功能分配到这些物理节点上。包括的信息为节点的拓扑结构、硬件设备配置、通信路径、各个节点上运⾏的系统软件配置、应⽤软件配置。三、应⽤题

1.⼀个多媒体商店系统包含⼀个由媒体⽂件构成的数据库,有两类媒体⽂件:图像⽂件和声⾳⽂件。每个媒体⽂件都有名称和唯⼀的编码,⽽且⽂件包含作者信息和格式信息,声⾳⽂件还包含声⾳⽂件的时长(以秒为单位)和作者的信息。假设每个媒体⽂件可以由唯⼀的编码所识别,系统要提供以下功能:1)媒体库中可以添加新的特别媒体⽂件。

2)通过给定的⽂件编码查找需要的媒体⽂件。3)从媒体库中删除指定的媒体⽂件。4)给出媒体库中媒体⽂件的数量。

考虑类imageFile和audioFile应该具有哪些恰当的属性和⽅法

答:imageFile类的属性有:Name(⽂件名称),Code(编码),AuthorInfo(作者信息),Format(格式信息);audioFile类除了拥有以上属性外还有属性Time(⽂件时长);

imageFile类的⽅法:Add(imageFile)(添加图像⽂件),Delete(Code)(删除⽂件),GetFile(Code)(查找⽂件),GetNumber()(返回媒体⽂件的数量);

audioFile类的⽅法:Add(audioFile)(添加声⾳⽂件),Delete(Code)(删除⽂件),GetFile(Code)(查找⽂件),GetNumber()(返回媒体⽂件的数量)。

2.若把学⽣看成⼀个实体,它可以分成多个⼦实体,如⼩学⽣、中学⽣和⼤学⽣等。在⾯向对象的设计中,可以创建如下4个类:类Student、类Elementary Student、Middle Student;类University Student。试给出这4个类的属性以及它们之间的关系。

答:Student类为基类,其他三个类都是Student的⼦类。

Student类的属性有:Name(姓名),Sex(性别),Age(年龄),Class(班级)。

Elementary Student类的属性有:IsTeamMember(是否是少先队员),IsGoodStudent (是否是三好学⽣)。Middle Student类的属性为:IsMember(是否是团员),Subject(⽂科理科)。

University Student类的属性为:IsPartyMember(是否党员),Department(学院),Specialty(专业)。三、应⽤题

1.某学校领书的⼯作流程为:学⽣班长填写领书单,班主任审查后签名,然后班长拿

领书单到书库领书。书库保管员审查领书单是否有班主任签名,填写是否正确等,不正确的领书单退回给班长;如果填写正确则给予领书并修改库存清单;当某书的

库存量低于临界值时,登记需订书的信息。每天下班前为采购部门提供⼀张订书单。⽤活动图来描述领书的过程。解:

2.使⽤顺序图描述下⾯的情景,当⽤户在⾃⼰的计算机上向⽹络打印机发出⼀个打印

任务时,他的计算机便向打印机服务器发送⼀条打印命令print(file),打印机服务器如果发现⽹络打印机处于空闲状态,则向打印机发送打印命令print(file),否则向打印队列发送⼀条保存命令store(file)。

3.某报社采⽤⾯向对象技术实现报刊征订的计算机管理系统,该系统基本需求如下:

(1)报社发⾏多种刊物,每种刊物通过订单来征订,订单中有代码,名称,订期,单价,份数等项⽬,订户通过填写订单来订阅报刊。

(2)报社下属多个发⾏站,每个站负责收集登陆订单、打印收款凭证等事务。(3)报社负责分类并统计各个发⾏站送来的报刊订阅信息。请就此需求建⽴对象模型。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top