《软件工程期末试题含答案.doc》由会员分享,可在线阅读,更多相关《软件工程期末试题含答案.doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、 填空题每空1分,共25分1. 软件生存周期一般可以划分为,问题定义、可行性研究、需求分析、设计、编码、测试与运行与维护。2. 基于软件的功能划分,软件可以划分成_系统软件_、支撑软件、应用软件_三种。3. 可行性研究,应从 经济可行性 、技术可行性、运行可行性、法律可行性与开放方案可行性等方面研究。4. 系统流程图是描绘 物理系统 的传统工具。它的根本思想是用图形符号以 黑盒子形式 描绘系统里面的每个部件5. 数据流图的根本四种成分:数据输入的源点与数据输出汇点、加工 、 数据流 与 数据存储文件。6. 构造化分析方法是面向_数据流_进展需求分析的方法。构造化分析方法使用_数据流图DFD
2、_与_数据字典_来描述。7. 继承性 是自动地共享类、子类与对象中的方法与数据的机制。8. 软件详细设计工具可分为3类,即_图示工具_、_设计语言_与_表格工具_。9. 为了在软件开发过程中保证软件的质量,主要采取下述措施:_审查_、复查与管理复审、_测试_。10. 大型软件测试包括 单元测试 、 集成测试 、确认测试与 系统测试四个步骤。二、 单项选择题每题2分,共20分1. 软件设计中划分模块的一个准那么是 C 。2. Jackson设计方法是由英国的M. Jackson提出的,它是一种面向 C 的软件设计方法。3. 试判断以下表达中,哪 个些是正确的( C )。a、软件系统中所有的信息流
3、都可以认为是事务流b、软件系统中所有的信息流都可以认为是变换流c、事务分析与变换分析的设计步骤是根本相似的A、a B、b C、c D、b与c4. A 是用户与设计交换最频繁的方法。A、 原型化方法 B、瀑布模型方法 C. 螺旋模型方法 D、构件组装模型5. 软件工程方法学的目的是:使软件生产标准化与工程化,而软件工程方法得以实施的主要保证是(C )。A、 硬件环境 B、软件开发的环境 C.软件开发工具与软件开发的环境 D、 开发人员的素质6. 20世纪50年代以来,出现了许多不同的程序设计语言,以下语言中哪个语言是低级语言( D )。A、 PASCAL B、 VISUAL BASIC C. C
4、+D、 汇编语言7. 软件测试的目的是?( D )A、 证明软件的正确性 B.找出软件系统中存在的所有错误C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误8. 使用白盒测试方法时,确定测试数据应根据 A 与指定的覆盖标准。A、程序的内部逻辑 B、程序的复杂程度C、该软件的编辑人员 D、程序的功能9. 软件维护工作的最主要局部是(C )。A、 校正性维护B、适应性维护 C.完善性维护 D、预防性维护10. PDL是 B 语言。A、 高级程序设计语言 B、伪码式 C、中级程序设计语言 D、低级程序设计语言三、 判断题正确的在括号内打上“,错误的打上“。每题2分,共20分1. 用黑盒法
5、测试时,测试用例是根据程序内部逻辑设计的。 X 2. 发现错误多的程序模块,残留在模块中的错误也多。 V 3. 为了加快软件维护作业的进度,应尽可能增加维护人员的数目。 X 4. 软件维护就是改正软件中的错误。 X 5. 质量保证是为了保证产品与效劳充分满足消费者要求的质量而进展的有方案,有组织的活动。 V 6. 软件开发的主要任务是写程序。 X 7. 测试只能证明程序有错误,不能证明程序没有错误。 V 8. 模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下。 X 9. 在编制程序时,首先应该对程序的构造充分考虑,不要急于开场编码,而要像写软件文档那样,很好地
6、琢磨程序具有什么样的功能,这些功能如何安排,等等。 X 10. 程序设计风格指导原那么提出,尽量多使用临时变量。 X 三程序设计与算法描述题共15分1. 根据下面的伪代码程序,完成相应要求。8分 START IF C1THEN WHILE C2 DO f ENDDOELSE BLOCK g p ENDBLOCK ENDIF REPEAT UNTIL C3qr ENDREP STOP1) 画出程序流程图4分2) 用NS图描述4分1程序流程图如下:4分2N-S图 如下:4分2. 有以下伪码程序:STARTINPUT (M,N)IF M=10 THEN X=10 ELSE X=lENDIFIF N=
7、20 THEN Y=20 ELSE Y=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖与路径覆盖测试用例。7分设计该程序的语句覆盖与路径覆盖测试用例。1.M=9(或l0),N=l9(或=10),N=20(或=20)路径覆盖的测试用例为 M=9,N=19; M=9、N=20; M=l0,N=l9; M=10,N=20一、单项选择题1、瀑布模型本质上是一种 CA、线性顺序模型 B、顺序迭代模型 C、线性迭代模型 D、及早见产品模型 2、使用程序设计的控制构造导出测试用例的测试方法是 B A、黑盒测试 B、白盒测试 C、边界测试 D、系统测试 3、软件构造图的形态特征能反映程序重用率的
8、是 C A、深度 B、宽度 C、扇入 D、扇出 4、软件构造图中,模块框之间假设有直线连接,表示它们之间存在 A A、调用关系 B、组成关系 C、链接关系 D、顺序执行关系 5、需求分析最终结果是产生 B A、工程开发方案 B、需求规格说明书 C、设计说明书 D、可行性分析报告 6、快速原型模型的主要特点之一是( D ) A、开发完毕才见到产品B、及早提供全部完整的软件产品C、开发完毕后才见到工作软件D、及早提供工作软件7、假设有一个计算类型的程序,它的输入量只有一个X,其范围是-1.0,1.0,现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法
9、是( C ) A、条件覆盖法B、等价分类法 C、边界值分析法D、错误推测法8、软件详细设计主要采用的方法是( C ) A、模块设计B、构造化设计 C、PDL语言D、构造化程序设计9、开发软件所需高本钱与产品的低质量之间有着锋利的矛盾,这种现象称做( B ) A. 软件工程B. 软件周期 C. 软件危机D. 软件产生10、按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作 CA、需求分析 B、概要设计 C、详细设计 D、软件维护 11、在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是 A A、探索型模型 B、演化型模型 C、实验型模型 D、提交型模型 12、程序设计
10、语言的工程特性之一为(C )A、软件的可重用性 B、数据构造的描述性 C、抽象类型的描述性 D、数据库的易操作性 13、软件按照设计的要求,在规定时间与条件下到达不出故障,持续运行的要求的质量特性称为( A )14、模块设计中,最不希望的内聚是C A、功能内聚 B、通信内聚 C、过程内聚 D、偶然内聚 15、实施快速原型模型方法开发软件的关键在于D A、CASE工具的支持 B、如何开发演化型模型 C、工程主管的支持D、开发人员的素质 16、程序流程图框图中的箭头代表(A )。A.数据流 B.控制流 C.调用关系 D.组成关系17、一个只有顺序构造的程序,其环形复杂度是(B )。A.0 B.1
11、C.3 D.不确定的18、可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据, 因此必须给出什么样的答复。 B A确定 B行或不行 C正确 D无二义19、构造化程序设计主要强调的是 D A、程序的规模 B、程序的效率 C、程序设计语言的先进性 D、程序易读性20、对象实现了数据与操作的结合, 使数据与操作 C 于对象的统一体中。 A、结合 B、隐藏 C、封装 D、抽象21、软件概要设计完毕后得到B A、初始化的软件构造图 B、优化后的软件构造图 C、模块的接口图与详细算法 D、程序编码 22、软件需求是度量软件质量的根底,不符合需求的软件就不具备B A、软件
12、的特点 B、质量 C、软件产品 D、功能 23、软件特性中,程序能够满足规格说明与完成用户业务目标的程度,称作 A A、正确性 B、移植性 C、可靠性 D、完整性 24、为使得开发人员对软件产品的各个阶段工作都进展周密的思考,从而减少返工,所以 C 的编制是很重要的。A、需求说明 B、概要说明 C、软件文档 D、测试方案 25、系统因错误而发生故障时,仍然能在一定程度上完成预期的功能,那么把该软件称为 A 。A、软件容错 B、系统软件 C、测试软件 D、恢复测试一、选择题1.软件产品的开发主要是(D )。2.作坊式小团体合作生产方式的时代是(C )时代。3.软件工程与计算机科学性质不同,软件工
13、程着重于(C )。4.将每个模块的控制构造转换成计算机可承受的程序代码是(A )阶段的任务。5.可行性研究的目的是决定(B )。6SA方法用DFD描述(D ) 。A系统的控制流程 B系统的数据构造 C系统的根本加工 D系统的功能7.软件概要设计完毕后得到(B )。A.初始化的软件构造图 C.模块详细的算法 8.软件设计阶段一般又可分为 ( B )。 9.软件设计中划分模块的一个准那么是( C )。A.低内聚低耦合 B.低内聚高耦合 C.高内聚低耦合 D.高内聚高耦合10.PDL是软件开发过程中用于( C )阶段的描述工具。11. 软件测试的目的是(B )。12.软件测试中,白盒法是通过分析程序
14、的(B )来设计测试用例的。13.黑盒法是根据程序的(C )来设计测试用例的。14.下面的逻辑测试覆盖中,测试覆盖最弱的是( C ) C.语句覆盖 15.把一组具有相似特性的对象组合在一起,称之为( C )。A、多态性 B、继承性 C、类 D、消息16.面向对象的主要特征除对象唯一性、封装、继承外,还有 A A、多态性 B、完整性 C、可移植性 D、兼容17.软件生存周期中时间最长的是(D )阶段。18.与计算机科学的理论研究不同,软件工程是一门( C )学科。19.从构造化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大( C )。A、详细设计阶段
15、B、概要设计阶段 C、 需求分析阶段 D、 测试与运行阶段20.软件工程的出现主要是由于( C )。A.程序设计方法学的影响 B.其它工程科学的影响 21.在软件工程工程中,不随参与人数的增加而使软件的生产率增加的主要问题是( D )A、 工作阶段间的等待时间 B、 生产原型的复杂性 C、 参与人员所需的工作站数 D、 参与人员之间的通信困难22. SA方法的根本思想是(C )A自底向上逐步抽象B自底向上逐步分解 C自顶向下逐步分解D自顶向下逐步抽象 23.软件构造图中,模块框之间假设有直线连接,表示它们之间存在着( A )关系。24. 程序设计语言一般简单来说,可划分为低级语言与高级语言两大
16、类,与高级语言相比,用低级语言开发的程序,具有如下哪种特点(C )A、 运行效率低,开发效率低 B、 运行效率低,开发效率高 C、 运行效率高,开发效率低 D、 运行效率高,开发效率高25.为了提高软件测试的效率,应该(D )。26. 与设计测试用例无关的文档是(A )。27. 使用白盒测试方法时确定测试数据应根据( A )与指定的覆盖标准。28. 软件部件的内部实现与外部可访问性的别离,是指软件的( C )。29.一个面向对象系统的体系构造通过它的成分对象与对象间的关系确定,与传统的面向数据流的构造化开发方法相比,它具有的优点是( A ) .A、设计稳定 B、变换分析 C、事务分析 D、模块
17、独立性30. 软件工程方法学的目的是:使软件生产标准化与工程化,而软件工程方法得以实施的主要保证是(C )A、 硬件环境B、软件开发的环境 C、软件开发工具与软件开发的环境D、 开发人员的素质31.软件开发中常采用的构造化生命周期方法,由于其特征而一般称其为( A )A、 瀑布模型 B、 对象模型 C、 螺旋模型 D、 层次模型 32. 对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流同父图相应加工的输入、输出数据流(A )。A必须一致 B数目必须相等 C名字必须一样 D数目必须不等33. 软件需求分析阶段的工作,可以分为四个方面:对问题的识别.分析与综合.编写需求分析文档以及(B
18、)A. 软件的总结 B. 需求分析评审 C. 阶段性报告 D. 以上答案都不正确34在构造化分析方法中,用以表达系统内数据的运动情况的工具有( B ) A. 数据流图 B. 数据字典 C. 构造化语言D. 判定表与判定树35. 为了提高模块的独立性,模块内部最好是(C )。37.数据流图是常用的进展软件需求分析的图形工具,其根本图形符号是(C ) 存储C. 加工.数据流.数据存储与外部实体 38. 软件构造使用的图形工具,一般采用(C )图。39. 在面向数据流的软件设计方法中,一般将信息流分为(A )A、 变换流与事务流B、 变换流与控制流 C、 事务流与控制流 D、 数据流与控制流40.
19、程序的三种根本控制构造是(B )。A.过程、子程序与分程序B.顺序、选择与重复 C.递归、堆栈与队列D.调用、返回与转移41. 白盒测试方法重视(A )的度量。42. 软件的集成测试工作最好由(D )承当,以提高集成测试的效果。43. 软件生命周期的最后的一个阶段是( B )软件文档 44. 每个对象可用它自己的一组属性与它可以执行的一组 C 来表征。A、行为 B、功能 C、操作 D、数据45. 软件重用的单位是(A )。46、以下不属于软件工程方法学三要素的是( D ):A、方法 B、工具 C、过程 D、操作47、软件开发中大约要付出(C )的工作量进展测试与排错。48、系统分析员是( B
20、)A、用户中系统的直接使用者 B、用户与软件人员的中间人 C、软件的编程人员 D、用户与软件人员的领导 49、构造化分析SA方法以数据流图、( D )与加工说明等描述工具,即用直观的图与简洁的语言来描述软系统模型。A、DFD图 B、PAD图 C、IPO图 D、数据字典50、制定软件方案的目的在于尽早对欲开发的软件进展合理估价,软件方案的任务是( D )A、 组织与管理B、 分析与估算 C、 设计与测试D、 规划与调度51、构造设计是一种应用最广泛的系统设计方法,是以( A )为根底、自顶向下、逐步求精与模块化的过程。A、数据流 B、数据流图 C、数据库 D、数据构造52、如果某种内聚要求一个模
21、块中包含的任务必须在同一段时间内执行,那么这种内聚为( A )。A、时间内聚B、逻辑内聚C、通信内聚D、信息内聚 53.在软件构造化设计中,好的软件构造设计应该力求做到( B )。A、顶层扇出较少,中间层扇出较高,底层模块低扇入B、顶层扇出较高,中间层扇出较少,底层模块高扇入C、顶层扇入较少,中间层扇出较高,底层模块高扇入D、顶层扇入较少,中间层扇入较高,底层模块低扇入 54、程序的三种根本控制构造是( B )A、过程、子程序与分程序B、顺序、选择与循环 C、递归、堆栈与队列 D、调用、返回与转移 55、软件测试的手段有多种,通过人工来评审文档或程序,借以发现其中错误,该手段是( D )。 A
22、、黑盒测试 B、正确性测试 C、动态测试 D、静态测试 56、黑盒测试在设计测试用例时,主要需要研究( A ) 。A、需求规格说明与概要设计说明B、详细设计说明C、工程开发方案 D、概要设计说明与详细设计说明57、在整个软件维护阶段所花费的全部工作中,( C ) 所占比例最大。A、改正性维护 B、适应性维护 C、完善性维护 D、预防性维护 58.作坊式小团体合作生产方式的时代是(C )时代。59.在构造化分析方法中,用以表达系统内数据的运动情况的工具有( A )。A. 数据流图 B. 数据词典C. 构造化语言D. 判定表与判定树60.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A
23、 )。A获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C获得当前系统的物理模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型D获得当前系统的物理模型,建立当前系统的物理模型,建立目标系统的物理模型61.模块的独立性是由内聚性与耦合性来度量的,其中内聚性是( B )A、 模块间的联系程度 B、 模块的功能强度C、 信息隐蔽程度 D、 接口的复杂程度62、PAD图的控制执行流程为(C )A、自下而下、从左到右 B、自上而下、循环执行C、自上而下、从左到右 D、都不对63. 在软件工程中,白盒测试
24、方法可用于测试程序的内部构造。此方法将程序可作为( A )64、软件维护工作的最主要局部是( C )65构造分析方法就是面向 D自顶向下逐步求精进展需求分析的方法。A目标 B.功能 C.66. 软件是一种(B )产品。67. 构造化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B )A、控制流 B、数据流 C、程序流 D、指令流68. 在软件的可行性研究中,可以从不同的角度对软件的可行性进展研究,其中是从软件的功能可行性角度考虑的是(B )A、 经济可行性 B、技术可行性 C、 操作可行性 D、 法律可行性69.软件设计的主要任务是设计软件的构造、过程与模块,其中软件构造
25、设计的主要任务是要确定(C )。A模块间的操作细节 B模块间的相似性C模块间的组成关系 D模块的具体功能70、下述任务中,不属于软件工程需求分析阶段的是(D ) 。A分析软件系统的数据要求 B确定软件系统的功能需求C确定软件系统的性能要求 D确定软件系统的运行平台71.为了提高模块的独立性,模块内部最好是(C )。72. PDL是软件开发过程中用于( C )阶段的描述工具。73.在软件测试中,逻辑覆盖标准主要用于( B )74.火车是一种陆上交通工具,火车与陆上交通工具之间的关系是(D )关系。A.组装 B.整体成员 C.关联特殊75、面向对象方法中动态模型的描述工具是( C )。76.数据耦
26、合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是 B A.数据、公共、标记、控制 B.数据、标记、控制、公共C.控制、数据、标记、公共 D.控制、数据、公共、标记77.在SD方法中全面指导模块划分的最重要的原那么是( D )78. 需求分析最终结果是产生( B )。 A. 工程开发方案 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告79. 软件详细设计的主要任务是确定每个模块的( C )。 A. 功能 B. 外部接口 C. 算法与使用的数据构造 D. 编程 80. 对象实现了数据与操作的结合,使数据与操作( C )于对象的统一体中。A. 结合 B. 隐藏 C. 封装 D.
27、 抽象81指出PDL是以下哪种语言 A 。A伪码 B、高级程序设计语言 C 中级程序设计语言 D、 低级程序设计语言82为了提高软件的可维护性,在编码阶段应注意 D 二、填空题1、软件是 数据构造 、 计算机程序 及其说明程序的 各种文档 。2、概要设计主要是把各项 功能需求 转换成系统的 体系构造 。3、面向对象开发方法包括 OOA 、OOD 、 OOP 、OOT四局部。4、构造化设计中以数据流图为根底的两种具体分析设计方法是 变换分析 、 事物分析 设计。5、子类自动共享父类的 属性 与 操作 的机制称为继承。6. 软件工程管理的具体内容包括对开发人员、组织机构、 用户 、 文档资料 等方
28、面的管理。7、可行性研究的三个方面是 技术可行性 、 社会可行性 与_经济可行性_。8、在画分层的DFD时,父图与子图的输入输出数据流要_平衡_。9、在详细设计阶段,除了对模块内的算法进展设计,还应对模块内的_数据构造_进展设计。10. 对象的抽象是_类_。11. 软件工程包括软件开发技术与_软件工程管理_两大局部内容。12、子类只继承一个父类的属性与操作,这称为_单重继承_。13、需求分析阶段产生的最重要的文档是_需求规格说明书_。14、两个模块都使用同一张表,模块的这种耦合称为_公共耦合_。15、被测试程序不在机器上运行,而是采用人工检测与计算机辅助分析检测的手段称为_静态_测试。16、构
29、造化方法是一种面向数据流的开发方法。由构造化分析、_构造化方法_、构造化程序设计构成。17、 对象之间通过_消息_进展通信。18、概要设计主要是把各项功能需求转换成系统的_体系构造_。19、类具有操作,它是对象_行为_的抽象。20、集成测试中的具体方法是_渐增式 与 非渐增式_测试方法。21、构造化分析方法的分析策略是_自顶向下逐步求精_。22、可行性研究实质上是要在较高层次上以较抽象的方式进展_需求分析与设计_的过程。23、衡量模块独立性的两个定性标准是_耦合性与内聚性_。24、继承性是子类自动共享其父类的_数据构造与方法_机制。25、在面向对象方法中,人们常用状态图描述类中对象的_动态行为
30、_。26、规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,那么称该软件为_容错_软件。27.软件工程包括3个要素,即方法、工具、过程。28软件生存周期是指一个软件从提出开发要求开场直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、可行性研究,需求分析,总体设计, 详细设计 ,_编码_,测试,维护活动,可以将这些活动以适当方式分配到不同阶段去完成29数据流图中的箭头表示_数据流_。软件构造图中的箭头方向表示_模块调用_。30_可行性研究_的目的就是用最小的代价在尽可能短的时间内确定该软件工程是否能够开发,是否值得去开发。31.数据流图仅反映系统必须完成的逻辑功能,所以它是
31、一种_功能_模型。32. 面向对象方法学 = 对象+ 类 + 继承 +消息传送。33. 软件概要设计的主要任务就是_怎么做_。34. 软件的生产经历了程序设计、程序系统与 软件工程3 个阶段。35. 软件工程的构造化生命周期方法中,一般将软件设计阶段划分为概要设计与详细设计两个阶段。36. 软件的详细设计可采用图形、表格与过程设计语言3种形式的描述工具表示模块的处理过程。37. 需求分析阶段的任务是确定软件系统需要解决的问题。38. 程序是按既定算法,用某种计算机语言所规定的指令与语言编写的一系列指令或语言的集合。软件是程序再加上程序实现所需的数据与维护程序所需的文挡的总称。39. 由于软件生产的复杂性与高本钱,使大型软件生产出现了很多问题,即出现软件危机;软件工程正是为了克制它而提出了一种概念及相关方法与技术。40. 数据流图包括4种根本符号:园框代表变换/加工,方框代表外部实体,箭头代表数据流,双杠代表数据存储。41. 内聚是从功能的角度来度量模块内的联系,耦合是度量模块之间联系的程度。42. 软件构造中各模块之间相互连接关系的一种度量常称为模块的耦合。43. 软件测试分为单元测试、集成测试、确认测试、系统测试4个阶段。第 23 页