ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:167.67KB ,
资源ID:27918387      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27918387.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程复习题及答案完整分解.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件工程复习题及答案完整分解.docx

1、软件工程复习题及答案完整分解窗体顶端一、 选择1、文档是软件产品的一部分,没有文档的软件就不称其为软件。 对 2、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。 错3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。 错4、建立用例模型的步骤包括确定角色、确定用例和绘制用例图。 错5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。错6、软件配置管理是一组标识、组织和控制修改源程序的活动。 错7、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。 错8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错

2、误。 对9、边界值分析方法是取输入/输出等价类的边界值作为测试用例。 对10、面向对象的分析是面向计算机系统建立软件系统的对象模型。错11、 (D)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。 A 软件过程 B 软件测试 C 软件生存周期 D 软件工程 12、 ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。 A 质量控制 B 质量管理 C 质量策划 D 质量改进 13、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每个等级都包含了实现该成熟度等级目标的若干(B)。 A 关键

3、实践 B 关键过程域 C 软件过程能力 D 软件过程14、 在软件开发的各种资源中,(D)是最重要的资源。 A 开发工具 B 方法 C 硬件环境 D 人员 15、 软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。 A 固有的 B 人为的 C 可消除的 D 不可降低的 16、 在各种不同的软件需求中,(D)描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明。 A 业务需求 B 功能需求 C 非功能需求 D 用户需求 17、 原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。 A 需求不确定的 B 需求确定的 C 管理信息 D

4、决策支持 18、 (A)意味着一个操作在不同的类中可以有不同的实现方式。 A 多态性 B 多继承 C 类的可复用 D 信息隐蔽 19、 时序图反映对象之间发送消息的时间顺序,它与(D)是同构的。 A 用例图 B 类图 C 活动图 D 协作图 20、 单元测试的测试用例主要根据(D)的结果来设计。 A 需求分析 B 源程序 C 概要设计 D 详细设计窗窗体顶端二、 填空题1、 在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是关联关系。2、 类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是依赖关系。3、 用例及其协作之间是实现

5、关系。4、接口及其实现类或构件之间是实现关系。5、 动物与老虎之间是泛化关系。三、 问答题1、 软件复用的范围不仅仅涉及源程序代码,请至少列出5种可能复用的软件元素。可复用的软件元素包括(选5种): 项目计划、成本估计、体系结构、需求模型和规格说明、设计、用户文档和技术文档、用户界面、数据结构、测试用例。2、 传统瀑布模型的主要缺陷是什么?试说明造成缺陷的原因。传统瀑布模型的主要缺陷及其原因:在项目的早期,用户常常很难清楚地给出所有需求,瀑布模型却要求如此。由于瀑布模型的特点,早期的错误直到开发晚期才能被发现,开发的风险较大。3、某学校需要开发一个学生成绩管理系统,教务人员可以通过该系统维护学

6、生信息、课程信息和成绩信息,学生可以随时查询自己的成绩单,该系统的实体关系图如下所示:请问图中是否应该增加教务人员?试说明理由。不应该增加教务人员,因为教务人员只是该系统的一个使用者,系统不处理其属性信息。4、下面是一段求最大值的程序,其中datalist是数据表,n是datalist的长度。int GetMax(int n, int datalist )int k=0;for ( int j=1; j datalistk ) k=j;return k;(1) 画出该程序的控制流图,并计算其McCabe环路复杂性。控制流图如下,McCabe环路复杂性为3。(2) 用基本路径覆盖法给出测试路径。

7、测试路径:Path1: Path2: Path3: (3) 为各测试路径设计测试用例。测试用例: Path1: 取n=1,datalist0 = 1, 预期结果:k=0 Path2: 取n=2,datalist0 = 1,datalist1 = 0, 预期结果:k=0 Path3: 取n=2,datalist0 = 0,datalist1 = 1, 预期结果:k=15、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。现在提出一个新的需求:一个教师也可以是某些课程的学生,那么下面设计

8、AC中哪一个是最好的?为什么?设计B是最好的。学生和教员均可以从Candidate类继承而来;抽象出Role类,使Candidate类与Role类之间形成多对多的关联关系,实现了一个人既是教师又是某门课的学生这个需求。设计A: 设计B:设计C: 6、 所谓分层体系结构是按层组织软件的一种软件体系结构,其中每层软件建立在低一层的软件层上,下图显示了一种分层体系结构。请选择正确的答案,将其对应的序号填入图中的( )。供选择的答案: 高效性 通用性 保密性 专用性 系统软件 中间 件 应用软件 支撑软件 特定业务 子系统窗体底端一、 选择、(A)是软件生存期中的一系列相关软件工程活动的集合,它由软件

9、规格说明、软件设计与开发、软件确认、软件改进等活动组成。A 软件过程B 软件工具C质量保证D 软件工程、(D )是以追求更高的效益和效率为目标的持续性活动。A 质量策划B 质量控制 C质量保证 D质量改进、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干(A)。 A关键实践B 软件过程性能C 软件过程能力 D软件过程、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,(C)是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额

