软件工程(答案)

软件工程(答案)
软件工程(答案)

●系统中模块的__(l)__不仅意味着作用于系统的小变动将导致行为上的小变化,也意味着规格说明的小变动将影响到一小部分模块。

(1) A. 可分解性B. 保护性C. 可理解性D. 连续性

●软件开发的螺旋模型综合了瀑布模型和演化模型的优点,还增加了__(27)__。采用螺旋模型时,软件开发沿着螺线自内向外旋转,每转一圈都要对__(28)__ 进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个__(29)__ 。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束。

(27) A. 版本管理B.可行性分析C. 风险分析D. 系统集成

(28) A.系统B.计划C. 风险D.工程

(29) A.原型项目B.概念项目C. 改进项目的 D风险项目

●关于程序模块优化的启发式规则有若干条,以下规则中不符合优化原则的是

__(30)__。如果一个模块调用下层模块时传递一个数据结构,则这种耦合属于

__(31)__。

(30)A.通过模块的合并和分解,降低模块的耦合度,提高模块的内聚性

B.提高上层模块的扇出,减少模块调用的层次

C.将模块的作用范围限制在模块的控制范围之内

D.降低模块之间接口的复杂性,避免“病态连接”

(31)A.简单耦合B.直接耦合C.标记耦合D.控制耦合

●软件设计包括四个既独立又相互联系的活动,分别为__(32)__、__(33)__、数据设计和过程设计。

(32)A.用户手册设计B.语言设计C.体系结构设计D.文档设计

(33)A.文档设计B.程序设计C.实用性设计D.接口设计

●当在软件工程的环境中考虑风险时,主要基于提出的有一个概念。以下选项中不属于这三个概念的是__(27)__。项目风险关系着项目计划的成败,__(28)__关系着软件的生存能力。在进行软件工程风险分析时,项目管理人员要进行四种风险评估活动,这四种风险活动是__(29)__以及确定风险估计的正确性。(27)A.关心未来B.关心变化C.关心技术D.关心选择

(28)A.资金风险B.技术风险C.商业风险D.预算风险

(29)A.建立表示风险概率的尺度,描述风险引起的后果,估计风险影响的大小

B.建立表示风险概率的尺度,描述风险引起的后果,确定产生风险的原因

C.确定产生风险的原因,描述风险引起的后果,估计风险影响的大小

D.建立表示风险概率的尺度,确定产生风险的原因,估计风险影响的大小

●软件的互操作性是指__(30)__。

(30) A.软件的可移植性B.人机界面的可交互性

C.连接一个系统和另一个系统所需的工作量

D.多用户之间的可交互性

●在选择开发方法时,有些情况不适合使用原型法,以下选项中不能使用快速原型法的情况是__(32)__。

(32) A.系统的使用范围变化很大B.系统的设计方案难以确定

C.用户的需求模糊不清

D.用户的数据资源缺乏组织和管理

●从信息资源管理的观点出发,信息系统的逻辑结构一般由四部分组成,其中__ (33)__利用信息系统提供的信息进行决策和选择,是信息系统服务的对象。(33)A.信息源B.信息处理器C.信息使用者D.信息管理者

●以下选项中,最适合于用交互式计算机软件解决的问题是__(34)__。(34)A.非结构化决策问题B.半结构化决策问题

C.结构化决策问题

D.确定性问题

● CMU/SEI 推出的__(35)__将软件组织的过程能力分为五个成熟度级别,每一个级别定义了一组过程能力目标,并描述了要达到这些目标应该具备的实践活动。(35) A.CMM B.PSP C.TSP D.SSE-CMM

●软件开发中的瀑布模型典型地刻画了软件生存周期的阶段划分,与其最相适应的软件开发方法是_(9)_。

(9)A.构件化方法B.结构化方法C.面向对象方法D.快速原型方法

●下述任务中,不属于软件工程需求分析阶段的是_(10)_ 。

(10)A.分析软件系统的数据要求B.确定软件系统的功能需求

C.确定软件系统的性能要求D.确定软件系统的运行平台

●软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定_(11)_。

(11)A.模块间的操作细节B.模块间的相似性

C.模块间的组成关系D.模块的具体功能

●系统测试是将软件系统与硬件、外设和网络等其他因素结合,对整个软件系统进行测试。_(12)_不是系统测试的内容。

(12)A.路径测试B.可靠性测试C.安装测试D.安全测试

●项目管理工具中,将网络方法用于工作计划安排的评审和检查的是_(13)_。

(13)A.Gantt 图B.PERT 网图C.因果分析图D.流程图

●在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方法_(14)_。

(14)A.只有结构化语言B.有结构化语言和判定树

C.有结构化语言、判定树和判定表D.有判定树和判定表

●CMM 模型将软件过程的成熟度分为5 个等级。在_(15)_使用定量分析来不断地改进和管理软件过程。

(15)A.优化级B.管理级C.定义级D.可重复级

●在面向数据流的设计方法中,一般把数据流图中的数据流划分为_(16)_两种。

(16)A.数据流和事务流B.变换流和数据流

C.变换流和事务流D.控制流和事务流

●下列叙述中,与提高软件可移植性相关的是___(18)____。

A.选择时间效率高的算法B.尽可能减少注释

C.选择空间效率高的算法

D.尽量用高级语言编写系统中对效率要求不高的部分

●在系统转换的过程中,旧系统和新系统并行工作一段时间,再由新系统代替旧系统的策略称为___(19)____;在新系统全部正式运行前,一部分一部分地代替旧系统的策略称为_____(20)_____。

(19)A.直接转换B.位置转换C.分段转换D.并行转换

(20)A.直接转换B.位置转换C.分段转换D.并行转换

●下列要素中,不属于DFD 的是___(21)____。当使用DFD 对一个工资系统进行建模时,____(22)_____可以被认定为外部实体。

(21)A.加工B.数据流C.数据存储D.联系

(22)A.接收工资单的银行B.工资系统源代码程序

C.工资单

D.工资数据库的维护

●在系统验收测试中,____(23)____ 是在一个模拟的环境下使用模拟数据运行系统;__(24)___是在一个实际环境中使用真实数据运行系统。

(23)A.验证测试B.审计测试C.确认测试D.模块测试

(24)A.验证测试B.审计测试C.确认测试D.模块测试

●采用瀑布模型进行系统开发的过程中,每个阶段都会产生不同的文档。以下关于产生这些文档的描述中,正确的是____(25)_____。

A.外部设计评审报告在概要设计阶段产生

B.集成测试计划在程序设计阶段产生

C.系统计划和需求说明在详细设计阶段产生

D.在进行编码的同时,独立的设计单元测试计划

正确答案:A

解析:在软件生产过程中,总是产生和使用大量的信息。软件文档在产品的开发过程中起着重要的作用。它能提高软件开发过程的能见度,作为检查软件开发进度和开发质量的依据,实现对软件开发的工程管理,提高开发效率。软件文档的编制,使得开发人员对各个阶段的工作都进行周密思考、全盘权衡、减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正。文档作为开发人员在一定阶段的工作成果和结束标志,记录开发过程中有关信息,便于协调以后的软件开发、使用和维护。文档还提供对软件的运行、维护和培训的有关信息,便于管理人员、开发人员、操作人员、用户之间的协作、交流和了解。文档使软件开发活动更科学、更有成效。文档便于潜在用户了解软件的功能、性能等各项指标,为他们选购符合自己需要的软件提供依据。国家标准《计算机软件产品开发文件编制指南

GB8567-88》中规定,在一项软件开发过程,一般地说应该产生十四种文件。按照文档产生和使用的范围,软件文档大致可分为三类。(1)开发文档:软件需求说明书、数据要求说明书、数据库设计说明书、概要设计说明书、详细设计说明书、可行性研究报告、项目开发计划、测试计划和测试分析报告。(2)管理文档:项目开发计划、可行性研究报告、测试计划、测试分析报告、开发进度月报、模块开发卷宗和项目开发总结报告。(3)用户文档:用户手册、操作手册、维护修改建议和软件需求说明书。在采用瀑布模型进行系统开发的过程中,系统计划和需求说明在需求分析阶段产生,集成测试计划在概要设计阶段产生,单元测试计划在详细设计阶段产生。

●在开发一个系统时,如果用户对系统的目标是不很清楚,难以定义需求,这时最好使用(6)。

