软件工程试题及答案.docx

上传人:b****3 文档编号:676141 上传时间:2022-10-12 格式:DOCX 页数:20 大小:145.01KB
下载 相关 举报
软件工程试题及答案.docx_第1页
第1页 / 共20页
软件工程试题及答案.docx_第2页
第2页 / 共20页
软件工程试题及答案.docx_第3页
第3页 / 共20页
软件工程试题及答案.docx_第4页
第4页 / 共20页
软件工程试题及答案.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

软件工程试题及答案.docx

《软件工程试题及答案.docx》由会员分享,可在线阅读,更多相关《软件工程试题及答案.docx(20页珍藏版)》请在冰豆网上搜索。

软件工程试题及答案.docx

软件工程试题及答案

4.面向对象的分析方法主要是建立三类模型,即(D)。

    A)系统模型、ER模型、应用模型B)对象模型、动态模型、应用模型

    C)E-R模型、对象模型、功能模型D)对象模型、动态模型、功能模型

5.在E-R模型中,包含以下基本成分()。

  A)数据、对象、实体B)控制、联系、对象C)实体、联系、属性D)实体、属性、操作

9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:

-1.001,-1.0,1.0,1.001.设计这组测试用例的方法是(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、软件重用的效益是什么?

    答:

1、软件重用可以显著地改善软件的质量和可靠性。

2、软件重用可以极大地提高软件开发的效率。

3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。

    3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点?

 答:

① 自顶而下渐增测试

   优点:

不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。

    缺点:

需要存根程序,底层错误发现较晚。

    ② 自底而上渐增测试优点与缺点和自顶而下渐增测试相反。

    4、提高可维护性的方法有哪些?

答:

在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前的审查和复审中,应着重对可维护性进行复审。

    在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。

在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。

    在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。

    在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。

    在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。

    在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。

    为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重用技术。

简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。

【解答】测试过程按4个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测试)和平行运行。

单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明书。

集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。

与其相关的文档是集成测试计划和软件需求说明书。

确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。

与其相关的文档是确认测试计划和软件需求说明书。

平行运行把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试。

与其相关的文档:

用户指南、使用手册等。

四、应用题(每题8分,共40分)

1、假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。

对于每个需要再次定货的零件应该列出下述数据:

零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。

零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。

当某种零件的库存数量少于库存量临界值时就应该再次定货。

要求:

画出系统的数据流图。

答:

 

2、将下面给出的伪码转换为N-S图和PAD图。

voidroot(floatroot1,floatroot2){

i=1;j=0;while(i<=10){输入一元二次方程的系数a,b,c;p=b*b–4*a*c;

if(p<0)输出“方程i无实数根”;elseif(p>0)求出根并输出;

if(p==0){求出重根并输出;j=j+1;}i=i+1;}输出重根的方程的个数j;}

【解答】

(1)N-S图

 

(2)PAD图

 

开始

输入A,B,C

A+B>C

A+C>B

B+C>A

输出ABC

不能构成三角形

结束

F

F

F

T

T

T

3、:

输入三整数,判断是否构成三角形,如构成三角形,则输出三条边的值,否则输出”不能构成三角形”.要求:

1.用程序流程图表示该问题的算法;2.计算程序复杂度;3.设计路径覆盖的测试用例。

答:

 

 

路径:

1.①—②—③—④—⑥—⑦

2.①—②—⑤—⑥—⑦

3.①—⑤—⑥—⑦

4.①—②—③—⑤—⑥—⑦

 

程序复杂度=3+1=4测试用例

路径

测试用例(A,B,C)

结果

1

A=3,B=4,C=5

A=3,B=4,C=5

2

A=5,B=8,C=2

不能构成三角形

3

A=2,B=2,C=5

不能构成三角形

4

A=5,B=2,C=2

不能构成三角形

4、某航空公司规定,乘客可以免费托运重量不超过30kg的行李。

当行李重量超过30kg时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。

用判定树表示与上述每种条件组合相对应的计算行李费的算法.答案:

5、一个软件公司有许多部门,分为开发部门和管理部门两种,每个开发部门开发多个软件产品,每个部门由部门名字唯一确定。

该公司有许多员工,员工分为经理,工作人员和开发人员。

开发部门有经理和开发人员,管理部门有经理和工作人员。

每个开发人员可参加多个开发项目,每个开发项目需要多个开发人员,每位经理可主持多个开发项目,建立该公司的对象模型。

答案:

 

1、C2、B3、B4、D5、C6、A7、B8、D9、C10、D11、A12、D13、A14、A15、A16、D17、C18、D19、D20、DB卷

1、瀑布模型把软件生命周期划分为8个阶段:

问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。

八个阶段又可归纳为三个大的阶段:

计划阶段、开发阶段和(运行阶段)。

2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,需求分析阶段出错,对软件的影响最大。

3、在结构化的瀑布模型中,(需求分析阶段)定义的标准将成为软件测试中的系统测试阶段的目标。

4、软件工程的出现主要是由于(软件危机的出现)5软件工程方法学的目的:

使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是软件开发工具和软件开发的环境。

6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为相互补充。

7、UML是软件开发中的一个重要工具,它主要应用于基于对象的面向对象的方法。

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(原型化方法)。

9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(数据流)。

10、软件开发的瀑布模型,一般都将开发过程划分为:

分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(编码阶段)。

11、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。

主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。

螺旋模型将瀑布模型和演化模型相结合,并增加了(风险分析),它建立在()的基础上,沿着螺线自内向外每旋转一圈,就得到(原型)的一个新版本。

喷泉模型描述了(面向对象)的开发模型,它体现了这种开发方法创建软件的过程所固有的(递归)和(开发各阶段之间无“间隙”)的特征。

12、以下不属于白盒测试技术的是(等价类划分)。

13、为改正软件系统中潜藏的错误而进行的维护活动称为(纠错性维护)。

14、保证软件质量的手段有复审、复查、管理复审和测试等。

其中复审发生在软件生命周期的(每个阶段结束之前)。

15、完整的系统设计应包括(计算机系统设计、应用软件设计、数据库设计和网络设计)。

16、在信息系统的物理模型中,表示系统各个物理组成部分之间的数据流动情况的工具是(系统流程图)。

二、填空题(每题1分,共10分)

系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的(信息流动)情况。

2、成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。

3、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:

深度优先策略和(宽度优先策略)。

4、在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。

5、详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。

6、所有软件维护申请报告要按规定方式提出,该报告也称(软件问题)报告。

7、独立路径是指包括一组以前没有处理的语句或条件的一条路径。

从程序图来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。

8、设计任何一个人机界面,一般必须考虑(系统响应时间、用户帮助机制、错误信息处理和命令方式四个

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 城乡园林规划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1