10、外要求。A 业务需求B 功能要求C 非功能需求D 用户需求、(A)意味着一个操作在不同的类中可以有不同的实现方式。 A 多态性B 多继承C 类的复用D 封装、在面向对象的系统中,系统责任的良好分配原则是(B)。 A在类之间均匀分配B 集中分配在少数控制类中C根据交互图的消息进行分配 D根据个人喜好进行分配、软件配置项是软件配置管理的对象,即软件工程过程中产生的(C)。 A 接口B软件环境C信息项D版本、软件测试计划开始于需求分析阶段,完成于(B)阶段。 A需求分析B软件设计C 软件实现D 软件测试二、问答题、判断下列叙述的正确性,将结果(正确,错误)填入( )中,并改正错误的说法。(1).()

11、在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。 改正:在软件开发的过程中,一个错误修复和改正得越晚,为此所花费的代价就会越高。 (2).()在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。(3).()软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。 改正:软件可行性分析应在需求分析之前,因此,软件需求规格说明书不应成为软件可行性分析的依据。(4).()模型是对现实的简化,建模是为了更好地理解所开发的系统。(5).()UML语言支持面向对象的主要概念,并与具体的开发过程相关。 改正:UML语言支持面向对象的概念,并独

12、立于具体的开发过程。(6).()用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。(7).()好的测试用例应能证明软件是正确的。 改正:好的测试用例在于能发现至今未发现的错误。(8).()白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。(9).()当软件开发项目的进度有可能拖延时,增加开发人员并不能加快进度。(10).()软件技术复审是由用户和测试人员实施的一种质量保证活动。 改正:软件技术复审是由软件开发人员实施的一种质量保证活动。、你认为一个好的软件开发人员应具备哪些基本素质?答:(1)牢固掌握计算机软件的基本知识和技能; (2) 善于

13、分析和综合问题,具有严密的逻辑思维能力; (3) 工作踏实细致,遵循标准和规范,具有严格的科学作风; (4) 工作有耐心、有毅力、有责任心; (5) 善于听取别人的意见,善于与周围人员团结协作,建立良好的人际关系;(6) 具有良好的书面和口头表达能力。、需求工程包括哪些基本活动?每一项活动的主要任务是什么?答:(1)需求获取(问题识别): 采集、识别和提取用户的需求,对问题和需求形成文档化的描述,使各种人员达成一致的理解和认可。 (2) 需求分析: 分析和综合所采集的信息,建立系统的详细逻辑模型。 (3) 需求规格说明: 编写软件需求规格说明书,明确、完整和准确地描述已确定的需求。 (4) 需

14、求验证: 评审软件需求规格说明,以保证其正确性、一致性、完备性、准确性和清晰性。 (5) 需求管理: 定义需求基线,在整个项目过程中跟踪需求状态及其变更情况。、为什么软件需要维护?简述软件维护的过程。答:在软件开发完成交付用户使用后,为了保证软件在一个相当长的时期能够正常运行,就需要对软件进行维护。 软件维护的过程:(1) 确认维护要求。 (2) 对于改正性维护申请,评价错误的严重性。对于严重的错误,立即安排人员,分析问题原因,进行救火性的紧急维护;对于不严重的错误,根据任务情况和轻重缓急进行统一安排。 (3) 对于适应性和完善性维护申请,需要确定申请的优先级,然后安排维护工作。并不是所有的完

15、善性维护申请都必须承担,需要考虑商业需要、现有资源、未来发展方向等进行决定。、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。一个程序读入3个整数,它们分别代表一个三角形的3个边长。该程序判断所输入的整数是否构成一个三角形,以及该三角形是一般的、等腰的或等边的,并将结果打印出来。要求:设三角形的3条边分别为A、B、C,并且(1) 列出等价类表,格式如下:输入条件 有效等价类 无效等价类 是否构成一个三角形(1)A0且B0且C0且ABC且BCA且ACB。(2)A0或B0或C0(3)ABC或ACB或BCA是否等腰三角形(4)AB或AC或BC(5)AB且AC且BC是否等边三角形(6

16、)AB且AC且BC(7)AB或AC或BC(2) 设计测试用例,格式如下:用例n:输入【A,B,C】覆盖等价类(列出等价类序号),输出结果为。用例1:输入【3,4,5】覆盖等价类(1,2,3,4,5,6),输出结果为构成一般三角形。用例2:三者取一输入【0,1,2】覆盖等价类(2),输出结果为不构成三角形。 输入【1,0,2】覆盖等价类(2),输出结果为不构成三角形。 输入【1,2,0】覆盖等价类(2),输出结果为不构成三角形。用例3:三者取一输入【1,2,3】覆盖等价类(3),输出结果为不构成三角形。 输入【1,3,2】覆盖等价类(3),输出结果为不构成三角形。 输入【3,1,2】覆盖等价类(

17、3),输出结果为不构成三角形。用例4:三者取一输入【3,3,4】覆盖等价类(1)(4),输出结果为等腰三角形。 输入【3,4,4】覆盖等价类(1)(4),输出结果为等腰三角形。 输入【3,4,3】覆盖等价类(1)(4),输出结果为等腰三角形。用例5:输入【3,4,5】覆盖等价类(1)(5),输出结果为不是等腰三角形。用例6:输入【3,3,3】覆盖等价类(1)(6),输出结果为等边三角形。用例7:三者取一输入【3,4,4】覆盖等价类(1)(4)(7),输出结果为不是等边三角形。 输入【3,4,3】覆盖等价类(1)(4)(7),输出结果为不是等边三角形。 输入【3,3,4】覆盖等价类(1)(4)(

18、7),输出结果为不是等边三角形。、下图显示了配置管理中的存取和控制,请选择合适的答案,将其对应的序号填入( )中。A B C D 供选择的答案:A: 软件工程人员 配置人员 质量保证人员B: 异步控制 同步控制 存取控制CD: 管理 登入 检出 填写变更请求、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的( )中。 用例及其协作之间是(实现)关系。 在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是(关联)关系。 类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是(依赖)关系。 在MFC类

