软件工程考前串讲 下载本文

内容发布更新时间 : 2024/5/9 10:54:04星期一 下面是文章的全部内容请认真阅读。

软件工程

1、软件测试计划开始于需求分析阶段,完成于C阶段。 A.需求分析B.软件设计C软件实现D.软件测试 2、一个成功的测试是B。 A.发现错误

B.发现至今尚未发现的错误 C.没有发现错误 D证明发现不了错误

3、原型化方法是用户和软件开发人员之间进行的一种 交互过程,适用于A系统。 A.需求不确定的B需求确定的 C管理信息 D决策支持

4、在用例分析中,执行者是A。 A.任何与计算机系统交互的实体 B.驻留在系统中的任何商业对象

C.任何对系统外部力量做出反应的元素 D.不是用在用例分析中的术语

5.不是软件工程三个要素的选项的是B A.工具B.分析C.方法D.过程

6、软件结构中与模块重用性有关的因素是C

A控制路径B.模块扇出C.模块扇入D.输入/输出数 7、面向对象开发使用的模模型是C

A.瀑布模型B.增量模型型C.泉模型D.智能模型

8、系统软件与应用软件之间的中间件特点中不包括的特性是D。 A.分布性B.异构性C.动态协作D.适应性

9、若有一个计算类型的程序,它的输入量只有一个X,其范国是[1.0.10],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是C A条件覆盖法B等价分类法C.边界值分析法D错误推测法

10、软件文档在软件工程实施中非常重要,它不仅是软件开发各阶段的重要依据,而且影响软件的B A.可理解性B.可维护性C可扩展性D可移植性

11、原型化方法是一个动态设计过程,它要求使用该方法的人员具有的能力是B A熟练的编程技能B及时获得用户需求C协作精神及有力管理D巧妙使用工具 12、关于模块的耦合性,模块独立性最差的耦合是A A.内容耦合B.复合耦合C.控制耦合D数据耦合 13、信息隐蔽的概念与哪一概念直接相关B

A.软件结构定义B.模模块独立性C.模块类型划分D.接口的复杂程度 14、对于分层的DFD,父图与子图的平衡是指A

A父图与子图的输入输出数据流必须相同B.子图必须继承父图的输入与输出流 C.父图与子图相应的输入输出数据流名字保持一致 D子图可以有自己的输入输出数据流

15、自底向上进行集成测试的优点是不必额外设计C程序。 A.子程序B.被调用C。存根D.驱动 16、增量模型过程适用于C系统

A.规模较小的B.需求明确的C.项目规模大且时间紧的D.已经有成型先例的 17、瀑布模型和増量模型结合起来形成了螺旋模型,其中加入了一项工作是B。 A.客户评估B风险分析C.限制条件D.软件评审 18、软件系统的系统需求不包括A。

A.用户需求B.功能需求C.非功能需求D.领域需求 19、类图表示系统的D。

A.消息结构B.动态行为C.系统部署D.静态结构 20、软件工程的目标是C

A.生产满足用户需要的产品B以合适的成本生产满足用户需要的产品 C.以合适的成本生产满足用户需要的、可用性好的产品 D.生产正确的、可用性好的产品

21、下面的UL图中行为图包括活动图和C A用例图B类图C.状态图D包图

22、用黑盒技术设计测试用例的方法之一为A

A.因果图B.逻辑覆盖C.循环覆盖D基本路径测试 23、顺序图描述对象之间的动态交互关系,着重体现对 象的消息传递的时间序。序图的消息不包括C

A简单消息B.同步消息C传递消息.D.异步消息

24、在数据流图中,圆或椭圆代表C。 A.源点B.终点C.加工D.模块

25、在结构化设计方法中全面指导模块划分的最重要的原则是D。 A程序模块化B.模块高内聚C.模块低耦合D.模块独立性 26、黑盒测试在设计测试用例时,主要需要研究A_

A.需求规格说明书B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明 27、只有单重继承的类层次结构是C层次结构。 A.网状型B.星型型C.树型D.环型

28、在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于B。 A.维护时期B.计划时期C.运行时期D.开发时期 29、下列不属于结构化分析的常用工具的是D A.数据流图B.数据字典C.判定树D.PAD 30、软件工程的出现是由于C。

