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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

完整word版软件工程习题集+答案.docx

1、完整word版软件工程习题集+答案软件工程习题集一 软件与软件工程一、选择题1.软件的主要特性是() A、无形性 B、高成本 C、包括程序和文档D、可独立构成计算机系统2.软件工程三要素是()A、技术、方法和工具B、方法、工具和过程C、方法、对象和类D、过程、模型、方法3.包含风险分析的软件工程模型是() A、螺旋模型B、瀑布模型 C、增量模型D、喷泉模型4.软件工程的主要目标是() A、 软件需求B、 软件设计 C、 风险分析D、 软件实现5.下列属于面向对象开发方法的是()A、BoochB、UMLC、CoadD、OMT6.软件危机的主要表现是() A、软件成本太高 B、软件产品的质量低劣

2、C、软件开发人员明显不足 D、软件生产率低下7.软件开发方法的主要工作模型有() A、螺旋模型 B、循环模型 C、瀑布模型 D、专家模型8.软件工程的目标有() A、易于维护 B、低的开发成本 C、高性能 D、短的开发期9.软件工程学的目的和意义是()A、应用科学的方法和工程化的规范管理来指导软件开发。B、克服软件危机。C、作好软件开发的培训工作。D、以较低的成本开发出高质量的软件。二、判断题1.软件就是程序,编写软件就是编写程序。2.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。3.结构化方法的工作模型是使用螺旋模型进行开发的。4.结构化方法和JSP方法都不适合于大型软件的开发5.

3、原型化开发方法包括生成原型和实现原型两个步骤。6.面向对象的开发方法包括面向对象的分析、面向对象的设计和面向对象的程序设计。7.软件危机的主要表现是软件的需求量迅速增加,软件价格上升。8.软件工具的作用是为了延长软件产品的寿命。9.软件工程过程应该以软件设计为中心,关键是编写程序。10.RCP法与RSP法的主要区别是前者采用循环渐进的开发方式,原型将成为最终的产品,而后者将被废弃。三、简答题1.软件产品的特性是什么?2.软件发展有几个阶段?各有何特征?3.什么是软件危机?其产生的原因是什么?4.什么是软件生存周期模型?它有哪些主要模型?5.有哪些主要的软件开发方法?6.软件生命期各阶段的任务是

4、什么?二 软件项目管理一、选择题1、软件工程管理的对象是:()A、软件开发人员B、软件工程项目C、软件开发过程D、软件开发速度 2、以下对软件工程管理的任务和目标最准确的描述是:()A、明确软件开发项目的工作范围、可能遇到的风险、需要的资源;B、明确软件开发中要实现的任务和需经历的里程碑;C、明确所需的工作量以及进度安排;D、以上所有答案3、在软件管理资源要求中,最为重要的、起决定性的资源是以下哪种资源:()A、硬件资源B、软件资源C、人力资源D、软件复用性及软件部件库4、开发一个软件工程的第一部是:()A、可行性研究B、组织开发人员C、购买开发工具D、开发任务指定5、可行性报告中不包括一下哪

5、个方面:()A、技术上的可行性B、经济上可行性C、人力的可行性D、经济上的可行性6、影响软件开发成本估算的因素不包括以下那项:()A、软件人员业务水平B、软件开发规模及复杂度C、开发所需时间D、开发所需硬件资源7、自底向上的估计法的特点是:()A、简单、工作量小、误差大B、精度高,但缺少子任务(模块)间的联系C、估算较精确,但区分类比较困难D、复杂、不可行,一般不采用此种方法8、对一个软件工程来说,占总工作量的百分比最大的工作是:()A、需求分析B、软件设计C、编码工作D、测试和调试工作9、软件质量度量的方法包括:()A、精确度量B全面度量C、简易度量D、以上所有答案10、CMM表示:()A、

6、软件过程成熟度模型B、软件过程工业化控制C、国际软件质量认证D、软件统一性标准。二、判断题1、软件工程管理是对软件项目的开发管理,是对整个软件生存期的所有活动进行管理。2、软件工程管理的主要任务有:软件可行性分析与成本估算、软件生产率及质量管理、软件售后管理3、直接影响软件开发风险的因素是成本估算4、软件开发配备人员的基本原则是:重质量、重数量、重培训5、“简易度量”不是软件质量度量的方法6、CMM是指导软件开发的一种面向对象的新技术7、CMM将软件过程的成熟度分为以下五个级别:初始级、可重复级、已定义级、已管理级和优化级8、CMM对开发一个软件所做的基本要求是“有章可循、有章必循”三、简答题