19、库中,Window类和DialogBox类之间是(泛化)关系。 森林和树木之间是(聚合)关系。、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。现在提出一个新的需求:一个教师也可以是某些课程的学生,那么下面设计AC中哪一个是最好的?为什么?设计C最好。 学生和教员均可以从Candidate类继承而来; 抽象出Role类,使Candidate类与Role类之间形成多对多的关联关系,实现了一个人既是教师又是某门课的学生这个需求。 设计A:设计B:设计C:窗体顶端一、 选择、在软件生存周

20、期的瀑布模型中一般包括计划、(C)、设计、编码、测试、维护等阶段。A 可行性分析B 需求采集C 需求分析D 问题定义、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)是把对象的属性和操作结合在一

21、起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。 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 状态转换图、在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。

22、 错、软件错误可能出现在开发过程的早期,越早修改越好。对 、不完善的系统定义往往是导致软件项目失败的主要原因。对、一个成功的项目唯一提交的就是运行程序。错、只有质量差的软件产品才需要维护。错、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。错、一个好的测试用例在于能发现至今未发现的错误。对、面向对象的分析是面向计算机系统建立软件系统的对象模型。错、软件工作的考虑范围主要是程序设计和实现。 错、等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。 对二、 问答题、(共10分)下图显示了McCall质量模型,请选择正确的答案,并将其对应

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

24、要、及时交付、不超过预算和无故障的软件,其主要目标如下: (1) 合理预算开发成本,付出较低的开发费用;(2) 实现预期的软件功能,达到较好的软件性能,满足用户的需求;(3) 提高所开发软件的可维护性,降低维护费用;(4) 提高软件开发生产率,及时交付使用。2. 原型化方法主要用于解决什么问题?试说明这种方法的主要优缺点。建立原型的主要原因是为了解决在产品开发的早期阶段需求不确定的问题,用户、经理和其他非技术项目风险承担者发现在确定和开发产品时,原型可以使他们的想象更具体化。原型在软件开发过程中可以起到以下主要作用:(1) 明确并完善需求 原型作为一种需求工具,它初步实现所理解的系统的一部分。

25、用户对原型的评价可以指出需求中的许多问题,在你开发真正产品之前,可以最低的费用来解决这些问题。(2) 探索设计选择方案 原型作为一种设计工具,用它可以探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。(3) 发展为最终的产品 原型作为一种构造工具,是产品最初子集的完整功能实现,通过一系列小规模的开发循环,你可以完成整个产品的开发。3. 在下列用例图中,哪些是系统角色?Bank network、Manager、Clerk、(共20分)下面是一段插入排序的程序,将Rk+1插入到R1k的适当位置。R0 = Rk+1; j = k;while (Rj R0)Rj+1 = Rj

26、;j-;Rj+1 = R0;用路径覆盖方法为它设计足够的测试用例(while循环次数为0、1、2次)。 画出该程序的流程图:测试用例设计循环次数输 入 数 据预 期 结 果覆 盖 路 径jRi-2 Ri-1RiRi+1R0jRi-2 Ri-1RiRi+1约束路 径0i-122i-12=2i13422i-21234=1 单项选择题1. 哪个活动可在可行性分析阶段进行?(D) A.编码 B.测试 C.设计 D.制订市场营销计划2. 在数据流程图中,有名字及方向的成分是(C)。 A.控制流 B.信息流 C.数据流 D.信号流3. 以下各图中不是UML使用的图是(A)。 A.数据流程图 B.用例图 C

27、.类图 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. 可行性

28、分析研究的目的是(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,现从输入的角度考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1