学生高级软件工程复习题
一一 、、 选选 择择 题题 ::(( 共共1 1 0 0小小 题题 ,, 每每 题题1 1分分 ,, 共共1 1 0 0分分 )) 1.使得在多个类中能够定义同一个操作或属性名,并在每一个类中有不同的实现的一种方法是 【 B】 。 A)继承 B)多态性 C)约束 D)接口 2.类图应该画在 Rose 的哪种【 B】视图中。 A)Use Case ViewB)Logic View C)Component ViewD)Deployment View 3.在 UML 中,类之间的关系有一种为关联关系,其中多重性用来描述类之间的对应关系,下面哪个 不是其中之一【 D】 A)0 … 1B)0 … *C)1 … *D)* … * 4.关于下面的类图中所表示的关联关系,下列四个选项中说法错误的是: 【 D】 A. 一个学生可以选 1 到多门课程B. 一个老师可以教 0 到多门课程 C. 一门课程只能由一位老师上课D. 一门课程可以被 0 到多个学生选课 5.和包相比,子系统具有更丰富的语义,它能够通过接口对外提供行为;下面四个选项中,哪个是包 和子系统都具有的特点: 【】 A. 一种分组机制 B. 对外提供行为 C. 完全封装实现细节 D. 容易被替换 6. “交通工具”类与“汽车”类之间的关系属于【】 。 A)关联关系 B)实现关系 C)依赖关系 D)泛化关系 7.下图中的空心箭头连线表示【】关系 A)泛化 B)包含 C)扩展 D)实现 8.关于通信图的描述,下列哪个不正确【】 A)通信图作为一种交互图,强调的是参加交互的对象的组织; B)在 ROSE 工具中,通信图可在顺序图的基础上按“F5”键自动生成; C)通信图中有消息流的顺序号; D)通信图是顺序图的一种 9.计算机由中央处理器、内存、软盘、硬盘、显示器、键盘鼠标等组成。 那么 Computer 类和其他类(CPU、RAM、FloppyDisk、Monitor、Keyboard、mouse)之间的关系是 【】 。 A)泛化关系B)实现关系C)包含关系D)聚集关系 10.“一个研究生在软件学院做助教(teaching assistant) ,同时还在校园餐厅打工做收银员 (cashier) 。也就是说,这个研究生有3 种角色:学生、助教、收银员,但在同一时刻只能有一种角 色。 ” 根据上面的陈述,下面哪个设计是最合理的【】 A B A B C D C D 11.下列对系统边界的描述中,不正确的是【】 。 A.系统边界是指系统与系统之间的界限。 B.用例图中的系统边界用来表示正在建模系统的边界。 C.边界内表示系统的组成部分,边界外表示系统外部。 D.可以使用 Rose 绘制用例图中的系统边界。 12.下列关于类方法的声明,不正确的是【】 。 A.方法定义了类所许可的行动。 B.从一个类所创建的所有对象可以使用同一组属性和方法。 C.每个方法应该有一个参数。 D.如果在同一个类中定义了类似的操作,则它们的行为应该是类似的。 13.下列说法不正确的是【】 。 A)用例和参与者之间的对应关系又叫做通信关联,它表示参与者使用了系统中的哪些用例 B)参与者只能是人,不能是子系统、时间等 C)特殊需求指的是一个用例的非功能性需求和设计约束 D)在扩展关系中,基础用例提供了一个或者多个插入点, 扩展用例为这些插入点提供了需要插 入的行为 14.下列对用例的泛化关系描述不正确的是【】 。 A)用例的泛化关系中,所有的子用例都有相似的目的和结构。注意它们是整体上的相似 B)用例的泛化关系中, 基础用例在目的上可以完全不同,但是它们都有一段相似的行为, 它们 的相似是部分的相似不是整体的相似 C)用例的泛化关系类似于面向对象中的继承, 它把多个子用例中的共性抽象成一个父用例。 子 用例在继承父用例的基础上可以进行修改 D) 用例的泛化指的是一个父用例可以被特化形成多个子用例, 而父用例和子用例之间的关系就 是泛化关系 15.构架分析一个很重要的原则是避免包之间的循环依赖,下面四个选项中哪个构架示意图中不存在 循环依赖: 【】 (A) (B) (C) (D) 16.在某系统中,存在如下的业务陈述:①一个客户提交0 个或多个订单;②一个订单由一个且仅由 一个客户提交。系统中存在两个类:“客户”类和“订单”类。对应每个“客户”类的实例,存在 【】 “订单”类的实例;对应每个“客户”类的实例,存在 0 个或多个“客户”类的实例。 A)0 个B)1 个C)1 个或多个D)0 个或多个 17.用例(Use-case)用来描述系统在事件做出响应时所采取的行动。用例之间是具有相关性的。在 一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户帐号是否正确。那么,用例“创 建新订单”、“更新订单”与用例“检查用户帐号”之间是【】关系。 A)包含(include)B)扩展(extend) C)分类(classification)D)聚集(aggregation) 18.下列关于接口关系的说法不正确的是【】 A)接口是一种特殊的类 B)所有接口都是有构件型的类 C)一个类可以通过实现接口从而支持接口所指定的行为 D) 在程序运行的时候,其他对象不仅需要依赖于此接口,还需要知道该类对接口实现的其他信息 19.用例从用户角度描述系统的行为。用例之间可以存在一定的关系。假设在“图书馆管理系统”用 例模型中,所有用户使用系统之前必须通过“身份验证” , “身份验证”可以有“密码验证”和“智能 卡验证”两种方式,则“身份验证”与“密码验证”和“智能卡验证”之间是【】 关系。 A)关联B)包含C)扩展D)泛化 20.下列关于使用用例的目的,不正确的是【】 。 A)确定系统应具备哪些功能 B)为系统的功能提供清晰一致的描述,方便开发人员传递系统的需求 C)为系统验证工作打下基础 D)减少程序员的编码工作量,提高开发效率 21.当使用用例模型对一个工资系统进行建模时, 下列哪个选项可以被认定为该系统的角色 (Actor) : 【】 A. 接收工资单的银行B. 工资系统源代码程序C. 工资单D. 工资数据库 22.关于分析和设计区别,下列哪个说法是错误的: 【】 A. 分析侧重于问题域,设计侧重于解域 B. 一般情况下,设计模型比分析模型复杂得多 C. 分析解决做什么的问题,设计则解决怎么做的问题 D. 分析模型主要侧重功能需求,而设计模型则要充分考虑各种非功能需求 E. 一般情况下,分析模型不考虑系统结构,而设计模型则对系统结构进行全面设计 23.关于系统架构,下列哪个说法是错误的: 【】 A. 软件架构包含着一套关于软件系统组织的重要结论(decision) B. 软件架构决策是最基础的决策,它的改变会带来巨大的影响 C. 架构为设计提供了一个框架 D. 架构是静态的,而不是动态的 24.关于软件模块分层和分区的注意事项,下列说法中,哪个