(6)A. 原型法B. 瀑布模型C. V-模型D. 螺旋模型

●应该在(7)阶段制定系统测试计划。

(7)A. 需求分析B. 概要设计C. 详细设计D. 系统测试

●正在开发的软件项目可能存在一个未被发现的错误,这个错误出现的概率是

0.5%,给公司造成的损失将是1 000 000 元,那么这个错误的风险曝光度(risk exposure)是___(13)元。

(13)A.5 000 000 B.50 000 C.5 000 D.500

●代码走查(code walkthrough)和代码审查(code inspection)是两种不同的代码评审方法,这两种方法的主要区别是____(14)____。

(14)A.在代码审查中由编写代码的程序员来组织讨论,而在代码走查中由高级管理人员来领导评审小组的活动

B.在代码审查中只检查代码中是否有错误,而在代码走查中还要检查程序与设计文档的一致性

C.在代码走查中只检查程序的正确性,而在代码审查中还要评审程序员的编程能力和工作业绩

D.代码审查是一种正式的评审活动,而代码走查的讨论过程是非正式的

●在软件项目管理中可以使用各种图形工具来辅助决策,下面对Gannt 图的描述不正确的是_____(15)____。

(15)A.Gannt 图表现各个活动的顺序和它们之间的因果关系

B.Gannt 图表现哪些活动可以并行进行

C.Gannt 图表现了各个活动的起始时间

D.Gannt 图表现了各个活动完成的进度

●在活动图中,结点表示项目中各个工作阶段的里程碑,连接各个结点的边表示活动,边上的数字表示活动持续的时间。在下面的活动图中,从A 到J 的关键路径是_____(16)___,关键路径长度是___(17)___,从E 开始的活动启动的最早时间是____(18)____。

(16)A.ABEGJ B.ADFHJ C.ACFGJ D.ADFIJ

(17)A.22 B.49 C.19 D.35

(18)A.10 B.12 C.13 D.15

●一个故障已经被发现,而且也被排除了,为了检查修改是否引起了其它故障,这时应该进行___(19)___。

(19)A.程序走查B.退化测试C.软件评审D.接收测试

●一个系统的模块结构图如下所示,用{×,×,×}表示这个系统的测试模块组合。下面的选项中___(20)___表示自顶向下的测试,____(21)___表示三明治式测试。

(20)A.{A}{A,B,C,D,E}{A,B,C,D,E,F,G,H,I,J,K}