7、1. 简述一个成熟的软件机构应具有的特点2、CMM将软件过程的成熟度分为哪几个级别?三 需求分析一、选择题1.需求分析的主要目的是()A、系统开发的具体方案B、进一步确定用户的需求C、解决系统是“做什么的问题”D、解决系统是“如何做的问题”2.需求分析的主要方法有()A、形式化分析方法B、PAD图描述C、结构化分析(SA)方法D、OOA法3.面向对象的分析方法主要是建立三类模型,即()。、系统模型、ER模型、应用模型 、对象模型、动态模型、应用模型、模型、对象模型、功能模型 、对象模型、动态模型、功能模型4.法的主要描述手段有()、系统流程图和模块图、图、数据词典、加工说明、软件结构图、加工说

8、明、功能结构图、加工说明5.画分层图的基本原则有()。、数据守恒原则 B、分解的可靠性原则C、子、父图平衡的原则 D、数据流封闭的原则6.在E-R模型中,包含以下基本成分()。A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、联系7.画DFD图的主要目的是()A、作为需求分析阶段用户与开发者之间交流信息的工具。B、对系统的数据结构进行描述。C、对目标系统的层次结构进行描述。D、作为分析和设计的工具。8.数据字典是数据流图中所有元素的定义的集合,一般由以下4类条目组成()。A、数据说明条目、控制流条目、加工条目、数据存储条目B、数据流条目、数据项条目、文件条目、加工条目

9、C、数据源条目、数据流条目、数据处理条目、数据文件条目D、数据流条目、数据文件条目、数据池条目、加工条目9.在需求分析阶段主要采用图形工具来描述的原因是()。A、图形的信息量大,便于描述规模大的软件系统。B、图形工具能够极好地概括描述一个系统的信息,比文字叙述能够更好地表达重要的细节。C、图形能够更加直观地描述目标系统,便于用户理解和交流,有利于开发者与用户之间达成一致的需求。D、图形比文字描述简单、形象二、判断题1.在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案。2.法是面向数据流,建立在数据封闭原则上的需求分析方法。3.法既是需求分析方法又是软件设计方法。4.在面向对象的需求

10、分析方法中,建立动态模型是最主要的任务。5.加工小说明是对系统流程图中的加工进行说明。6.判定表的优点是容易转换由计算机实现,缺点是不能够描述组合条件。7.需求分析的主要方法有SD法、OOA法及HIPO法等。8.分层的DFD图可以用于可行性分析阶段,描述系统的逻辑结构。9.信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R图。10.用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。三、简答题1.什么是需求分析?需求分析阶段的基本任务是什么?2.M公司的软件产品以开发实验型的新软件为主。用瀑布模型进行软件开发已经有近十年了,

11、并取得了一些成功。若你作为一名管理员刚加入M公司,你认为快速原型法对公司的软件开发更加优越,请向公司副总裁写一份报告阐明你的理由,切记:副总裁不喜欢报告长度超过一页(B5)。3.如何画分层数据流图?4.加工小说明有哪些描述方法?5.常用的软件需求分析的方法有哪些?四 面向对象的需求分析一、选择题1.面向对象程序设计的基本机制()A继承 B消息 C方法 D结构2.下列属于面向对象的要素的() A分类性 B抽象 C共享 D封装3.下列选项中属于面向对象开发方法的有()A Booch B CAD C Coad D OMT4.下列属于Coad方法中面向对象的分析模型的层次有()A主题层 B对象层 C应

12、用层 D接口层5.一个属性依其特征,其类型有()A描述型 B定义型 C派生型 D参考型6.下列在面向对象分析的时候采用的模型有()A对象模型 B动态模型C静态模型 D功能模型7.状态是对象属性的值的一种抽象,它的性质有()A时间性 B持续性C有序性 D有穷性8.数据流图中的处理必须用对象中的操作来实现常见的操作有()A查询 B动作C活动 D访问9.建立继承关系时所采用的方式有()A自顶向下 B从内到外C自底向上 D从复杂到简单10.对象是人们要研究的任何事物主要的对象类型有() A有形实体 B作用 C事件 D性能说明11.下列不是常见的模型元素间的关系有() A 关联 B聚合 C依赖 D笔记1

