软件工程导论-期末题库(完整版)_第1页
软件工程导论-期末题库(完整版)_第2页
软件工程导论-期末题库(完整版)_第3页
软件工程导论-期末题库(完整版)_第4页
软件工程导论-期末题库(完整版)_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 .填补问题1 .一般来说,可以从一致性、完整性、真实性和有效性四个方面验证软件需求的准确性。2.IPO图是_输入、处理和输出图_的简称,它是美国IBM公司发展完善的图形工具。3 .系统流程图是描述物理模型的传统工具,以图形符号表示系统中各种元素之间的信息流.4 .数据流图中的箭头表示数据流,椭圆或圆表示数据处理,矩形表示数据源/端点。5 .软件测试的步骤如下。 单元测试_、子系统测试、系统测试(子系统和系统测试通常称为集成测试),_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

2、 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _6 .软件生命周期一般分为_问题定义_、可行性研究、_需求分析_、设计代码、_测试_、运行和维护阶段。7 .可行性研究主要集中在以下四个方面_经济可行性_ _、法律可行性_ _,选择上。8 .在结构设计中,在整体设计阶段应用HIPO图,该图由IPO图和_层次图_两部分构成

3、。9 .复杂问题的对象模型通常由五个层次组成:主题层、_类和对象_层、_结构_层、_属性_层和_服务_层。10 .实施精密设计的目标是基于模块的“高凝聚低结合”原则,提高模块的独立性。11 .软件生命周期一般分为_问题定义_、可行性研究_需求分析_、概要设计_、详细设计、代码、_软件测试_、执行和维护阶段。12 .面向对象的数据存储管理模式分为三种: _文件_、关系数据库_和_面向对象的数据库_。13 .单元测试一般以_白箱_测试为主,_黑箱_测试为辅。14 .软件工程的三个要素是_方法_、工具_、和_进程_,其中_进程_支持软件开发各阶段的控制和管理。15 .类部件的再利用方式有_实力再利用

4、_、继承再利用_和_多态性再利用_三种。16 .能力成熟度模型分为五个水平。 初始级别、可重复级别、定义级别、管理级别和优化级别。2 .判断问题1 .如果给落后的项目增加人手,项目就会落后。 (t )2 .进程描述语言可用于描述软件的系统结构。 (f )3 .依据瀑布模型开发软件的指导思想是明确地区逻辑设计和物理设计,早日开始实现程序物理。 (f )5 .只有质量差的软件产品需要维护。 (f )6 .层次结构图用于描述软件的层次结构。 层次图的矩形框表示模块,矩形框之间的连接表示模块的构成关系。 对每个框进行编号,除了层次结构的顶部框以外,其他框都是编号的层次结构。 (f )7 .建立动态模型

5、的第一步是编写典型的交互行为的脚本。 (t )8 .软件错误可能发生在开发过程的初期,越早纠正越好。 (t )9 .软件模块的结合越低越好。 (t )10 .好的测试用例是能够发现至今没有发现的错误。 (t )11 .面向对象设计的结果只能用面向对象语言实现(f )。12 .成功项目的唯一提交是执行方案。 (f )13 .用例之间的关系有三种。 (t )14 .面向对象的设计标准也应该遵循弱结合原则,但继承结合应该提高,紧密地继承结合和高度的一般特殊团结一致。 (t )15 .软件工作的考虑范围主要是程序设计和实现。 (f )16 .环路复杂度可以定量地测量程序的逻辑复杂度,并使用该公式计算环

6、路复杂度:流程图g中的环路复杂度V(G)=N- E 2。 (改为e-n2) (f )17 .等效分类方法将所有可能的输入数据分成多个部分,并且从每个部分中选择少量代表性数据作为测试情形。 (t )18 .在进行整体(改为概要)设计时,必须加强模块之间的联系。 (f )1-9 .系统结构图是正确表现程序结构的图表表示。 因此,在一些情况下,可以将系统配置图用作系统流程图。 (t )20 .创建动态模型的第一步骤是创建典型的交互行为的脚本。 (t )21 .在调试程序时找到错误的位置和性质比纠正该错误更难。 (f )22 .如果在软件测试中未发现错误,表示软件正确。 (f )23 .快速原型模型能

7、有效地适应用户需求的动态变化。 (t )24 .模块化、信息隐藏、抽象化和精炼的软件设计原则有助于获得结合度高、结合度低的软件产品。 (t )25 .集成测试主要由用户进行。 (f )26 .面向对象=对象类继承消息传递。 (t )27 .面向对象分析是构建面向计算机系统的软件系统的对象模型。 (f )三.选择问题1 .具有风险分析的软件生命周期模型是()a .瀑布模型b .喷泉模型c .螺旋模型d .增量模型2 .软件工程的基本要素是方法、工具和()a .进程b .软件系统c .硬件环境d .工作人员3 .软件的复杂性是(),会引起人员通信困难、开发费用超出、开发时间超时等问题。a .固有的