B.{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{A,B,C,D,E,F,G,H,I,J,K}

C.{K}{J}{I}{H}{G}{F}{B}{C}{D}{E}{A,B,C,D,E,F,G,H,I,J,K}

D.{A}{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{A,B,C,D,E,F,G,H,I,J,K }

(21)A.{A}{A,B,C,D,E}{A,B,C,D,E,F,G,H,I,J,K}

B.{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{A,B,C,D,E,F,G,H,I,J,K}

C.{K}{J}{I}{H}{G}{F}{B}{C}{D}{E}{A,B,C,D,E,F,G,H,I,J,K }

D.{A}{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{ A,B,C,D,E,F,G,H,I,J,

K }

●编译程序进行词法分析时不能____(27)____。

(27)A.过滤源程序中的注释B.扫描源程序并识别记号

C.指出出错行号

D.查出拼错的保留字(关键字)

正确答案:B

解析:词法分析的任务是对源程序从前到后(从左到右)逐个字符进行扫描,从中识别出一个个“单词”符号,所以不能识别记号。

●某一确定有限自动机(DFA)的状态转换图如下图所示,该DFA 接受的字符串集是____(28)___,与之等价的正规式是___(29)___。

(28)A.以1 开头的二进制代码串组成的集合

B.以1 结尾的二进制代码串组成的集合

C.包含偶数个0 的二进制代码串组成的集合

D.包含奇数个0 的二进制代码串组成的集合

(29)A.1*0(0|1)* B.((0|1*0)*1*)* C.1*((0|1)0)* D.(1*(01*0)*)*

●以下内容中,___(42)___应写入操作手册。

(42)A.描述系统对各种输入数据的处理方法B.说明系统升级时厂商提供的服务

C.描述系统处理过程的各个界面

D.说明系统各部分之间的接口关系

●某软件工程项目各开发阶段工作量的比例如下表所示

假设当前已处于编码阶段,3000 行程序已完成了1200 行,则该工程项目开发进度已完成的比例是____(43)___。

(43)A.29% B.45% C.59% D.63%

●在软件项目管理中可以使用各种图形工具来辅助决策,下面对Gantt 图的描述中,不正确的是(15)。

(15)A.Gantt 图表现各个活动的持续时间

B.Gantt 图表现了各个活动的起始时间

C.Gantt 图反映了各个活动之间的依赖关系

D.Gantt 图表现了完成各个活动的进度

●耦合度描述了(16)。

(16)A.模块内各种元素结合的程度

B.模块内多个功能之间的接口

C.模块之间公共数据的数量

D.模块之间相互关联的程度

●内聚是—种指标,表示一个模块(17)。

(17)A.代码优化的程度B.代码功能的集中程度

C.完成任务的及时程度D.为了与其他模块连接所要完成的工作量

●在软件项目开发过程中,评估软件项目风险时,(18)与风险无关。(18)A.高级管理人员是否正式承诺支持该项目

B.开发人员和用户是否充分理解系统的需求

C.最终用户是否同意部署已开发的系统

D.开发需要的资金是否能按时到位

●最主要的软件质量度量指标有正确性、可维护性、完整性和可用性,下面关于这些质量指标的描述中正确的是(26)。

(26)A.软件维护的工作量比开发阶段的工作量小

B.正确性用每千行代码的故障(fault)数来度量

C.软件完整性是指软件功能与需求符合的程度

D.可用性与用户的操作效率和用户对软件的主观评价有关

●某工程计划图如下图所示,弧上的标记为作业编码及其需要的完成时间(天),作业E 最迟应在第(27)天开始。

(27)A.7 B.9 C.12 D.13

●正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软件质量保证活动,下面关于FTR 指导原则中不正确的是(28)。

(28)A.评审产品,而不是评审生产者的能力

B.要有严格的评审计划,并遵守日程安排

C.对评审中出现的问题要充分讨论,以求彻底解决

D.限制参与者人数,并要求评审会之前做好准备

●两个小组独立地测试同一个程序,第一组发现25 个错误,第二组发现30 个错误,在两个小组发现的错误中有15 个是共同的,那么可以估计程序中的错误总数是(29)个。

(29)A.25 B.30 C.50 D.60

错误范围为max(25,30)<=error<=sum(25,30)=55,

●下面有关测试的说法正确的是(30)。

(30)A.测试人员应该在软件开发结束后开始介入

B.测试主要是软件开发人员的工作

C.要根据软件详细设计中设计的各种合理数据设计测试用例

D.严格按照测试计划进行,避免测试的随意性

●在绘制数据流图时,应遵循父图与子图平衡的原则,所谓平衡是指(31)。(31)A.父图和子图都不得改变数据流的性质

B.子图不改变父图数据流的一致性

C.父图的输入/输出数据流与子图的输入/输出数据流一致

D.子图的输出数据流完全由父图的输入数据流确定

●下图中的程序由A、B、C、D、E 5 个模块组成,下表中描述了这些模块之间的接口,每—个接口有一个编号。此外,模块A、D 和E 都要引用一个专用数据区。那么A 和E 之间耦合关系是(32)。

(32)A.公共耦合B.数据耦合C.内容耦合D.无耦合

●在C++语言中,若类C 中定义了一个方法int f(int a,int b),那么方法(33)不能与该方法同时存在于类C 中。

(33)A.int f(int x,int y) B.int f(float a,int b)

C.float f(int x,float y) D.int f(int x,float y)

●常见的软件开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。其中(15)模型适用于需求明确或很少变更的项目,(16)模型主要用来描述面向对象的软件开发过程。

(15)A.瀑布模型B.演化模型C.螺旋模型D.喷泉快坚

(16)A.瀑布模型B.演化模型C.螺旋模型D.喷泉模型

●软件能力成熟度模型(CMM)是目前国际上最流行、最实用的软件生产过程标准和软件企业成熟度的等级认证标准。该模型将软件能力成熟度自低到高依次划分为初始级、可重复级、已定义级、己管理级、优化级。从(17)开始,要求企业建立基本的项目管理过程的政策和管理规程,使项目管理工作有章可循。(17)A.初始级B.可重复级C.已定义级D.已管理级

●软件项目开发成本的估算依据,通常是开发成本估算模型。常用的模型主要有:①IBM 模型②PUtnam 模型③基本COCOMO 模型④中级COCOMO 模型⑤高级COCOMO 模型其中(18)均是静态单变量模型。

(18)A.①② B.②④⑤C.①③ D.③④⑤

●统一过程(UP)的基本特征是“用例驱动、以架构为中心的和受控的迭代式增量开发”。UP 将一个周期的开发过程划分为4 个阶段,其中(26)的提交结果包含了系统架构。

(26) A.先启阶段B.精化阶段C.构建阶段D.提交阶段

●某软件在应用初期运行在Windows NT 环境中。现因某种原因,该软件需要在UNIX 环境中运行,而且必须完成相同的功能。为适应这个要求,软件本身需要进行修改,而所需修改的工作量取决于该软件的(27)。

(27)A.可扩充性B.可靠性C.复用性D.可移植性

●按照ISO/IEC 9126 软件质量度量模型定义,一个软件的可靠性的子特性包括(28)。

(28)A.容错性和安全性B.容错性和适应性

C.容错性和易恢复性D.易恢复性和安全性

●(29)详细描述软件的功能、性能和用户界面,以使用户了解如何使用软件。

(29) A.概要设计说明书B.详细设计说明书C.用户手册D.用户需求说明书

●各类软件维护活动中,(30)维护占整个维护工作的比重最大。

(30)A.完善性B.改正性C.适应性D.预防性

●给定C 语言程序:

int foo( int x, int y, int d)

{

if( x!=0){

if(y==0)d=d/x;

else d=d/(x*y);

}else{

if(y==0)d=0;

else d=d/y;

}

return d;

}

当用路径覆盖法进行测试时,至少需要设计(31)个测试用例。

(31)A.3 B.4 C.5 D.8

●软件的测试通常分单元测试、组装测试、确认测试、系统测试四个阶段进行。(32)属于确认测试阶段的活动。

(32)A.设计评审B.代码审查C.结构测试D.可靠性测试

●结构化开发方法中,数据流图是(15)阶段产生的成果。

(15)A. 需求分析B. 总体设计C.详细设计D.程序编码

● CVS 是一种(16)工具。

(16)A. 需求分析B.编译C.程序编码D. 版本控制

●以下关于原型化开发方法的叙述中,不正确的是(17)。

(17)A. 原型化方法适应于需求不明确的软件开发

B. 在开发过程中,可以废弃不用早期构造的软件原型

C. 原型化方法可以直接开发出最终产品

D. 原型化方法利于确认各项系统服务的可用性

●通常在软件的(18)活动中无需用户参与。

(18)A. 需求分析B.维护C.编码D.测试

●进行软件项目的风险分析时,风险避免、风险监控和风险管理及意外事件计划是(19)活动中需要考虑的问题。

(19)A. 风险识别B.风险预测C.风险评估D.风险控制

●下面关于编程语言的各种说法中,(20)是正确的。

(20)A. 由于C 语言程序是由函数构成的,因此它是一种函数型语言

B. Smalltalk、C++、Java、C#都是面向对象语言

C. 函数型语言适用于编写处理高速计算的程序,常用于超级计算机的模拟计算

D. 逻辑型语言是在Client/Server 系统中用于实现负载分散的程序语言

●统一过程(UP)是一种用例驱动的迭代式增量开发过程,每次迭代过程中主要的工作流包括捕获需求、分析、设计、实现和测试等。这种软件过程的用例图(Use Case Diagram)是通过(29)得到的。

(29)A. 捕获需求B.分析C.设计D.实现

●序言性注释是指在每个程序或模块开头的一段说明,起辅助理解程序的作用,一般包括:程序的表示、名称和版本号,程序功能描述,接口与界面描述,输入/输出数据说明,开发历史,与运行环境有关的信息等。下列叙述中不属于序言性注释的是(30)。

(30)A. 程序对硬件、软件资源的要求B. 重要变量和参数说明

C. 嵌入在程序中的SQL 语句

D. 程序开发的原作者、审查者、修改者、编程日期等

● ISO/IEC 9126 软件质量模型中第一层定义了六个质量特性,并为各质量特性定义了相应的质量子特性,其中易分析子特性属于软件的(31)质量特性。(31)A.可靠性B. 效率C.可维护性D.功能性

●软件(32)的提高,有利于软件可靠性的提高。

(32)A. 存储效率B.执行效率C.容错性D.可移植性

●软件能力成熟度模型将软件能力成熟度自低到高依次划分为初始级、可重复级、定义级、管理级和优化级,并且高级别成熟度一定可以达到低级别成熟度的要求。其中(33)中的开发过程及相应的管理工作均已标准化、文档化,并已建立完善的培训制度和专家评审制度。

(33)A. 可重复级和定义级B.定义级和管理级C.管理级和优化级D.定义级、管理级和优化级

● LOC 是软件规模的一种量度,它表示(34)。

(34)A. 软件功能数B. 源代码行数C. 每单位成本数D.工作量

●阅读下列流程图:

当用判定覆盖法进行测试时,至少需要设计(35)个测试用例。

(35)A. 2 B. 4 C. 6 D. 8

●在某大学学生学籍管理信息系统中,假设学生年龄的输入范围为16~40,则根据黑盒测试中的等价类划分技术,下面划分正确的是(37)。

(37)A. 可划分为2 个有效等价类,2 个无效等价类

B. 可划分为1 个有效等价类,2 个无效等价类

C. 可划分为2 个有效等价类,1 个无效等价类

D. 可划分为1 个有效等价类,1 个无效等价类

●为验证程序模块A 是否正确实现了规定的功能,需要进行(35);为验证模块A 能否与其他模块按照规定方式正确工作,需要进行(36)。

(35)A. 单元测试B. 集成测试C. 确认测试D. 系统测试

(36)A. 单元测试B. 集成测试C. 确认测试D. 系统测试

●(16)是一种面向数据流的开发方法,其基本思想是软件功能的分解和抽象。(16)A. 结构化开发方法B. Jackson 系统开发方法C. Booch 方法D. UML(统一建模语言)

●风险分析在软件项目开发中具有重要作用,包括风险识别、风险预测、风险评估和风险控制等。“建立风险条目检查表”是(18)时的活动,“描述风险

的结果”是(19)时的活动。

(18)A. 风险识别B. 风险预测C. 风险评估D. 风险控制

(19)A. 风险识别B. 风险预测C. 风险评估D. 风险控制

●测试用例是测试使用的文档化的细则,其规定如何对软件某项功能或功能组合进行测试。测试用例应包括下列(32)内容的详细信息。

①测试目标和被测功能

②测试环境和其他条件

③测试数据和测试步骤

④测试记录和测试结果

(32)A.①③ B.①②③ C.①③④ D.①②③④

正确答案:B

解析:本题考查测试用例的概念。

测试用例应包括:

.测试目标和被测功能。

.测试环境和其他条件。

.测试数据和测试步骤。

●软件内部/外部质量模型中,(33)不是可移植性包括的子特性。

(33)A.适应性B.易改变性C.共存性D.易替换性

正确答案:B

解析:本题考查国标16260中可移植性包括的子特性。

可移植性包括的子特性如下。

.适应性:软件产品无需采用手段就可能适应不同的指定环境的能力。

.易安装性:软件产品在指定环境中被安装的能力。

.共存性:软件在公共环境中分享资源与其他独立软件共存的能力。

.易替换性:在环境、目的相同的情况下替代另一个指定软件的能力。

.可移植性依从性:软件产品依从可移植性相关的标准或约定的能力。

●评价规格说明中不包括(34)。

(34)A.分析产品的描述B.规定对产品及部件执行的测量

C.按照评价需求验证产生的规格说明D.请求者说明评价覆盖范围

●在进行产品评价时,评价者需要对产品部件进行管理和登记,其完整的登记内容应包括(35)。

①部件或文档的唯一标识符

②部件的名称或文档标题

③文档的状态,包括物理状态或变异方面的状态

④请求者提供的版本、配置和日期信息

(35)A.①③ B.①② C.①③④ D.①②③④

●下面的描述中,不能体现前置测试模型要点的是(36)。

(36)A.前置测试模型主张根据业务需求进行测试设计,认为需求分析阶段是进行测试计划和测试设计的最好时机

B.前置测试模型将开发和测试的生命周期整合在一起,标识了项目生命周期从开始到结束之间的关键行为,提出业务需求最好在设计和开发之前就被正确定义C.前置测试将测试执行和开发结合在一起,并在开发阶段以编码-测试-编码-测试的方式来体现,强调对每一个交付的开发结果都必须通过一定的方式进行测试

D.前置测试模型提出验收测试应该独立于技术测试,以保证设计及程序编码能够符合最终用户的需求

●在进行软件编码规范评测过程中需要围绕几个方面的内容展开,以下描述中不属于编码规范评测内容的有(37)。

(37)A.源程序文档化检查,包括符号名的命名、程序的注释等规范性检查B.数据说明检查,包括数据说明次序、语句中变量顺序检查

C.程序结构检查,程序应采用基本的控制结构、避免不必要的转移控制等D.程序逻辑检查,阅读源代码,比较实际程序控制流与程序设计控制流的区别●(38)属于概要设计说明书的评测内容。

①分析该软件的系统结构、子系统结构,确认该软件设计是否覆盖了所有已确定的软件需求,软件每一成分是否可追溯到某一项需求

②系统定义的目标是否与用户的要求一致

③从软件维护的角度出发,确认该软件设计是否考虑了方便未来的维护

④是否所有界面与更高级别文档中的需求一致

(38)A.①②③ B.①③④ C.②③④ D.①②③④

●关于确认测试,描述正确的是(39)。

①确认测试一般包括有效性测试与软件配置复查,采用黑盒测试为主,白盒测试为辅的测试方法进行测试

②确认测试配置项复查时应当严格检查用户手册和操作手册中规定的使用步骤

的完整性和正确性

③确认测试需要检测与证实软件是否满足软件需求说明书中规定的要求

④确认测试是保证软件正确实现特定功能的一系列活动和过程,目的是保证软件生命周期中的每一个阶段的成果满足上一个阶段所设定的目标

(39)A.①② B.②③ C.③④ D.②④

●关于软件测试的说法,(40)是不正确的。

(40)A.代码审查是代码检查的一种,是由程序员和测试员组成一个审查小组,通过阅读、讨论和争议,对程序进行静态分析的过程

B.软件测试的对象不仅仅是程序,文档、数据和规程都是软件测试的对象

C.白盒测试是通过对程序内部结构的分析、检测来寻找问题的测试方法

D.单元测试是针对软件设计的最小单位—程序模块进行正确性检验的测试工作,它通常需要开发辅助的桩模块作为主程序调用被测模块来完成测试

●关于集成测试的描述中,正确的是(41)。

①集成测试也叫做组装测试或联合测试,通常是在单元测试的基础上,将所有模块按照概要设计说明书和详细设计说明书的要求进行组装和测试的过程

②自顶向下的增殖方式是集成测试的一种组装方式,它能较早地验证主要的控制和判断点,对于输入输出模块、复杂算法模块中存在的错误能够较早地发现

③自底向上的增殖方式需要建立桩模块,并行地对多个模块实施测试,并逐步形成程序实体,完成所有模块的组装和集成测试

④在集成测试时,测试者应当确定关键模块,对这些关键模块及早进行测试,比如高层控制模块、有明确性能要求和定义的模块等

(41)A.①② B.②③ C.①④ D.②④__

●缺陷探测率DDP 是衡量一个公司测试工作效率的软件质量成本的指标。在某公司开发一个软件产品的过程中,开发人员自行发现并修正的缺陷数量为80 个,测试人员A 发现的缺陷数量为50 个,测试人员B 发现的缺陷数为50 个,测试人员A 和测试人员B 发现的缺陷不重复,客户反馈缺陷数量为50 个,则该公

司针对本产品的缺陷探测率为(42)。

(42)A.56.5% B.78.3% C.43.5% D.34.8%

●在执行测试和评价的过程中,会产生较多的文档,(43)是对文档内容的正确描述。①评价需求的主要内容是描述评价的目标,特别是描述了产品的质量

需求②评价规格说明的主要内容是确定对软件及其部件实行的所有分析和测量,标识要采用的操作规程、测试方法和工具③评价记录的主要内容是对评价执行过程的详细记载,由评价请求者保留④评价报告的主要内容是执行测量和分析的结果,以及能被重复和重新评价的必要信息

(43)A.①② B.②③ C.①④ D.②④

●用等价类划分法设计8 位长数字类型用户名登录操作的测试用例,应该分成(44)个等价区间。

(44)A.2 B.3 C.4 D.6

●下面为C 语言程序,边界值问题可以定位在(45)。

int data(3),

int i,

for (i=1,i<=3,i++)

data(i)= 100

(45)A. data(0) B. data(1) C. data(2) D. data(3)

●(46)叙述是正确的。

①测试用例应由测试设计人员来制定

②测试点应由测试人员确立

③测试工作展开于项目立项后,而不是代码开发完成之后

④测试对象是源代码

(46)A.①②③ B.②③ C.①③ D.①②③④

●通常测试用例很难100%覆盖测试需求,因为(47)。

①输入量太大

②输出结果太多

③软件实现途径多

④测试依据没有统一标准

(47)A.①② B.①③ C.①②③ D.①②③④

●假定X 为整数类型变量,X>=1 并且X<=10,如果用边界值分析法,X 在测试中应该取(48)值。

(48)A.1,10 B.0,1,10,11 C.1,11 D.1,5,10,11

●以下(49)方法不是黑盒测试用例的设计方法。

(49)A. 场景法B. 边界值法C. 因果图法D. 路径法

●不属于界面元素测试的是(50)。

(50)A.窗口测试B.文字测试C.功能点测试D.鼠标测试

●以下说法不正确的是(51)。

(51)A.易用性测试不仅是针对应用程序的测试,而且还要包括用户手册等系列文档

B.安装测试就是按照用户安装手册安装软件,来评估安装过程的易用性、正确性

C.辅助系统测试包括帮助测试、向导测试、信息提示测试等

D.界面整体测试是指对界面的规范性、可维护性、整体性等进行测试和评估●针对下列程序段,需要(52)个测试用例可以满足语句覆盖的要求。switch ( value )

{

case 0:

other = 30;

break;

case 1:

other = 50;

break;

case 2:

other = 300;

case 3:

other = other / value;

break;

default:

other = other * value;

}

(52)A.2 B.3 C.4 D. 5

●针对逻辑覆盖(53)叙述是不正确的。

(53)A.达到100%CC 要求就一定能够满足100%DC 的要求

B.达到100%CDC 要求就一定能够满足100%DC 的要求

C.达到100%MCDC 要求就一定能够满足100%DC 的要求

D.达到100%路径覆盖要求就一定能够满足100%DC 的要求

●以下控制流程图的环路复杂性V(G)等于(54)。

(54)A. 5 B. 6 C. 9 D 12

●在程序控制流图中,有8 条边,6 个节点,则控制流程图的环路复杂性V(G)等于(55)。

(55)A. 2 B. 4 C. 6 D. 8

●针对程序段: IF(X>10)AND(Y<20)THEN W=W/A,对于(X,Y)的取值,以下(56)组测试用例能够满足判定覆盖的要求。

(56)A. (30,15) (40,10) B. (3,0) (30,30)

C. (5,25) (10,20)

D. (20,10) (1,100)

●反映web 应用客户端交易处理性能的评估指标有(59)。

①并发用户数②交易响应时间③交易通过率④吞吐量⑤点击率

(59)A.①②③④ B.①②③④⑤ C.②③ D.②③④

●(60)是功能测试工具。

(60)A.LoadRunner B. WinRunner C. QALoad D. WAS

●(61)是导致软件缺陷的最大原因。

(61)A.需求规格说明书B.设计方案C.编写代码D.测试计划

●根据ANSI/IEEE829 标准,(62)属于《测试案例说明》中的内容。

①输入说明②测试目的③环境要求④特殊要求

(62)A.①②③ B.①③④ C.②③ D.①②③④

●负载压力性能测试需求分析时,应该选择(63)类型的业务作为测试案例。

①高吞吐量的业务②业务逻辑复杂的业务③高商业风险的业务④高服务器负载的业务⑤批处理的业务

(63)A.①②③ B.①③④ C.①④ D.①②③④⑤

●测试记录包括(64)。

①测试计划或包含测试用例的测试规格说明

②测试期间出现问题的评估与分析

③与测试用例相关的所有结果,包括在测试期间出现的所有失败

④测试中涉及的人员身份

(64)A.①②③ B.①③④ C.②③ D.①②③④

●在性能测试中,关于数据准备,(65)描述是正确的。

①识别数据状态验证测试案例

②初始数据提供了基线用来评估测试执行的结果

③业务数据提供负载压力背景

④脚本中参数数据真实模拟负载

(65)A.①②③ B.①③④ C.②③ D.①②③④

●若一个项目由9 个主要任务构成,其计划图(如下图所示)展示了任务之间的前后关系以及每个任务所需天数,该项目的关键路径是(16),完成项目所需的最短时间是(17)天。

(16)A. A→B→C→D →I B. A→B →C→E→I

C. A→B→C→F →G→I

D. A→B→C→F→H→I

(17)A. 16 B. 17 C. 18 D. 19

● RUP(Rational Unified Process)分为4 个阶段,每个阶段结束时都有重要的里程碑,其中生命周期架构是在(18)结束时的里程碑。

软件工程试题及答案

4. 面向对象的分析方法主要是建立三类模型,即( D )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性 D) 实体、属性、操作 9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[, ],现从输入的角度考虑一组测试用例:, , , . 设计这组测试用例的方法是( c ) A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法 10、详细设计的基本任务是确定每个模块的( d )A.功能B.调用关系C.输入输出数据 D.算法 11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( a ) A.模块化的根据 B.逐步求精的根据 C.抽象的根据 D.信息隐藏和局部化的根据13.面向数据流的设计方法把( D )映射成软件结构。 A.数据流 B.系统结构 C.控制结构 D.信息流 14.内聚程度最低的是( A.偶然 )内聚A.偶然 B.过程 C.顺序 D.时间 15.确定测试计划是在( D )阶段制定的.A.总体设计 B.详细设计 C.编码 D.测试 16.需求分析的产品是( D ) A.数据流程图案 B.数据字典 C.判定表D.需求规格说明书 17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C ) A.数据库设计 B.数据通信 C.数据定义 D.数据维护 18.( D )引入了“风险驱动”的思想,适用于大规模的内部开发项目。 A.增量模型 B.喷泉模型 C.原型模型D.螺旋模型 (×)2、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。 (×)4、软件需求分析的任务是建立软件模块结构图。 (√)5、尽可能使用高级语言编写程序(×)6、以结构化分析方法建立的系统模型就是数据流图。 (×)7、进行总体设计时加强模块间的联系。(×)8、编码时尽量多用全局变量. (√)9、用CASE环境或程序自动生成工具来自动生成一部分程序.(×)10、软件测试是要发现软件中的所有错误。 1. 软件生命期各阶段的任务是什么答:软件生命期分为7个阶段:1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么?

软件工程试题及答案34385

软件工程期末试卷(A) 说明:本试卷为04级计算机专业(专升本)软件工程期末试卷,总计100分,时间100分钟 一、选择题:(每题1分,共20分)(将答案写在题号前的()中) ( C )1. 软件是()。 A. 处理对象和处理规则的描述 B. 程序 C. 程序及其文档 D. 计算机系统 ( B )2. 软件需求规格说明的内容不应包括()。 A. 主要功能 B. 算法的详细描述 C. 用户界面及运行环境 D. 软件的性能 ( B )3. 程序的三种基本控制结构是()。 A. 过程、子程序和分程序 B. 顺序、选择和重复 C. 递归、迭代和回溯 D. 调用、返回和转移 ( D) 4. 面向对象的分析方法主要是建立三类模型,即( )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型 D) 对象模型、动态模型、功能模型 ( C ) 5. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操作 ( A ) 6. 各种软件维护的类型中最重要的是( )。 A) 完善性维护B) 纠错性维护C) 适应性维护D) 预防性维护 ( B ) 7.软件测试的目标是()。 A. 证明软件是正确的 B. 发现错误、降低错误带来的风险 C. 排除软件中所有的错误 D. 与软件调试相同 ( D )8.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测试 D.软件维护 ( C )9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是()A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法 ( D )10、详细设计的基本任务是确定每个模块的( )设计 A.功能 B.调用关系 C.输入输出数据 D.算法 ( A )11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:() A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据 ( D )12.下面几种白箱测试技术,哪种是最强的覆盖准则() A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖

软件工程考试题带答案

一、选择题 1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B) A) 可行性研究,问题定义,需求分析。 B) 问题定义,可行性研究,需求分析。 C) 可行性研究,需求分析,问题定义。 D) 以上顺序都不对。 2.可行性研究主要从以下几个方面进行研究:(A) A)技术可行性,经济可行性,操作可行性。 B)技术可行性,经济可行性,系统可行性。 C)经济可行性,系统可行性,操作可行性。 D)经济可行性,系统可行性,时间可行性。 3 耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下:(C) A) 内容耦合,控制耦合,数据耦合,公共环境耦合。 B) 内容耦合,控制耦合,公共环境耦合,数据耦合。 C) 内容耦合,公共环境耦合,控制耦合,数据耦合。 D) 控制耦合,内容耦合,数据耦合,公共环境耦合。4.在详细设计阶段所使用到的设计工具是:(A) A) 程序流程图,PAD图,N-S图,HIPO图,判定表,判 定树. B) 数据流程图,Yourdon 图,程序流程图,PAD图, N-S图,HIPO图。 C) 判定表,判定树,PDL,程序流程图,PAD图,N-S 图。 D) 判定表,判定树,数据流程图,系统流程图,程序流程 图,层次图。 5 按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A) A)模块的作用域应在模块的控制域之内。 B)模块的控制域应在模块的作用域之内。

