好文档 - 专业文书写作范文服务资料分享网站

软件工程复习题及答案(完整)

天下 分享 时间: 加入收藏 我要投稿 点赞

供选择的答案:A: ① 软件工程人员 ② 配置人员 ③ 质量保证人员B: ④ 异步控制 ⑤ 同步控制 ⑥ 存取控制 C~D: ⑦ 管理 ⑧ 登入 ⑨ 检出 ⑩ 填写变更请求

7、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的( )中。 ① 用例及其协作之间是(实现)关系。

② 在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是(关联)关系。 ③ 类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是(依赖)关系。 ④ 在MFC类库中,Window类和DialogBox类之间是(泛化)关系。 ⑤ 森林和树木之间是(聚合)关系。

8、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道

所有注册课程的学生。

现在提出一个新的需求:\一个教师也可以是某些课程的学生\,那么下面设计A~C中哪一个是最好的?为什么?

设计C最好。 学生和教员均可以从Candidate类继承而来; 抽象出Role类,使Candidate类与Role类之间形成多对多的关联关系,实现了\一个人既是教师又是某门课的学生\这个需求。 设计A:

设计B:

设计C:

精选

一、 选择

1、在软件生存周期的瀑布模型中一般包括计划、(C)、设计、编码、测试、维护等阶段。

A 可行性分析B 需求采集C 需求分析D 问题定义

2、ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。

A 质量控制B 质量管理C 质量策划D 质量改进 3. 软件工程的基本要素包括方法、工具和(A)。 A过程B 软件系统C 硬件环境D 人员

4. 软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。 A 固有的B 人为的C 可消除的D 不可降低的 5. 软件需求分析阶段的测试手段一般采用(C)。 A总结B 阶段性报告C 需求分析评审D 不测试

6. (C)是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。 A多态性 B继承 C 封装D 消息

7. 协作图反映收发消息的对象的结构组织,它与(D)是同构的。 A用例图B类图C 活动图D 时序图

8. 软件测试是为了(B)而执行程序的过程。 A纠正错误B发现错误C 避免错误D 证明正确 9. 面向对象分析是对系统进行(A)的一种方法。 A需求建模B 程序设计C 设计评审D 测试验收

10. 在结构化分析方法中,(C)表达系统内部数据运动的图形化技术。 A 数据字典B 实体关系图C 数据流图D 状态转换图

11、在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。 错 12、软件错误可能出现在开发过程的早期,越早修改越好。对 13、不完善的系统定义往往是导致软件项目失败的主要原因。对 14、一个成功的项目唯一提交的就是运行程序。错 15、只有质量差的软件产品才需要维护。错

16、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。错 17、一个好的测试用例在于能发现至今未发现的错误。对

18、面向对象的分析是面向计算机系统建立软件系统的对象模型。错 19、软件工作的考虑范围主要是程序设计和实现。 错

20、等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。 对 二、 问答题

1、(共10分)下图显示了McCall质量模型,请选择正确的答案,并将其对应的序号填入图中的括号( 3596)。

精选

供选择的答案: ① 高效性 ② 通用性 ③ 可测试性 ④ 专用性 ⑤ 可复用性 ⑥ 可使用性 ⑦ 应用软件 ⑧ 支撑软件 ⑨ 正确性 ⑩ 硬件环境 2、(共10分)UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的( )中。 1. 在学校中,一个导师可以指导多个研究生,一个研究生可以由多个导师指导,那么导师和研究生之间是(关联)关系。 2. 交通工具与卡车之间是(泛化)关系。 3. 公司与部门之间是(聚合)关系。 4. 图形与矩形之间是(泛化)关系。 5. 参数类及其实例类之间是(实现)关系。 3、(共20分)回答下列问题: 1. 软件工程的基本目标是什么?

软件工程旨在开发满足用户需要、及时交付、不超过预算和无故障的软件,其主要目标如下: (1) 合理预算开发成本,付出较低的开发费用;

(2) 实现预期的软件功能,达到较好的软件性能,满足用户的需求; (3) 提高所开发软件的可维护性,降低维护费用; (4) 提高软件开发生产率,及时交付使用。

2. 原型化方法主要用于解决什么问题?试说明这种方法的主要优缺点。

建立原型的主要原因是为了解决在产品开发的早期阶段需求不确定的问题,用户、经理和其他非技术项目风险承担者发现在确定和开发产品时,原型可以使他们的想象更具体化。原型在软件开发过程中可以起到以下主要作用:

(1) 明确并完善需求 原型作为一种需求工具,它初步实现所理解的系统的一部分。用户对原型的评价可以指出需求中的许多问题,在你开发真正产品之前,可以最低的费用来解决这些问题。

(2) 探索设计选择方案 原型作为一种设计工具,用它可以探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。

(3) 发展为最终的产品 原型作为一种构造工具,是产品最初子集的完整功能实现,通过一系列小规模的开发循环,你可以完成整个产品的开发。

3. 在下列用例图中,哪些是系统角色?

Bank network、Manager、Clerk

精选

4、(共20分)下面是一段插入排序的程序,将R[k+1]插入到R[1…k]的适当位置。 R[0] = R[k+1]; j = k;

while (R[j] > R[0]){ R[j+1] = R[j]; j--;} R[j+1] = R[0];

用路径覆盖方法为它设计足够的测试用例(while循环次数为0、1、2次)。

画出该程序的流程图:测试用例设计