13、2.UML具有扩展性,常见的扩展机制有() A 修饰 B版类 C加标签值 D约束13.UML语言支持的建模方式有() A 静态建模 C动态建模 C模块化建模 D功能性建模14.下列各种图可用于动态建模的有() A 状态图 B类图 C序列图 D活动图15.下列属于状态的组成部分的有() A名称 B活动 C条件 D事件16.UML中包括的事件有() A条件成真 B收到另一对象的信号 C收到操作调用 D经过指定时间间隔17.属性的可见性有() A:公有的 B私有的 C私有保护的 D保护的18.用例之间的关系有() A:友元 B扩展 C使用 D组合19.应用于通用化约束的方式有() A完整 B不相交

14、C不完整 D覆盖20.消息的类型有() A同步 B异步 C简单 D复杂二、判断题1.面向对象的的方法是以类作为最基本的元素,它是分析问题解决问题的核心。2.类是指具有相同或相似性质对象的抽象,对象是抽象的类,类的具体化就是对象。3.继承性是父类和子类之间共享数据结构和消息的机制,这是类之间的一种关系。4.多态性增强了软件的灵活性和重用性,允许用更为明确,易懂的方式去建立通用软件,多态性和继承性相结合使软件具有更广泛的重用性和可扩充性。5.面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程。6.面向对象的设计主要目标是提高生产效率,提高质量和提高可维护性。7.对象模型表示了静态的,结

15、构化的,系统数据性质,描述了系统的静态结构,她是从客观世界实体的对象关系角度来描述,表现了对象的相互关系。8.面向对象的分析是用面向对象的方法对目标系统的问题空间进行理解,分析和反映。通过对象层次结构的组织确定解空间中应存在的对象和对象层次结构。9.类的设计过程确定类,确定关联类,确定属性,识别继承关系。10.复用也叫重用或再用,面向对象技术中的“类”,是比较理想的可重用软构件,有三种重用方式实例重用,继承重用,多态重用。11.主题是一种关于模型的抽象机制,它是面向对象模型的概貌,也是关于某个模型要同时考虑和理解的内容,主题起一种控制作用。12.面向对象的分析由对象,结构,继承性和基于消息的通

16、信构成。13.支持继承性是面向对象程序设计语言和传统程序设计语言在语言机制方面的根本区别。14.面向对象的分析过程主要包括三项内容理解,表达和验证。15.面向对象的设计的主要目标是提高生产效率,提高质量和提高可维护性。16.UML是由图和元模型组成的。UML的语义是定义在一个四层建模概念框架中的,这四个层次分别是元元模型层,元模型层,模型层,用户模型层17.UML是一种建模语言,是一种标准的表示,是一种方法。18.元素是UML的基本构成单位,它包括模型元素和视图元素19.关系是模型元素的抽象子类型。关系的责任是在元素实例中建立语义连接。除非由子类型另外指定,与所有连接相同元素实例的关系实例关联

17、的名字实例必须是唯一的20.角色是关联角色实例到属性实例集合的共享聚集。角色的责任是指定如何在关联实例的一端将类型实例的实例划分21.类图用来表示系统中类和类与类之间的关系,它是对系统动态结构的描述。22.用例模型的基本组成部件是用例,角色和系统23.用例之间有扩展,使用,组合,三种关系24.序列图描述对象是如何交互的并且将重点放在消息序列上25.活动图显示动作及其结果。着重描述操作实现中所完成的工作以及用例实例或类中的活动。三、简答题1.与传统程序设计模式中的过程调用相比,消息传递机制有何本质区别?2.阐述面向对象的特征,并做简要的解释?3.COAD方法严格区分了面向对象分析OOA和面向对象