8、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 .算法和使用的数据

9、结构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 .判定复盖

10、14 .对于软件维护,在测试阶段未发现的错误被称为测试、诊断、定位、纠错和修正的回归测试过程()a .修正性维护b .适应性维护c .完整性维护d .预防维护15.()结合对象的属性和操作构成独立的对象,其内部信息对外界隐藏,外界只能通过有限的接口与对象联系。a .多态性b .继承c .软件包d .留言16 .对象实现了数据和操作的结合,把数据和操作()放入了对象的统一体中。a .结合b .隐藏c .胶囊d .抽象17 .在面向对象的开发方法中,()是面向对象技术领域中主导的标准建模语言。A.Booch方法B.Coad方法C.UML语言D.OMT方法18.()表示一个操作对每个类都有不同的实现

11、方法。a .多态性b .多继承c .类的多重化可能性d .信息隐藏19 .单元测试的测试用例主要基于()的结果设计。a .需求分析b .源程序c .概要设计d .详细设计20 .软件测试是为()运行程序的过程。a .纠正错误b .发现错误c .避免错误d .证明正确21 .类部件的再利用方式有多态性再利用、继承再利用和()a .实例重用b .重用c .代码重用d .方法重用22 .支持面向对象技术的软件生存周期模型是()a .喷泉模型b .螺旋模型c .增量型d .瀑布型23 .在白箱测试技术测试用例的设计中,()是最弱的垄断标准。a .词语复盖b .路径复盖c .条件组合复盖d .判定复盖1

12、 .属于白盒测试的测试方法是什么? /BCD是黑盒测试a、基本路径测试b、等价类别c、边界值分析d、错误的推测e、逻辑垄断测试2 .以下选项之一属于内容联接()a .一个模块直接访问另一个模块的内部数据b、一个模块中有多个条目c .一个模块不会通过正常的入口移动到另一个模块内部d,一个模块只有一个条目3 .衡量利益的方法如下:a、货币的时间价值b、投资回收期间c、收益d、投资回报率4 .流程图是用于表示软件模型的图示方法,以下的描绘方法中,经常使用的是哪个?a、从上到下b、从下到上c、分层地d,阶段性地求出精度5 .在软件设计中,通常使用图形工具,可以用于设计的图形工具是以下哪一种?a、结构图

13、b、实体联系图c、PS图d、分层图4 .简单答案:1 .简要叙述增量模型的优点和缺点。答案:优点:采用增量模式的优点是人员分配灵活,第一次无需投入大量人才。 如果核心产品很受欢迎,可以增加人才,实现下一阶段。 如果配备了无法在设定的期间内完成产品的人员,则提供首先推出核心产品的方法。 这样,首先可以向客户分发部分功能,对客户起到镇静剂的作用。 此外,增量可以有计划地管理技术风险。缺点:1 )由于每一组件逐渐地嵌入现有的软件体系结构中,因此参与组件必须不破坏已建立的系统部分,并且软件必须具有开放的体系结构。2 )开发过程中需求的变化是不可避免的。 增量模型的灵活性在适应这一变化的能力上远远优于瀑

14、布模型和快速原型模型,但是随着退化而改变了模型,软件过程的控制失去了整体性。3 )在增量包之间存在交叉,不能很好地处理的情况下,需要进行全面的系统分析,该模型细分功能并单独开发的方法适合需求经常变化的软件开发过程。2 .简要叙述软件设计的过程。答案:软件设计是一个通过抽象化很多东西和问题,抽象化它们不同的级别和角度,把需求变成软件描述的过程,是一个反复的过程。 软件设计根据要求规格书来规划整个设计过程,实施具体的设计过程,即“整体、部分”也是反复和精炼的过程。 然后,对生成的设计规格书进行审查,建立质量评价标准,如果审查不合格,则需要重新审视设计,直到审查合格为止,最终确定定型流程本身。 进入

15、下一阶段,完成软件设计过程。3 .原型化方法主要用于解决什么问题? 试着说明一下这个方法的主要优点和缺点。答案:制作试制品的主要原因是,在产品开发初期,为了解决需求不确定的问题,用户、经理等其他非技术项目的风险负责人发现,在确定和开发产品时,原型可以更具体地体现他们的想象。原型可以在软件开发过程中发挥以下主要作用:(1)作为明确和完善需求原型的需求工具,初步实现所理解系统的一部分。 对用户的原型的评价可以指出需求的许多问题,在开发真正的产品之前,能够以最少的费用解决这些问题。(2)通过以设计选择方案的原型为设计工具进行探索,可以探索不同的用户界面技术,实现系统的最佳可用性,评价可能的技术方案。(3)发展为最终产品原型作为一种结构工具,可以实现产品第一子集的完整功能,通过一系列小规模的开发周期,完成产品整体的开发。4 .请看下面的伪码程序来完成下面的问题(1)画代码的流程图(4点)(2)根据该程序流程描绘该程序的流程图(4点)(3)计算该流程图的循环复杂度(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论