A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现D.计算机的发展 31、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作B A.软件投机B.软件危机C.软件工程D.软件产生 32、软件是一种B产品

A.物质B.逻辑C.有形D消耗 33、SA方法的主要描述手段有B_。

A系统流程图和模块图B.DFD、数据词典、加工说明

C. 软件件结构图、加工说明明D.功能结构图、加工说明

34、在软件工程项目中,在某些情况下随着开发人员人数的增加,反而使软件生产效率降低,这是由于D A.软件原型的复杂性B.工作阶段的等待时间C.参与人员所需设备多D参与人员的通信困难 35、下列描述中,错误的说法是A

A每个数据流必须用名词或名词短语命名B.每个加工必须有名字,通常是动词短语 C.每个数据存储必须用名词或名词短语命名D.每个数据源点或终点必须有名字 36、软件设计一般分为总体设计和详细设计,它们之间的关系是A A.全局和局部B.抽象和具体C.总体和层次D.功能和结构

37、模块的独立性是由内聚性和耦合性来度量的,其中耦合性是指A

A.模块间的联系程度B.模块的功能强度C.信息隐蔽程度D接口的复杂程度。 38、程序设计语言是人和计算机通信的基本工具,因而影响人和计算机通信的方法和质量。在选择程序设计语言时,必须优先考虑C

A.算法和数据结构B.软件开发方法C.应用领域D效率 39、PDL是下列语言中的B

A.高级程序设计语言B.伪代码C.中级程序设计语言D.低级程序设计语言 40、第一个体现结构化编程思想的程序设计语言是C A. FORTRAN B.C语言 C Pascal D Cobol

41、研究开发所需要的成本和资源是属于可行性研究中的_B_研究的一方面 A.技术可行性B.经济可行性C.社会可行性D.法律可行性 42、软件的主要结构和功能是在A阶段决定的 A分析设计B.编程C测试D维护 43、结构化设计又称为B

A.概要设计B.面向向数据流设计C.面向对象设计D.详细设计 47、影响软件开发成本估算的因素不包括以下哪项D

A.软件人员业务水平B.软件开发规模及复杂度C.开发所需时间D.开发所需硬件资源 48、对一个软件工程来说,占有总工作量的百分比最大的工作是D A.需求分析B软件设计C.编码工作D測试和维护王作 填空题:

1、软件工程三个基本要素是方法、工具和过程。

2、信息隐蔽的目的:提高模块的独立性,减少修改或维护时的影响面。 2、DFD图的层次结构图的上一层是下ー层的抽象,下层是上一层的求精。 4、耦合是对不同模块块之间相互依赖程度的度量。

5.软件工程学的最终目标,是以较低的成本研制具有高质量的软件。 6、在面向对象的技术中单词UML的意思是统一建模语言

7、软件生命周期的六个步骤依次是制定计划、需求分析、软件设计、编码、测试及维护。 8、UML静态建模图有:类图、用例图、枸件图、配置图、包图。

9、解决复杂的问题经常采用的策略是_分解,这也是结构化分析的精髓 10、状态图表示系统的动态变换

11、软件结构图的形态特征能反映程序重用率的是扇入

12、成本效益分析的目的是从经济角度评价一个软件项目是否可行。 13、可行性分析具体步骤的最后一步是编写可行性分析报告.

14、需求分析过程主要包括以下几个阶段:定义系统的的边界、分析需求可靠性、确定需求优先级、建立需求分析模型和创建数据词典

15、在结构化分析中,用于描述加工逻辑的主要工具有三种:结构化语言、判定表、判定树.

16、使用实体一关系图建立的数据模型也称为E-R图

17、一个模块把数值作为参数传送给另一个模块,这种耦合方式称为数据耦合 18、模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合 19、详细设计的常用工具有传统流程图、N-S图、PAD图、PDL语言 20、软件结构是以模块_为基础组成的一种控制层次结构。 21、衡量模块层次结构的指标是深度、宽度、扇出、扇入 22、PAD的控制流程为_自上而下、从左向右地执行。

23、C+语言程序结构的本质与C语言是一致的,都是用函数驱动机制实现。因此C++语言既可以进行过程化程序设计,也可以进行面向对象程序设计。

24、编码就是将详细设计的结果转换成用某种编程语言编写的源程序。