C)模块的控制域与模块的作用域互相独立。 D)以上说法都不对。 6在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是(C) A.概要设计 B.详细设计 C.需求分析 D.可行性分析 7下面不是软件工程的3个要素的是(C) A过程 B.方法 C.环境 D.工具 8.下面不属于软件的组成的是(B) A程序 B.记录 C.文档 D.数据 9在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于(C) A.维护时期 B.运行时期 C.定义时期 D.开发时期 10.在瀑布模型中,下面(C)是其突出的缺点。 A.不适应平台的变动 B.不适应算法的变动 C.不适应用户需求的变动 D.不适应程序语言的变动 11下面不属于软件的特点的是(D)。 A软件是一种软件产品 B软件产品不会用坏,不存在磨损、消耗问题 C软件产品的生产主要是研制 D软件产品非常便宜 12 软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是(A)。 A.维护工具 B.编码工具 C.测试工具 D.需求分析工具 13.下列叙述中不属于软件生命周期模型的是(D)。 A.原型模型 B.瀑布模型 C.螺旋模型 D.快速组装模型 14.软件设计中,用抽象和分解的目的是(B)。 A.提高易读性 B.降低复杂性 C.增加内聚性 D.降低耦合性 15软件生命周期中所花费用最多的阶段是(D)。 A.详细设计 B.软件编码 C.概要设计 D.软件测试和维护 16.开发软件时对提高开发人员工作效率至关重要的是(B)。

软件工程试题及答案

软件工程 窗体顶端 1: 92.下面说法哪个不属于设计准则() 1.①提高模块的内聚,降低模块间的耦合 2.②降低模块接口的复杂程度 3.③模块大小要适中 4.④模块要有重用性 2:88.计算机的体系结构对程序设计语言具有() 1.①反作用 2.②促进作用 3.③抑制作用 4.④完善作用 3:79.程序图的作用是() 1.①定性度量软件的复杂程度 2.②定量度量软件的复杂程度 3.③预测软件的质量标准 4.④估计软件中的错误数量 4: 87.下面说法正确的是() 1.①模块的作用域在模块的控制域之内 2.②模块的控制域在模块的作用域之内 3.③模块的作用域和模块的控制域有时相同