18、设计OOD。OOA方法利用五个层次和活动定义和记录系统行为,输入和输出。请简述这五个层次?4.面向对象程序设计有哪些优点?5.面向对象方法与结构化方法比较。6.当重要的对象被发现后,通过一组互相关联的模型详细表示类之间的关系和对象的行为,这些模型从四个不同的侧面表示了软件的体系结构:静态逻辑、动态逻辑、静态物理和动态物理。试描述一下这四种特性。7.如何绘制活动图?8.简述四种UML依赖关系异同。9.为什么要使用UML?10.简述UML实际建模过程11.在UML中的状态图,协作图,活动图,序列图在系统分析中各起到了什么作用?12.简述关联和依赖的区别。五 软件设计一、选择题1.模块的基本特征是(

19、)A、外部特征(输入/输出、功能) B、内部特征(输入/输出、功能)C、内部特征(局部数据、代码) D、外部特征(局部数据、代码2.SD方法的设计总则是() A、程序简洁、操作方便 B、结构清晰、合理 C、模块内聚性强 D、模块之间耦合度低3.软件设计的主要任务是()A、将分析阶段获得的需求说明转换为计算机中可实现的系统B、完成系统的数据结构和程序结构设计C、完成模块的编码和测试D、对模块内部的过程进行设计4.设计阶段应达到的目标有()A、提高可靠性和可维护性; B、提高应用范围;C、结构清晰; D、提高可理解性和效率5.HIPO图由()A 组成直观目录表B、PAD图C、IPO图D、详细的IP

20、O图6.从工程管理的角度来看,软件设计分两步完成() A、1、系统分析2、模块设计 B、1、详细设计2、总体设计 C、1、模块设计2、详细设计 D、1、总体设计2、详细设计7.用户界面设计的任务包括()A、确定用户界面类型B、建立任务模型C、建立用户模型D、建立功能模型8.模块独立性准则由以下定性指标来衡量()、分解度、耦合度 、屏蔽性、内聚性二、判断题1.划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好2.在网状结构中任何两个模块都是平等的,没有从属关系,所以在软件开发过程中常常被使用3.信息隐蔽原则有利于提高模块的内聚性4.中心变换型的DFD图可看成是对输入数据进行转换而得

21、到输出数据的处理,因此可以使用事务分析技术得到初始的模块结构图5.SD法是一种面向数据结构的设计方法,强调程序结构与问题结构相对应6.所谓结构冲突,是指输入数据与输出数据之间很少或没有结构上的对应关系。通常解决的办法是:构造一个或者多个中间结构,在输入和输出结构之间进行转换7.HIPO图是以功能、功能完备性准则逐层分解的三、简答题1.模块内联系和模块间联系有哪些种类?2.照“降低块间联系,提高块内联系”的设计总则对模块进行修改,具体从哪些方面进行改进?六 程序设计语言和编码一、选择题1.程序设计语言可以分为() A、 面向过程的语言 B、机器语言 C、高级语言 D、汇编语言 2.程序效率包括(

22、)几个方面的内容。 A、代码效率 B、运行效率 C、存储效率 D、/效率3.SP方法中的基本控制结构有() A、顺序结构 B、选择结构C、重复结构 D、GOTO结构4.内部文档可用注释语言书写,注释语言分为() A、序言性注释 B、描述性注释 C、功能性注释 D、状态性注释5.为使程序中数据说明更易于理解和维护,必须遵循以下原则( )。 A、数据说明的次序应当规范化; B、一个语句说明多个变量时,各变量名按字母顺序排列; C、对于复杂的数据结构,要加注释,说明在程序实现时的特点; D、定义变量名应按字母顺序排列。6.源程序的效率与()阶段确定的算法的效率直接有关。 A、概要设计 B、总体设计C

23、、单元设计 D、详细设计7.在详细设计翻译转换成源程序代码后,算法效率反映为对程序的哪几个方面的要求() A、读写速度 B、代码长度 C、存储容量 D、执行速度8.提高程序效率的根本途径在于( ) A.编程时对程序语句做调整; B.选择良好的设计方法; C.使程序最大限度的简洁; D.选择良好的数据结构与算法。二、简答题1.编码阶段的主要任务是什么?2.结构化程序设计的优点是什么?如何在编码中使用这种方法?3.为何要进行程序的注释?应怎样进行程序的注释?4.什么是应该提倡的编程风格?为了有良好的设计风格,应注意哪些方面的问题?5.编码阶段的主要任务是什,应交付的结果是什么?6.SP法的自顶向下

24、,逐步求精方法的优点有哪些?7.为了有良好的设计风格,应注意哪些方面的问题?8.怎样评价程序的执行效率?它与程序清晰性的关系是怎样的?9.假定:需要编一个求解一元二次方程根的子程序,加入到现有的子程序库中,供其他程序员使用。要求:1)为该子程序写一个序言性注释;2)用PASCAL语言或其它语言写出这个子程序(要把根的性质,如:实根、复根、降为一次方程等等有区别地通知调用者),并加上描述性注释。七 软件测试 一、选择题1.软件测试的主要特点是()A、软件测试的开销大 B、软件测试要依靠工具C、软件测试要验证软件正确性 D、软件不能进行“穷举”测试 2.整体测试又称为组装测试,其主要内容包括()A