25、单元测试一般以白盒法为主,测试的主要目目的是检查模块内部的的错误。

26、集成测试是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统而进行的测试。重点测试模块的接口部分,测试方法以黑盒法为主

27、选择足够的测试用例,使程序中的每个执行语句至少执行一次,称为语句覆盖

28、执行足够的测试用例,使得程序中的每个判定至少都获得一次“真”和“假”值,或者说使得程序中的每一个分支至少经历一次,称为判定覆盖.

29、软件可维护性是指软件被理解、改正、调整和改进的容易程度。 30、对象本身的性质称为属性,将属性及运算包装起来称为封装 31、子类只继承一个父类的数据结构和方法是单重继承。 32、UML建模由UML语义_和UML表示法构成

33消息是对象之间交互中所传递的通信信息,使对象之间互相联系,协同同工作,实现系统的各种服务。

34、父类“几何图图形”定义了绘图操作,它的子类“椭圆”和“矩形”都继承了父类的绘图操作,却画出了不同的图形,这是面向对象的多态性。

35、结构化程序设计方法的要点是使用顺序、选择和循环三种基本控制结构,自顶向下、逐步求精地构造算法或程序。 简答题:

1、结构化分析方法使用什么描述工具?

答:结构化分析方法利用图形等半形式化的描述方法表达需求,简单易懂,用它们来形成需求规格说明书中的主要部分。这些描述工具有以下几个:

数据流图:用于描述系统的分解,即描述系统由哪些部分组成,各部分间有什么联系等。

数据词典:用于定义数据流图中的数据和加工。它有数据流、数据项、文件及基本加工四类条目。 描述加工逻辑的结构化语言、判定树材、判判定表。它们们是描述数据流图中不能被再分解的基本加工的处理逻辑。 2、什么是黑盒测试与白盒测试?它们都适应哪些测试?

答:黑盒测试是指把测试对象看成成一个黑盒子,测试人员完全不考虑程序的内部结枸和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能需求,又称为功能测试或数据驱动测试。

白盒测试是指把測试对象看成一个透明的白盒子,测试人员需求了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结枸和数据结构是否有错,实际的运行状态与预期的状态是否一致。

黑盒测试适应的测试有确认测试、等价价类划分、边边界值分析、错误推测和因果图。

白盒测试适应的测试有单元测试、逻辑盖(按逻辑覆盖程序不同,有语句盖、判定蓿盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖)、循循环覆盖(限制循环次数,有单循环和嵌套循环)和基本路径测试。 3、给出UML的消息类型,并简述它们

答:简单消息( simple),表示简单的控制流,描述控制如何从一个对象传递到另一个对象,但不描述通信的细节。

同步消息( synchronous),是一种嵌套的控制流,操作的执行者要等到消息相应操作执行完并回送一个简单消息后,再继续执行。

异步消息( asynchronous),表示异步控制流,消息的发送者不用等待消息的处理和返回即可继续执行。 4、软件危机产生的原因是什么? 答:软件危机产生的原因是软件开发技术的进步未能满足发展的要求,在软件开发中遇到的问题找不到解决的办法,问题积累起来,形成尖锐的矛盾,导致了软件危机。

主要原因有:软件规模越来越大,结构越来越复杂;软件开发管理困难而复杂;软件开发费用不断增加;软件开发技术落后;开发工具落后,生产效率提高缓慢。 5、软件生存周期模型各自的特点是什么?

答:瀑布模型的特点是阶段间顺序性和依赖性,开发过程是一个严格的下导式过程,问题发现的越晚解决问题的代价越大。

原型模型的特点是首先研制原型,做好后请用户使用和评价原型,若用户不满意可以及时进行修改,直到用用户满意才进行正式的系统开发。

螺旋模型的特点是引入风险管理,提供机会检讨项目是否有价值继续下去。

增量模型的特点是能在较短的时间内向用户提交部分功能的构件,并且在逐步增加产品功能的过程中有充分的时间学习和适应新的功功能。

喷泉模型的特点是对软件复用和生存周期中多项集成提供了支持,主要支持面向对象的开发方法。系统某个部分常常重复工作多次,每次迭代中随之加入演化的系统。 分析、设计和编码之间无明显的边界。