软件工程复习题目 答案_第1页
软件工程复习题目 答案_第2页
软件工程复习题目 答案_第3页
软件工程复习题目 答案_第4页
软件工程复习题目 答案_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

一、选择题1、软件是一种(2)性工业产品。(1)理论 (2)知识(或逻辑) (3)消耗 (4)体力2、需求分析是在(2)进行的。(1)用户 (2)用户和分析人员之间 (3)开发人员内部 (4)使用和维护人员之间3、在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于(2)的研究。(1)经济可行性 (2)技术可行性 (3)操作可行性 (4)法律可行性4、在软件工程项目中,不随参与人员的增加而使软件的生产率增加的主要问题是(4) 。(1)工作阶段的等待时间 (2)生产原型的复杂性(3)参与人员所需的工作站数 (4)参与人员之间的沟通困难5、需求分析阶段的研究对象是(1) 。(1)用户需求 (2)分析员要求 (3)系统需求 (4)软硬件需求6、对某公司进行调查分析,确定是否值得开发一个新系统的工作是进行(4) 。()系统设计 ()系统分析 ()系统详细调查 ()系统初步调查7、系统分析员应当(4) 。()善于使用户接受自已的观点 ()善于使自已获得成就()是用户与计算机技术人员的有效协调与组织者 ()满足上述所有条件8、数据流图的绘制过程,是对新系统的需求进行综合分析和形成新系统(1)的过程。()逻辑模型 ()物理模型 ()总体方案 ()可行性报告9、系统测试的目的是(4) 。()找出编码错误 ()找出数据错误 ()要证明程序无错 ()发现软件错误10、一个模块内部各程序段都在同一张表上操作,这个操作的内聚性称为(3) 。(1)时间内聚 (2)功能内聚 (3)通信内聚 (4)顺序内聚11、对象是面向对象开发的基本成分,每个对象可用它的一组(3)和它可以执行的一组操作来定义。(1)服务 (2)参数 (3)属性 (4)调用12、最高程度也是最差的耦合是(2) 。(1)公共耦合 (2)内容耦合 (3)控制耦合 (4)数据耦合13、概要设计阶段产生的文档不包括(4) 。(1)概要设计说明书 (2)数据库设计说明书 (3)用户手册 (4)开发进度报告14、汽车有一个发动机,汽车和发动机之间的关系是(2) 。(1)一般具体关系 (2)整体部分关系 (3)分类关系 (4)is a 关系15、覆盖准则最强的是(4) 。(1)语句覆盖 (2)判定覆盖 (3)条件覆盖 (4)路径覆盖16、下面对数据流图描述不正确的是(4) 。()是组织中信息运动的抽象 ()是系统模型的主要形式()它与对系统的物理描述无关 ()所描述的内容是面向管理员的17、在基本的数据加工中,决策树适合于表达(2) 。()决策或判断步骤较多的加工问题()决策或判断条件较多,各条件又相互组合的问题()非结构化决策问题()半结构化决策问题18、调试应该由(2)完成。(1)与源程序无关的程序员 (2)编制该源程序的程序员(3)不了解软件设计的机构 (4)设计该软件的机构19、导出模块结构图的基础是(2)()系统结构图 ()数据流图 ()数据结构图 ()控制结构图20、程序员进行程序设计的主要文档依据是(2)()模块说明书 ()系统流程图 ()控制流程图 ()数据流图21、面向对象程序设计语言不同于其它语言的最主要特点是(3) 。(1)模块性 (2)抽象性 (3)继承性 (4)共享性22、软件部件的内部实现与外部可访问性分离,这是指软件的(3) 。(1)继承性 (2)共享性 (3)封装性 (4)抽象性23、在确定类时,候选的类是所有的(1) 。(1)名词 (2)形容词 (3)动词 (4)代词24、在面向对象方法中,信息隐蔽的实现是通过对象的(3) 。(1)分类性 (2)继承性 (3)封装性 (4)共享性25、每个对象可用它自已的一组属性和它可以执行的一组(3)来表示。(1)行为 (2)功能 (3)操作 (4)数据26、面向对象的主要特征除对象唯一性、封装、继承外,还有(1) 。(1)多态性 (2)完整性 (3)可移植性 (4)兼容性27.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)A.软件工程 B.软件周期C.软件危机 D.软件产生28.研究开发所需要的成本和资源是属于可行性研究中的(B)研究的一方面。A.技术可行性 B.经济可行性C.社会可行性 D.法律可行性29.黑盒测试在设计测试用例时,主要需要研究(A)A.需求规格说明与概要设计说明 B.详细设计说明C.项目开发计划 D.概要设计说明与详细设计说明30.若有一个计算类型的程序,它的输入量只有一个 X,其范围是-1.0 ,1.0 ,现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是 (C)A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法31.下列属于维护阶段的文档是(C)A.软件规格说明 B.用户操作手册C.软件问题报告 D.软件测试分析报告32.快速原型模型的主要特点之一是(D)A.开发完毕才见到产品 B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件 D.及早提供工作软件33.因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B)A.改正性维护 B.适应性维护C.完善性维护 D.预防性维护34.软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为(B)A.可用性 B.可靠性C.正确性 D.完整性35.下列文档与维护人员有关的有(C)A.软件需求说明书 B.项目开发计划C.概要设计说明书 D.操作手册36.在结构化方法中全面指导模块划分的最重要的原则是(D)A.程序模块化 B.模块高内聚C.模块低耦合 D.模块独立性二、填空题1、可行性研究的目的不是去开发一个软件项目,而是研究这个项目是否值得去开发,其中的问题能否解决。2、软件结构的设计是以模块为基础的。3、软件设计阶段,是把软件“做什么”的逻辑模型变换为“怎么做”的物理模型。4、需求分析的关键是必须准确理解用户的要求,同时要满足用户的要求。最终解决目标系统“做什么”的问题。5、数据流图一般可分为变换型和事务型两类。6、HIPO 图中 H 图用于描述软件总的模块层次结构,IPO 图用于说明模块间的信息传递及模块内部的处理。7、详细设计也称过程设计,它是软件设计的第二阶段,主要确定每个模块的具体执行过程。8、处理过程设计中最典型的方法是结构化程序设计(SP)方法,其基本要点是采用的程序设计方法是自顶向下、逐步求精。9、测试用例由输入数据和预期的输出数据两部分组成。10、白盒法必须考虑程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能对的逻辑路径进行测试。11、软件测试过程中需要 3 类信息:软件配置、测试配置和测试工具。12、在详细设计阶段,需要对处理过程的模块和数据库的物理结构做评审。13、对象具有状态,对象用数据值来描述它的状态。14、数据流图描述系统的分解,即描述系统由哪几部分组成,各部分之间有什么联系等。15、任何程序都可由顺序 、选择和重复 3 种基本控制结构构造。这 3 种基本结构的共同点是单入口、单出口。16、测试的目的就是发现程序中的错误,而不是调试程序没有错误。17、面向数据流的设计又称结构化程序设计(SP),它是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。18、可行性分析包括技术可行性、经济上的可行性和社会可行性。19. 纯收入是指在整个生存周期之内的累计经济效益与投资之差。20. 软件概要设计的主要任务就是软件结构的设计。21. 在单元测试中,需要为被测模块设计驱动模块和存根模块。驱动模块用来模拟被测模块的上级调用模块,存根模块用来代替被测模块所调用的模块。三、名词解释1、软件测试软件测试是指为了发现软件中的错误而执行软件的过程。它的目标是尽可能多地发现软件中存在的错误,将测试结果作为纠错的依据。2、详细设计详细设计又称过程设计, “怎样实现”这个软件系统,对系统中的每个模块给出具体的执行过程。详细设计主要包括代码设计、数据库设计、输入/输出设计、人机对话设计等。3、数据耦合如果两个模块彼此间通过参数交换信息,而且交换的信息仅仅是数据,那么这种耦合称为数据耦合。4、模块化模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。5、信息隐蔽信息隐蔽是指在设计模块时,应让一个模块内包含的信息(过程和数据)对于其他不需要这些信息的模块来说是不能访问的。6、耦合耦合是对一个软件结构内不同模块之间互连程度的度量。耦合强弱取决于模块间接口的 复杂程度,进入或访问一个模块的点,以及通过接口的数据。7、功能内聚如果模块内所处理的元素属于一个整体,完成一个单一的功能,则称为功能内聚。8、事务流事务流是指数据流图中输入流被分离成许多数据流,形成许多加工路径,并根据输入值选择其中一条路径来执行。9、集成测试集成测试,也叫组装测试或联合测试。 在单元测试的基础上,将所有模块按照设计要求 (如结构图)组装成为子系统或系统,进行集成测试。模块相互间的协调和通信是这个测试过程中的主要问题,因此,这个步骤着重测试模块的接口。10、需求分析需求分析是开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格说明的过程。需求分析的第一步是进一步了解用户当前所处的情况,发现用户所面临的问题和对目标系统的基本需求;接下来应该与用户深入交流,对用户的基本需求反复细化逐步求精,以得出对目标系统的完整、准确和具体的需求。11、白盒测试白盒测试指把测试对象看成一个透明的白盒子,测试人员需了解程序的内部结构和处理过程, 以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致,又称为结构测试。12、黑盒测试黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程, 只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求,又称为功能测试。13、渐增式测试渐增式测试是把下一个要测试的模块同已经测试好的那些模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合起来进行测试。14、非渐增式测试非渐增式测试是先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序。15、软件概要设计在需求分析的基础上通过抽象和分解将系统分解成模块,确定系统功能实现,即把软件需求转换为软件表示(只是描述软件总的体系结构)的过程。16、模块模块是由边界元素限定的相邻程序元素(例如,数据说明,可执行的语句)的序列,而且有一个总体标识符代表它。17、路径覆盖路径覆盖是指选取足够多测试数据,使程序的每条可能路径都至少执行一次(如果程序图中有环,则要求每个环至少经过一次) 。18、条件覆盖条件覆盖是指不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果。19、判定/条件覆盖判定/条件覆盖是指选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果。20、条件组合覆盖条件组合覆盖是更强的逻辑覆盖标准,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。四、简述题1、软件设计的基本原理包括哪些内容?软件设计的基本原理: (1)模块化(四个属性:接口、功能、逻辑、状态)(2)抽象(3)信息隐蔽(4) 模块独立性(两个定性的度量标准:耦合性与内聚性)2、需求分析应遵循的原则是什么?所有这些分析方法都遵守下述准则:(1) 必须理解并描述问题的信息域,根据这条准则应该建立数据模型。(2) 必须定义软件应完成的功能,这条准则要求建立功能模型。(3) 必须描述作为外部事件结果的软件行为,这条准则要求建立行为模型。(4) 必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。3、为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网? 软件测试是软件开发中不可缺少的重要一环,原因是:A、测试的工作量约占整个项目开发工作量的 40%左右,几乎一半。如果是关系到人的生命安全的软件,测试的工作量还要成倍增加。B、软件测试代表了需求分析、设计、编码的最终复审。 软件测试不是软件质量保证的安全网,因为软件测试只能发现错误,不能保证没有错误。4、软件测试的目的是什么?为什么把软件测试的目标定义为只是发现错误?软件测试的目的有: 软件测试是为了发现错误而执行程序的过程。一个好的测试用例能够发现至今尚未发现的错误。一个成功的测试是发现了至今尚未发现的错误。软件测试的目标定义为只是发现错误,原因是软件测试可以有两个目标,一个是预防错误,另一个是发现错误。由于软件开发是人的创造性劳动,人的活动不可能完美无缺,错误可能发生在任何一个阶段,因此预防错误这一目标几乎是不可实现的,所以软件测试的目标定义为只是发现错误。5、增量开发和原型开发有什么相同和不同的地方?增量模型和原型模型都是从概要的需求出发进行开发的,但两者有明显的不同。增量模型是从一些不完整的系统需求出发开始开发,在开发过程中逐渐发现新的需求规格说明,并进一步充实完善该系统,使之成为实际可用的系统。原型开发的目的是为了发现并建立一个完整的经过证实的需求规格说明,并以此作为正式系统的开发基础。因此,原型开发阶段的输出是需求的规格说明,是为了降低整个软件生成期的费用而拉大需求分析阶段的一种方法,大部分原型是 “用完就扔”的类型。6、简述结构化程序设计方法的基本要点。(1)采用自顶向下,逐步求精的程序设计方法。 (2)使用三种基本控制结构构造程序,分别是顺序,选择和重复。(3)采用主程序员组的组织形式。(4)采用单入口单出口的模块形式。7、简述文档在软件工程中的作用。(1)提高软件开发过程的能见度;(2)提高开发效率;(3) 作为开发人员阶段工作成果和结束标志;(4) 记录开发过程的有关信息便于使用与维护; (5)提供软件运行、维护和培训有关资料; (6)便于用户了解软件功能、性能。8、简述提高可维护性的方法。(1)建立明确的软件质量目标;(2)利用先进的软件开发技术和工具;(3)建立明确的质量保证工作;(4) 选择可维护的程序设计语言;(5)改进程序文档。9、什么是模块的影响范围?什么是模块的控制范围?他们之间应该建立什么关系?模块的影响范围:受该模块内的一个判定影响的所有模块的集合。模块的控制范围:模块本身及其所有下属模块(直接或间接从属于它的模块)的集合。一个模块的影响范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近。10、可行性研究的任务是什么?首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。然后,分析员进行简要的需求分析,抽象出该项目的逻辑结构,建立逻辑模型。从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方法,对每种解决方法都要研究它的可行性,可从以下三个方面分析研究每种解决方法的可行性。技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。社会可行性:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。11、什么是软件详细设计?该阶段的基本任务是什么?详细设计是软件设计的第二阶段,主要确立每个模块的实现算法、局部数据结构,用适当方法表示算法和数据结构的细节。其基本任务有:为每个模块进行详细的算法设计;为模块内的数据结构进行设计;对数据库进行物理设计,即确定数据库的物理结构;其他设计,根据软件系统类型,还可能要进行代码设计、输入/输出格式设计、人机对话设计;编写详细设计说明书;评审。12、什么是模型?开发软件时为什么要建立模型?所谓模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。通常,模型由一组图形符号和组织这些符号的规则组成,利用它们来定义和描述问题域中的术语和概念。为了开发出复杂的软件系统,系统分析员应该从不同角度抽象出目标系统的特性,使用精确的表示方法构造系统的模型,验证模型是否满足用户对目标系统的需求,并在设计过程中逐渐把和实现有关的细节加进模型中,直至最终用程序实现模型,对于那些因过分复杂而不能直接理解的系统,特别需要建立模型。模型可以帮助我们思考问题、定义术语、在选择术语时作出适当的假设,并且可以帮助我们保持定义和假设的一致性。建立模型的目的主要是为了降低复杂性。五、应用题1、研究生入学考试的科目为英语、数学、政治,录取规则是:a) 总分 200 分以下(不含 200 分)不录取。b) 总分 200 分以上(含 200 分)时:i. 英语、数学均为 60 分以上(含 60 分)录取。ii. 数学 55 分以上(含 55 分) ,英语 70 分以上(含 70 分)需参加复试。iii. 其它情况不录取。用决策树表达此项处理逻辑。2、某银行发放贷款原则如下:() 对于贷款未超过限额的客户,允许立即贷款;() 对于贷款已超过限额的客户,若过去还款记录好且本次贷款额在 2 万元以下,可作出贷款安排,否则拒绝贷款。请用结构化语言描述该原则。3、银行确定储蓄类型部分数据流图如下:存款单试作出事务分析结构的控制结构图。 4、高考录取计分子系统有如下功能:() 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;() 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。试根据要求画出该系统的数据流图。5、某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从 7201 至 7299。外线号码先拨 9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从 100 到 300 中任意的数字串。市话号码是以局号和分局号组成。局号可以是 455,466,888,552 中任意一个号码。分局号是任意长度为 4 的数字串。要求:写出在数据字典中,电话号码的数据条目的定义(即组成) 。确定业务类型整存整取零存整取活期储蓄6、某培训中心要研制一个计算机管理系统。它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。要求:1).对以上问题画出数据流程图。2).画出该培训管理的

温馨提示

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

最新文档

评论

0/150

提交评论