软件工程试题含答案.docx

上传人:b****2 文档编号:79182 上传时间:2023-04-28 格式:DOCX 页数:15 大小:22.75KB
下载 相关 举报
软件工程试题含答案.docx_第1页
第1页 / 共15页
软件工程试题含答案.docx_第2页
第2页 / 共15页
软件工程试题含答案.docx_第3页
第3页 / 共15页
软件工程试题含答案.docx_第4页
第4页 / 共15页
软件工程试题含答案.docx_第5页
第5页 / 共15页
软件工程试题含答案.docx_第6页
第6页 / 共15页
软件工程试题含答案.docx_第7页
第7页 / 共15页
软件工程试题含答案.docx_第8页
第8页 / 共15页
软件工程试题含答案.docx_第9页
第9页 / 共15页
软件工程试题含答案.docx_第10页
第10页 / 共15页
软件工程试题含答案.docx_第11页
第11页 / 共15页
软件工程试题含答案.docx_第12页
第12页 / 共15页
软件工程试题含答案.docx_第13页
第13页 / 共15页
软件工程试题含答案.docx_第14页
第14页 / 共15页
软件工程试题含答案.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

软件工程试题含答案.docx

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

软件工程试题含答案.docx

软件工程试题含答案

软件工程期末试题

(1)

一,判断题(正确的在括号内打上"√",错误的打上"×".每题1.5分,共15分)

Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×)PAD图在设置了五种基本控制结构后,还允许递归调用.(×)你为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×)当验收测试通过,软件开发就完成了.(×)

完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×)系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)

在程序调试时,找出错误的位置和性质比改正该错误更难.(√)以对象,类,继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一.(√)

二,单项选择题(每小题2分,共10分)

试判断下列叙述中,哪个(些)是正确的(D)

a,软件系统中所有的信息流都可以认为是事务流

b,软件系统中所有的信息流都可以认为是变换流

c,事务分析和变换分析的设计步骤是基本相似的

A,aB,bC,cD,b和c

进行需求分析可使用多种工具,但(B)是不适用的.

A,数据流图B,PAD图C,判定表D,数据词典

在详细设计阶段,经常采用的工具有(A).

A,PADB,SAC,SCD,DFD

详细设计的结果基本决定了最终程序的(C)

A,代码的规模B,运行速度C,质量D,可维护性

使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准.A,程序的内部逻辑B,程序的复杂程度

C,该软件的编辑人员D,程序的功能

三,多项选择题(每题2分,共10分.注:

正确得2分,漏选得1分,多选,错选不得分.)

(ABCD)可以作为模块.

A,子程序B,函数C,过程D,编译文件

下面哪些测试属于黑盒测试(BCD).

A,路径测试B,等价类划分C,边界值分析D,错误推测E,循环测试下列属于度量效益方法的是(ABCD).

A,货币的时间价值B,投资回收期C,收入D,投资回报率

软件维护的策略包括(BCD).

A,定期检测维护B,改正性维护C,适应性维护D,完善性维护

下列属于软件测试过程的是(ABE).

A,单元测试B,组装测试C,内核测试D,法律验证E,确认测试

四,简答题(每题6分,共24分)

1、耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:

低:

非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:

强:

功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:

2、请举例说明什么是多态,什么是重载

答案:

多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法.

3、重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别.

例:

publicclassA{

intage;

Stringname;

publicvoidsetValue(inti){

age=i;}

publicvoidsetValue(Strings){

name=s;}

4、什么是数据字典简述数据字典与数据流图的关系.

答案:

数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,

然而没有数据流图数据字典也难于发挥作用.数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分)

5、简述编码风格的重要性.

答案:

阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.

面向对象的测试和传统开发方法的测试有什么不同

答案:

