东大23年9月《软件工程与UML建模》复习题及答案

发布时间:2023-09-19 00:09:57浏览次数:80
1 / 7东 北 大 学 继 续 教 育 学 院软件工程与 UML 建模 复习题 一、 单选题1. 是在系统之外,透过系统边界与系统进行有意义交互的任何事物A).相关系统 B).Use Case C).Class D).Actor2.软件工程是以 为核心A).过程 B).面向对象 C).软件开发 D).质量3.“系统应具有很高的可靠性,使用该产品的前 3 个月,系统不应该出现崩溃(数据不可恢复)的现象”,这属于 A).功能性需求 B).客观需求 C).主观需求 D).非功能性需求4.“系统每天晚上自动生成进货报表”,Actor 是: A).系统 B).其它系统 C).时间 D).报表审阅者5.数据流程图是一个分层的概念模型,分三个层次: ,分别描述系统的不同特征A).总体图、二级图、三级图 B).总体图、二级图、细节图C).总体图、零级图、细节图 D).总体图、次级图、细节图6.正式运行系统后能够产生的收益被称为 A).直接效益 B).运营效益 C).最佳效益 D).启动效益7.“以相对短的时间和相对低的成本来确定给定的问题在其约束条件内是否有解、有几种解以及哪个是最佳解”,这指的是软件开发过程中的 课程名称: 软件工程与 UML 建模 2 / 7A).问题定义 B).可行性研究 C).需求分析 D).设计8.在处理过程定义中,有时存在多重嵌套的情况,对于复杂的条件组合问题,用自然语言往往不能直观、清楚地表述处理的过程,因此,常常使用 方法。A).数据字典 B).判定表和判定树 C).用例图 D).螺旋模型9.设 C(X)定义问题 X 的复杂性函数,E(X)定义解决问题 X 所需要工作量的函数,对于两个问题 p1 和 p2,一般情况下如果 C(p1)<C(p2) 则 A).E(p1)>E(p2) B).C(p1+p2)=C(p1)+C(p2)C).E(p1+p2)>E(p1)+E(p2) D).E(p1+p2)<E(p1)+E(p2)10.以下各种图不是 UML 使用的图是 A).用例图 B).类图 C).数据流程图 D).顺序图 11.模块尺寸太大时,应 A).分解以提高内聚 B).分解以提高耦合 C).合并以提高内聚 D).分解以降低内聚12. 是指有定义完备接口的、明确规定了上下文以来关系的合成单元,它可以被第三方开发、并且能够被独立地部署,具有自包含的属性,其内部构造和特征不可见。A).组件 B). 模块 C). 类 D). 子系统 13.在面向对象的开发中,将大量的相关的类、接口、构件、节点、协作、用例和图等元素组织成较大的组块,这种把元素组织成组的通用机制称为 A).解耦 B). 包 C). 分治 D).抽象 14.在软件过程中,下列活动属于辅助活动的是 A).设计 B).集成 C).退役 D).风险管理课程名称: 软件工程与 UML 建模 3 / 715. 以下程序体现的是 耦合public PrintReport(String command) { if (command.equals("IBM") { PrintIBMData(); } else { if (command.equals("Mircosoft") { PrintMicrosoftData(); }else { PrintAllData(); } }} A).例程调用耦合 B).控制耦合 C).标记耦合 D).数据耦合16.以下用例命名中,最合理的是 A).进行宠物搜索 B).查询宠物 C).宠物查询 D).进行宠物查询17.某系统中有两个用例:一个用例的参与者是用户,用例是“注册”;另一个用例的参与者是系统管理员,用例是“审核用户注册”。这两个用例之间是什么关系? A).包含关系 B).没有关系 C).扩展关系 D).泛化关系18.在软件的层次结构中,“一个模块被其他模块直接调用的调用者的数量”是指 A).深度 B).扇入 C).扇出 D).耦合19.以下类的命名中,最合理的是 A). BusVehicle B). Routes C). passenger D). Stop 20.在软件过程中,下列活动属于辅助活动的是 A).设计 B).集成 C).退役 D).风险管理21.下面用例模型体现了用例间的 关系课程名称: 软件工程与 UML 建模 4 / 7A).泛化、包含和扩展 B).包含和扩展 C).分解、包括和扩充 D).分解、包含和扩展 22.下图体现了面向对象中类的 A).复杂性 B). 可传递性 C).自反关联 D). 继承关系选择题答案1-5 DDDCC 6-10 BBBDC 11-15 AABDB16-20 BBBAD 21-22 AC二、 填空题1. 又称玻璃盒测试,即模块内部逻辑对测试者是可见的。2.在面向对象的开发方法中, 是一些不包含具体实现方法特征的集合。3. 是一个将用户需求转化为软件系统所需要的活动的集合。4. 是把一个模块作为独立的程序单元进行测试,以保证它能够正确执行规定的功能。5.在软件设计中,为了降低复杂度,应该隐藏或者推迟考虑细节,这在软件工程中被称为 填空题答案课程名称: 软件工程与 UML 建模 5 / 7白盒测试、接口、设计、单元测试、抽象三、 简答题1.为什么需求必须是可验证的?请为某学校学籍管理系统的“系统应该用户友好”这一需求设计可行的验收标准。需求必须是可验证的,这是因为:1) 需求通过了“验证”,才能表明所开发的系统符客户和用户的要求。2) 不可验证的需求,仅仅是对需求的一种主观愿望,对于设计和测试等活动而言都是缺乏意义的。3) 通过需求的验证标准,可以度量出系统实现的质量。经过开发方提供培训服务,管理员能够在 3 个培训工作日内掌握系统的所有功能,并能独立工作。在开始的连续 30 个工作日内,因不熟悉功能而需要开发方上门服务的次数最多有 1 次。2.耦合有哪些分类?在面向对象的软件开发中,如何为系统降耦?耦合的类型,它们是:内容耦合、公共耦合、外部耦合、控制耦合、标记耦合和数据耦合等。降耦方法:使用单向关联或依赖关系,通过印记耦合、通过接口、或通过数据耦合等。3.什么是 BRO(5 分)?考虑条件 C1: (E1>E2) & (E3<E4),分析它的约束集合(5 分)K.C.Tai 提出了一个条件测试策略,被称为分支和关系算子测试方法( BRO),在条件测试中所有布尔变量与关系算子都不重复出现,并且在没有相同的变量的情况下,能够检测出条件中的分支和关系算子错误。BRO 策略使用了条件约束的概念。对于一个有 n 个简单条件的条件 C 的约束定义为(D1,D2,…,Dn),其中 Di(1≤i≤n)是规定了条件 C 中第 i 个简单条件输出的约束符号。如果在条件 C 的执行中,其每个简单条件的输出满足 D 中对应课程名称: 软件工程与 UML 建模 6 / 7的约束,则称 C 的执行覆盖了 C 的条件约束 D。{(>,<),(=,<),(<,<),(>,>), (>,=),(<,=),(=,=)}4. 软件有哪些特征?为什么会出现软件危机?软件开发存在以下特性:1)软件具有难以描述性。2)软件开发缺乏可见性。3)软件开发具有复杂性。4)软件开发具有变化性。5)软件开发具有风险.6)软件开发具有强合作性。软件开发的这些特性使得人们深陷在软件的危机当中。所谓软件危机,是指在软件开发和维护过程中所存在的长周期、高成本、低质量等问题。5. 请解释耦合和内聚的概念内聚是一个模块内部各部件之间联系紧密程度的度量。分治将任务分解为若干个小的任务,内聚则强调分解时将相关的内容放到一起。内聚用于确定系统中的每个模块是否是一个合理的程序单元,即是否是一个合理的模块。一个模块内的各个部件联系越紧越好,说明它们应该一起构成这个模块。耦合是模块间相互联系强弱的度量,用于帮助设计者保证设计出的系统是由一系列松散耦合的模块组成。模块之间耦合的强弱取决于模块间传递数据的方式、接口复杂情况以及传递数据的类型。四、 假设你是一个项目经理,将要率领一个软件开发小组开发一个东北大学的学生学籍和课程名称: 软件工程与 UML 建模 7 / 7成绩管理系统。这是一个在网络上运行的系统,学生处负责对学生信息的管理,学校的多个部门都可以查询到学生的信息,学生可以查询自己的成绩状况。1. 分析并描述这个系统的 Use Case,包括用例模型和其中某一个用例的文档。参考答案:可从 Actor 和用例之间的关系等方面进行评分。用例之间应该有 3 种关系。用例文档应包括用例描述、前置条件、后置条件、基本步骤和异常步骤等。课程名称: 软件工程与 UML 建模
文档格式: docx,价格: 10下载文档
返回顶部