4.④模块的作用域和模块的控制域都是一种层次结构5:94.等价类划分属于() 1.①白盒测试 2.②黑盒测试 3.③穷尽测试 4.④系统测试 6:90.软件维护组织包括() 1.①系统维护人员和系统管理人员 2.②系统程序员和硬件维护人员 3.③系统程序员和操作员 4.④打字员和软件工程师 7: 86.可行性研究阶段使用的图形工具是() 1.①DFD图 2.②N-S图 3.③PAD图 4.④Warnier图 8: 85.好的软件结构它的外观形状一般呈() 1.①线性 2.②扇形 3.③椭圆形 4.④层次型

9: 93.变换型结构的数据流呈() 1.①线性形状 2.②辐射状 3.③椭圆形 4.④阶梯形 10:78.结构化程序设计就是要() 1.①保留GOTO语句 2.②取消前转GOTO语句 3.③限制GOTO语句的使用 4.④取消后转GOTO语句 11: 89.若要保证开发出来的软件局部优化,而且能尽早发现设计上的错误,应采用() 1.①自顶向下的开发方法 2.②自底向上的开发方法 3.③渐增式的开发方法 4.④非渐增式的开发方法 12: 软件工程的七条基本原理中有一条是“坚持进行阶段评审”,要这么做的理由有(1 )。 ①大部分错误是在编码之前造成的 ②在软件开发过程中插入阶段评审是为了张弛有度、提高开发效率 ③错误发现得越晚,所付出的修正代价越高 ④为了便于控制开发进度 1.供选择的答案: 1.A. ①② 2.B. ①③

软件工程试题及答案(B)

B卷 一、选择题(每题2分,共40分) 1.软件项目的可行性研究要进行一次( C )需求分析。 A.详细的B.全面的C.简化的、压缩的D.彻底的 2、系统流程图用于可行性分析中的( A )的描述。 A.当前运行系统B.当前逻辑模型C.目标系统D.新系统 3、程序的三种基本控制结构的共同特点是( D ) A.不能嵌套使用B.只能用来写简单程序 C.已经用硬件实现D.只有一个入口和一个出口 4、维护中,因误删除一个标识符而引起的错误是( C )副作用。 A.文档B.数据C.编码D.设计 5、( D )是以提高软件质量为目的的技术活动。 A.技术创新B.测试C.技术创造D.技术评审 6、面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和 实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;( C );对象彼此之间仅能通过传递消息互相联系;层次结构的继承。 A.开发过程基于功能分析和功能分解B.强调需求分析重要性 C.把对象划分成类,每个对象类都定义一组数据和方法D.对既存类进行调整 7、原型化方法是用户和设计者之间执行的一种交互构成,适用于( A )系统。 A.需求不确定性高的B.需求确定的C.管理信息D.实时 8、为了提高测试的效率,应该( D )。 A.随机地选取测试数据B.取一切可能的输入数据作为测试数据

C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据 9、使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。 A.程序的内部逻辑B.程序的复杂结构C.使用说明书D.程序的功能 10、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C ) A.软件工程 B.软件周期 C.软件危机 D.软件产生 11、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性 称为( B )。 A.可用性 B.可靠性 C.正确性 D.完整性 12、瀑布模型的关键不足在于( B ) A.过于简单 B.不能适应需求的动态变更 C.过于灵活 D.各个阶段需要进行评审 13、软件维护的副作用主要有以下哪几种( C ) A.编码副作用、数据副作用、测试副作用 B.编码副作用、数据副作用、调试副作用 C.编码副作用、数据副作用、文档副作用 D.编码副作用、文档副作用、测试副作用 14、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高( B)。 A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 15、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主 要保证是( C)。 A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的 素质 16、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑 布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(1),它建立在(2)的基础上,沿着螺线自内向外每旋转一圈,就得到(2)的一个新版本。喷泉模型描述了(3)的开发模型,它体现了这种开发方法创建软件的过程所固有的(4)和(5)的特征。 B(1) A、系统工程 B、风险分析 C、设计评审 D、进度控制 D(2) A、模块划分 B、子程序分解 C、设计; D、原型 A(3) A、面向对象 B、面向数据流 C、面向数据结构 D、面向事件驱动 D(4) A、归纳 B、推理 C、迭代 D、递归 A(5) A、开发各阶段之间无“间隙” B、开发各阶段分界明显 C、部分开发阶段分界明显 D、开发过程不分段 二、判断题(每题2分,共30分) 1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活 动。( T ) 2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。 ( F ) 3.JAVA语言编译器是一个CASE工具。( T )。

《软件工程》试题及参考答案(第6套)

第一部分选择题 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 A 业务需求 B 功能要求 C 非功能需求 D 用户需求 3、软件测试计划开始于需求分析阶段,完成于()阶段。 A 需求分析 B 软件设计 C 软件实现 D 软件测试 4.下面关于面向对象方法中消息的叙述,不正确的是( )。 A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C. 应用程序之间可以相互发送消息 D.发送与接收消息的通信机制与传统的子程序调用机制不同 5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。 A.工作无序,项目进行过程中经常放弃当初的计划 B.建立了项目级的管理制度 C.建立了企业级的管理制度 D.软件过程中活动的生产率和质量是可度量的 6.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性B.可重用性C.适应性 D.可移植性 7.软件生命周期中所花费用最多的阶段是() A.详细设计 B.软件编码 C.软件测 试 D.软件维护 8.需求分析阶段的任务是确定() A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能

软件工程复习题及答案

软件工程复习题(一) 一、选择题 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、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( ) A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法 8、软件详细设计主要采用的方法是( ) A、模块设计 B、结构化设计 C、PDL语言 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、CASE工具的支持 B、如何开发演化型模型 C、项目主管的支持 D、开发人员的素质 16、程序流程图(框图)中的箭头代表( )。 A、数据流 B、控制流 C、调用关系 D、组成关系 17、一个只有顺序结构的程序,其环形复杂度是( )。 A、0 B、1 C、3 D、不确定的

软件工程考试题(含答案)

软件工程考试题 简答题 1、什么叫软件? 软件就是计算机系统中与硬件相互依存的另一部分,它就是包括程序,数据及其相关文档的完整集合 2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因就是什么? 软件危机就是指在计算机软件开发与维护过程中所遇到的一系列严重问题。包括两点: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 软件开发与维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也与软件开发与维护的方法不正确有关。具体表现如下: (1)软件就是逻辑部件而不就是物理部件。 (2)软件的规模越来越大,复杂性越来越大。 (3)轻视需求分析的重要性,轻视软件维护的错误观点与方法。 3、什么叫软件工程? 1968年在第一届NATO会议上的早期定义: “建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。 1993年IEEE的定义: “①软件工程就是:把系统的、规范的、可度量的途径应用于软件开发、运行与维护过程,也就就是把工程应用于软件;②进而研究①实现的途径”。 我们国家最近定义:软件工程就是指导计算机软件开发与维护的工程学科。它采用工程的概念、原理、技术与方法来开发与维护软件,把经过时间考验而证明正确的管理技术与当前能够得到的最好的技术方法结合起来。 4、两种软件工程方法学开发软件时要建立哪些模型? 软件工程方法学包括:传统方法学与面向对象方法学。常用的开发模型有: 瀑布模型(需求稳定,而且可以预先指定) 原型模型(需求模糊或者随时间变化) 增量模型(分析员先作出需求分析与概要设计,用户参与逐步完善) 螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析) 喷泉模型(使开发过程具有迭代性与无间隙性) 5、软件过程模型有哪些?简述它们的特点。 过程模型分为五大类:1、管理过程模型。2、瀑布模型(又称为生命周期模型)。3、增量过程模型:包括增量模型,,RAD模型。4、烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。5、专用过程模型:包括机遇构建的开发模型,形式化方法模型,面向方面的软件开发模型。 6、什么就是软件生命周期? 一个软件从定义,开发,使用与维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长时期称为生命周期 7、软件生命周期有哪几个阶段与步骤? 三个阶段:定义、开发、维护 八个步骤:问题定义、可行性研究、需求分析;总体设计、详细设计、编码与单元测试、综合测试;运行维护。 8、计算机软件的开发经过哪三个大阶段? 三个阶段:定义、开发、维护 9、软件开发的各阶段的任务就是什么? 定义阶段:问题定义--任务:关于规模与目标的报告书;可行性研究--任务:系统的高层逻辑模型:数据流图,成本/效益分析;需求分析--任务:系统的逻辑模型:数据流图,数据字典,算法描述。 开发阶段:总体设计--任务:系统流程图,成本/效益分析,推荐的系统结构:层次图/结构图;详细设计--任务:HIPO图或PDL 图;编码与单元测试--任务:源程序清单,单元测试方案与结果;综合测试--任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。 维护阶段:软件维护--任务:维护记录以及改正性维护,适应性维护,完整性维护与预防性维护