25、、对整体的性能进行测试B、设计测试用例进行功能测试C、设计测试用例进行测试 D、对组装过程进行测试3.渐增式是将模块一个一个的连入系统,每连入一个模块,()A、只需要对新连入的模块进行测试。B、都不需要再进行测试。C、都要对新子系统进行测试。D、都要进行回归测试。4.静态测试是以人工的、非形式化的方法对程序进行分析和测试。常用的静态测试方法有:()A、状态图B、流程图C、数据流分析图D、调用图5.集成过程的原则是()A、尽量将所有模块集成到系统中B、尽早测试关键模块C、集成尽早测试关键模块尽早测试包含I/O的模块D、按照输入-处理-输出的次序进行集成6.关于白盒法覆盖程度的论述中正确的是:()

26、A、语句覆盖:选择测试用例使程序中每条语句至少被执行一次B、判定覆盖:选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值。C、条件覆盖:选择测试用例使每个条件都满足。D、条件组合覆盖:将所有的判定条件的都组合起来执行。7.软件测试的基本原则是()A、关键是注重测试用例的选择B、选择尽可能多的测试用例C、尽量不由程序设计者进行测试D、充分注意测试中的群集现象8.等价分类法的关键是()A、选择测试用例B、找出等价类的边界条件C、划分等价类D、通过输入条件,确定无效等价类二、判断题1.单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。2.功能测试是系统测试的主

27、要内容,检查系统的功能、性能是否与需求规格说明相同。3.白盒法是一种静态测试方法,主要用于模块测试。4.软件测试的目的是进一步对程序进行调试,发现错误。5.在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。6.白盒法是一种静态测试方法,主要用于模块测试。7.在分析规范(因、果)的基础上画出因果图,再将其转换为有限项判断表,就容易得出测试用例。8.系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。9.有效性测试是在模拟的环境(或就是开发环境下)下运用黑盒法,验证软件特性是否与需求符合。10.在发现错误后,则应按照一定的技术去纠正它。纠错的关键是

28、“错误定位”。三、简答题1.渐增式与非渐增式各有何优、缺点?为什么通常采用渐增式?2.自顶而下增值与自底而上增值各有何优、缺点?3.等价分类法的基本思想是什么?4.一般,驱动模块比桩模块容易设计,为什么?5.什么是测试和测试?八 软件维护 一、选择题1.软件维护的类型有()A 完善性维护 B 纠错性维护C 适应性维护 D 预防性维护2.各种软件维护的类型中最重要的是()。A 完善性维护 B 纠错性维护 C 适应性维护 D 预防性维护3.以下属于完善性维护的有()。A 解决开发是未能测试各种可能条件带来的问题;B 增加联机求助命令;C 缩短系统的应答时间,使其达到特定要求;D 为软件的运行增加监

29、控设施。4.进行系统修改时可能会产生维护的副作用,它们可能有()。A 修改数据的副作用 B 修改错误后,又引入了新的错误C 修改代码的副作用 D 文档资料的副作用5.确定可维护性的因素主要有()。A 文档 B 可理解性 C 可修改性 D 可测试性6.软件维护阶段所产生的文档主要有()。A 软件问题报告 B 软件修改报告 C 软件修改申请报告7.表达计划安排的主要工具有()A PERT图 B 甘特图 C DFD图 D 进度表二、判断题1.软件维护只需要校正性维护、适应性维护和完善性维护2.软件维护总工作量可用公式表示为:M = P + K;exp(D - C)3.生产性活动包括分析评价、修改设计、编写程序代码和设计约束4.改进程序的执行效率不会引入错误5.强调简明性的程序出错率低6.用面向对象方法开发的软件系统,可维护性好三、简答题1.为什么要进行软件维护?2.怎样防止维护的副作用?3.什么是软件可维护性?可维护性度量的特性是什么?4.高可维护性的方法有哪些?综合试卷一试卷总分: 100 分 答卷时间: 110 分钟 试卷类型: A一、 单项选择题(每小题的四个备选答案只有一个正确答案,每题1分,共10分)1在问题分析阶段,用户需求具有( ) A模糊性,全面性,一致性 B全面性,精确性,一致性C模糊性,歧义性,不一致性 D全面性,精确性,不一致性 2数据流图的绘制应采用( )

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

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