(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.

(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大.每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.

软件工程期末试卷

(2)

(开放教育本科)计算机科学与技术专业

《软件工程》试题B

一、填空题(每空1分,共20分)

1.软件生存周期一般可分为__问题定义__、可行性研究、__需求分析_、设计编码、_测试_、运行与维护阶段。

2.IPO图由_输入_、_处理_和___输出__三个框组成。

3.软件=____程序______+____文档______。

4.软件测试的方法有_分析方法_和_非分析方法_(即黑盒法)。

5.Jackson图除了可以表达程序结构外,还可以表达_数据结构_。

6.详细设计的工具有图形工具、__表格工具_和__语言工具_。

7._数据流图_和_数据字典_共同构成系统的逻辑模型。

8.成本估计方法主要有__自顶向下估计_、_自底向上估计_和算法模型估计三种类型。

9.在需求分析阶段常用的图形工具有_层次方框图_、_Warnier图_、_IPO图_三种。

答案:

填空题(每空1分,共20分)

1、问题定义需求分析测试

2、输入处理输出

3、程序文档

4、分析方法非分析方法

5、数据结构

6、表格工具语言工具

7、数据流图数据字典

8、自顶向下估计自底向上估计

9、层次方框图Warnier图IPO图

二、单项选择题(每小题2分,共10分)

1.系统流程图是描绘()的传统工具。

A、逻辑系统B、数据结构C、状态变迁D、物理系统

2.下列模块独立性最强的是()

A、非直接耦合B、数据耦合C、公共耦合D、内容耦合

3.下列哪个阶段不属于软件生存周期的三大阶段()。

A、计划阶段B、开发阶段

C、编码阶段D、维护阶段

4.常见的软件概要设计方法有3大类,其中以数据流图为基础构造模块结构的是(

A、Jackson方法和LCP(Wanier)逻辑构造方法

B、结构化设计方法(SD)

C、面向对象设计方法(OOD)

D、快速原型法

5.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。

A、程序的内部逻辑B、程序的复杂程度

C、该软件的编辑人员D、程序的功能

答:

1、D2、A3、C4、A5、A

三、多项选择题(每题2分,共10分)

1.()可以作为模块。

A、子程序B、函数C、过程D、编译文件

2.关于内容耦合的描述正确的是()。

A、内容耦合是最高程度的耦合

B、高级语言一般设计成允许内容耦合的形成

C、应该尽量使用内容耦合

D、如果一个模块可以直接调用另一模块,则可以称为内容耦合

3.下列属于度量效益方法的是()。

A、货币的时间价值B、投资回收期

B、收入D、投资回报率

4.软件维护的策略包括()。

A、定期检测维护。

B、改正性维护

C、适应性维护

D、完善性维护

5.下列不属于软件测试过程的是()。

A、单元测试B、组装测试C、内核测试D、法律验证

答:

1、ABCD2、AD3、ABC4、BCD5、CD

四、判断题(正确的在括号内打上“√”,错误的打上“×”。

每题2分,共20分)

1.Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格。

(v)

2.PAD图在设置了五种基本控制结构后,还允许递归调用。

(v)

3.为了加快软件维护作业的进度,应尽可能增加维护人员的数目。

(x)

4.当验收测试通过,软件开发就完成了。

(x)

5.完成测试作业后,为了缩短源程序的长度应删除程序中的注解。

(x)

6.在进行总体设计时应加强模块间的联系。

(x)

7.系统结构图是精确表达程序结构的图形表示法。

因此,有时也可以将系统结构图当作系统流程图使用。

(x)

8.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。

(x)

9.在程序调试时,找出错误的位置和性质比改正该错误更难。

(v)

10.以对象、类、继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一。

(v)

答:

1—5:

√√×××6—10:

×××√√

五、简答题(每题5分,共20分)

1.什么是软件危机?

为什么会产生软件危机?

答:

软件危机是指软件在开发和维护过程遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,三是如何维护数量不断膨胀的已有软件.产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。

2.什么是软件的生存周期?

包括哪几个部分?

答:

个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。

软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。

它包括制定计划、需求分析、软件设计、程序编写、软件测试、运行维护等。

3.什么是黑盒测试法?

答:

黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息。

4.耦合性和内聚性有几种类型?

其耦合度、内聚强度的顺序如何?

内容耦合:

高?

公共耦合?

外部耦合?

控制耦合?

标记耦合?

数据耦合?

答:

低:

非直接耦合

巧合内聚:

弱?

逻辑内聚?

时间内聚?

过程内聚?

通信内聚?

信息内聚?

强:

功能内聚

六、分析设计题(共20分)

1.(8分)假设开发某个计算机应用系统的投资额为3000元,该计算机应用系统投入使

用后,每年可以节约1000元,5年内可能节约5000元。

3000元是现在投资的钱,5000元是5年内节省的钱,假定年利率为12%,请计算该系统的纯收入,投资回收期,投资回收率。

答:

计算该系统的纯收:

3612.27-3000=612.27

投资回收期:

3+(3000-2407.15)/(3044.09-2407.15)=3.93投资回收率为r

3000=1000/(1+r)+1000/(1+r)2+1000/(1+r)3+1000/(1+r)4+1000/(1+r)5解得r=20%

2.求一组数组中的最大数,数组表示为A(n),n=1,2?

?

n的自然数。

(12分)

1)请画出程序流程图(4分)

2)请画出该算法的N-S图(4分)

3)请用PAD图来表示该算法(4分)答:

