当前位置:文档之家› 软件工程试题含答案

软件工程试题含答案

软件工程期末试题( 1 )

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

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

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

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

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

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

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

A,a B,b C,c D,b 和 c

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

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

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

A,

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

A,代码的规模 B,运行速度可保护性

利用白盒测试方式时,肯定测试数据应按照(A)和指定的覆盖标准. A,

程序的复杂程度

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

三,多项选择题(每题 2 分,共 10 分.注:正确得 2 分,漏选得 1 分,多选, 错选不得分.)

(ABCD)可以作为模块.

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

A,路径测试E,循环测试

下列属于气宇效益方式的是(ABCD).

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

A,按期检测保护

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

C,内核测试D,法律验证

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

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

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

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

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

例: public class A{

int age;

String name;

public void setValue(int i) {

age=i; }

public void setValue(String s) {

name=s; }

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

答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的概念与说明,是数据流程图的补充工具.(2 分)数据流图和数据字典一路组成系统的逻辑模型,没有数据字典数据流图就不严格, 但是没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每一个元素的精准概念放在一路,才干一路组成系统的规格说明.(3 分)

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

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

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

答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块, 而在面向对象环境下,最小的可测试的单元是封装了的类或者对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)往往行不通,因为在组成类的各个部件之间存在各类直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.

软件工程期末试卷(2)

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

《软件工程》试题B

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

1 .软件生存周期普通可分为、可行性研究、

、设计编码、、运行与保护阶段。

2 .IPO 图由、和三个框组成。

3 .软件=+。

4 .软件测试的方式有和(即黑盒法)。

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

6 .和。

7 .和一路组成系统的逻辑模型。

8 .本钱估计方式主要有__ 、_

9 .在需求分析阶段往往利用的图形工具有、_

、三种。答案:填空题(每空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 、

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

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

D、快速原型法

5. 利用白盒测试方式时,肯定测试数据应按照( )和指定的覆盖标准。

A B、程序的复杂程度

C、该软件的编辑人员

D、程序的功能

答:1 、D 2 、A 3 、C 4 、A 5 、A

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

1. ( )可以作为模块。

A

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

A 、

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

C、应该尽可能利用内容耦合

D 、

3. 下列属于气宇效益方式的是( )。

A B

B D、投资回报率

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

A 、按期检测保护。 )

B、

C、

D 、

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

A、单元测试

B、组装测试

C、内核测试

D、法律验证

答:1 、ABCD 2、AD 3、ABC 4、BCD 5、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%,请计算该系统的纯收入,投资回收期,投资回收率。答:

计算该系统的纯收:=