循环 次数 j R[i-2] 0 1 2 i - i - i - i - i 1 i 2 输 入 数 据 R[i-1] - - 1 2 3 3 R[i] 1 1 3 3 4 4 R[i+1] 2 1 2 2 2 2 R[0] 2 1 2 2 2 2 j i i i-1 i-1 i-2 i-2 R[i-2] - - - - 1 2 预 期 结 果 R[i-1] - - 1 1 2 2 R[i] 1 1 2 2 3 3 R[i+1] 2 1 3 3 4 4 约束 < = >< >= >>< >>= 覆 盖 路 径 路 径 ①③ ①③ ①②③ ①②③ ①②②③ ① ②③ 单项选择题

1. 哪个活动可在可行性分析阶段进行?(D) A.编码 B.测试 C.设计 D.制订市场营销计划 2. 在数据流程图中,有名字及方向的成分是(C)。 A.控制流 B.信息流 C.数据流 D.信号流 3. 以下各图中不是UML使用的图是(A)。 A.数据流程图 B.用例图 C.类图 D.顺序图 4. 下图中,类的关系是(A)。

商船岛屿

A.依赖 B.关联 C.聚集 D.泛化 5. 甘特图是一种(D)。 A.UML模型 B.过程模型 C.系统构架的抽象模型 D.进度计划的表达方式 6. 下面不属于软件配置管理任务的是(D)。 A.变更控制 B.配置审核 C.状态报告 D.用例分析

7. 数据耦合、公共耦合、印记耦合、控制耦合的耦合性从低到高的顺序是(B) A.数据、公共、印记、控制 B.数据、印记、控制、公共 C.控制、数据、印记、公共 D.控制、数据、公共、印记

精选

8. 软件需求分析的主要任务是准确地定义出要开发的软件系统是(C) A.如何做 B.怎么做C.做什么D.对谁做 9. 可行性分析研究的目的是(B)

A.争取项目B.项目值得开发否C.开发项目D.规划项目 10. 具有风险分析的软件生存周期模型是(C) A.瀑布模型B.喷泉模型C.螺旋模型D.增量模型

11. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C) A.软件工程 B.软件周期C.软件危机D.软件产生 12. 程序的三种基本控制结构的共同特点是(C)

A.只能用来描述简单程序 B.不能嵌套使用C.单入口,单出口D.仅用于自动控制系统 13. 数据字典是用来定义_________中的各个成份的具体含义的。(D) A.流程图B.功能结构图C.系统结构图D.数据流图

14. 为了使软件具有清晰结构和良好的风格,下面关于程序设计风格的叙述不可取的有(C)

A. 尽量不要进行浮点数的相等比较B. 应当有适量的注释C. 尽可能对代码优化D. 使用有意义的标识符 15. 使用白盒技术设计测试用例的方法包括(B) A.边界值分析B.循环测试C.等价类划分D.回归测试 16. 下列模块内聚中,内聚性最强的是(A)。

A.功能内聚 B.偶然内聚 C.过程内聚 D.顺序内聚

17. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(C) A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法 18. 下列哪一种程序设计语言不是面向对象的(D)。 A.C++ B.JAVA C.C# D.C 19. 下列测试方法不属于集成测试的是(D)。 A.自顶向下 B.自底向上 C.三明治测试 D.自中间向两极测试 20. 关于用例的概念,下列说法不正确的是(C)。

A.用例是一个连贯的功能性单元B.用例是通过Actor确认的C.可以借助状态转换图来描述用例D.用例是一个类,而不是事件

21. 源程序文档化要求在每个模块之前加序言性注释。该注释内容不应有(B) A.模块的功能B.语句的功能C.模块的接口D.开发历史 22. DFD中的每个加工至少需要(D )

A. 一个输入流 B. 一个输出流 C. 一个输入或输出流 D. 一个输入流和一个输出流 23. 为了提高模块的独立性,模块之间最好是( D) A. 控制耦合 B. 公共耦合 C. 内容耦合 D. 数据耦合 24. 测试的关键问题是(D )

A. 如何组织对软件的评审 B. 如何验证程序的正确性 C. 如何采用综合策略 D. 如何选择测试用例 25. 软件维护困难的主要原因是(C )

A. 费用低 B. 人员少 C. 开发方法的缺陷 D. 得不到用户支持

26. 源程序文档化要求在每个模块之前加序言性注释。该注释内容不应有(D) A. 模块的功能 B. 语句的功能 C. 模块的接口 D. 开发历史 27. 结构化程序设计采用的三种基本控制结构是(C)

A. 顺序、分支、选择 B. 选择、循环、重复 C. 顺序、选择、循环 D. 输入、变换、输出 28. 通信内聚、过程内聚、顺序内聚和时间内聚的内聚性从高到低顺序是(D)

A.通信、过程、顺序、时间B.通信、时间、顺序、过程C.顺序、通信、时间、过程D.顺序、通信、过程、时间

29. 使用程序设计的控制结构导出测试用例的测试方法是(B) A、黑盒测试 B、白盒测试 C、边界测试 D、系统测试

精选

软件工程复习题及答案(完整)

供选择的答案:A:①软件工程人员②配置人员③质量保证人员B:④异步控制⑤同步控制⑥存取控制C~D:⑦管理⑧登入⑨检出⑩填写变更请求7、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的()中。①用例及其协作之间是(实现)关系。②在学校中,一个学生可以选修多门
推荐度:
点击下载文档文档为doc格式
021cq52lon207lq1bbd16zh7s4eqd201d2i
领取福利

微信扫码领取福利

微信扫码分享