软件工程综合练习题
软件工程综合训练 西交大考试题库及答案
软件工程综合训练模拟题一、单选题1.下列哪一项不是项目组分配角色项( D )。
A.项目组长B.开发人员C.测试人员D.管理人员2.编码组长与开发人员共同协商制订实现与测试阶段的阶段性计划,需经(A )审批方可执行。
A.项目经理B.开发人员C.测试人员D.开发组长3.选中非连续单元格先按住( C )键,然后用鼠标左键逐个点击要选的单元格。
A.ALTB.SHIFTC.CTRLD.BACKSPACE4.选中连续单元格可以先选择该区域的第一个单元格,然后按下( B )键之后选。
A.ALTB.SHIFTC.CTRLD.BACKSPACE5.在项目计划中,“里程碑”的任务工期一般是(A )。
A.0B.1C.2D.36.要查看项目的总体信息,可以使用( B )菜单下的“项目信息”命令。
A.文件B.项目C.编辑D.工具7.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( A)。
A.软件危机B.软件工程C.程序设计革命D.结构化程序设计8.瀑布模型的关键不足在于( B )。
A.过于简单B.不能适应需要的动态变更C.过于灵活D.各个阶段需要进行评审9.可行性研究的四大要素是( A )。
A.经济、技术、法律和社会环境B.经济、技术、开发组织能力和领导者水平C.经济、技术、计算机硬件环境和网络带宽D.经济、技术、软件开发工具和人员的稳定性10.经济可行性研究的主要内容包括( D )。
A.开发过程B.开发工具C.风险分析D.效益分析11.需求分析过程中,分析员要从用户那里解决的最重要的问题时( A )。
A.要求软件做什么B.要给软件提供哪些信息C.要求软件工作效率如何D.要求软件具有什么样的结构12.DFD中的每个加工至少需要( D )。
A.一个输入流B.一个输出流C.一个输入或输出流D.一个输入流和一个输出流13.PDL是描述处理过程( C )。
A.做什么B.为什么做C.怎样做D.对谁做14.当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( D )。
软件工程练习题
"软件工程"练习题一、填空题1.软件主要包括程序、数据和文档三局部容。
2. 目前使用最广泛的软件工程方法学是传统〔构造化方法〕方法和面向对象方法。
3.软件可行性研究的任务是从技术、经济和社会可行性三个方面分析软件工程的可行性。
4.软件测试的目的是找出软件潜在的错误和缺陷;通常把软件测试方法分为黑盒测试〔功能测试〕和白盒测试〔构造测试〕两大类。
5.软件测试中,测试用例由输入数据和预期的输出结果两局部组成。
6.典型的软件生命周期模型〔软件过程模型〕包括瀑布模型、快速原型模型和增量模型、螺旋模型、喷泉模型等。
7.模块 A 调用模块 B 以查询学生成绩,模块A 通过参数向模块 B 传送所查询学生的**,模块 B通过参数向模块 A 返回学生的考试成绩。
模块A 和模块 B 之间的耦合类型属于数据耦合。
8.在类的继承构造中,不同层次的类共享同一个行为名称,但各个类可以按照自己的需要为同名行为设计不同的算法,此性质称为类的重写。
9.测试软件中的模块时,通常需要为被测模块设计辅助模块,辅助模块的名称分别是驱动模块和桩模块。
10.软件生存期中时间最长的是_软件维护阶段。
11.构造化分析方法中,功能模型用 DFD 描述;数据模型用 E-R 描述。
12.过程设计〔详细设计〕中,常用的描述工具有图形、表格和语言三类。
13.在模块构造图中,直接调用*一模块的其他模块数称为该模块的扇入数。
14.面向对象分析〔OOA〕方法中,必须定义对象间的通信机制,对象间通信是通过消息传递机制来实现的。
15.面向对象方法用对象分解取代了构造化方法的功能分解。
16.写出以下各对事物之间的关系〔继承、会萃、普通关联〕:交通工具——汽车的关系是:继承;书——读者的关系是:普通关联;班级——学生的关系是:会萃;多边型——线段的关系是:会萃。
17.面向对象设计〔OOD〕阶段,可以将面向对象的设计容划分为四局部,分别是:人机界面部分、问题域局部、任务管理局部和数据管理局部。
软件工程练习题&答案
软件工程练习题一. 选择题(单选或多选)(1)需求分析阶段最重要的技术文档是( C )。
A)项目开发计划B) 设计说明书C)需求规格说明书D) 可行性分析报告(2)在软件工程中,白盒测试法可用于测试程序的内部结构。
此方法将程序看作是(A )A) 路径的集合B) 循环的集合C) 目标的集合 D) 地址的集合(3)在以下模块耦合性类型中,模块之间独立性最差的类型是( D )A) 非直接耦合B) 标记耦合C)控制耦合D)内容耦合(4)软件详细设计的主要任务是对(A)进行的详细设计。
A) 算法和数据结构B) 外部接口C)软件编码D)功能(5)Jackson方法是一种面向(C)的结构化方法。
A) 数据流B) 对象C)数据结构D)控制流(6)一个成功的测试可以( D )。
A) 表明程序没有错误B) 发现所有错误C)提高软件可靠性D)发现尚未发现的错误(7)下述陈述中,哪一个不是软件健壮性的度量指标?(C )。
A)失败后重新启动所需的时间B)引起失败的时间所占的百分比C)失败前的平均工作时间D)在一次失败中数据恶化的概率(8)黑盒技术设计测试用例的方法之一为( A )。
A)因果图B)逻辑覆盖C)循环覆盖D)基本路径测试(9)CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是(D )。
A)工作无序,项目进行过程中经常放弃当初的计划B)建立了项目级的管理制度C)建立了企业级的管理制度D)软件过程中活动的生产率和质量是可度量的(10)在面向数据流的软件设计方法中,一般将信息流分为( A )。
A)变换流和事务流B)变换流和控制流C)事务流和控制流D)数据流和控制流(11)软件设计中一般将用到图形工具,下述哪种工具可用作设计的图形工具。
( ABCDEF )A)结构图B)实体关系图C)IPO图D)流程图E) N-S图F) 判定树(12)软件需求分析阶段建立原型的主要目地是( C )。
A)确定系统的性能要求B)确定系统的运行要求C)确定系统是否满足用户需要D)确定系统是否满足开发人员需要(13)要显示描绘软件开发项目各作业的依赖关系,应选择(B )。
《软件工程》综合练习题
《软件工程》综合练习题一、选择题1.软件是一种( )产品。
A.有形B.逻辑C.物质D.消耗2.与计算机科学的理论研究不同,软件工程是一门( )学科。
A.理论性B.工程性C.原理性D.心理性3.软件危机的主要原因有( )。
①软件本身的特点②用户使用不当③硬件可靠性差④对软件的错误认识⑤缺乏好的开发方法和手段A.③④B.①②④C.①⑤D.①③4.软件工程学科出现的主要原因是( )。
A.计算机的发展B.其他工程科学的影响C.软件危机的出现 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.技术风险问题12.可行性研究要进行的需求分析和设计应是( )。
A.详细的B.全面的C.简化、压缩的D.彻底的13.数据流图是常用的进行软件需求分析的图形工具,其基本符号是( )。
A.输入、输出、外部实体和加工B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体D.变换、数据存储、加工和数据流14.系统流程图是描述( )的工具。
软件工程习题附答案
软件工程习题附答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。
以下是一些与软件工程相关的习题及答案,希望能帮助您更好地理解这门学科。
一、选择题1、软件生存周期中,解决软件“做什么”的阶段是()A 需求分析B 软件设计C 软件实现D 软件测试答案:A解析:需求分析阶段主要是确定软件系统需要完成的功能和性能,解决软件“做什么”的问题。
2、下面不属于软件设计原则的是()A 抽象B 模块化C 自底向上D 信息隐藏答案:C解析:软件设计的原则通常包括抽象、模块化、信息隐藏等,自底向上一般不是软件设计的原则,常见的是自顶向下的设计方法。
3、软件测试的目的是()A 证明软件没有错误B 发现软件中的错误C 改正软件中的错误D 优化软件的性能答案:B解析:软件测试的目的是为了发现软件中存在的错误,而不是证明软件没有错误或直接改正错误、优化性能。
4、下列模型中,不属于软件生命周期模型的是()A 瀑布模型B 快速原型模型C 增量模型D 螺旋模型E 喷泉模型答案:E解析:瀑布模型、快速原型模型、增量模型和螺旋模型都属于常见的软件生命周期模型,喷泉模型则主要强调软件对象之间的无缝迭代。
5、软件维护中,因修改软件而导致出现新错误的维护属于()A 改正性维护B 适应性维护C 完善性维护D 预防性维护答案:A解析:改正性维护是指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
在这种维护中,可能会因为修改软件而引入新的错误。
二、填空题1、软件工程包括()、()和()三个要素。
答案:方法、工具、过程2、软件需求分析阶段的工作,可以分为四个方面:()、()、()和()。
答案:需求获取、需求分析、编写需求规格说明书、需求评审3、软件测试的步骤主要包括()、()、()和()。
答案:单元测试、集成测试、系统测试、验收测试4、面向对象的三大特性是()、()和()。
(完整word版)软件工程习题集+答案
《软件工程》习题集目录一软件与软件工程 (1)二软件项目管理 (4)三需求分析 (7)四面向对象的需求分析 (10)五软件设计 (15)六程序设计语言和编码 (18)七软件测试 (20)八软件维护 (23)综合试卷一 (25)综合试卷二 (28)综合试卷三 (31)附参考答案: (34)一软件与软件工程参考答案 (34)二软件工程管理参考答案 (37)三需求分析参考答案 (39)四面向对象的需求分析参考答案 (43)五软件设计参考答案 (52)六程序设计语言和编码参考答案 (55)七软件测试参考答案 (59)八软件维护参考答案 (62)综合试卷一参考答案及评分标准 (65)综合试卷二参考答案及评分标准 (68)综合试卷三参考答案及评分标准 (71)一软件与软件工程一、选择题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、软件产品的质量低劣C、软件开发人员明显不足D、软件生产率低下7.软件开发方法的主要工作模型有()A、螺旋模型B、循环模型C、瀑布模型D、专家模型8.软件工程的目标有()A、易于维护B、低的开发成本C、高性能D、短的开发期9.软件工程学的目的和意义是()A、应用科学的方法和工程化的规范管理来指导软件开发。
B、克服软件危机。
C、作好软件开发的培训工作。
D、以较低的成本开发出高质量的软件。
二、判断题1.软件就是程序,编写软件就是编写程序。
2.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。
软件工程练习题及参考答案
软件工程练习题及参考答案《软件工程练习题及参考答案》一.单向选择题(四选一.每小题3分,共18分)1.面向对象(Object Oriented)方法是将现实世界的事物以对象的方式( B )到计算机世界的方法。
对应映射反映反射2.盒图也称为(D)或Chapin图。
这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。
流程图框图判定表 N-S图3.面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。
程序数据逻辑物理4.人机界面的风格大致经过了(B)代的演变。
三四五六5.以下不属于白盒测试技术的是(D)逻辑覆盖基本路径测试循环覆盖测试等价类划分6.为改正软件系统中潜藏的错误而进行的维护活动称为(A)。
纠错性维护适应性维护改善性维护预防性维护二.填空题(每空2分,共18分)1.文档一种数据媒体和其上所记录的数据。
(√)4. 软件工程使用的软件工具能够自动或半自动地支持软件的开发.管理和文档的生成。
(√)5. 为了充分发挥开发人员的潜力.缩短工期,软件工程项目的任务分解与安排应尽力挖掘可并行开发的部分。
(√)6. 需求分析阶段的成果主要是需求规格说明,但该成果与软件设计.编码.测试直至维护关系不大。
(X)7. 类是对具有共同特征的对象的进一步抽象。
(√)8. 面对日益增长的软件需求,人们显得力不从心。
往往是产生软件危机的原因之一。
(√)9. 数据输入的一般准则中包括采用灵活多样的交互方式,允许用户自选输入方式;允许用户控制交互过程。
(√)10. 如果在分析阶段和设计阶段采用的是面向对象的方法,而在编码阶段采用的是面向过程的语言,那么这种翻译就比较困难。
(√)11.软件测试是对软件规格说明.软件设计和编码的最全面也是最后的审查。
(√)12. 如果测试过程没有发现任何错误,则说明软件没有错误。
(X)四.简答题(每小题4分,共20分)1.螺旋模型的适应场合有哪些?适应场合:支持需求不明确.特别是大型软件系统的开发,并支持面向规格说明.面向过程.面向对象等多种软件开发方法,是一种具有广阔前景的模型。
软件工程练习题目及答案
软件工程练习题目及答案[正文]软件工程练习题目及答案一、软件需求工程1、题目:解释什么是软件需求工程?列出软件需求工程的主要活动。
答案:软件需求工程是一门软件工程学科,旨在定义和管理软件系统的需求。
它包括以下主要活动:1.1 需求获取:确定和收集用户和其他相关利益相关者的需求。
1.2 需求分析:对需求进行分析、组织和分类,以确保其完整性和一致性。
1.3 需求规格说明:将需求转化为规范化的文档,包括功能需求、非功能需求等。
1.4 需求验证:与用户和其他利益相关者确认需求的准确性和完整性。
1.5 需求管理:跟踪和控制需求的变化,确保其能够适应项目的变化。
2、题目:什么是需求?请将需求分类并解释每类需求。
答案:需求是指对软件系统的功能、性能、约束和限制等方面的描述。
需求可以分为如下几类:2.1 功能需求:描述系统应该具备的功能和行为,例如用户登录、数据查询等。
2.2 非功能需求:描述系统的性能要求、可靠性、安全性等方面的要求,例如响应时间、可用性等。
2.3 设计约束:描述对系统设计的限制,如使用特定的编程语言或框架。
2.4 约束条件:描述系统操作的限制和前提条件,如系统的运行环境和操作系统等。
二、软件设计和建模1、题目:什么是软件设计?软件设计的目标是什么?答案:软件设计是指定义软件系统的结构、组件和交互的过程。
软件设计的目标是实现软件需求,并确保软件的可靠性、可扩展性和可维护性。
2、题目:简述面向对象分析和设计方法。
答案:面向对象分析和设计是一种用来分析和设计软件系统的方法。
其核心思想是将系统分解为对象,通过对象之间的交互来实现系统功能。
2.1 面向对象分析(OOA):分析系统需求并识别出系统中的对象、对象的行为和它们之间的关系。
2.2 面向对象设计(OOD):基于面向对象分析的结果,设计系统的具体实现方式,定义对象的属性、方法和接口等。
三、软件测试1、题目:什么是软件测试?常见的软件测试方法。
答案:软件测试是指通过运行软件系统来评估其质量和功能的过程。
《软件工程练习题及参考答案》
框图
判定表
N-S图
3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。
程序
数据
逻辑
物理
4、人机界面的风格大致经Hale Waihona Puke 了(B)代的演变。三四
五
六
5、以下不属于白盒测试技术的是(D)
逻辑覆盖
基本路径测试
循环覆盖测试
等价类划分
6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。
1)一致性
2)二义性
3)紧致性
4)局部性
五、综合题(每小题10分,共20分)
1、可将软件生存周期划分为哪3个过程和哪9个阶段。
(1)3个过程是:软件定义过程、软件开发过程、软件使用与维护过程。
(2)9个阶段有:可行性研究、需求分析、概要设计、详细设计、实现、组装测试、验收测试、使用与维护、退役。
2、画出与图1所示的程序流程图对应的程序图,并试计算其巡回秩数V(G)。
4.计算机系统工程是用工程、科学和(数学)的原则与方法研制基于计算机的系统的有关技术、方法和过程。
5.在Jackson方法中,实体结构是指实体在时间坐标系中的行为序列。这种序列以顺序、选择和(重复)三种结构进行复合。
6.一个模块的“扇出数”是指该模块直接控制的其他(模块数)。
7.第二代界面是简单的(菜单)式。
7.类是对具有共同特征的对象的进一步抽象。(√)
8.面对日益增长的软件需求,人们显得力不从心。往往是产生软件危机的原因之一。(√)
9.数据输入的一般准则中包括采用灵活多样的交互方式,允许用户自选输入方式;允许用户控制交互过程。(√)
10.如果在分析阶段和设计阶段采用的是面向对象的方法,而在编码阶段采用的是面向过程的语言,那么这种翻译就比较困难。(√)
(完整版)软件工程习题+答案(可编辑修改word版)
一、选择题1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B)A)可行性研究,问题定义,需求分析。
B)问题定义,可行性研究,需求分析。
C)可行性研究,需求分析,问题定义。
D)以上顺序都不对。
(软件开发时期:概要设计、详细设计、软件实现、软件测试)2.可行性研究主要从以下几个方面进行研究:(A)A)技术可行性,经济可行性,操作可行性。
B)技术可行性,经济可行性,系统可行性。
C)经济可行性,系统可行性,操作可行性。
D)经济可行性,系统可行性,时间可行性。
3.耦合是对软件不同模块之间互连程度的度量。
各种耦合按从强到弱排列如下:(C)A)内容耦合,控制耦合,数据耦合,公共环境耦合。
B)内容耦合,控制耦合,公共环境耦合,数据耦合。
C)内容耦合,公共环境耦合,控制耦合,数据耦合。
(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)D)控制耦合,内容耦合,数据耦合,公共环境耦合。
4.在详细设计阶段所使用到的设计工具是:(C )A)程序流程图,PAD 图,N-S 图,HIPO 图,判定表,判定树.B)数据流程图,Yourdon 图,程序流程图,PAD 图,N-S 图,HIPO 图。
C)判定表,判定树,PDL,程序流程图,PAD 图,N-S 图。
D)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD 图、N-S 图、PDL在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS 图)和问题分析图(PAD) .常用的语言描述工具为 PDL(程序设计语言) ,常用的表格描述工具有判定表和判定树.DFD 数据流图:总体设计阶段5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A)A)模块的作用域应在模块的控制域之内。
B)模块的控制域应在模块的作用域之内。
C)模块的控制域与模块的作用域互相独立。
D)以上说法都不对。
软件工程综合练习题
软件工程综合练习题第一章软件工程概述一、选择题1、瀑布模型本质上是一种()。
A、线性迭代模型B、顺序迭代模型C、线性顺序模型D、及早见产品模型2、运算机辅助软件工程,简称()。
A、SAB、SDC、SCD、CASE3、以下判定正确的是()。
A、所谓软件开发确实是编写程序。
B、利用软件工程的思想,已成功的解决了软件危机。
C、完成软件测试工作以后,为了缩短程序的长度应删除程序中的注释。
D、一样来说,程序中存在错误的概率与在该段程序中已发觉的错误数成正比。
4、_____是以提高软件质量为目的的技术活动。
A.技术创新B.测试C.技术制造D.技术评审5、瀑布模型的存在问题是()。
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求6、软件生命周期中所花费用最多的时期是()。
A.详细设计B.软件编码C.软件测试D.软件爱护7、运算机系统确实是()A.主机,显示器,硬盘,软驱,打印机等。
B.CPU,储备器,操纵器,I/O接口及设备。
C.运算机硬件系统和软件系统。
D.运算机及其应用系统。
8、产生软件危机的缘故要紧与两个方面的问题有关:A.软件在运算机中专门难识别,存在磁盘中也看不到。
B.软件设计对人的智商要求专门高,也要求专门高的资金投入。
C.软件产品本身的特点与其它工业产品不一样,而且在软件的开发和爱护过程中用的方法不正确。
D.软件专门难明白得,硬件也专门复杂。
9、软件开发瀑布模型中的软件定义时期各个时期依次是()A.可行性研究,问题定义,需求分析。
B.问题定义,可行性研究,需求分析。
C.可行性研究,需求分析,问题定义。
D.以上顺序都不对。
10、下列选项中()是软件开发中存在不正确的观念、方法。
A.重编程、轻需求B.重开发,轻爱护C.重技术,轻治理D.以上三条差不多上二、填空题1、软件工程的三个差不多要素包括()、()和()。
2、一样软件应该有三部分组成:()、()和()。
3、按软件的功能可将软件分成()、()和()等三类。
软件工程习题及答案
软件工程习题及答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。
以下是一些软件工程相关的习题及答案,希望能帮助您更好地理解这门学科。
一、选择题1、软件生存周期中,解决软件“做什么”的阶段是()A 需求分析B 软件设计C 软件实现D 软件测试答案:A解释:需求分析阶段的主要任务是确定软件系统的功能和性能要求,解决软件“做什么”的问题。
2、下面不属于软件设计阶段任务的是()A 软件总体结构设计B 算法设计C 制定测试计划D 数据库设计答案:C解释:制定测试计划属于软件测试阶段的任务,软件设计阶段主要包括总体结构设计、详细设计(如算法设计、数据库设计等)。
3、软件工程中,白盒测试法可用于测试程序的内部结构。
此方法将程序看作是()A 循环的集合B 地址的集合C 路径的集合D 目标的集合答案:C解释:白盒测试是把程序看成装在一个透明的白盒子里,也就是清楚了解程序的结构和处理过程,测试用例要覆盖程序中的所有可能路径。
4、软件维护工作中,大部分工作属于()A 改正性维护B 适应性维护C 完善性维护D 预防性维护答案:C解释:在软件维护工作中,完善性维护占了大部分,因为随着用户需求的变化和使用过程中的新发现,需要对软件功能进行扩充和增强。
二、填空题1、软件危机产生的主要原因是软件产品的_________和软件生产的_________之间的矛盾。
答案:复杂性;规模性解释:软件产品的复杂性不断增加,而软件生产的规模性又使得管理和控制变得困难,这两者之间的矛盾导致了软件危机。
2、结构化分析方法使用的主要工具是_________和_________。
答案:数据流图;数据字典解释:数据流图用于描述系统中数据的流动和处理过程,数据字典则对数据流图中的元素进行详细的定义和说明。
3、软件测试的步骤包括单元测试、_________、_________和系统测试。
北京邮电大学网络教育学院-软件工程综合练习题及解答
《软件工程》综合练习题第一章一、单项选择题1、软件是一种逻辑产品,软件产品具有无形性,它是通过()体现它的功能和作用的。
A、复制B、计算机的执行C、开发和研制D、软件费用2、同一软件的大量软件产品的生产主要是通过()而得到A、研究B、复制C、开发D、研制3、作坊式小团体合作生产方式的时代是()时代。
A、程序设计B、软件生产自动化C、程序系统D、软件工程4、软件工程是计算机科学中的一个分支,其主要思想是在软件生产中用()的方法代替传统手工方法。
A、工程化B、现代化C、科学D、智能化5、软件工程与计算机科学性质不同,软件工程着重于()A、理论研究B、原理探讨C、如何建造软件系统D、原理的理论6、将每个模块的控制结构转换成计算机可接受的程序代码是()阶段的任务。
A、编码B、需求分析C、详细设计D、测试7、软件工程要用()的方法建立软件开发中的各种模式和各种算法A、管理B、工程C、数学D、计算机8、软件开发费用只占整个软件系统费用的()A、1/2B、1/3C、1/4D、2/39、软件开发中大约要付出()%的工作量进行测试和排错A、20B、30C、40D、5010、()方法是一种面向数据结构的开发方法。
A、结构化B、JacksonC、维也纳开发D、面向对象开发11、准确地解决“软件系统必须做什么”是()阶段的任务:A、可行性研究B、需求分析C、详细设计D、编码12、软件生存周期中时间最长的是()阶段A、需求分析B、概要设计C、测试D、维护13、()方法是以数据结构为驱动的、适合于小规模的项目。
A、JSPB、JSDC、VDMD、Jackson14、软件是一种()产品A、物质B、逻辑C、有形D、消耗二、填空题1、软件与物质产品有很大的区别,软件产品是一种产品。
2、软件工程是一门综合性交叉学科,计算机科学着重于理论和原理,软件工程着重于。
3、概要设计主要是把各项功能需求转换成系统的。
4、最基本、应用广泛、以文档为驱动、适用于开发功能明确的软件项目生存期模型是。
软件工程考试题及答案
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。
A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 软件工程的三要素包括()。
A. 方法、工具和过程B. 方法、工具和人员C. 方法、过程和人员D. 工具、过程和人员答案:C3. 软件需求分析阶段的主要任务是()。
A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:A4. 软件设计阶段的主要任务是()。
A. 制定软件开发计划B. 确定软件的体系结构C. 编写软件详细设计文档D. 进行软件测试答案:B5. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是无错误的D. 证明软件是可维护的答案:B6. 软件维护不包括以下哪项活动()。
A. 改正性维护B. 适应性维护C. 完善性维护D. 软件设计答案:D7. 软件项目管理的主要任务不包括()。
A. 进度管理B. 质量管理C. 风险管理D. 软件编码答案:D8. 面向对象方法中,对象的基本特性不包括()。
A. 抽象B. 封装C. 继承D. 多态答案:D9. UML(统一建模语言)是一种()。
A. 程序设计语言B. 数据库查询语言C. 建模语言D. 脚本语言答案:C10. 在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。
A. 客户的需求不明确B. 项目范围的扩大C. 技术实现的困难D. 软件已经完成答案:D二、多项选择题(每题3分,共15分)11. 软件工程的基本原理包括()。
A. 抽象B. 模块化C. 逐步求精D. 迭代开发答案:ABC12. 软件需求分析阶段的输出包括()。
A. 需求规格说明书B. 用户手册C. 系统架构图D. 测试计划答案:A13. 软件设计阶段的主要文档包括()。
A. 架构设计文档B. 详细设计文档C. 用户手册D. 测试计划答案:AB14. 软件测试的类型包括()。
2021软件工程复习综合题
2021软件工程复习综合题《软件工程》课后复习综合题一、单选题1.变换型和事务型是程序结构的标准形式。
从某处获得数据,再对这些数据作处理,然后将结果送出是属于【a】。
a)转换类型b)交易类型C)交易分析d)转换分析2。
Pad(问题管理图)是一种[b]工具。
a)系统描述b)详细设计c)测试d)编程辅助3.分析员是【b】。
a)用户之间的系统直接用户b)用户和软件人员之间的中介C)软件程序员d)用户和软件人员的领导者4.软件测试中设计测试实例(testcase)主要由输入数据和【c】两部分组成。
a)测试规则b)测试计划C)预期输出d)之前测试记录的分析5。
结构化编程主要强调程序的[C]。
a)效率b)速度c)可读性d)大小6.软件开发成本高与产品质量低之间存在着尖锐的矛盾。
这种现象被称为[b]。
a)软件投机b)软件危机c)软件工程d)软件产生7.模块本身的内聚性是衡量模块独立性的重要因素之一。
在七种衔接类型中,衔接最强的是[D]。
a)顺序性内聚b)过程性内聚c)逻辑性内聚d)功能性内聚8.月收入<=800元者免税,现用输入数800元和801元测试程序,则采用的是【a】方法。
a)边际价值分析b)条件覆盖C)错误推测d)等价类9。
月收入<=800元的免征所得税。
现在用800元和900元测试程序,采用[a]方法。
a)等价划分b)条件覆盖c)错误推测d)边界值分析10.ooa模型规定了一组对象如何协同才能完成软件系统所指定的工作。
这种协同在模型中是以表明对象通信方式的一组【a】连接来表示的。
a)消息b)记录C)数据d)属性11.现有一个计算类型的程序,它的输入只有一个y,其范围是-50≤y≤50。
现从输入的角度考虑设计了一组测试用例:-100,100,0。
设计这组测试用例的方法是【b】。
a)条件覆盖法B)等价分类法c)边值分析法d)误差推断法12。
结构设计中模块化方法的主要出发点是[D]。
a)增加内聚性b)减少耦合度c)提高有效性d)降低复杂度13.教学设备销售部门制定销售优惠政策,一次购买100台以上的将收取费用八五折优惠,购买者是教师、学生按九折优惠。
《软件工程》题库及参考答案
《软件工程》练习测试题库一、单项选择题1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()A.软件工程B.软件周期C.软件危机D.软件产生2.研究开发所需要的成本和资源是属于可行性研究中的()研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.法律可行性3.IDEF0图不反映出系统()A.系统做什么B.系统功能如何实现C.系统由谁来做D.系统实现的约束条件4.模块的内聚性最高的是()A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚5.在SD方法中全面指导模块划分的最重要的原则是()A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性6.软件详细设计主要采用的方法是()A.模块设计B.结构化设计C.PDL语言D.结构化程序设计7.下列关于JSP方法不正确的说法是()A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。
因此它只适用于详细设计阶段8.不适合作为科学工程计算的语言是()A. PascalB. CC. FortranD. Prolog9.黑盒测试在设计测试用例时,主要需要研究()A.需求规格说明与概要设计说明B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明10.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是()A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法11.下列属于维护阶段的文档是()A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告12.快速原型模型的主要特点之一是()A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件13.因计算机硬件和软件环境的变化而做出的修改软件的过程称为()A.较正性维护B.适应性维护C.完善性维护D.预防性维护14.类库这种机制是()级别的信息共享。
软件工程综合应用例题(题)
综合应用例题第一部分传统软件开发方法1、某一8位计算机,其十六进制常数的定义为:以0x或0X开头的数是十六进制整数,其值的X围是-7f至7f(大小写字母不加区别),如0x13,0X6A,-0x3c 。
请用等价类划分法设计测试用例。
2、下面是一段求最大值的程序,其中datalist是数据表,n是datalist的长度。
int GetMax(int n, int datalist[ ]){int k=0;for ( int j=1; j<n; j++ )if ( datalist[j] > datalist[k] ) k=j;return k;}画出该程序的程序流程图,并计算其McCabe复杂度。
3、有下列伪码程序:STARTINPUT (M,N)IF M>=10THEN X:=10ELSE X:=lENDIFIF N>=20THEN Y:=20ELSE Y:=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖和路径覆盖测试用例。
4、根据伪码程序画出程序流程图,盒图(N-S图)。
STARTaIF x1 THENREPEAT UNTIL x2bEND REPEATELSEBLOCKcdEND BLOCKEND IFSTOP5、根据下列描述,画出教材征订系统的第一层数据流图。
学生入学后到教材科订书,教材科根据教材库存情况分析是否需要买书,如需购买,则向书店购买。
各种资金往来通过学校的会计科办理。
6、画出下列伪码程序的程序流程图,盒图(N-S图)。
STARTIF p THENWHILE q DOFEND DOELSEBLOCKgnEND BLOCKEND IFSTOP7、画出下面PDL伪码程序的程序流程图、N-S图、PAD图和程序流图,并计算其McCabe 复杂度。
WHILE P DOIF A>O THEN A1 ELSE A2 ENDIF;IF B>0 THEN B1;IF C>0 THEN C1 ELSE C2 ENDIFELSE B2ENDIF;B3ENDWHILE;8、根据下面伪码程序,设计语句覆盖、路径覆盖、边覆盖、判定覆盖、条件覆盖、点覆盖的测试用例。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件工程》课程练习题第一章软件工程概述一、选择题1、瀑布模型本质上是一种()。
A、线性迭代模型B、顺序迭代模型C、线性顺序模型D、及早见产品模型2、计算机辅助软件工程,简称()。
A、SAB、SDC、SCD、CASE3、以下判断正确的是()。
A、所谓软件开发就是编写程序。
B、利用软件工程的思想,已成功的解决了软件危机。
C、完成软件测试工作以后,为了缩短程序的长度应删除程序中的注释。
D、一般来说,程序中存在错误的概率与在该段程序中已发现的错误数成正比。
4、_____是以提高软件质量为目的的技术活动。
A.技术创新B.测试C.技术创造D.技术评审5、瀑布模型的存在问题是()。
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求6、软件生命周期中所花费用最多的阶段是()。
A.详细设计B.软件编码C.软件测试D.软件维护7、计算机系统就是()A.主机,显示器,硬盘,软驱,打印机等。
B.CPU,存储器,控制器,I/O接口及设备。
C.计算机硬件系统和软件系统。
D.计算机及其应用系统。
8、产生软件危机的原因主要与两个方面的问题有关:A.软件在计算机中很难识别,存在磁盘中也看不到。
B.软件设计对人的智商要求很高,也要求很高的资金投入。
C.软件产品本身的特点与其它工业产品不一样,而且在软件的开发和维护过程中用的方法不正确。
D.软件很难理解,硬件也很复杂。
9、软件开发瀑布模型中的软件定义时期各个阶段依次是()A.可行性研究,问题定义,需求分析。
B.问题定义,可行性研究,需求分析。
C.可行性研究,需求分析,问题定义。
D.以上顺序都不对。
10、下列选项中()是软件开发中存在不正确的观念、方法。
A.重编程、轻需求B.重开发,轻维护C.重技术,轻管理D.以上三条都是二、填空题1、软件工程的三个基本要素包括()、()和()。
2、一般软件应该有三部分组成:()、()和()。
3、按软件的功能可将软件分成()、()和()等三类。
4、计算机软件的生存期可以分为六个步骤,它们是()、()()、()、软件测试和运行/维护。
5、软件质量是与软件产品满足规定的和隐含的需求的能力有关的()的全体。
6、软件危机是指在()所遇到的一系列严重问题。
7、程序设计时代的生产方式是个体手工,程序系统时代的生产方式是作坊式小团体,软件工程时代的生产方式是()。
8、喷泉模型是一种以需求分析为动力,以()为驱动的模型。
三、名词解释1、CASE2、软件工程3、计算机软件2、软件生存期四、简答题1、什么是软件危机?其主要表现有那些?2、程序的可移植性3、为什么说“CASE领域是一个应用、集成和综合的领域”?第二章系统分析一、选择题1、进行可行性研究的依据是( )。
A、决策者的经验B、对系统的高级分析和设计C、现场调查D、编码2、可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因此必须给出()的回答。
A.确定B.行或不行C.正确D.无二义二、填空题1、成本效益分析的目的是从( )角度评价开发一个项目是否可行。
2、若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=()。
3、可行性研究需要从以下三个方面分析研究每种解决方法的可行性:技术可行性、经济可行性、()。
4、()是在整个生存期之内系统的累计经济效益(折成现在值)与投资之差。
5、()就是累计的经济效益等于最初的项目投资所需的时间。
三、名词解释1、货币的时间价值2、可行性研究四、简答题五、(10分)1、CAD系统,需投资20万元,每年可节省9.6万元,假定该系统的生存期为5年,对该项目的成本一效益如下。
(银行利率为5%)。
2、某计算机系统投入使用后,5年内每年节约人民币2000元,假设系统投资5000元,银行年利率为15%,请计算该系统投入使用后成本回收期(计算结果保留三位有效数字)及纯利润(计算结果保留四位有效数字)。
第三章软件需求分析一、选择题1、需求分析阶段的任务是确定()。
A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能2、在数据流图中,○(椭圆)代表()。
A、源点B、终点C、加工D、模块3、需求分析中开发人员要从用户那里了解()。
A.软件做什么B.用户使用界面C.输入的信息D.软件的规模4、需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是()需求。
A、功能B、性能C、数据D、环境5、需求分析阶段产生的最重要的文档之一是()。
A、系统规格说明书B、需求规格说明书C、概要设计说明书D、详细设计说明书二、填空题1、在结构化方法的软件需求定义中,可采用分析工具来辅助完成,()和()是常用的工具。
2、结构化方法有结构化分析、结构化设计、结构化程序设计构成,它是一种面向( )的开发方法。
3、在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、( 5 )。
4、数据流图中的箭头表示();系统结构图中的箭头表示()。
5、需求工程主要分为三个步骤:需求获取、()和()。
6、在SA方法的需求描述工具中,()描述系统的分解,即描述系统有哪几部分组成,各部分之间有什么联系等等。
()定义了数据流图中每一个图形元素;结构化语言、判定表或判定树则详细描述数据流图中不能被再分解的每一个()。
7、数据库的设计指数据存储文件的设计,主要进行的设计方面有:概念设计、逻辑设计、()。
8、引入分层DFD的目的是()。
三、名词解释1、SA2、需求分析四、简答题1、简要介绍一下数据流图。
2、什么是数据字典3、什么是基本(原子)加工?描述表达基本加工逻辑功能的结构化工具的特点?五、(10分)下面是一个机票预定系统的需求描述,请作出该系统的数据流图。
为方便旅客,某航空公司拟开发一个机票预定系统。
旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客安排航班,印出取票通知和帐单,旅客在飞机起飞的前一天凭取票通知和帐单交款取票,系统校对无误即印出机票给旅客。
六、(10分)需要开发一个教材购销计算机系统。
要求如下所述:学生向系统提交购书单,系统首先审查购书单的有效性(核对所购教材是否确是是提出购书申请学生所必需的,并且要检查教材的库存情况,确定是否有学生所要购买的教材)。
对于有效购书单,系统开购书发票,然后登记并开领书单给学生,学生凭领书单到书库领书。
书库保管员定期检查缺书情况,先按书号统计每种待购教材的数量,然后统计需要向哪些出版社购书,及向每个出版社购书的书号、书名和数量。
(统计所需要的信息分别由缺书登记表、教材存量表、教材一览表提供)。
新教材到货后,书库保管员向系统提交进书通知,系统根据进书情况修改教材存量表和待购教材表,并通知售书部门。
用结构化分析,绘制出该问题的数据流程图第四章软件设计一、选择题1、总体设计的根本目的是()。
A、建立文档B、编码C、设计软件系统结构D、搞清数据流动2、_______工具在软件详细设计过程中不采用。
A.判定表B.IPO图 C.PDL D.DFD图3、在详细设计阶段所使用到的设计工具是:A.程序流程图,PAD图,N-S图,HIPO图,判定表,判定树.B.数据流程图,Yourdon 图,程序流程图,PAD图,N-S图,HIPO图。
C.判定表,判定树,数据流程图,系统流程图,程序流程图,PAD图,N-S图。
D.判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
4、按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:A.模块的作用域应在模块的控制域之内。
B.模块的控制域应在模块的作用域之内。
C.模块的控制域与模块的作用域互相独立。
D.以上说法都不对。
5、模块化的目的是:()A、增加内聚性B、降低复杂性C、提高易读性D、减少耦合性6、下列耦合中,耦合程度最低的是:()A、标记耦合B、控制耦合C、内容耦合D、公共耦合7、下列内聚中,内聚程度最低的是:()A、功能内聚B、时间内聚C、逻辑内聚D、通信内聚8、模块内聚度越高,说明模块内各成分彼此结合的程度越()。
A、松散B、紧密C、无法判断D、相等9、使用SD方法时可以得到()A、程序流程图B、具体的语言C、程序模块结构图D、分层数据流图10、在SD方法中全面指导模块划分的最重要的原则是( )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性二、填空题1、模块的独立性要求模块要()和()。
2、软件设计一般分为()和()两个阶段。
3、详细设计的任务是确定每个模块的内部特性,即模块内部的 ( )、使用的数据。
4、软件系统结构图是以()为基础而组成的一种层次结构。
5、从内容上来讲,软件设计分为()、()和过程设计。
6、系统结构图中的箭头表示()。
7、结构化设计对数据流有两种分析方法,分别是()和()。
8、一个模块内部各程序段都在同一张表上操作,这个模块的内聚性称为()。
9、两个模块都是用同一张表,这种耦合称为()。
10、一个模块把数值作为参数传送给另一个模块,这种耦合方式称为()。
三、名词解释1、模块化2、模块的独立性3、模块的耦合和内聚4、模块的作用范围四、简答题1、什么是模块的独立性,如何度量?2、详细设计的基本任务是什么?有哪几种描述方法?五、(10分)举例说明你对概要设计与详细设计的理解。
有不需要概要设计的情况吗?六、(10分)1、图书馆的预定图书子系统有如下功能:(1)由供书部门提供书目给订购组;(2)订书组从各单位取得要订的书目;(3)根据供书目录和订书书目产生订书文档留底;(4)将订书信息(包括数目,数量等)反馈给供书单位;(5)将未订书目通知订书者;(6)对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求:(1)画出该问题的数据流程图(5分)。
(2)并把其转换为软件结构图(5分)。
第五章 JSD方法略第六章用户界面设计略第七章程序编码一、选择题1、程序的三种基本控制结构是。
A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移2、程序的三种基本控制结构的共同特点是。
A.不能嵌套使用B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口3、软件文档是软件工程实施中的重要成分它不仅是软件开发各阶段的重要依据,而且影响软件的()。
A.可理解性 B.可维护性 C.可扩展性 D.可移植性4、下列关于模块化程序设计的叙述中不正确的是()。
A.程序设计比较方便,但比较难以维护。
B.便于由多个人分工编制大型程序。
C.软件的功能便于扩充。
D.程序易于理解,也便于排错。
5、下列关于模块化程序设计的叙述中正确的是()。
A.在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。
B.模块之间的接口叫做数据文件。