投资回收期:3+ () / 投资回收率为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 ,2n 的自然数。(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 分

甘特图 3 分

标识关键路径 2 分

阶段里程碑位置2 分。

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

明三角形是不规则的、等腰的或者等边的。请采用黑盒的等价类划分方式,设计一组测试用例。

不规则:3 4 5

等腰:3 3 4

等边:3 3 3

其他:1 9 2

不规则的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. WINDOWS 2000

B. Word

C. Flash

D. 3D MAX

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

A .

. C. D. n

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

A. 制定计划

B. 实施工程

C. 风险分析

D. 程序编码

三、多项选择题

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

B

2 .Jackson 图中普通可能包括( ABCD )。

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.软件的质量反映为哪些方面的问题?

答:软件需求是气宇软件质量的基础,不符合需求的软件就不具有质量。在各类标准中概念了一些开辟准则,用来指导软件人员用工程化的方式来开辟软件。若是不遵守这些开辟准则,软件质量就得不到保证。往往会有一些隐含的需求没有明确地提出来。若是软件只知足那些精准概念了的需求而没有知足这些隐含的需求,软件质量也不能保证。

软件质量是各类特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。

软件工程考试试题与答案

软件工程考试试题与答 案 LEKIBM standardization office【IBM5AB- LEKIBMK08- LEKIBM2C】

专业:移动通信科目:软件工程 一、单项选择题 1.好的软件结构应该是() A.低耦合、低内聚 B.高耦合、高内聚 C.高耦合、低内聚 D.低耦合、高内聚 答案:D 2.需求分析中开发人员要从用户那里了解() A.软件的规模 B.软件做什么 C.用户使用界面 D.输入的信息 答案:B 3.软件调试技术包括() A.演绎法 B.循环覆盖 C.边界值分析 D.集成测试 答案:A 4.软件需求规格说明书的内容不应包括对()的描述。 A.用户界面及运行环境 B.主要功能 C.算法的详细过程 D.软件的性能 答案:C 5.常用动词或动词词组来表示() A.属性 B.关联 C.类 D.对象 答案:B 6.软件可行性研究实质上是要进行一次()需求分析、设计过程。 A.详细的 B.深入的 C.彻底的 D.简化、压缩的 答案:D 7.软件部分的内部实现与外部可访问性分离,这是指软件的()A.继承性 B.共享性 C.抽象性 D.封装性 答案:D

8.软件部分的内部实现与外部可访问性分离,这是指软件的()A.共享性 B.继承性 C.抽象性 D.封装性 答案:D 9.在详细设计阶段,经常采用的工具有() A.PDL B. DFD C.SC D.SA 答案:A 10.数据字典是对数据定义信息的集合,它所定义的对象都包含于()A.软件结构 B.程序框图 C.方框图 D.数据流图 答案:D 11.软件工程结构化生命周期方法,提出将软件生命周期划分为计划、开发和运行三个时期,下述()工作应属于软件开发期的内容。 A.问题定义 B.可行性研究 C.都不是 D.总体设计 答案:D 12.应用执行对象的操作可以改变该对象的() A.功能 B.数据 C.属性 D.行为 答案:C 13.软件质量因素不包括() A.可理解性 B.可测试性 C.正确性 D.高性能 答案:D 14.软件可行性研究实质上是要进行一次()需求分析、设计过程。 A.详细的 B.彻底的 C.深入的 D.简化、压缩的 答案:D 15.结构化设计是一种面向()的设计方法。

软件工程试题及答案

软件工程 一、单项选择题 1. TURBO PASCAL是()软件。 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. 需求分析阶段最重要的技术文档之一是:() A.项目开发计划 B.设计说明书 C.需求规格说明书 D.可行性分析报告 8. Jackson方法是一种面向()的方法。 A.数据流 B.对象 C.数据结构 D.控制流 9. 软件详细设计的主要任务是对()进行的详细设计。 A.算法和数据结构 B.外部接口 C.软件编码 D.功能 10. 银行计算机储蓄管理信息系统中,根据客户提出的要求(如存款、取款、查询、挂失、咨询等)进行相应的业务处理的该层数据流图是()_。 A.变换型 B.事务型 C.既不是A也不是B D.不一定 11. 确认测试是对软件进行( ) 测试。 A. 可靠性 B. 有效性 C. 可维护性 D. 可用性 12. 检查软件产品是否符合需求定义的过程称为()。 A.确认测试 B.集成测试 C.验收测试 D.验证测试 13. 软件测试的目的是() A.评价软件的质量B.发现软件的错误 C.找出软件中的所有错误D.证明软件是正确的 14. 随着软硬件环境变化而修改软件的过程是() A.校正性维护 B.适应性维护 C.完善性维护 D.预防性维护 15. 软件生存周期中时间最长的阶段是() A.需求分析阶段B.概要设计阶段 C.详细设计阶段D.维护阶段 16. 下列属于维护阶段的文档是( ) A. 软件规格说明 B. 用户操作手册 C. 软件问题报告 D. 软件测试分析报告

软件工程测试题含答案

软件工程测试题含答案 1、msconfig命令可以用来配置()。 A、系统配置 B、服务配置 C、应用配置 D、协议配置 答案:A 2、下列 _____ 不是网络操作系统。 A、Windows NT Server B、Unix C、DOS D、NetWare 答案:C 3、A方有一对密钥(KA公开,KA秘密),B方有一对密钥(KB公开,KB 秘密),A方向B方发送数字签名M,对信息M加密为:M’= KB公开(KA秘密(M))。B方收到密文的解密方案是()。 A、KB公开(KA秘密(M’)) B、KA公开(KA公开(M’)) C、KA公开(KB秘密(M’)) D、KB秘密(KA秘密(M’)) 答案:C 4、3个结点可构成()棵不同形态的二叉树。 A、2 B、3 C、4 D、5 答案:D 5、系统死锁的可能的原因是 A、进程死循环 B、资源循环等待 C、程序内存访问越界 D、进程释放资源 答案:B 6、下列哪一种方法在支持向量机中有应用 A、极大似然估计

B、最小二乘法 C、拉格朗日乘子法 D、二分法 答案:C 7、下列哪个是有监督算法 A、决策树 B、K-means C、DBSCAN D、聚类算法 答案:A 8、下面关于面向对象方法中消息的叙述,不正确的是()。 A、键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息 B、操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C、应用程序之间可以相互发送消息 D、发送与接收消息的通信机制与传统的子程序调用机制不同 答案:B 9、计算机中的执行过程是_________。①取指令②执行指令③修改指令计数器④指令译码 A、①②③④ B、①④②③ C、④③②① D、①③②④ 答案:B 10、网络安全法规定,网络运营者应当制定(),及时处置系统漏洞、计算机病毒、网络攻击、网络侵入等安全风险。 A、网络安全事件应急预案 B、网络安全事件补救措施 C、网络安全事件应急演练方案 D、网络安全规章制度 答案:A 11、设顺序线性表的长度为30,分成5块,每块6个元素,如果采用分块查找,则其平均查找长度为 A、6 B、11

软件工程考试试题与答案

软件工程考试试题与答案 软件工程是一个综合性较强的学科,涉及到软件开发的各个方面。为了帮助考生更好地备考软件工程考试,下面为大家整理了一些常见的软件工程考试试题与答案。 一、选择题 1. 软件工程是指()。 A. 设计、开发和维护软件的工程学科 B. 使用计算机辅助设计软件的学科 C. 算法和数据结构的学科 D. 编程语言和工具的学科 答案:A 2. 软件生命周期包括以下几个阶段:()。 A. 需求分析、系统设计、编码和测试 B. 可行性研究、需求分析、系统设计、编码、测试和维护 C. 需求分析、系统设计、编码、测试和维护 D. 可行性研究、编码和测试 答案:B 3. 软件需求分析的目的是()。

A. 确定软件系统的功能和性能要求 B. 设计软件系统的架构 C. 编写软件源代码 D. 测试软件系统的正确性 答案:A 4. 软件测试的目的是()。 A. 检查软件系统是否满足需求 B. 修复软件系统中的错误 C. 优化软件系统的性能 D. 审查软件系统的代码质量 答案:A 5. 软件工程的核心原则是()。 A. 按计划进行工作 B. 管理好项目进度 C. 不断改进开发过程 D. 保证代码质量 答案:C

二、简答题 1. 请简要说明软件需求分析的过程。 答:软件需求分析的过程包括以下几个步骤:需求获取、需求分析、需求规格说明、需求验证。需求获取阶段主要是通过与用户沟通、文 档分析等方式了解用户的需求。需求分析阶段是将获取到的需求进行 分析和整理,确定软件系统的功能和性能需求。需求规格说明阶段是 编写详细的需求规格文档,明确系统功能、非功能性需求、界面设计 等内容。需求验证阶段是通过测试等方式验证需求规格是否满足用户 需求。 2. 请简要介绍软件设计的常见方法。 答:软件设计的常见方法包括结构化设计、面向对象设计和面向服 务的设计。结构化设计是按照自顶向下的步骤将系统划分为模块,并 确定模块之间的接口和数据流动。面向对象设计是通过定义对象及其 相互关系来描述软件系统。面向服务的设计是将软件系统划分为服务,每个服务提供一组特定的功能,并通过服务间的通信实现系统功能。 三、综合题 某软件公司计划开发一个在线购物平台,请根据以下需求分析,完 成该项目的软件设计。 需求分析: 1. 用户可以浏览商品信息、加入购物车和提交订单;

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

软件工程考试试题(含答案) 软件工程考试试题(含答案) 1. 简答题 1.1 请简述软件生命周期模型,包括传统瀑布模型和敏捷开发模型。 传统瀑布模型: 软件生命周期模型的一种经典模型,包含需求分析、系统设计、 编码、测试和运维等阶段,每个阶段完成后才能进入下一个阶段。 优点: - 易于理解和使用; - 需求固定,有利于计划和控制; 缺点: - 需求变更困难; - 风险高,需求出错难以弥补; - 开发周期长,无法满足紧迫的需求。 敏捷开发模型: 一种适应快速变化需求的软件开发模型,主要包括用户故事编写、迭代开发、持续集成和自动化测试等实践。 优点:

- 高度适应变化; - 可以提供早期可用软件; - 强调团队合作和沟通; 缺点: - 需要高度的客户参与度; - 需要经验丰富的开发团队; - 不适用于大型项目。 1.2 什么是需求工程?请简述需求工程的过程和方法。 需求工程: 需求工程是软件开发过程中用来获取、分析、定义和验证系统需 求的过程。它的目标是建立对用户需求的准确和完整的理解。 需求工程的过程: 1. 需求获取:通过与用户、利益相关者沟通和交流获取用户需求。 2. 需求分析:对需求进行分析、整理,形成需求的详细描述。 3. 需求定义:将需求进行文档化,包括功能需求、非功能需求等。 4. 需求验证:通过原型、模型或评审等方式验证需求的正确性和 完整性。 需求工程的方法:

- 面谈法:与用户、利益相关者进行面对面的交谈,获取需求信息。 - 观察法:观察用户的工作环境和行为,了解其需要的功能和约束 条件。 - 文献研究法:通过研究现有的相关文档来获取需求信息。 - 原型法:通过创建原型,让用户提供反馈并进一步明确需求。 2. 算法设计题 有一组整数,编写一个算法将这组整数按照从小到大的顺序进行排序。 算法设计: 1. 将整数数组按照从小到大的顺序进行排序。 2. 使用冒泡排序算法: - 比较相邻的两个数,如果前一个数大于后一个数,则交换它们 的位置。 - 重复上述操作,直到没有任何交换发生,即数组已经按照从小 到大的顺序排列好。 算法实现: ```python def bubble_sort(nums): n = len(nums)

软件工程试题及答案

软件工程试题及答案 第一篇:软件工程试题及答案 1、瀑布模型把软件生命周期划分为8个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(运行阶段)。 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,(需求分析阶段)出错,对软件的影响最大。 3、在结构化的瀑布模型中,(需求分析阶段)定义的标准将成为软件测试中的系统测试阶段的目标。 4、软件工程的出现主要是由于(软件危机的出现)。 5软件工程方法学的目的:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是软件开发工具和软件开发的环境。 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为相互补充。 7、UML是软件开发中的一个重要工具,它主要应用于基于对象的(面向对象)的方法。 8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(原型化方法)。 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(数据流)。 10、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(编码阶段)。 11、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(风险分析),它建立在()的基础上,沿着螺线自内向外每旋转一圈,就得到(原型)的一个新版本。喷泉模型描述了(面向对象)的开发模型,它体现

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

一、选择题:(每题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.条件组合覆盖 ( A )13.面向数据流的设计方法把()映射成软件结构。 A.数据流B.系统结构C.控制结构D.信息流 ( A )14.内聚程度最低的是( )内聚 A.偶然 B.过程 C.顺序 D.时间 ( A )15.确定测试计划是在( )阶段制定的.

软件工程考试题(带答案)..

一、选择题 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)。

软件工程考试试题 含答案

软件工程考试试题含答案软件工程考试试题含答案 一. 选择题 1. 下列不属于软件工程方法论的是: A. 瀑布模型 B. 敏捷开发 C. 融合开发 D. 增量开发 答案:C. 融合开发 2. 哪个不是软件需求工程的阶段? A. 需求收集和分析 B. 需求规格说明书编写 C. 需求确认和验证 D. 需求修复和更新 答案:D. 需求修复和更新 3. 软件开发生命周期中不包含以下哪个阶段? A. 需求分析

B. 软件设计 C. 软件测试 D. 软件维护 答案:C. 软件测试 4. 下列哪个是软件开发项目管理的基本约束? A. 时间 B. 人员 C. 质量 D. 成本 答案:D. 成本 5. 使用UML建模时,哪个图标不属于结构图? A. 类图 B. 对象图 C. 时序图 D. 包图 答案:C. 时序图 二. 填空题

1. 软件工程的目标是提高软件的质量和________。 答案:生产效率 2. 软件需求可以分为________和________两类。 答案:功能需求,非功能需求 3. 软件设计的核心目标是________。 答案:满足需求 4. 软件测试的目的是发现________。 答案:缺陷和错误 5. 软件维护分为________和________两个主要类别。 答案:正确性维护,适应性维护 三. 简答题 1. 请简要介绍敏捷开发方法。 答案:敏捷开发方法强调迭代与循序渐进的开发方式,注重团队合作和快速响应需求变化。其核心原则包括迭代开发、自组织团队、人与沟通优先、持续集成和及时反馈等。敏捷开发方法通过不断反馈和迭代,提高软件开发的灵活性和适应性。 2. 什么是软件需求工程?为什么软件需求工程是软件开发的关键环节?

软件工程期末试卷(十套含答案)

软件工程期末试题(一) 单项选择题 1.瀑布模型的存在问题是(B ) A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通D.适用可变需求 2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C ) A.软件工程 B.软件周期 C.软件危机 D.软件产生 3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( B ) A.数据、公共、标记、控制 B.数据、标记、控制、公共 C.控制、数据、标记、公共 D.控制、数据、公共、标记 4.在SD方法中全面指导模块划分的最重要的原则是( D ) A.程序模块化 B.模块高内聚 C.模块低耦合 D.模块独立性 5.软件测试的目的是( B )。 A.评价软件的质量 B. 发现软件的错误 C.找出软件的所有错误 D. 证明软件是正确的 6.在设计测试用例时,( A )是用得最多的一种黑盒测试方法。 A.等价类划分 B. 边界值分析 C. 因果图 D. 判定表 7. 需求分析最终结果是产生( B )。 A. 项目开发计划 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告 8. Jackson图中,模块框之间若有直线连接,表示它们之间存在(B )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 9. 软件详细设计的主要任务是确定每个模块的( C )。 A. 功能 B. 外部接口 C. 算法和使用的数据结构 D. 编程 10.为了提高软件的可维护性,在编码阶段应注意( D ) A.保存测试用例和数据 B.提高模块的独立性 C.文档的副作用 D.养成好的程序设计风格 11.设年利率为i,现存入p元,若计复利,n年后可得钱数为(B) A.p﹡(1+i﹡n) B.p﹡(i+1)n C.p﹡(1+i)﹡n D.p﹡(i+n) 12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是(A )。 A .状态图 B. 数据流图 C. 系统结构图 D. 时序图

软件工程试题含答案

软件工程试题含答案 一、单项选择题(每题1分,共20分) 1. 以下哪个不是软件工程的目标? A. 提高软件生产效率 B. 提高软件质量 C. 提高软件可靠性 D. 提高软件的价格 答案:D 2. 以下哪个不属于软件工程的基本原则? A. 阶段划分 B. 迭代开发 C. 配置管理 D. 需求分析 答案:D 3. 软件生命周期模型中,以下哪个模型最适合于需求变化较少的项目? A. 瀑布模型 B. 增量模型

C. 螺旋模型 D. 原型模型 答案:A 4. 下面哪种软件测试方法主要通过检查输入和输出数据之间的关系来验证软件的正确性? A. 黑盒测试 B. 白盒测试 C. 灰盒测试 D. 性能测试 答案:A 5. 在软件开发中,以下哪个过程是保证软件质量的关键环节? A. 需求分析 B. 设计 C. 编码 D. 测试 答案:D 6. 以下哪个不是软件配置管理的任务? A. 版本控制

B. 变更管理 C. 代码编写 D. 测试管理 答案:C 7. 软件过程中的度量主要用于评估以下哪个方面? A. 项目进展情况 B. 代码质量 C. 测试覆盖率 D. 用户满意度 答案:A 8. 以下哪个不是软件项目管理中的常见约束? A. 成本约束 B. 资源约束 C. 时间约束 D. 协议约束 答案:D 9. 下面哪种软件开发模型更适合于小型项目?

A. 敏捷开发 B. 瀑布模型 C. 增量模型 D. 螺旋模型 答案:A 10. 下列哪个属于软件缺陷的类型? A. 语法错误 B. 逻辑错误 C. 界面设计错误 D. 所有选项都是 答案:D 二、多项选择题(每题2分,共20分) 11. 软件工程的基本特征包括:(选择所有正确答案) A. 工程化 B. 抽象化 C. 风险管理 D. 需求开发

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

测试 一.单选题(共3题,15.0分) 1 需求获取整理和分析后,获得的文档包括用例说明文档和() A、前景和范围文档 B、需求说明书 C、系统分析说明书 D、系统操作手册 正确答案:A 2 系统功能和边界的描述有用例图和() A、类图 B、上下文图(或系统关联图) C、部署图 D、业务流程图 正确答案:B 3 [IEEE1990]对性能的定义:一个系统或者其组成部分在限定的约束下,完成其指定()的程度。 A、功能 B、性能 C、需求 D、目标 正确答案:A 二.多选题(共10题,50.0分) 1 以下属于功能需求的有() A、用户需求 B、业务需求

C、系统需求 D、性能需求 正确答案:ABC 2 软件需求可分为() A、功能需求 B、非功能需求 C、约束 D、对外接口 正确答案:AB 3 性能需求主要包括用户在软件响应()、系统吞吐量,以及运行时资源消耗等属性要求。 A、速度 B、精度 C、容量 D、负载 正确答案:ABCD 4 用户需求不明确问题主要体现在() A、在软件开发出来之前,用户自己也不清楚软件开发的具体需求 B、用户对软件开发需求的描述不精确,可能有遗漏、有二义性、甚至有错误 C、在软件开发过程中,用户还提出修改软件开发功能、界面、支撑环境等方面的要求 D、软件开发人员对用户需求的理解与用户本来愿望有差异 正确答案:ABCD 5 需求获取方法中传统的有 A、面谈法 B、原型法 C、模型驱动法 D、基于上下文的方法 E、认知方法

正确答案:ABCDE 6 以下属于非功能需求的是() A、性能需求 B、质量属性 C、对外接口 D、约束 正确答案:ABCD 7 对系统之间的软硬件接口需要说明接口的以下内容() A、接口的数据格式 B、接口的命令格式 C、接口标准 D、接口用途 E、接口的输入输出 F、接口的实现算法 正确答案:ABCDE 8 以下属于IEEE 1990对需求的定义的是() A、用户提出来的所有要求 B、用户为了解决问题或达到某些目标所需要的条件或能力 C、系统或系统部件为了满足合同、标准、规范或其他正式文档所规定的要求而需要具备的条件或能力 D、开发者或系统能满足用户的条件或能力 正确答案:BC 9 需求获取要获取的内容包括() A、需求本身 B、业务描述 C、环境 D、约束 正确答案:ABCD

软件工程考试题 带答案

软件工程考试题带答案软件工程考试题 一、单项选择题(每题5分,共30分) 1.软件需求分析的主要目标是: A. 发现并修正软件中的错误 B. 确定软件系统的功能和性能需求 C. 编写软件代码 D. 打印和发布软件 答案:B 2. 下列哪个是软件生命周期模型? A. 瀑布模型 B. 微服务架构 C. 敏捷开发 D. 协同开发 答案:A 3. 软件设计阶段的主要目标是: A. 开发详细的测试计划

B. 创建软件的体系结构和模块设计 C. 编写和调试软件代码 D. 验收和发布软件 答案:B 4. 软件测试的主要目的是: A. 发现并修复软件错误 B. 确保软件系统符合质量标准 C. 完成软件系统的开发 D. 验收和发布软件 答案:B 5. 下列哪个是软件项目管理过程中的常用工具? A. 甘特图 B. 数据流图 C. 类图 D. 鱼骨图 答案:A 6. 下列哪个是软件配置管理的主要目标?

A. 确保软件开发过程的质量 B. 管理软件中不同部分的变更 C. 编写和调试软件代码 D. 验收和发布软件 答案:B 二、简答题(每题10分,共20分) 1. 简要解释软件工程的概念。 答:软件工程是一门研究和应用工程原理、方法和工具来开发和维护高质量软件的学科。它注重应用系统性的、规范化的方法来开发和维护软件,以提高软件的质量、效率和可维护性。 2. 请简述瀑布模型的基本原理。 答:瀑布模型是软件开发过程中最早也是最广泛使用的模型之一。它基于线性顺序的开发过程,将软件开发划分为需求分析、设计、开发、测试和运行维护等不同阶段,每个阶段按照顺序进行。 三、案例分析题(40分) 某公司正在开发一个电商网站,你作为软件工程师参与其中。 请回答以下问题: 1. 在需求分析阶段,你应该做些什么?

软件工程试卷及答案软件工程试题和答案

软件工程试卷及答案软件工程试题和答案软件工程试卷及答案 第一部分:选择题(共40小题,每题2分,共80分) 1. 软件工程的定义是: A. 软件设计和开发 B. 软件项目管理 C. 软件测试和维护 D. 软件工程师的工作 答案:A 2. 下面哪个不是软件生命周期的阶段? A. 需求分析 B. 设计 C. 开发 D. 运营 答案:D 3. 软件开发过程中的需求分析阶段的主要作用是: A. 编写代码

B. 确定软件的功能和性能需求 C. 进行软件测试 D. 用户培训 答案:B 4. 下面哪项不是软件开发中常用的软件开发模型? A. 瀑布模型 B. 敏捷开发模型 C. 增量模型 D. 平衡模型 答案:D 5. 软件项目管理中的关键路径是指: A. 工期最短的路径 B. 工期最长的路径 C. 工期变动最多的路径 D. 工期变动最少的路径 答案:B 6. 软件测试的目标是:

A. 发现尽可能多的缺陷 B. 验证软件满足需求 C. 确保软件质量 D. 所有选项都是目标 答案:D 7. 下面哪项不是软件测试的类型? A. 单元测试 B. 集成测试 C. 系统测试 D. 接口测试 答案:D 8. 软件维护的类型包括: A. 预防性维护 B. 改正性维护 C. 完善性维护 D. 所有选项都是维护类型 答案:D

9. 下面哪个不是软件开发中常用的编程语言? A. Java B. C++ C. Python D. HTML 答案:D 10. 软件配置管理包括以下哪些方面? A. 版本控制 B. 缺陷管理 C. 变更管理 D. 所有选项都是配置管理的方面 答案:D ... 第二部分:简答题(共4题,每题10分,共40分) 1. 请简要介绍一下软件工程的基本原则。 答案:软件工程的基本原则包括:尽早发现和修复缺陷、适应需求变化、迭代开发、团队合作、持续改进。这些原则旨在提高软件开发的效率和质量。

软件工程考试试题及参考答案

软件工程考试试题 第一部分选择题 一、单项选择题每小题1分,共20分。(在每小题的四个选项中只有一个选项是符合题目要 求的,请将正确选项前的字母填在题后的括号内) 1.在下列工具与环境中()属于较早期的CASE。 A.基于信息工程CASE B.人工智能CASE C.结构的基于图形CASE D.集成的CASE环境 2.Putnam成本估算模型是一个()模型。 A.静态单变量B.动态单变量C.静态多变量D.动态多变量 3.在McCall软件质量度量模型中,()属于面向软件产品修改。 A.可靠性B.可重用性C.适应性D.可移植性 4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC 5.软件复杂性度量的参数包括() A.效率B.规模C.完整性D.容错性 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.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是() A.过程、子程序和分程序 B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移 13.在详细设计阶段,经常采用的工具有() A.PAD B.SA C.SC D.DFD 14.详细设计的结果基本决定了最终程序的() A.代码的规模B.运行速度C.质量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图;编码和单元测试--任务:源程序清单,单元测试方案和结果;综合测试--任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。

软件工程考试试题含答案

软件工程考试试题含答 案 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

一、填空题(每空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.软件设计中划分模块的一个准则是()。 A、低内聚低耦合 B、低内聚高耦合 C、高内聚低耦合 D、高内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向()的软 件设计方法。 A、对象 B、数据流 C、数据结构 D、控制结构 3.试判断下列叙述中,哪个(些)是正确的( )。 a、软件系统中所有的信息流都可以认为是事务流 b、软件系统中所有的信息流都可以认为是变换流 c、事务分析和变换分析的设计步骤是基本相似的 A、a? B、b? C、c D、b和c

软件工程测试题含答案

软件工程测试题含答案 一、选择题 1. 下列关于软件测试的说法中,错误的是: A. 软件测试是验证软件系统的正确性和完整性的过程 B. 软件测试是为了发现和纠正软件中的错误 C. 软件测试可以保证软件系统的绝对没有错误 D. 软件测试可以帮助提高软件质量 答案:C 2. 软件测试的主要目的是: A. 发现软件中的错误 B. 让用户更容易上手使用软件 C. 保证软件的绝对没有错误 D. 提高软件的开发效率 答案:A 3. 在软件测试中,黑盒测试的特点是: A. 只测试软件的外部功能,不考虑内部结构 B. 只测试软件的内部结构,不考虑外部功能

C. 综合测试软件的内外部功能 D. 只测试软件的界面功能,不考虑其他功能 答案:A 4. 在软件测试中,白盒测试的特点是: A. 只测试软件的外部功能,不考虑内部结构 B. 只测试软件的内部结构,不考虑外部功能 C. 综合测试软件的内外部功能 D. 只测试软件的界面功能,不考虑其他功能 答案:B 5. 下列哪种测试方法通常被用于验证软件系统的全面性和正确性: A. 单元测试 B. 集成测试 C. 系统测试 D. 验收测试 答案:C 二、填空题 1. 软件测试的基本原则是“早测出、早纠正、早测试”,它强调在软件开发的早期进行( 1 )测试,并及时( 2 )软件中的错误。

答案:(1) 单元;(2) 纠正 2. 为了保证测试的完备性和准确性,测试用例应该( 1 )。 答案:(1) 具有高覆盖率 3. 在进行黑盒测试时,测试人员不需要了解被测软件的( 1 )。 答案:(1) 内部结构 4. 在进行白盒测试时,测试人员需要了解被测软件的( 1 )。 答案:(1) 内部结构 5. 对于错误的级别进行划分,常用的标准有( 1 )。 答案:(1) 严重程度 三、简答题 1. 请简要介绍一下软件测试的目的和重要性。 答:软件测试的目的是为了发现软件中的错误并进行纠正,以保证软件的正确性、完整性和质量。软件测试的重要性体现在以下几个方面: - 帮助提高软件质量:通过测试,可以发现和修复软件中的错误,确保软件的可靠性和稳定性。 - 减少软件维护成本:在软件开发早期发现错误并进行修复,可以避免错误进一步扩大和影响其他模块,降低后期维护成本。

软件工程试题及答案

软件工程期末试卷(A) 一、选择题:(每题1分,共20分)(将答案写在题号前(de)()中) ( C )1. 软件是(). A. 处理对象和处理规则(de)描述 B. 程序 C. 程序及其文档 D. 计算机系统 ( B )2. 软件需求规格说明(de)内容不应包括(). A. 主要功能 B. 算法(de)详细描述 C. 用户界面及运行环境 D. 软件(de)性能 ( B )3. 程序(de)三种基本控制结构是(). A. 过程、子程序和分程序 B. 顺序、选择和重复 C. 递归、迭代和回溯 D. 调用、返回和转移 ( D ) 4. 面向对象(de)分析方法主要是建立三类模型,即( ). A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型 D) 对象模型、动态模型、功能模型 ( C ) 5. 在E-R模型中,包含以下基本成分( ). A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操作 ( A ) 6. 各种软件维护(de)类型中最重要(de)是( ).

A) 完善性维护 B) 纠错性维护C) 适应性维护D) 预防性维护 ( B ) 7.软件测试(de)目标是(). A. 证明软件是正确(de) B. 发现错误、降低错误带来 (de)风险 C. 排除软件中所有(de)错误 D. 与软件调试相同 ( D )8.软件生命周期中所花费用最多(de)阶段是()A.详细设计 B.软件编码 C.软件测试 D.软件维护 ( C )9.若有一个计算类型(de)程序,它(de)输入量只有一个X,其范围是[-1.0, 1.0],现从输入(de)角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例(de)方法是() A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法 ( D )10、详细设计(de)基本任务是确定每个模块(de)( )设计 A.功能 B.调用关系 C.输入输出数据 D.算法 ( A )11.设函数C(X)定义问题X(de)复杂程序,函数E(X)确定解决问题X需要(de)工作量(时间).对于两个问题P1和P2,如果C(P1)>C (P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:()

相关主题
文本预览
相关文档 最新文档