软件工程试题及答案

综合练习一答案 一.选择题: 1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 A.50年代末 B.60年代初C.60年代末 D.70年代初 A.运筹学B.工程学 C.软件学 D.软件学 E.数字 2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。 A.软件投机B.软件危机C.软件工程D.软件产生 3.产生软件危机的原因有如下几点,除了______。 A、软件开发过程未经审查 B、软件开发不分阶段,开发人员没有明确的分工 C、所开发的软件,除了程序清单外,没有其他文档 D、采用工程设计的方法开发软件,不符合软件本身的特点 4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。 A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件 C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用 5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。 A.维护 B.测试 C.详细设计 D.概要设计 E.编码 F.需求分析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.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的____。 总貌B.细节C.抽象D.软件的作者 13.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于____。 A.变换型 B 事务型 14.需求分析说明书不能作为______。

软件工程试题与答案 ()

《软件工程》试卷及答案A卷 专业年级姓名得分 一、名词解释(每个2分,共10分) 1.软件危机 2.纯收入 3.模块 4.原型 5.BROOKS定律 二、填空题(每题2分,共20分) 1.____是计算机程序及其说明程序的各种文档。_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。 2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。 3.软件详细设计阶段采用的工具有______。 4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。 5.模块的耦合性分为四种类型:____、____、____、____。 6.内聚性有七种类型,最强的是____,最弱的是____。 7.结构图的深度指结构图______,结构图宽度指________。 8.集成测试采用的具体方法有--____、______ 9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的 ____、逻辑输入、逻辑输出。 10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。 三、选择题(每题2分,共20分) 1.系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括()。 A.软件环境可行性、技术可行性、经济可行性、社会可行性 B.经济可行性、技术可行性、操作可行性 C.经济可行性、社会可行性、系统可行性 D.经济可行性、实用性、社会可行性 2.通过()可以完成数据流图的细化。 A.结构分解 B、功能分解 C、数据分解 D、系统分解 3.模块(),则说明模块的独立性越强。 A.耦合越强 B、扇入数越高 C、耦合越弱 D、扇入数越低 4.模块()定义为受该模块内一个判断影响的所有模块集合。 A.控制域 B、作用域 C、宽度 D、接口 5.面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。 A.系统设计 B、详细设计 C、软件设计 D、编码

软件工程试题库集及答案

综合练习一答案 选择题: 1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 A.50年代末B.60年代初C.60年代末D.70年代初 A.运筹学B.工程学C.软件学D.软件学E.数字2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。 A.软件投机B.软件危机C.软件工程D.软件产生 3.产生软件危机的原因有如下几点,除了______。 A、软件开发过程未经审查 B、软件开发不分阶段,开发人员没有明确的分工 C、所开发的软件,除了程序清单外,没有其他文档 D、采用工程设计的方法开发软件,不符合软件本身的特点 4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。 A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件 C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。 A.维护B.测试C.详细设计D.概要设计E.编码F.需求分析6.瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。 A.详细设计B.可行性分析C.运行及维护D.测试与排错7.划分软件生存周期的阶段时所应遵循的基本原则是_____。 A、各阶段的任务尽可能相关性 B、各阶段的任务尽可能相对独立 C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立 8.一个软件项目是否进行开发的结论是在______文档中作出的。 A、软件开发计划 B、可行性报告 C、需求分析说明书 D、测试报告 9.分析员是____。 A.用户中系统的直接使用者B.用户和软件人员的中间人 C.软件的编程人员D。用户和软件人员的领导

软件工程答案版

一、概念题: 1、软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题。 2、软件工程:是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维 护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以 经济地开发出高质量的软件并有效地维护它,这就是软件工程。 3、软件生命周期:由软件定义、软件开发和运行维护(也称为软件维护)3个时期组成,每个时期又进一步划分成 若干个阶段。 4、模块的内聚性:标志着一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。 5、软件测试:为了发现程序中的错误而执行程序的过程。 6、软件的可维护 性: 维护人员理解、改正、改动或改进这个软件的难易程度。 7、数据流图:一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。 8、模块的耦合(性):对一个软件结构内不同模块之间互连程序的度量。耦合的强弱取决于模块间接口的复杂程序,进入或访问一个模块的点,以及通过接口的数据。 9、形式化方法:描述系统性质的基于数学的技术。 10、软件重用:指同一事物不作修改或稍加改动就多次重复使用。广义地说,软件重用可分为以下3个层次:知 识重用、方法和标准的重用和软件成分的重用。 11、软件维护:就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。 12、对象:是由描述该对象属性的数据以及对这些数据施加的所有操作封装在一起构成的统一体。 13、软件可靠性:是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。 二、填空题: 1、软件工程包括技术和管理两方面内容,是(技术)与(管理)紧密结合所形成的工程学科。管理就是通过(计划)、 (组织)和(控制)等一系列活动。软件工程方法学包含3个要素:(方法)、(工具)和(过程)。 2、任何计算机系统均由(硬件)和(软件)两部分组成。 3、通常使用软件生命周期模型简洁地描述软件过程。请举出几种典型的软件过程模型如(瀑布模型)、(快速原型模型)、 (增量模型)等等。 4、可行性研究其实质上是要进行一次大大压缩简化了的系统分析和设计过程。一般对可供选择的主要系统实现方案的 可行性,至少应该从(技术可行性)、(经济可行性)和(操作可行性)等3个方面研究每种实现方案的可行性。 5、需求分析的任务包括(系统综合要求)、(数据要求)、(导出逻辑模型)和(修正系统开发计划)等。其中常见的接 口需求有(用户接口)、(硬件接口)、(软件接口)和(通信接口需求)等等。 6、需求分析过程应该建立3种模型,它们分别是(数据模型)、(功能模型)和(行为模型)。 7、按照形式化的程度,可以把软件工程使用的方法划分成(非形式化)、(半形式化)和(形式化)等3类。 8、软件设计一般包括(总体设计阶段)和(详细设计阶段)等两个阶段,在软件设计过程中应该遵循的基本原理和相 关概念有(模块化)、(抽象)、(逐步求精)、(信息隐藏和局部化)和(模块独立)。 9、软件设计的基本任务可以概括地说包括以下四个任务(体系结构设计)、(人机界面设计)、(数据设计)和(过程设 计)。 10、在设计人机界面的过程中,必须充分重视并认真处理好(系统响应时间)、(用户帮组设施)、(出错信息处理)和 (命令交互)等四个问题。 11、(白盒测试)和(黑盒测试)是软件测试的两类基本方法,通常在测试过程的早期阶段主要使用(白盒测试), 而在后期阶段主要使用(黑盒测试)。

软件工程试题及答案

1. 软件生命期各阶段的任务是什么? 答:软件生命期分为7个阶段: 1、问题定义:要解决的问题是什么 2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性 3、需求分析:系统必须做什么 4、总体设计:系统如何实现,包括系统设计和结构设计 5、详细设计:具体实现设计的系统 6、实现:编码和测试 7、运行维护:保证软件正常运行。 2、软件重用的效益是什么? 答:1、软件重用可以显著地改善软件的质量和可靠性。 2、软件重用可以极大地提高软件开发的效率。 3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。 3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点? 答: ①自顶而下渐增测试 优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。 缺点:需要存根程序,底层错误发现较晚。 ②自底而上渐增测试 优点与缺点和自顶而下渐增测试相反。 4 、提高可维护性的方法有哪些? 答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前

的审查和复审中,应着重对可维护性进行复审。 在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。 在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。 在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。 在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。 在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。 为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重用技术。 简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。 【解答】 测试过程按 4 个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测试)和平行运行。 单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明书。 集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。与其相关的文档是集成测试计划和软件需求说明书。 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。与其相关的文档是确认测试计划和软件需求说明书。 平行运行把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试。与其相关的文档:用户指南、使用手册等。 36.简述容错技术的四种主要手段,并解释。

软件工程考试试题(含答案)