(1)

(2)

(3

软件工程期末试卷(3)

一、简答题(25%,每小题5分):

1.请简要说明需求分析的三个层次包括那些主要内容。

软件需求包括三个不同的层次—业务需求、用户需求和功能需求—也包括非功能需求。

业务需求反映了组织机构或客户对系统、产品高层次的目标要求。

用户需求文档描述了用户使用产品必须要完成的任务。

功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。

2.为什么要设计独立性强的模块以及如何判断模块的独立性?

第一3分,耦合1分,内聚1分

模块独立性强,则:

(1)系统容易开发

(2)系统可靠性高(3)系统容易维护

判断模块独立性的基本原则:

“耦合小,内聚大”

3.若现有类已经进行了彻底的测试,为什么必须对从现有类中实例化的子类进行重新测试?

使用的场景:

3分.2分

因为父类和子类的运行环境是不同的。

另外,如果是多重继承会显着地增加派生类的复杂程度,导致一些难以发现的隐含错误。

4.要开发质量“非常好”的软件,请从软件工程的角度分析其利与弊。

利:

3分;弊:

2分

利:

容易维护,用户比较满意

弊:

成本高,周期长

5、采用面向对象方法设计软件系统时,子系统的划分常采用水平划分或垂直划分的方式,请说明这两种划分所得子系统的特点。

c/s:

3分,p2p:

2分

水平划分系统的p2p:

每个字系统可以调用任意其他子系统,比c/s复杂,可能死锁。

垂直划分c/s:

客户端调用服务器端,服务器提供服务,并返回结果。

客户端需要知道服务器的接口,而服务器不必知道客户端接口。

二、应用题(45%,1-3每小题10分,4小题15分)

1.公司计划采用新技术开发一款新的手机软件产品,希望尽快占领市场,假设你是项目经理,你会选择哪种软件过程模型?

为什么?

选模型:

5分;原因:

5分

选用模型:

可采用增量模型/增量+原形/螺旋模型等等。

但如果采用快速开发则不太适宜。

分析原因:

技术相对比较新,而且需要快速占领市场,所以应短期内出现产品的原形或者是可用的子系统。

2.请根据下面的任务安排表,画出任务网络图、甘特图、标识关键路径和阶段里程碑位置。

任务网络图:

活动甘特图

需求分析

测试计划概要设计测试方案设计

详细设计编码

产品测试文档整理3.13.63.113.163.213.263.30任务网络图3分

甘特图3分

标识关键路径2分

阶段里程碑位置2分。

3.设有一个程序,读入三个整数,代表三角形的三条边。

输出表明三角形是不规则的、等腰的或等边的。

请采用黑盒的等价类划分方法,设计一组测试用例。

不规则:

345

等腰:

334

等边:

333

其他:

192

不规则的3分时间

等腰3分

等边3分

其他1分

4.设计一个简化的网上个人银行查询系统,用户可以通过Internet查询自己帐户的收支明细、余额和修改密码。

(一)采用结构化方法:

7分

1)请画出E-R图2分

DFD图的第0层和第1层。

3分

2)编写两个关键词条的数据字典。

2分

E-R图

DFD图第0层

DFD

输入命令:

查询帐户明细查询帐户余额修改密码

数据字典:

名称:

帐号

别名:

何处使用/如何使用:

登陆帐户时需要输入

描述:

帐户的唯一标识,每个帐户对应一个帐号

帐号=12个数字

名称:

帐户密码

别名:

何处使用/如何使用:

登陆帐户时输入;修改密码时输入,修改成功后保存到帐户数据库描述:

密码=*6个字母*

(二)采用面向对象方法:

8分

1)请画出系统的用例图;2分

2)识别出系统的主要类2分

User、Account、DetailItem

主要要包括用户、帐户、收支明细等类。

并画其中的二个类图(包含主要属性和操作)。

2分

3)画一个UML时序图,描述一次通过网上银行查询余额的具体交互。

2分

软件工程期末试卷(4)

一、填空题

1.软件开发模型有瀑布模型、螺旋模型、第四代技术模型、构件组装模型、混合模型。

2.可行性研究一般可以从运行可行性、法律可行性和开发可行性等方面来研究。

3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入

的钱数为

4数据存储文件

5.Jackson图除了可以表达程序结构外,还可以表达数据结构它首先要分析数据结构,并用适当的工具来描述。

6.详细设计的工具有、表格工具和。

7.IPO图由三个框组成。

这个图的特点是能够直观的显示三者之间的关系。

8.面向对象技术是一整套关于如何看待和的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。

向对象方法是一种运用对象、类、继承、封装、聚集、消息传送、多态性等概

念来构造系统的软件开发方法。

二、单项选择题

1.下列(A)属于系统软件。

A.WINDOWS2000

B.Word

C.Flash

D.3DMAX

2.下列哪个图是N-S图的构件(C)。

A.

B.

C.D.

n

3.对于螺旋模型,下列(D)不是利用笛卡尔坐标表达的活动。

A.制定计划B.实施工程

C.风险分析D.程序编码

三、多项选择题

1.软件危机可以表现为(ABCD)。

A.产品不符合用户的需要

B.软件产品的质量差

C.软件的可维护性差

D.软件的价格昂贵

2.Jackson图中一般可能包括(ABCD)。

A.表头

B.表体

C.表名

D.字段名

3.关于内容耦合的描述正确的是(AD)。

A、内容耦合是最高程度的耦合

B、应该尽量使用内容耦合

C、高级语言一般设计成允许内容耦合的形式

D、如果一个模块有多个入口,可能发生内容耦合

4.下列属于不标准的书写格式(BCD)。

A、书写时适当使用空格分隔

B、一行写入多条语句

C、嵌套结构不使用分层缩进的写法

D、程序中不加注释

四、判断题(正确的在括号内打上“√”,错误的打上“”)

1.软件生存周期是从软件开始开发到开发结束的整个时期。

(×)

2.系统流程图是一个典型的描述逻辑系统的传统工具。

(×)

3.数据流图和数据字典共同构成系统的逻辑模型。

(√)

4.扇出是一个模块直接调用的模块数目,一般推荐的扇出为3或4。

(√)

5.耦合用于衡量一个模块内部的各个元素彼此结合的紧密程度。

(×)

6.程序运行过程中出现错误叫做容错。

(×)

7.软件测试的目的是证明程序没有错误。

(×)

8.白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。

(×)

五、问答题

1.什么是软件生存周期。

答:

一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。

软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。

2.在需求分析阶段,建立目标系统的逻辑模型的具体做法是什么。

答:

系统流程图是描述物理系统的传统工具。

它的基本思想是用图形符号以黑盒子形式描绘

系统里的每个部件(程序、文件、数据库、表格、人工过程等)。

系统流程图表达的是部件的信息流程,而不表示对信息进行加工处理的控制过程。

3.为什么数据流图要分层?

答:

这了表达数据处理过程的数据加工情况,用一个数据流图是不够的。

为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。

4.软件的质量反应为哪些方面的问题?

答:

软件需求是度量软件质量的基础,不符合需求的软件就不具备质量。

在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。

如果不遵守这些开发准则,软件质量就得不到保证。

往往会有一些隐含的需求没有明确地提出来。

如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。

软件质量是各种特性的复杂组合。

它随着应用的不同而不同,随着用户提出的质量要求不同而不同。

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

当前位置:首页 > 人文社科

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2