!软件工程练习题3
- 格式:doc
- 大小:181.00 KB
- 文档页数:12
软件工程一.判断题(正确打√,错误打╳,每题1分,10题共10分)1.软件维护不同于硬件维修()2.软件就是程序()3.现在,软件投资的费用比硬件高()4.软件的可靠性往往随其规模的增长而增长()5.软件是逻辑产品而不是物理产品()6.结构化设计是属于面向过程的设计()7.软件工具是帮助开发软件的硬件产品()8.软件工程对开发规模小的软件没有多少用处()9.数据流图的英文缩写是DFD()10.软件中的错误发现纠正得越早,所付出的代价也就越大()二.单选题(每题1分,20题共20分)1.在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了()A、软件危机B、软件工程C、程序设计革命D、结构化程序设计2.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出下列回答()A、确定B、行或不行C、正确D、无二义3.设计良好的软件通常具有()结构()A. 上三角形B.下三角形C.瓮形D. 一字形4.在需求分析之前有必要进行的工作是( )A.程序设计 B.模块分析C.ER分析 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.根据测试用例设计方法的不同可分为黑盒测试和白盒测试两种,它们()A、前者属于静态测试,后者属于动态测试B、前者属于动态测试,后者属于静态测试C、都属于静态测试D、都属于动态测试15.在软件工程中,当前用于保证软件质量的主要技术手段还是 ( )A、正确性证明B、符号证明C、测试D、自动程序设计16.软件测试是为了()而执行程序的过程()A、发现错误B、避免错误C、纠正错误D、证明正确17.以下哪种测试方法不属于白盒测试技术()A、基本路径测试B、边界值分析测试C、循环覆盖测试D、逻辑覆盖测得分评卷人试18.单独测试模块时,有时需要一个替身来替代上层模块,此替身被称作是()A.理解模块B.管理模块 C.驱动模块D.传递模块19.软件维护有四种,下面哪一个不是的()A. 完善性维护B. 适应性维护C. 预防性维护D. 测试性维护20.以下哪一项不是面向对象的特征()A、多态性B、继承性C、封装性D、过程调用三.填空题(每空2分,12空共24分)1.在模块结构图中,常用扇入数、扇出数来评价模块结构图,直接调用某一模块的其他模块数称为该模块的(【1】)。
软件工程练习题1-3习题(附答案).软件工程练习题(1-3章)一、单项选择题1. 软件危机具有下列表现()。
I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住III. 软件常常不可维护IV. 软件成本逐年上升A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是()。
A. 运行和维护阶段B. 设计阶段C. 代码实现阶段D. 测试阶段3. 下列属于软件的特点的是()。
A. 软件是一种逻辑实体,具有抽象性B. 软件在使用过程中没有磨损、老化的问题C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高D. 以上都正确4. 软件工程的出现是由于()。
A. 软件危机的出现B. 计算机硬件技术的发展C. 软件社会化的需要D. 计算机软件技术的发展5. 软件开发技术不包含()。
A. 软件开发方法学B. 软件工程环境C. 软件工具D. 软件质量度度量6 下列属于应用软件的是()。
I. 计算机辅助教学软件II. 软件测试工具III. 办公自动化软件IV. 工程与科学计算软件A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确7. 需求分析阶段最重要的技术文档是()。
A. 设计说明书B. 需求规格说明书C. 可行性分析报告D. 用户手册8. 以下关于数据流图的说法错误的是()。
A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储B. 数据流图是用作结构化分析的一种工具C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成D. 数据流图的绘制采用自上向下、逐层分解的方法19. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()。
A. 数据库设计B. 数据通信C. 数据定义D. 数据维护求10. 结构化方法的基本原则是()。
软件工程练习题库+答案一、单选题(共56题,每题1分,共56分)1.实现虚存最主要的技术是()。
A、整体对换B、整体覆盖C、多道程序设计D、部分对换正确答案:D2.逻辑回归算法通常使用下列哪种方法求解A、统计分析B、梯度下降迭代优化C、直接求解D、相识度计算正确答案:B3.从二叉搜索树中查找一个元素时,其时间复杂度大致为A、O(n)B、O(n2)C、O(1)D、O(log2n)正确答案:D4.下面哪些概念在页式虚拟存储管理系统中一定用到?()A、抖动B、段表C、缺页中断D、联想存储器正确答案:C5.msconfig命令可以用来配置()。
A、系统配置B、协议配置C、服务配置D、应用配置正确答案:A6.执行完当前指令后, PC 中存放的是后继指令的地址,因此 PC 的位数和()的位数相同。
A、指令寄存器B、程序状态字寄存器C、主存地址寄存器D、指令译码器正确答案:C7.下列不属于防火墙核心技术的是()。
A、(静态/动态)包过滤技术B、NAT技术C、应用代理技术D、日志审计正确答案:D8.求 2n 个数中的最大值和最小值,最少的比较次数是A、4n/3B、2n-2C、3n-2D、3n/2正确答案:C9.LSTM网络主要解决了RNN中遇到的哪些问题A、不可并行计算,速度提升B、无法处理语言数据C、可以有选择的记忆D、特征编码稀疏问题正确答案:C10.当你感觉到你的Win2003运行速度明显减慢,当打开任务管理器后发现CPU使用率达到了100%,你认为你最有可能受到了()攻击。
A、缓冲区溢出攻击B、木马攻击C、暗门攻击D、DOS攻击正确答案:D11.A方有一对密钥(KA公开,KA秘密),B方有一对密钥(KB公开,KB秘密),A方向B方发送数字签名M,对信息M加密为:M’= KB 公开(KA秘密(M))。
B方收到密文的解密方案是()。
A、KB公开(KA秘密(M’))B、KA公开(KA公开(M’))C、KA公开(KB秘密(M’))D、KB秘密(KA秘密(M’))正确答案:C12.df.head(6)的含义是A、展示数据中前6条数据B、展示数据中第6条数据C、展示数据中后6条数据D、删除数据中的前6条正确答案:A13.关于机器学习与深度学习的描述正确的是A、深度学习算法不需要对数据进行预处理B、深度学习算法只能应用在计算机视觉与自然语言处理中C、深度学习算法优于机器学习算法D、深度学习算法通常迭代速度较慢正确答案:D14.信息安全中PDR模型的关键因素是()。
《软件工程》课程复习资料一、填空题:1.基于计算机系统总体可靠性与以下三个方面紧密关联:硬件可靠性、软件可靠性和。
2.面向对象的软件过程是以为基础,利用特定的软件工具直接完成从对象客体的描述到软件结构之间的转换。
3.需求分析的任务主要有两个:通过对问题及环境的理解、分析和综合,建立分析模型;在完全弄清用户对软件系统的确切要求的基础上,用把用户的需求表达出来。
4.需求开发又分为可行性研究、需求导出和分析、和需求验证。
5.对象包含两个基本的因素,和方法。
6.数据流图包括以下两种类型:变换型数据流图和。
7.系统设计阶段的输出结果是适应应用软件要求的、类间关系以及子系统的规格说明。
8.软件测试是为了发现而执行程序的过程。
9.软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批,并利用它们去运行程序,以发现程序错误的过程。
10.软件变更可以是修改代码错误的简单变更、更正设计错误的较大范围的变更、对描述错误进行修正或者增加新需求的重大改进。
软件变更可以考虑以下几个策略:、体系结构转换、软件再工程等策略。
11.软件维护性是软件的内在固有属性,它是的重要组成部分。
12.质量评审和自动化的软件评估是质量控制的两种方式。
评审活动主要包括、进展评审和质量评审等几种不同类型。
二、单项选择题: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.Grenford J.Myers就软件测试目的提出的观点不包括以下哪项? [ ]A.测试是程序的执行过程,目的在于发现错误B.证明软件的功能和性能与需求说明相符合C.一个好的测试用例在于能发现至今未发现的错误D.一个成功的测试是发现了至今未发现的错误的测试9.黑盒测试又称为 [ ]A.结构测试B.代码测试C.功能测试D.路径测试10.纠错技术主要是指定位程序错误采用的工具和手段,常用的定位错误方法不包括 [ ]A.插入打印语句B.设置断点C.根据结果推理D.掩蔽部分程序11.为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程,就叫做 [ ]A.完善性维护B.适应性维护C.改正性维护D.预防性维护12.( )和自动化的软件评估是质量控制的两种方式,其中前者是由一组人员对软件、文档编制和软件制作过程进行评审。
软件工程练习题第一篇:软件工程练习题练习题一、判断题1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。
(错)2.软件的模块数越少,其软件成本越低。
(错)3.JAVA语言编译器是一个CASE工具。
(对)。
4.发现错误多的程序模块,一般残留在模块中的错误也多。
(对)5..软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。
(错)6.软件模块之间的耦合性越弱越好。
(对)7.数据库设计说明书是一个软件配置项(对)8.软件测试就是程序测试。
(错)9.PDL的语法是开放式的,其内层语法是确定的,而外层语法则不确定。
(错)10.根据编程规范,在对方法命名时, 方法名称的第一个单词常常采用一个名词。
(错)11.在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是生成类的模板。
(错)12.可行性研究的目的不是解决问题,而是确定问题是否值得去解决。
13.过程描述语言可以用于描述软件的系统结构。
(错)14.如果通过软件测试没有发现错误,则说明软件是正确的。
(错)15.快速原型模型可以有效地适应用户需求的动态变化。
(对)16.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。
(对)17.集成测试主要由用户来完成。
(错)18.随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强调清晰。
(对)19.确认测试计划应该在可行性研究阶段制定(错)20.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。
(错)21.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。
(对)22.一个好的测试用例在于能发现至今未发现的错误。
(对)23.在可行性研究中最难决断和最关键的问题是经济可行性。
(╳)24.耦合是指一个模块内各个元素彼此结合的紧密程度。
(╳)25.一个好的测试用例在于能发现至今未发现的错误。
《软件工程练习题及参考答案》一、单向选择题(四选一、每小题3分,共18分)1、面向对象(Object Oriented)方法是将现实世界的事物以对象的方式(B )到计算机世界的方法。
对应映射反映反射2、盒图也称为(D)或Chapin图。
这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。
流程图框图判定表N-S图3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。
程序数据逻辑物理4、人机界面的风格大致经过了(B)代的演变。
三四五六5、以下不属于白盒测试技术的是(D)逻辑覆盖基本路径测试循环覆盖测试等价类划分6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。
纠错性维护适应性维护改善性维护预防性维护二、填空题(每空2分,共18分)1.文档—一种数据媒体和其上所记录的(数据)。
2.机器语言、汇编语言:依赖于机器,面向(机器)3.软件有效性,指软件系统的时间和(空间)效率。
4.软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。
5.软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。
6.为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。
04027.一个软件的深度是指其控制的(层数)。
8.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫(编码)过程。
9.软件维护是软件生命周期的(最后)一个阶段。
三、判断题(每小题2分,共24分,错误打X、正确打√)1.缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之一。
(√)2.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。
(X)3.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。
(√)4.快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合。
一. 判断题1.软件实际就是程序( X )2.成功的测试是没有发现错误的测试(X )3.软件工程的主要思想是从理论的角度来观察分析软件开发盒生产活动(X )4.一个模块直接引用另一个模块中的数据,这两个模块之间的耦合不是内容耦合(X )5.程序只要逻辑正确,能够被机器理解并执行就够了(X )二.选择题1.在软件质量因数中,软件在异常条件下人能运行的能力称为软件的(B)A)可靠性B)健壮性C)可用性D)安全性2.软件开发可行性研究,一般涉及经济,技术盒操作可行性,而进行可行性研究的基本依据是用户提出的软件(C)A)系统质量B)系统目标C)系统功能D)系统性能3.结构化程序设计中,一般包含3种基本结构,下列结构中哪个不属于基本结构( B )A)顺序结构B)嵌套结构C)顺序结构D)选择结构4.JACKSON方法是一种面向( B )的方法A)对象 B )数据结构C)数据流D)控制流5.模块内部过程描述就是模块内部的(B),它的表述形式就是详细设计语言A)模块化设计B)算法设计C)程序设计D)详细设计6.在设计测试用例时,(A)是用的最多的一种黑盒测试方法A)等价类划分B)边值分析C)因果图D)判定表17软件的可维护性,可使用性, ( B) 是衡量软件质量的几个主要特性A)可靠性B)可复用性C)可理解性D)可修改性8.原型化方法是一种(B)型的设计过程A)自外向内B)自顶向下C)自内向外D)自底向上9.模块(B)定义为受该模块内一个判断影响的所有模块集合A)控制流B)作用域C)宽度D)接口10.程序控制的3种基本结构中,(C)结构可提供程序重复控制A)遍历B)排列 C )循环D)分支三.填空题1.黑箱测试即___性能测试____、白箱测试即_____结构测试______。
2.开发期的主要任务需求分析总体设计,详细设计,编码,测试。
3. 结构化方法将软件生命周期分为__设计__,___开发___,___运行___三个时期.4. 各模块经过单元测试后,将各模块组装起来进行集成测试,以检查与设计相关的软件体系结构的有关问题。
一、选择题1.软件是一种()产品。
A.有形 B.逻辑C.物质 D.消耗2.与计算机科学的理论研究不同,软件工程是一门()A.理论性B.工程性C.原理性D.心理性3.软件工程学科出现的主要原因是()A.计算机的发展B.其他工程学科的影响力C.软件危机的出现D.程序设计方法学的影响4.软件生存周期模型有多种,下列选项中,()不是软件生存周期的模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型5.软件开发模型是指软件开发的全部过程、活动和任务的结构框架。
主要的开发模型有瀑布模型、演化模型、螺旋模型和喷泉模型。
螺旋模型将瀑布模型和演化模型相结合,并增加了[A ],它建立在[B ]的基础上,沿着螺线自内向外每旋转一圈,就得到[B ]的一个版本。
喷泉模型描述了[C ]的开发模型,它体现了这种开发方法创建软件的过程所固有的[D ]和[E ]的特征。
供选择的答案:A:(1)系统工程(2)风险分析(3)设计评审(4)进度控制B:(1)模块划分(2)子程序分解(3)设计(4)原型C:(1)面向对象(2)面向数据流(3)面向数据结构(4)面向事件驱动D:(1)归纳(2)推理(3)迭代(4)递归E:(1)开发各阶段之间无“间隙”(2)开发各阶段分界明显(3)部分开发阶段分界明显(4)开发过程不分阶段您的选择是: 【A 】【B 】【C 】【D 】【E 】6.目前存在若干种软件生存周期模型,例如瀑布模型、增量模型、螺旋模型等。
其中规定了由前至后、相互衔接的固定次序的模型是()A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型7.软件生命周期包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、()维护等活动。
A.应用B.测试C.检测D.以上都是8.准确地解决“软件系统必须做什么”是()阶段的任务。
A.分析阶段B.设计阶段C.编码阶段D.测试阶段9.研究开发所需要的成本和资源是属于可行性研究中的()研究的一方面。
Software Life-Cycle Models1. Which of the following is not a software life-cycle model?A. build-and-fixB. waterfallC. rapid prototypingD. incrementalE. synchronize and stabilizeF. spiralG. fountainH. all are software life-cycle models2. Which of the following is not a software life-cycle model?A. spiralB. waterfallC. rapid prototypingD. incrementalE. jacuzzi3. In which of the following circumstances might the 'build-and-fix' software life-cycle model be an appropriate one to use?A. large-scale, in-house products with heavy user-involvement in the designstageB. for products utilising an open architecture and complex user-interfaceC. real time systemsD. object-oriented systemsE. short programs that will not need maintenance4. In which of the following circumstances might the spiral software life-cyclemodel be an appropriate one to use?A. large-scale, in-house productsB. for products utilising an open architecture and complex user-interfaceC. real time systemsD. object-oriented systemsE. short programs that will not need maintenance5. In which of the following circumstances might the rapid prototyping software life-cycle model be an appropriate one to use?A. large-scale, in-house productsB. for products with complex user-interface where it is important to meet aparticular client's needsC. real time systemsD. object-oriented systemsE. short programs that will not need maintenance6. In which of the following circumstances might the waterfall software life-cycle model be an appropriate one to use?A. large-scale, in-house productsB. for products utilising an open architecture and complex user-interfaceC. real time systemsD. object-oriented systemsE. large document-driven projects requiring a disciplined approach7. What is a drawback of the synchronise-and-stabilise software life-cycle model?A. it is totally unsatisfactory for nontrivial programs.B. it can only be used for large-scale, in-house products.C. the developers have to be competent in risk analysis and risk resolution.D. it is only suitable for object-oriented systems developed in ADA for theDefence industry.E. it has not been widely used other than at Microsoft.8. Which feature of the waterfall software life-cycle model allows modifications to be made to the deliverables produced at an earlier stage?A. the cascade effectB. re-selection of the best solution, of those developed in parallel, from theprevious stageC. risk analysis and risk resolutionD. no modifications can be made as each stage once signed off by the clientsand developers becomes definitiveE. feedback loops9. A critical point of the waterfall software life-cycle model is that:A. the cascade effect ensures that the product gains momentum through each phase in its development thus ensuring buy-in from the clients.B. re-selection of the best solution, of those developed in parallel, from the previous stage.C. risk analysis and risk resolution are explicitly defined for each stage.D. no modifications can be made as each stage once signed off by the clients and developers becomes definitive.E. no phase is complete until the documentation for that phase has been completed and the deliverables for that phase have been approved by the SQA group.10. Which of the following statements about the waterfall software life-cyclemodel is true?A. Testing is a separate phase that is only conducted once the product isconstructed.B. Once the product is delivered to the client there is no need to maintain the documentation.C. Its strength is in the written documentation available to the client in astyle that makes the nature and characteristics of the product to be deliveredhighly visible.D. No modifications can be made as each stage once signed off by the clientsand developers becomes definitive.E. All of these statements are false.11. To a certain extent the use of the rapid prototyping software life-cycle model is to overcome one of the weaknesses of the waterfall model. To this extent the working model is primarily designed to be evaluated by the:A. developersB. analystsC. test teamD. managersE. end-users12. Which property of the rapid prototype is not important?A. the speed with which it can be developedB. the speed with which it can be modifiedC. its ability to determine the client's real needsD. the insights that the design team can gain from it, even if they are of the'how not to do it' varietyE. its internal structure13. Introducing rapid prototyping into an organization as a front-end to the waterfall model has an additional advantage. It will give management the opportunity to:A. dehire employees assigned to unsuccessful projects.B. remove the unnecessary step of producing documentation.C. put the onus of specifying the requirements fully on the users as they can no longer use the excuse that they did not understand the documentation to request changes to their 'needs'.D. assess the technique while minimising the associated risk.E. All of these are advantages.14. In one sense the Incremental model is a contradiction in terms.A. Like a house, each build (i.e. tradesmen such as plumbers, electricians) must complete their work until the whole (product) can be used.B. It is necessary to change (i.e. maintain) initial builds before the new ones can be added to it. Thus you have to maintain the product before it is completed, thus increasing the amount of work.C. A model is meant to represent one (simplistic) view of the whole. In contrast the incremental model is based on stand-alone building blocks and a view of the overall shape cannot be seen until the last build (block) is in place.D. The initial contract specifies the entire product to be built and the client is required to makeprogress payments every time period (usually monthly) as all increments may be worked on simultaneously and none may delivered within a time increment.E. The developer must design the product as a whole but simultaneously view it as a sequence of builds.15. An additional advantage of the Incremental model is that:A. the customer pays for the entire product initially although the costs (mostly labour) are accrued over time.B. work can begin quickly on the first build (justifying the pre-payment made by the client), although this may lead to more work for the subsequent builds as they are integrated into the earlier ones.C. stability is introduced early in the product's history once the overall architecture is specified and no changes are incorporated until after the last of the builds.D. the client has more time to introduce changes to the organization and there is no need for the parallel runs that accompany the big-bang approach typified by the waterfall and prototyping models.E. as the design is flexible enough to support incremental builds, enhancements undertaken during the maintenance phase can be easily incorporated as they are additional builds.16. An advantage of the Incremental model is that:A. change and adaptation are natural to the modelB. an operational quality product is delivered to the client at each stage.C. as the design is flexible enough to support incremental builds, enhancementsundertaken during the maintenance phase can be easily incorporated as they areadditional builds.D. it reduces the traumatic effect of introducing changes to the organizationas each new increment builds upon the work delivered in the previous one.E. All of these are advantages of the incremental model.17. A disadvantage of the Incremental model is that:A. clients are not billed until the last build is completed.B. it is not easy to accommodate changes that occur due to external(competitive, social and regulatory) forces.C. the model can easily degenerate into the 'build-and-fix' approach.D. There are no advantages of the incremental model - the approach has largelybeen discredited.E. All of these are disadvantages of the incremental model.18. The extreme programming software life-cycle model is an adaptation of the ____________ model.A. build-and-fixB. waterfallC. rapid prototypingD. incrementalE. spiral19. In extreme programming there is no overall design phase before the various builds are constructed. Instead the design is modified while the product is being built. This procedure is termed:A. regressionB. synchronizationC. stabilizationD. refactoringE. incrementing20. In extreme programming, the first step is that the software development teamdetermine the various features that the client would like the product to support. These are termed:A. buildsB. function pointsC. feature pointsD. storiesE. increments21. In extreme programming, what is the first step in a task that is to be part of a build?A. requirement definitionB. designingC. testingD. programmingE. documentation22. Which of the following is not a feature of extreme programming (XP)?A. computers of the XP team are set up in the centre of a large roomB. a client works with the XP team at all timesC. no individual can work overtime for more than 2 successive weeksD. there is no specialization, all members work on specification, design, codeand testingE. there is no overall design phaseF. None. That is, all of these are features of extreme programming.23. The synchronise-and-stabilise software life-cycle model is an adaptation ofthe ____________ model.A. build-and-fixB. waterfallC. rapid prototypingD. incrementalE. spiral24. The spiral software life-cycle model is an adaptation of the ____________model(s).A. build-and-fixB. waterfallC. rapid prototypingD. incrementalE. all of the above25. The aim of the synchronisation stage of the synchronise-and-stabilisesoftware life-cycle model is to:A. repair faults found in any earlier releasesB. freeze change requests so that the build can be stabilisedC. draw up the specification documentD. release the current version(s) of the product to the clients based on theversions and releases installed at their various sites.E. put the partially completed components together and test and debug theresulting product26. A disadvantage of the synchronise-and-stabilise software model is that:A. the model cannot be used if the initial specification is incomplete.B. the developers cannot gain an insight into the operation of the product until a build is complete.C. the model can easily degenerate into the 'build-and-fix' approach.D. There are no advantages of the synchronise-and-stabilise model - the approach has largely been discredited.E. All of these are disadvantages of the incremental model.F. the approach needs the existence of a disciplined change control operation before it can be put in place. Thus it is unlikely to be used by the many small software development organizations that typify the industry.27. An example of the risk involved in software development is:A. key personnel may resign before the product is complete.B. the manufacturer of critical components (e.g. the hardware associated with areal-time system) may go bankrupt.C. technology changes may render the product obsolete.D. competitors may market a fully functional lower-cost equivalent package.E. All of these are risks involved in software development.28. A simple way of looking at the spiral software life-cycle model is as a _________ model with each phase preceded by risk analysis.A. build-and-fixB. waterfallC. rapid prototypingD. incrementalE. Synchronize and stabilize29. A simple way of looking at the spiral software life-cycle model is as a waterfall model with each phase proceeded by:A. build-and-fixB. freezingC. synchronizationD. testingE. risk analysis30. There are many risks associated with software development. Which of the following represents the soundest scenario by way of resolving risk?A. adding more people to the project to ensure that it will be completed in time.B. freezing all outstanding change requests until every currently known fault is repairedC. insisting on the use of the waterfall technique to document each stage of a project before agreeing to proceed to the next phase.D. increase the amount of testing immediately prior to the release of the product.E. building a prototype to test say a routing algorithm, the failure of which would otherwise cause widespread disruption to the business.31. Which of the following are limitations of the spiral model?A. It is suited to internal development. For instance, termination of acontract with an external developer may lead to costly litigation.B. For small projects the cost of conducting risk analysis may not be warrantedwhen put alongside the total cost of the product.C. Members of the development team may not be competent risk analysts.D. All of these are limitations on or restrictions to the use of risk analysis.E. There are no limitations on or restrictions to the use of risk analysis.32. How is maintenance treated the spiral model of software development?A. It is not treated at all. This is one of the major limitations of the spiralmodel.B. Maintenance is the last of the four quadrants in the model.C. Maintenance is the first of the four quadrants in the model..D. Maintenance is treated within each quadrant of the model.E. Maintenance is treated as a further iteration of the model.33. A common feature(s) of object-oriented life cycle models is/are:A. iterationB. parallelism (overlap of activities)C. incremental developmentD. All of these are featuresE. None of these are features34. An intrinsic property of software production and the object-oriented paradigm in particular is:A. iterationB. the existence of bugsC. testingD. crisis managementE. All of these are features35. In an analysis of some of the life cycle models, Schach concludes that the_____________ model is the best.A. waterfallB. incrementalC. object-orientedD. spiralE. none of these are "the" best.。
一、选择题1.软件是一种()产品。
A.有形 B.逻辑C.物质 D.消耗2.与计算机科学的理论研究不同,软件工程是一门()A.理论性B.工程性C.原理性D.心理性3.软件工程学科出现的主要原因是()A.计算机的发展B.其他工程学科的影响力C.软件危机的出现D.程序设计方法学的影响4.软件生存周期模型有多种,下列选项中,()不是软件生存周期的模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型5.软件开发模型是指软件开发的全部过程、活动和任务的结构框架。
主要的开发模型有瀑布模型、演化模型、螺旋模型和喷泉模型。
螺旋模型将瀑布模型和演化模型相结合,并增加了[A ],它建立在[B ]的基础上,沿着螺线自内向外每旋转一圈,就得到[B ]的一个版本。
喷泉模型描述了[C ]的开发模型,它体现了这种开发方法创建软件的过程所固有的[D ]和[E ]的特征。
供选择的答案:A:(1)系统工程(2)风险分析(3)设计评审(4)进度控制B:(1)模块划分(2)子程序分解(3)设计(4)原型C:(1)面向对象(2)面向数据流(3)面向数据结构(4)面向事件驱动D:(1)归纳(2)推理(3)迭代(4)递归E:(1)开发各阶段之间无“间隙”(2)开发各阶段分界明显(3)部分开发阶段分界明显(4)开发过程不分阶段您的选择是: 【A 】【B 】【C 】【D 】【E 】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.数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘图法方法中,()是常采用的。
①自顶向下②自底向上③分层绘制④逐步求精A.全是B.①③④C.②③④D.①④15.在软件开发过程中常用图作为描述工具。
DFD就是面向(A)分析方法的描述工具。
在一套分层DFD中,如果某一张图中有N个加工,则这张图允许有(B)张子图。
在一张DFD图中,相邻两个加工之间(C)。
在画分层的DFD时,应保持(D)之间的平衡。
DFD中从系统的输入流到系统的输出流的一连串连续变换形成一种信息流,这种信息流可分为(E)两大类。
A.①数据结构②数据流③对象④构件B.①0 ②1 ③1-N ④0-NC.①有且仅有一条数据流②至少有一条数据流③可以有0和多条名字互不相同的数据流④可以有0和多条数据流,但允许其中有若干条名字相同的数据流D.①父图和子图②同一父图的所有子图③不同父图的所有子图④同一子图的所有直接父图E.①控制流和变换流②变换流和事务流③事务流和事件流④事件流和控制流16.进行需求分析可使用多种工具,但()是不适用的。
A.数据流图B.判定表C.PAD图D.数据字典17.在数据流图中,有名字及方向的成分是()。
A.控制流B.信息流C.数据流D.信号流18.需求分析最终结果是产生()。
A.项目开发计划B.可行性分析报告C.需求规格说明书D.设计说明书19.软件设计包括四个既独立又相互联系的活动,分别为( 1 ) 、(2) 、数据设计和过程设计。
(1)A.用户手册设计B.语言设计C.体系结构设计D.文档设计(2)A.文档设计B.程序设计C.实用性设计D.接口设计20.为了提高模块的独立性,模块内部最好是()。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚21.好的软件结构应是()A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚22.程序控制一般分为()、分支、循环三种基本结构。
A.分块B.顺序C.重复D.选择23.软件设计中划分通常遵循的原则是要使模块间的耦合性尽可能地()A.强B.弱C.较强D.适中24.在多层次的结构图中,其模块的层次数称为结构图的()。
A.深度B.跨度C.控制域D.粒度25.()是指把一些关系密切的软件元素物理地放得彼此靠近。
A.隐藏B.内聚C.局部化D.模块独立26.()工具在软件详细设计过程中不采用。
A.判定表B.IPO图C.PDLD.DFD27.指出PDL是下列()语言。
A.高级程序设计语言B.伪码C.中级程序设计语言D.低级程序设计语言28.工程上常用的表达工具有()。
A.图形工具B.表格工具C.语言工具D.以上全是29.结构化程序设计主要强调的是()。
A.程序的效率B.程序执行速度C.程序易读性D.程序的规模30.最早用于科学计算的程序设计语言是( )A、PROLOG语言B、SMALLTALK语言C、FORTRAN语言D、COBOL语言31.软件测试的目的是()A.证明软件的正确性B.找出软件系统中存在的所有错误C.证明软件系统中存在错误D.尽可能多的发现软件系统中的错误32.一般来说与设计测试数据无关的文档是()。
A.需求规格说明书B.设计说明书C.源程序D.项目开发计划33.下面的逻辑测试覆盖中,测试覆盖能力最弱的是()。
B.A.条件覆盖B.条件组合覆盖C.语句覆盖D.条件/判定覆盖34.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现在输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001。
请问设计这种测试用例的方法是A.条件覆盖法B.等价类划分法C.边界值分析法D.错误推断法35.在软件测试中,逻辑覆盖标准主要用于()。
A.黑盒测试法B.白盒测试法C.灰盒测试法D.错误推断法36.在黑盒测试中,着重检查输入条件的组合是()A.等价类划分法B.边界值分析法C.错误推断法D.因果图法37.确认测试主要用于发现( )阶段的错误。
A.需求分析B. 概要设计C. 详细设计D. 编码38.在软件生存周期中,花费代价所占比例最大的阶段是()。
A.需求分析B.设计C.测试D.维护39.软件生命周期中最长的阶段是()A.详细设计B.概要设计C.需求分析D.维护阶段40.软件生命周期中所花费用最多的阶段是A. 详细设计B. 软件编码C. 软件测试D. 软件维护41.因计算机硬件和软件环境的变化而作出的修改软件的过程称为A.改正性维护B. 预防性维护C.完善性维护D.适应性维护42.面向对象的主要特征除封装、继承外,还包括()A.多态性B.完整性C.兼容性D.可移植性43.在确定类的属性时,所有()是候选属性。
A.动词B.名词C.修饰性名词词组D.词组44.汽车有一个发动机,汽车与发动机之间的关系是()关系。
A.一般与具体B.整体与部分C.分类关系D.is a45.OO方法中,每个对象可用它自己的一组属性和它可以执行的一组()来表现。
A.行为B.功能C.操作D.数据46.火车是一种陆上交通工具,火车和陆上交通工具之间的关系是()。
A.组装B.整体与部分C.has a D.一般与具体47.CMM软件能力成熟度明确定义了初始级等()个级别。
A. 4B. 5C. 2D. 6二、判断题48.软件工程一词诞生于1969年的NA TO会议。
()49.软件工程一词诞生于1968年的ICSE会议。
50.软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。
()51.软件生命周期由软件定义、开发和运行维护三个时期组成。
52.瀑布模型是由文档驱动的模型。
53.瀑布模型是添加了风险分析的快速原型模型。
()54.螺旋模型是风险驱动的模型。
55.软件就是程序。
56.喷泉模型是面向对象的过程模型。
()57.可行性分析要进行一次压缩、简化了的需求分析工作。
()58.可行性分析就是回答“是否值得做”的问题。
()59.系统流程图是描绘逻辑系统的传统工具。
()60.61.软件错误可能出现在开发过程的早期,越早修改越好。
62.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性研究的依据。
63.需求分析的最终结果是产生软件总体设计说明书。
()64.业务需求、用户需求与系统需求是同一回事。
()65.状态转换图是表示系统行为的重要模型之一。
()66.状态转换图中状态是任何可以被观察的系统行为模式。
67.数据流图的符号由基本符号和附加符号两种组成。
68.数据字典是对系统流程图的重要补充和说明。
69.70.一个设计得好的典型系统的平均扇出通常是5或7。
71.面向数据流的设计方法根据数据流的不同所采取的映射策略也不同。
72.设计模块时,模块的控制域应在模块的作用域内。
()73.面向数据流的设计方法将DFD映射成为软件结构。
()74.程序的质量主要取决于软件设计的质量。
()75.76.功能性注释一般出现在模块的首部。
()77.序言性注释一般用于解释程序中某条语言或某段程序设计的算法或数据结构。
78.用户界面设计是一个迭代的过程。
()79.良好的编程网络是提高程序可读性的保证。
80.PAD图是由IBM公司发明的一种用于过程设计的工具。
()81.PAD图是在软件详细设计过程中采用的工具。
82.判定树和判定表不能表示复杂的条件组合与应做的动作之间的对应关系。
()83.判定树与判定表相比,大多数时候判定表更为简洁,而判定树则更为直观。
()84.程序的环形复杂度常常借助数据流图来帮助度量。
()85.环形复杂度高的程序往往是最困难、最容易出问题的程序。
()86.环形复杂度为10是模块规模大小的一个更为科学的上限。
()87.常见的帮助设施主要有集成式和附加式两种。
88.编码时应尽量使用全局变量。
()89.90.软件测试的目的是为了排除错误。