一、填空题(每空1分,共25分) 1.软件生存周期一般可以划分为,问题定义、____________、____________、设计、 编码、测试和____________。 2.基于软件的功能划分,软件可以划分成__________、__________、__________三种。 3.可行性研究,应从、技术可行性、运行可行性、和开 放方案可行性等方面研究。 4.系统流程图是描绘的传统工具。它的基本思想是用图形符号以 描绘系统里面的每个部件。 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、、 和。 6.结构化分析方法是面向________________进行需求分析的方法。结构化分析方法使 用________________与________________来描述。 7.是自动地共享类、子类和对象中的方法和数据的机制。 8.软件详细设计工具可分为3类,即________________、________________和 ________________。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施:________________、 复查和管理复审、________________。 10.大型软件测试包括、、确认测试和 四个步骤。 1、可行性研究需求分析运行与维护 2、系统软件支撑软件应用软件 3、经济可行性法律可行性 4、物理系统黑盒子形式 5、加工数据流数据存储文件 6、数据流数据流图DFD 数据字典DD 7、继承性 8、图示工具、设计语言表格工具 9、审查测试 10、单元测试集成测试系统测试 二、单项选择题(每小题2分,共20分) 1 2 3 4 5 C C C A C 6 7 8 9 10 D D A C B 1.软件设计中划分模块的一个准则是()。 A、低内聚低耦合 B、低内聚高耦合 C、高内聚低耦合 D、高内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向()的软件 设计方法。

软件工程试题及答案(较详细)

一. 二. 三.判断题: 1.如果决定将软件全部包给第三方公司开发。(×) 2.有了对系统的目标有了大致的了解,就可以开始开发项目,以后的在开发中继续了解。(×) 3.对于一个成功的软件项目,可执行程序是唯一交付的东西。(×) 4.直到程序运行,才评估软件系统的质量。(×) 5.如果未能按时完成任务,我们可以通过增加程序员来加快完成任务。(×) 6.虽然软件需求不断变更,但因软件比硬件有弹性,所以我们经常可以变更它。(×) 7.软件工程将导致我们产生大量的无用文档,降低工作效率。(×) 8.在面向对象建模中,主题划分提供了在更高一层上描述。(主题划分是指UML中将一组关联比 较强的类的集合。则上百个类可划分为几个主题)(√) 9.面向对象的开发,对象分解取代功能分解。(√) 10.软件中80%的错误存在20%的模块中。(√) 11.结构化分析方法在建立系统模型时,使用一般――特殊结构(实际上没有这种关系)来处理信息。 (×) 12.开发软件就是编程。(×) 13.需求规格说明书说明了(√) 14.结构化方法,建立系统模型时使用一般连接组织信息。(×) 15.敏捷过程模型选用小而高激励的团队使用而不适用于大团队。(√) 四.简答题 1.软件工程是层次化的,其四个层次是? 答:方法,工具,过程,质量保证 软件工程是一种层次化的技术(如图2-1所示)。任何工程方法(包括软件工程)必须以有组织的质量保证为基础。全面的质量管理和类似的理念刺激了不断的过程改进,正是这种改进导致了更加成熟的软件工程方法的不断出现。支持软件工程的根基就在于对质量的关注。 软件工程的基层是过程层。软件工程过程是将技术层结合在一起的凝聚力,使得计算机软件能够被合理地和及时地开发出来。过程定义了一组关键过程区域的框架(KPAs)[PAY93],这对于软件工程技术的有效应用是必须的。关键过程区域构成了软件项目的管理控制的基础,并且确立了上下各区域之间的关系,其中规定

软件工程试题及答案

软件工程 一、选择题 1、软件需求规格说明的内容不包括(B) A、主要功能 B、算法的详细描述 C、用户界面及运行环境 D、软件的性能 2、面向对象的分析方法主要是建立三类模型,即(D) A、系统模型、ER模型、应用模型 B、对象模型、动态模型、应用模型 C、ER模型、对象模型、功能模型 D、对象模型、动态模型、功能模型 3、在ER模型中,包括以下基本成分(C) A、数据、对象、实体 B、控制、联系、对象 C、实体、联系、属性 D、实体、属性、操作 4、各种软件维护的类型中最重要的是(A) A、完善性维护 B、纠错性维护 C、适应性维护 D、预防性维护 5、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-2.0,2.0],现从输入的角度考虑一组测试用列-2.001,-2,20,2.001,设计这组测试用列的方法是(C) A、条件覆盖法 B、等价分类法 C、边界值分析法 D、错误推测法 6、下列白盒测试法,哪种是最强的覆盖准则(D) A、语句覆盖 B、条件覆盖 C、判定覆盖 D、条件组合覆盖 7、确定测试计划是在(A)阶段制定的。 A、总体设计 B、详细设计 C、编码 D、测试 8、数据字典是软件需求分析阶段最重要的工具之一,其最基本的功能是(C) A、数据库设计 B、数据通信 C、数据定义 D、数据维护 9、软件开发当中,抽取和整理用户需求并建立问题域精确模型的过程(D) A、生成期 B、软件意向 C、结构化程序设计 D、面向对象分析 10、以下不属于IT企业当中过程管理和过程改进模型的是(D) A、ISO9001 B、CMMI C、软件企业文化 D、UML 11、适合互联网上编程并可供不同平台运行的面向对象程序设计的语言是(java) 12、软件结构图中,模块之间用直线连接,则表示他们之间存在(A )。 A、调用关系 B、组成关系 C、链接关系 D、顺序执行关系 13、生命周期方法设计软件的过程中,画用例图属于(A)阶段的工作。 A、需求分析 B、概要设计 C、详细设计 D、软件维护 14、PDL属于(B)语言。 A、高级程序设计语言 B、伪码 C、中级程序设计语言 D、低级程序设计语言 15、成功的测试是(发现至今尚未发现的错误) 16、软件开发的瀑布模型典型的刻画了软件生成周期的阶段划分,与其想适应的软件开发方法是(即瀑布模型采用什么样的软件开发方法?)(B)。 A、构建化方法 B、结构化方法 C、面向对象方法 D、快速原型方法 17、软件结构图的形态特征能反应程序重用率的是(C) A、深度 B、宽度 C、扇入 D、扇出 18、维护过程的本质是(D)的过程。 A、修改程序 B、修改文档 C、修改位置 D、压缩的修改软件定义和开发 19、软件危机的表现: 答:由于软件特点和长期以来一直没有发明一种高校的开发方法,导致软件生产效率非常低,交付期一拖再拖,最终交付的软件产品在质量上很难保障。这种现象早在20世纪60年代被定义为“软件危机”。它的具体表现如下:

软件工程课后参考答案

第一章 1.1什么是计算机软件?软件的特点是什么? 计算机软件是指计算机系统中的程序及其文档 软件的特点: ●软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算。 ●软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可, 但其维护的工作量大。 ●软件的使用没有硬件那样的机械磨损和老化问题。 1.2简述软件的分类,并举例说明 1.系统软件 系统软件居于计算机系统中最接近硬件的一层,其他软件一般都通过系统软件发挥作用。例如:编译软件、操作系统。 2.支撑软件 支撑软件是支撑软件的开发和维护的软件。例如:数据库管理系统、网络软件、软件工具、软件开发环境。 3.应用软件 应用软件是特定应用领域专用的软件。例如:工程/科学计算机软件、嵌入式软件、产品线软件、Web应用软件、人工智能软件。 1.3简述软件语言的分类,并举例说明。 1.需求定义语言 是用于书写软件需求定义的语言。例如:PSL/PSA。 2.功能性语言 是用于书写软件功能规约的语言,通常又称为功能规约语言。例如:广谱语言、Z 语言。 3.设计性语言 是用于书写软件设计规约的语言。例如:PDL。 4.实现性语言 也称为程序设计语言,是用于书写计算机程序的语言。例如:C、java、PROLOG、FORTRAN、COBOL、Modula。 5.文档语言 是用于书写软件文档的语言。通常用自然语言或半形式化语言书写。 1.4什么是软件工程? 软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。 1.5简述软件工程的基本原则。 软件工程原则包括围绕工程设计、工程支持和工程管理所提出的以下4条基本原则。 1.选取适宜的开发模型 必须认识需求定义的易变性,采用适宜的开发模型,保证软件产品满足用户的要求。 2.采用合适的设计方法

相关文档
最新文档