文档库 最新最全的文档下载
当前位置:文档库 › 软件工程试卷版

软件工程试卷版

软件工程试卷版
软件工程试卷版

一、概念题:

1、软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题。

2、软件工程:是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,

把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高

质量的软件并有效地维护它,这就是软件工程。

3、软件生命周期:由软件定义、软件开发和运行维护(也称为软件维护)3个时期组成,每个时期又进一步划分成若干个阶

段。

4、模块的内聚性:标志着一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。

5、软件测试:为了发现程序中的错误而执行程序的过程。

6、软件的可维护性:维护人员理解、改正、改动或改进这个软件的难易程度。

7、数据流图DFD:一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。

8、模块的耦合(性):对一个软件结构内不同模块之间互连程序的度量。耦合的强弱取决于模块间接口的复杂程序,进入或访

问一个模块的点,以及通过接口的数据。

9、形式化方法:描述系统性质的基于数学的技术。

10、软件重用:指同一事物不作修改或稍加改动就多次重复使用。广义地说,软件重用可分为以下3个层次:知识重用、

方法和标准的重用和软件成分的重用。

11、软件维护:就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。

12、对象:是由描述该对象属性的数据以及对这些数据施加的所有操作封装在一起构成的统一体。

13、软件可靠性:是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。

二、填空题:

1、软件工程包括技术和管理两方面内容,是(技术)与(管理)紧密结合所形成的工程学科。管理就是通过(计划)、(组织)

和(控制)等一系列活动。软件工程方法学包含3个要素:(方法)、(工具)和(过程)。

2、任何计算机系统均由(硬件)和(软件)两部分组成。

3、通常使用软件生命周期模型简洁地描述软件过程。请举出几种典型的软件过程模型如(瀑布模型)、(快速原型模型)、(增量

模型)等等。

4、可行性研究其实质上是要进行一次大大压缩简化了的系统分析和设计过程。一般对可供选择的主要系统实现方案的可行性,

至少应该从(技术可行性)、(经济可行性)和(操作可行性)等3个方面研究每种实现方案的可行性。

5、需求分析的任务包括(系统综合要求)、(数据要求)、(导出逻辑模型)和(修正系统开发计划)等。其中常见的接口需求有

(用户接口)、(硬件接口)、(软件接口)和(通信接口需求)等等。

6、需求分析过程应该建立3种模型,它们分别是(数据模型)、(功能模型)和(行为模型)。

7、按照形式化的程度,可以把软件工程使用的方法划分成(非形式化)、(半形式化)和(形式化)等3类。

8、软件设计一般包括(总体设计阶段)和(详细设计阶段)等两个阶段,在软件设计过程中应该遵循的基本原理和相关概念有

(模块化)、(抽象)、(逐步求精)、(信息隐藏和局部化)和(模块独立)。

9、软件设计的基本任务可以概括地说包括以下四个任务(体系结构设计)、(人机界面设计)、(数据设计)和(过程设计)。

10、在设计人机界面的过程中,必须充分重视并认真处理好(系统响应时间)、(用户帮组设施)、(出错信息处理)和(命令交

互)等四个问题。

11、(白盒测试)和(黑盒测试)是软件测试的两类基本方法,通常在测试过程的早期阶段主要使用(白盒测试),而在后期

阶段主要使用(黑盒测试)。

12、软件的结构程序设计按照控制结构的应用特点可以分为(经典的结构程序设计)、(扩展的结构程序设计)和(修正的结构

程序设计)。

13、用面向对象方法学开发软件过程,是一个主动地多次反复迭代的(演化过程)。传统方法学强调(自顶向下)顺序地完成软

件开发的各阶段任务。

14、程序复杂程度的定量度量使用较广泛的两种方法是(McCabe)方法和(Halstead)方法。

15、一般组成软件系统的物理元素包括(程序)、(文件)、(数据库)、(人工过程)和(文档)等。

16、软件配置管理主要包括有5项任务:(标识)、(版本控制)、(变化控制)、(配置审计)和(报告)。

17、大型、复杂系统的对象设计一般由下述5个层次组成:(主题层)、(类与对象层)、(结构层)、(属性层)和(服务层)。

18、软件重用是提高软件(开发生产率)和目标系统(质量)的重要途径,它基本上始于设计。其中软件成分重用可划分成以

下3个级别即代码重用、设计成果重用和分析结果重用。

19、面向数据流的设计方法把信息流映射成软件结构,信息流有(变换)和(事务)等两种类型。

20、大型软件系统的测试过程基本上由(模块测试)、(子系统测试)、(系统测试)、(验收测试)和(平行运行)等。

21、一般说来,软件调试途径主要有以下3种即(蛮干法)、(回溯法)和(原因排除法)。

22、需求分析的任务包括系统综合要求、数据要求、导出逻辑模型和修正系统开发计划等。其中设计约束或实现约束常见的有:

(精度)、(工具和语言约束)、(设计约束)、应该使用的标准和应该使用的(硬件平台)等。

23、COCOMO是(构造性成本模型)(constructive cost model)的英文缩写。

24、软件定义时期通常划分为3个阶段,它们分别是(问题定义)、(可行性研究)和(需求分析)。

25、程序的三种基本控制结构是(顺序)、(选择)和(循环)。

26、软件系统响应时间有两个重要属性,分别是(长度)和(易变性)。

27、在软件项目的组织方式典型的有(民主制程序员组)、(主程序员组)、(现代程序员组)等三种。

28软件维护通常包括四类活动即(改正性维护)、(完善性维护)、(适应性维护)和(预防性维护)。

29传统方法学强调(硬件接口)顺序地完成软件开发的各阶段任务。用(软件接口)开发软件过程,是一个主动地多次反复迭代的演化过程。

30、估算软件规模的方法主要有(码行技术)和(功能点技术)等等。

31、软件过程中的一个任务集合包括一组(软件工程任务)、(里程碑)和应该交付的产品(软件配置成分)。通常使用软件生命周期模型简洁地描述软件过程。请举出几种典型的软件过程模型如微软过程、(瀑布模型)、(快速原型)、(增量模型)、(螺旋模型)、(喷泉模型)等。

32、解决软件危机,既要有技术措施(方法和工具),又要有必要的(组织管理)措施。

33、CMM是软件过程能力成熟度模型(capability maturity model)的简称。其5个等级从低到高依次是(初始级)(又称为1级)、(可重复级)(又称为2级)、(已定义级)(又称为3级)、(已管理级)(又称为4级)和(优化级)(又称为5级)。

34、结构化分析方法需求分析过程应该建立3种模型,它们分别是(行为模型)、(功能模型)和(数据模型)。

35、用面向对象方法开发软件,需要建立3种形式的模型,它们分别是(对象模型)、(动态模型)和(功能模型)。

36、验证软件需求应该从以下4个方面进行验证,即(一致性)、(完整性)、(现实性)和(有效性)。

37、大型软件的测试应该分阶段地进行,通常至少分为(单元测试)、(集成测试)和(验收测试)等3个基本阶段。

38、软件成分重用可划分成以下3个级别即(代码重用)、(设计成果重用)、和(分析结果重用)重用。

三、判断题:

1、传统方法学强调自顶向下顺序地完成软件开发的各阶段任务,用面向对象方法学则是一个主动地多次反复迭代的演化过程。(×)

2、软件重用或称为复用仍然是降低软件成本和提高软件质量的唯一合理的方法。(×)

3、在软件设计过程中,对于交互式系统来说,人机界面设计和数据设计、体系结构设计及过程设计一样重要。考虑到现在人机界面在系统中所占比例越来越大的现实,可以将人机界面设计放到软件的编码实现阶段同时考虑,即由程序员基于过程算法完成编码实现的同时,同时按照软件规格说明书和业务逻辑要求实现人机界面,这样就降低了软件的开发代价。(×)

4、即使采用了形式化方法,软件重用仍然是降低软件成本和提高软件质量的唯一合理的方法。(×)

5、模块独立是良好软件设计的关键,而维护又是决定软件质量的关键环节。(×)

6、软件测试的目的是“建设性”的,即为了竭力证明已经建造好的软件系统的正确性和适用性。(×)

7、软件质量是软件工程目标之一,保证模块独立是良好软件设计的关键,而维护又是决定软件质量的关键环节。(×)

8、软件测试一般包括黑盒测试和白盒测试两种方法,测试目的是为了竭力证明已经建造好的软件系统的正确性和适用性。(×)

9、可以用形式化方法证明软件的需求和设计的正确性和合理性,因此,软件重用并不是降低软件成本和提高软件质量的合理方法之一。如果为了降低软件的测试成本和改正错误代价等,可以不用对软件进行测试,也可以保证软件的质量和降低开发成本等软件工程的目标。(×)

10、形式化方法有许多优点,因此在实际软件工作中应该依赖形式化方法来保证开发出的软件绝对正确和降低由于设计缺陷产生的维护代价。(×)

11、开发同一个软件(即LOC固定或功能点)的时候,如果把项目持续时间延长一些,则可降低完成项目所需要的工作量,更加完善了软件的设计工作,提高软件编码的效率。(×)

12、程序员知识、软件可移植性要求、软件应用领域和工程规模及系统用户的要求等是在软件开发中选择程序设计语言的主要实用标准。(√)

13、详细设计阶段的任务还不是具体地编写程序,而是要设计出程序的“蓝图”,以后程序员根据这个蓝图编写实际的代码。(√)

14、在可行性研究过程中只需要找出几种技术方案就可以了,等到需求分析的时候再去考虑成本效益问题。(×)

15、在软件开发中选择程序设计语言的主要实用标准包括程序员知识、软件可移植性要求、软件应用领域和工程规模及系统用户的要求等。(√)

16、采用形式化方法进行软件系统的建模、分析与设计有许多其它方法不可替代的优点,因此在实际软件工作中应该依赖形式化方法来保证开发出的软件绝对正确,并降低由于设计缺陷产生的维护代价。(×)

17、请根据你所学的软件工程原理和常识,判断下述说法是否正确:开发同一个软件(即LOC固定或功能点)的时候,如果把项目持续时间延长一些,则可降低完成项目所需要的工作量,更加完善了软件的设计工作,提高软件编码的效率。(×)18、必须用评审、测试等其他方法来验证软件正确性,因为无法用形式化方法证明从非形式化需求到形式化规格说明转换是正确的。(√)

19、在软件系统开发中,选择程序设计语言的主要实用标准是依据程序员的知识。(×)

20、通过较长的开发时间可以对复杂问题和软件系统的能够进行深入的分析,因此开发同一个软件(即LOC固定或功能点相同)的时候,如果把项目持续时间延长一些,则可降低完成项目所需要的工作量。(×)

21、无法用形式化方法证明从非形式化需求到形式化规格说明转换是正确的。所以必须用评审、测试等其他方法来验证软件正确性。(√)

22、人机界面是软件开发后期完善的工作内容,无需在设计阶段考虑人机界面问题。(×)

23、判定覆盖必然满足语句覆盖。(√)

24、代码审查方法没有计算机测试方法好。(×)

25、不同程序设计语言在程序的效率上的差异不大。(×)

26、用穷举测试是较现实的测试方法。(×)

四、简答题

1、软件工程包括哪7条基本原理?(7分)

(1)、用分阶段的生命周期计划严格管理

(2)、坚持进行阶段评审

(3)、实行严格的产品控制

(4)、采用现代程序设计技术

(5)、结果应能清楚地审查

(6)、开发小组的人员应该少而精

(7)、承认不断改进软件工作实践的必要性

2、简要说明软件生命周期包括哪三个时期及其任务是什么?各个时期包括哪些阶段活动?简要说明传统瀑布模型软件开发有

哪些特点?(14分)

软件生命周期由软件定义、软件开发和运行维护(软件维护)三个时期组成,每个时期又进一步划分成若干个阶段。

软件定义时期通常进一步划分成3个阶段,即问题定义、可行性研究和需求分析。

开发时期由系统设计和系统实现两个阶段即总体设计、详细设计、编码和单元测试和综合测试4个阶段组成。

维护时期不再进一步划分阶段,但是每一次维护活动本质上都是一次压缩和简化了的定义和开发过程。

特点:阶段间具有顺序性和依赖性、推迟实现的观点、质量保证的观点

3、简述用于需求分析的结构化分析方法所遵守的4个准则?并说明系统在确定功能需求时对软件系统有那些综合要求?

四个准则包括:

(1)、必须理解并描述问题的信息域,根据这条准则应该建立数据模型;

(2)、必须定义软件应完成的功能,这条准则要求建立功能模型;

(3)、必须描述作为外部事件结果的软件行为,这条准则要求建立行为模型;

(4)、必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。

八个综合要求:

(1)功能需求

(2)性能需求

(3)可靠性和可用性需求

(4)出错处理需求

(5)接口需求

(6)约束

(7)逆向需求

(8)将来可能提出的要求

4、请简述可行性研究的过程步骤有哪些?(8分)

(1)、复查系统规模和目标

(2)、研究目前正在使用的系统

(3)、导出新系统的高层逻辑模型

(4)、进一步定义问题

(5)、导出和评价供选择的解法

(6)、推荐行动方针

(7)、草拟开发计划

(8)、书写文档提交审查

5、总体设计过程包括哪2个阶段(请简述总体设计过程的阶段划分及其任务)?说明典型的总体设计过程包括的9个步骤。

总体设计过程包括:

(1)、系统设计阶段:确定系统具体的实现方案;

(2)、结构设计阶段:确定软件结构。

典型的总体设计过程包括9个步骤:

(1)、设想供选择的方案

(2)、选取合理的方案

(3)、推荐最佳方案

(4)、功能分解

(5)、设计软件结构

(6)、设计数据库

(7)、制定测试计划

(8)、书写文档

(9)、审查和复审

6、简述软件调试的3种途径?(3分)

(1)蛮干法

(2)回溯法

(3)原因排除法

7、黑盒测试力图发现哪些类型的软件错误?(5分)

黑盒测试力图发现如下错误:

着重测试软件功能。与白盒测试互补的测试方法,很可能发现白盒测试不易发现的其它类型的错误。

1、功能不正确或遗漏了功能

2、界面错误

3、数据结构错误或外部数据库访问错误

4、性能错误

5、初始化和终止错误

8、为了更好的发挥形式化方法的长处,我们在实际应用中需要注意哪些形式化方法的准则?(10分)

1、应该选用适当的表示方法

2、应该形式化,但不要过分形式化

3、应该估算成本

4、应该有形式化方法顾问随时提供咨询

5、不应该放弃传统的开发方法

6、应该建立详尽的文档

7、不应该放弃质量标准

8、不应该盲目依赖形式化方法

9、应该测试、测试再测试

10、应该重用。

9、请说明软件重用的概念并简单说明其3个层次的内容。(5分)(什么叫软件重用(或称软件再用、软件复用)?广义地说,

软件重用可分为哪3个层次。)

软件重用又叫再用或复用,是指同一事物不作修改或稍加改动就多次重复使用。

广义地说,软件重用可分为以下3个层次:

1、知识重复:如软件工程知识的重用

2、方法和标准重用:如面向对象方法或软件开发规范重用

3、软件成分重用:代码重用、设计成果重用和分析结果重用。

10、你认为软件测试过程中应该遵守哪些基本准则?什么叫测试方案?请说明黑盒测试技术力图发现哪些类型的错误?(15分)

测试方案包括具体的测试目的,应该输入的测试数据和预期的结果。

测试的基本准则有:

1、所有测试都应该能追溯到用户需求

2、应该远在测试开始之前就制定出测试计划

3、把Pareto原理应用到软件测试中

4、应该从“小规模”测试开始,并逐步进行“大规模”测试

5、穷举测试是不可能的

6、为了达到最佳的测试效果,应该由独立的的第三方从事测试工作

黑盒测试力图发现如下错误:

1、功能不正确或遗漏了功能

2、界面错误

3、数据结构错误或外部数据库访问错误

4、性能错误

5、初始化和终止错误

11、简述面向对象方法学的出发点和基本原则?(5分)

尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间与实现解法的解空间在结构上尽可能一致。

12、简述决定软件可维护性的五个因素?(5分)

a)可理解性

b)可测试性

c)可修改性

分析

3 起点设计

4

文档

2

终点

编码

4

测试计划2 测试

数据

2

测试

产品

4

测试

软件

6

d)可移植性

e)可重用性

五、软件工程管理综合应用(本题共10分)

在软件工程管理实践中,一般用工程网络图(PERT)技术来制定软件的进度计划。下图为大学生四年人生规划管理系统软件项目的工程网络图,圆框中的数字代表某项目活动所需要的月数即

持续时间。

(1)试分析该工程网络图并用粗箭头在下图标出关键路径。

(2)完成项目的最短时间即软件开发周期是多少?

答:完成项目的最短时间为15个月

(3)由于用户单位即营口市公共事业局根据管理和实际业务情况,要求该项目要提前上线,开发单位综合考虑,把设计时间从4个月缩短为3个月,测试软件时间缩短为1个月,则项目开发最短时间变为多少?

答:项目开发最短时间变为14个月

(4)由于开发项目团队以软件学院学生为主,由于期末考试和毕业实习和设计等原因,本项目在执行过程中已经延期,项目决策者决定向该项目增加大量开发人员期望快速按照时完成工期,此种做法是否正确?为什么?

答:不对,因为人员少而精和向一个已经延期的项目增加人员,反而更延期。

六、软件工程综合应用(本题共15分)

阅读下列说明和图,回答问题1至问题4,将答案填入对应栏中。

【说明】某学校欲开发图书管理系统,以记录图书馆所藏图书及其借出和归还情况,提供给借阅者借阅图书功能,提供给图书馆管理员管理和定期更新图书表功能。主要功能的具体描述如下:

(1)处理借阅。借阅者要借阅图书时,系统必须对其身份(借阅者ID)进行检查,通过与教务处维护的学生数据库、人事处维护的职工数据库中的数据进行对比,以验证借阅者ID是否合法。若合法,则检查借阅者在逾期未还图书表中是否有逾期未还图书,以及罚金表中的罚金是否超过限额。如果没有逾期未还图书并且罚金未超过限额,则允许借阅图书,更新图书表,并将借阅的图书存入借出图书表。借阅者归还所借图书时,先由图书管理员检查图书是否缺失或损坏,若是,则对借阅者处以相应罚金并存入罚金表;然后,检查所还图书是否逾期,若是,执行:“处理逾期”操作;最后,更新图书表,删除借出图书表中的相应记录。

(2)维护图书。图书馆管理员查询图书信息;在新进图书时录入图书信息,存入图书表;在图书丢失或损坏严重时,从图书表中删除该图书记录。

(3)处理逾期。系统在每周一统计逾期未还图书,逾期未还的图书按规则计算罚金,并计入罚金表,并给有逾期未还图书的借阅者发送提醒信息。借阅者在借阅和归还图书时,若罚金超过限额,管理员收取罚金,并更新罚金表中的罚金额度。

现采用结构化方法对该图书管理系统进行分析和设计,获得如果1-1所示的顶层数据流图和图1-2所示的0层数据流图。【问题1】(4分)

使用说明中的词语,给出图1-1中的实体E1——E4的名称。

答:借阅者、管理员、教务处、人事处

【问题2】(4分)

使用说明中的词语,给出图1-2中的数据存储D1——D4的名称。

答:图书表、借出图书表、逾期记录表、罚金表

【问题3】(5分)

在DFD建模时,需要对有些复杂加工(处理)进行进一步精化,绘制下层数据流图。针对图1-2中的加工“处理借阅”,在1层数据流图中应分解为那些加工?(使用说明中的术语)

答:验证借阅者、检查逾期、检查罚金、借阅图书、处罚

【问题4】(2分)

软件开发项目的工程网络图

说明【问题3】中绘制1层数据流图时要注意的问题。

答:合理编号、注意父图与子图的平衡、局部文件、分解的程度

图1-2 0层数据流图

五、软件工程综合应用(本题共25分)

阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。

【说明】

某医院拟开发一套住院病人信息管理系统,以方便对住院病人、医生、护士和手术等信息进行管理。

【需求分析】

系统登记每个病人的住院信息,包括:病案号、病人的姓名、性别、地址、身份证号、电话号码、入院时间及病床等信息,每个病床有唯一所属的病区及病房,如表5-1所示。其中病案号唯一标识病人本次住院的信息。

在一个病人的一次住院期间,由一名医生对该病人的病情进行诊断,并填写一份诊断书,如表5-2所示。对于需要进行一次或多次手术的病人,系统记录手术名称、手术室、手术日期、手术时间、主刀医生及多名协助医生,每名医生在手术中的职责不同,如表5-3所示,其中手术室包含手术室号、楼层、地点和类型等信息。

表5-2 诊断书

护士分为两类:病床护士和手术室护士。每个病床护士负责护理一个病区内的所有病人,每个病区由多名护士负责护理。手术室护士负责手术室的护理工作。每个手术室护士负责多个手术室,每个手术室由多名护士负责,每个护士在手术室中有不同的职责,并由系统记录其职责。

【概念模型设计】

根据需求阶段收集的信息,设计的实体联系图(不完整),如图5-1所示。

图5-1 实体联系图

【逻辑结构设计】

根据概念模型设计阶段完成的实体联系图,得出如下关系模型(不完整): 病床(病床号,病房,病房类型,所属病区) 护士(护士编号,姓名,类型,性别,级别) 病床护士( (1) ) 手术室(手术室号,楼层,地点,类型)

手术室护士( (2) )

病人( (3) ,姓名,性别,地址,身份证号,电话号码,入院时间 ) 医生(医生编号,姓名,性别,职称,所属科室)

诊断书( (4) ,诊断,诊断时间) 手术安排(病案号,手术室号,手术时间,手术名称)

手术医生安排( (5) ,医生职责) 【问题1】(6分)

补充图5-1中的联系和联系类型。

(1)病人与病床的联系是1对1的, (2)病人与医生的联系是1对1的, (3)护士与手术室的联系是多对多的。 【问题2】(10分)

根据图5-1,将逻辑结构设计阶段生成的关系模型中的空(1)~(5)补充完整,并用下划线指出主键。

(1)护士编号 (2)护士编号 (3)病案号 (4)病案号 (5)手术名称

【问题3】(9分)

如果系统还需要记录医生给病人的用药情况,即记录医生给病人所开处方中药品的名称、用量、价格、药品的生产厂家等信息。请根据该要求,对图5-1进行修改,画出补充后的实体、实体间联系和联系的类型。

软件工程考试试卷答案

一.选择题 1、TURBO C是(D)软件· A、系统软件 B、人工智能 C、事务软件 D、应用软件. 2、计算机辅助软件工程,简称(D) A、SA B、SD C、SC D、CASE' 3、在数据流图中,O(椭圆)代表(C) A、源点 B、终点 C、处理 D、模块、 4、模块内聚度越高,说明模块内各成分彼此结合的程度越(B) A、松散 B、紧密 C、无法判断 D、相等、 5、软件维护是软件生命周期中的固有阶段,一般认为,各种不同的软件维护中以(C)维护所占维护量最小。 A、纠错性维护 B、代码维护 C、预防性维护 D、文档维护、 6、软件需求分析是保证软件质量的重要步骤,它的实施应该是在(C) A、编码阶段 B、软件开发全过程 C、软件定义阶段 D、软件设计阶段. 7、软件测试方法,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D) A、结构合理性 B、软件外部功能 C、程序正确性 D、程序内部逻辑. 8、软件的结构化设计(SD)方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要(D) A、软件结构 B、软件过程 C、软件模型 D、软件模块、 9、软件文档不仅是软件开发各阶段的重要依据,而且与影响软件的(B) A、可理解性 B、可维护性 C、可扩展性 D、可移植性. 10、在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于(B) A、维护时期 B、计划时期 C、运行时期 D、开发时期, 11、系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括(A) A. 软件环境可行性、技术可行性、经济可行性、社会可行性 B. 经济可行性、技术可行性、操作可行性 C. 经济可行性、社会可行性、系统可行性 D. 经济可行性、实用性、社会可行性 12、(C),则说明模块的独立性越强 A、耦合越强 B、扇入数越高 C、耦合越弱 D、扇入数越低 13、面向数据结构的设计方法(JACKSON方法)是进行(B )的形式化的方法 A.系统设计B、详细设计C、软件设计D、编码 14、模块内聚度越高,说明模块内各成分彼此结合的程度越(B)。 A、松散 B、紧密 C、无法判断 D、相等. 15、软件测试的目的是(C) A.评价软件的质量 B.发现软件的错误. C.找出软件的所有错误 D.证明软件是正确的.

软件工程试题与答案 (6)

第一章软件工程概述 一. 填空题 1. 软件的发展过程 , , , . 2. 基于软件的工作方式,软件可以划分为 , , , . 3. 在软件发展的第四阶段计算机体系结构迅速地从环境转变为环境 . 4. 在计算机系统中,软件是 , 而硬件是 . 5. 软件危机是在软件发展第阶段末期,随着第代计算机和诞而产生。 6. 文档一般可分为面向的文档,面向的文档,面向的文档和面向的文档。 7. 软件生存期若分为三个大的阶段,, . 8. 它是经过阶段评审后的软件配置成分(各个阶段产生的文档或程序代码)。 9. 在软件的生存周期开发阶段要经三个步骤 , , 。 10. 瀑布模型是以文档为驱动、适合于的软件项目的模型。 11. 螺旋模型将开发过程分为几个螺旋周期,在每个螺旋周期内为,, 和四个步骤。 12. 软件开发的螺旋模型综合了瀑布模型和演化模型的优点,还增加了____。采用螺旋模型时,软件开发沿着螺线自内向外旋转,每转一圈都要对____ 进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个____ 。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束。 13. 软件开发模型 , , , , , . 14. 软件工程面临的问题有 , , , . 15. 面向对象方法学把客观世界的事物或实体都看成对象,把对象作为分析设计的元素,把所有对象都划分成对象类,类可以派生和 . 16.基于软件的功能划分可以把软件划分为 , ,和。 17.计算机系统发展的早期所形成的一系列错误概念和做法,已经严重地阻碍了计算机软件的开发,甚至有的根本无法维护,只能提前报废,造成大量人力、物力的浪费,从而导致软件危机。为了研究解决的方法,计算机科学技术领域中的一门新兴的学科逐步形成了,这就是。18.软件工程是指导的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,这就是软件工程。 19.为了开发出低成本高质量的软件产品,软件工程学应遵守以下基本原则: , ,和 , 。 20.原型模型是从需求分析开始。软件开发者和用户在一起定义,说明需求,并规划出定义的区域。然后快速设计软件中对用户/客户可见部分的表示。快速设计导致了原形的建造,原形由用户/客户评估,并进一步求精。

软件工程试卷A

安徽农业大学经济技术学院2011―2012学年第二学期 《软件工程》试卷(A 卷) 考试形式: 闭卷笔试,2小时 适用专业: 计算机科学与技术 (注:分大类或全校等) 一、单项选择题(每小题1分,共计20分) 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、需求分析阶段的任务是确定( ) 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、软件需求是度量软件质量的基础,不符合需求的软件就不具备() A、软件的特点 B、质量 C、软件产品 D、功能 14、软件特性中,程序能够满足规格说明和完成用户业务目标的程度,称作 () A、正确性 B、移植性 C、可靠性 D、完 整性 15、为使得开发人员对软件产品的各个阶段工作都进行周密的思考,从而减 少返工,所以()的编制是很重要的。 A、需求说明 B、概要说明 C、软件文档 D、测试 计划 16、汽车有一个发动机,因而汽车与发动机之间的关系是()关系。 A、一般与特殊 B、整体与部分 C、分类关系 D、is a 关 系 17、在有多重继承的类层次结构图中,它的类层次结构图是()层次结 构 A、树型 B、网状性 C、星型 D、 环型 18、软件部件的内部实现与外部可访问性的分离,是指软件的()。 A、继承性 B、共享性 C、封装性 D、抽 象性 19、在结构图中,不是其主要成分的是()。 A、模块 B、模块间传递的数据 C、模块内部数据 D、模块的控制 关系 20、结构化设计方法在软件开发中,用于()。 A、测试用例设计 B、软件概要设计 C、程序设计 D、软件详细 设计 二、名词解释(每小题2分,共计20分) 21、软件质量 与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体,是所有描述计算机软件优秀程度 的特性的组合。

软件工程期末试题(含答案)解析

一、填空题(每空1分,共25分) 1.软件生存周期一般可以划分为,问题定义、可行性研究、需求分析、设计、编码、测试和运行 和维护。 2.基于软件的功能划分,软件可以划分成___系统软件_、支撑软件、应用软件__三种。 3.可行性研究,应从经济可行性、技术可行性、运行可行性、法律可行性和开放方 案可行性等方面研究。 4.系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子 形式描绘系统里面的每个部件 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、加工、数据流和数据存储文 件。 6.结构化分析方法是面向_数据流_进行需求分析的方法。结构化分析方法使用_数据流图DFD_与_ 数据字典_来描述。 7.继承性是自动地共享类、子类和对象中的方法和数据的机制。 8.软件详细设计工具可分为3类,即_图示工具_、_设计语言_和_表格工具_。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施:_审查__、复查和管理复审、___ 测试_。 10.大型软件测试包括单元测试、集成测试、确认测试和系统测试四个步骤。 二、单项选择题(每小题2分,共20分) 1.软件设计中划分模块的一个准则是(C )。 A、低内聚低耦合 B.低内聚高耦合C.高内聚低耦合 D.高内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向( C )的软件设计方法。 A、对象 B.数据流 C.数据结构 D.控制结构 3.试判断下列叙述中,哪个(些)是正确的( C )。 a、软件系统中所有的信息流都可以认为是事务流 b、软件系统中所有的信息流都可以认为是变换流 c、事务分析和变换分析的设计步骤是基本相似的 A、a B、b C、c D、b和c 4.( A )是用户和设计交换最频繁的方法。 A、原型化方法 B、瀑布模型方法 C. 螺旋模型方法D、构件组装模型 5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证 是( C )。 A、硬件环境 B、软件开发的环境 C.软件开发工具和软件开发的环境 D、开发人员的素质 6.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言 ( D )。 A、PASCAL B、 VISUAL BASIC C. C++ D、汇编语言 7.软件测试的目的是?( D ) A、证明软件的正确性 B.找出软件系统中存在的所有错误 C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误 8.使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。 A、程序的内部逻辑 B、程序的复杂程度 C、该软件的编辑人员 D、程序的功能 9.软件维护工作的最主要部分是( C )。 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。用户和软件人员的领导 10.下列叙述中,_______不属于数据字典的作用。 A、作为编码阶段的描述工具 B、为用户与开发人员之间统一认识 C、作为概要设计的依据 D、为需求分析阶段定义各类条目 11.使用结构化分析方法时,采用的基本手段是____。 A.分解和抽象 B.分解和综合C.归纳与推导D.试探与回溯12.结构化系统分析主要是通过____进行分析的。 A.算法分解B.控制结构分解 C.数据结构分解D.处理功能分解13.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的____。 总貌B.细节C.抽象D.软件的作者 13.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于____。 A.变换型 B 事务型 14.需求分析说明书不能作为______。

软件工程试卷

一、名词解释(15分) 1.软件工程 2.结构化方法 3.软件可靠性 4.对象与类 5.变更控制 二、填空(20分) 1.增量模型适合于________不明确、设计方案有一定风险的软件项目。 2.结构化分析方法的分析策略是__________。 3.可行性研究实质上是要在较高层次上以较抽象的方式进行___________的过程。 4.衡量模块独立性的两个定性标准是_________。 5.Jackson方法是一种面向______________的设计方法。 6.软件集成测试的方法主要有两种,它们是__________。 7.维护阶段是软件生存周期中花费精力和费用_____________的阶段。 8.继承性是子类自动共享其父类的______________机制。 9.在面向对象方法中,人们常用状态图描述类中对象的___________。 10.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为_________软件。 三、选择(20分) 1.需求分析中,开发人员要从用户那里解决的最重要的问题是( )。 A、要让软件做什么 B、要给该软件提供哪些信息 C、要求软件工作效率怎样 D、要让该软件具有何种结构 2.DFD中的每个加工至少有( )。

A、一个输入流或一个输出流 B、一个输入流和一个输出流 C、一个输入流 D、一个输出流 3.详细设计与概要设计衔接的图形工具是( )。 A、DFD图 B、SC图 C、PAD图 D、程序流程图 4.下列几种类型中,耦合性最弱的是( )。 A、内容型 B、控制型 C、公共型 D、数据型 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.过程

软件工程期末试卷(A卷)

《软件工程》期末试卷(A卷) 一.单项选择题(每小题1分,共22分) 1.对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合B.隐藏C.封装D.抽象 2.软件生命周期中所花费用最多的阶段是( D )。 A.详细设计B.软件编码C.软件测试D.软件维护 3.需求分析中开发人员要从用户那里了解( A )。 A.软件做什么B.用户使用界面 C.输入的信息D.软件的规模 4.测试的关键问题是( D )。 A.如何组织对软件的评审B.如何验证程序的正确性 C.如何采用综合策略D.如何选择测试用例 5.( D )是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。 A.软件过程B.软件测试 C.软件生命周期D.软件工程方法学 6.( A )意味着一个操作在不同的类中可以有不同的实现方式。 A.多态性B.多继承C.类的可复用D.信息隐藏 7.单元测试的测试用例主要根据( D )的结果来设计。 A.需求分析B.源程序C.概要设计D.详细设计 8.随着软硬件环境变化而修改软件的过程是( B )。 A.校正性维护B.适应性维护 C.完善性维护D.预防性维护 9.在白盒测试技术测试用例的设计中,( A )是最弱的覆盖标准。 A.语句覆盖B.路径覆盖 C.条件组合覆盖D.判定覆盖 10.结构化程序设计的一种基本方法是( C )。 A.筛选法B.迭代法 C.逐步求精法D.递归法11.不适合作为科学工程计算的程序设计语言是( D )。 A.Pascal B.C C.Fortran D.Prolog 12.只有单重继承的类层次结构是( C )层次结构。 A.网状型B.星型 C.树型D.环型 13.面向对象的开发方法中,( C )将是面向对象技术领域内占主导地位的标准建模语言。 A.Booch方法B.Coad方法C.UML语言D.OMT方法 14.瀑布模型本质上是一种( A )。 A.线性顺序模型B.顺序迭代模型 C.线性迭代模型D.及早见产品模型 15.软件维护产生的副作用,是指( C )。 A.开发时的错误B.隐含的错误 C.因修改软件而造成的错误D.运行时误操作 16.软件详细设计的主要任务是确定每个模块的( A )。 A.算法和使用的数据结构B.外部接口 C.功能D.编程 17.软件结构图的形态特征能反映程序重用率的是( C )。 A.深度B.宽度C.扇入D.扇出 18.为了提高模块的独立性,模块内部最好是( C )。 A.逻辑内聚B.时间内聚 C.功能内聚D.通信内聚 19.软件结构图中,模块框之间若有直线连接,表示它们之间存在( A )。 A.调用关系B.组成关系 C.链接关系D.顺序执行关系 20.“软件危机”是指( C )。 A.计算机病毒的出现 B.利用计算机进行经济犯罪活动 C.软件开发和维护中出现的一系列问题 D.人们过分迷恋计算机系统 21.具有风险分析的软件生命周期模型是( C )。 A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 22.数据流图(DFD)中的每个数据处理至少需要( D )。 A.一个输入数据流 B.一个输出数据流 C.一个输入或者输出数据流 D.一个输入数据流和一个输出流

《软件工程》期末考试及答案

《软件工程》 期末考试试卷 考生注意:1.本试卷共有五道大题,满分100分。 2.考试时间90分钟。 3.卷面整洁,字迹工整。 4.填写内容不得超出密封线。 一、名词解释题(每小题3分,共15分) 1.软件生存周期模型 2.数据字典DD

3.内聚性 4.JSP方法 5.多态性 二、填空题(每空2分,共20分) 1.在软件开发过程中要产生大量的信息,要进行大量的修改,能协调软件开发,并使混乱减到最低程度。

2.规定功能的软件,在一定程度上对自身错误的作用具有屏蔽能力,则称此软件具有的软件。 3.McCall提出的软件质量模型包括个软件质量特性。 4.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、、可使用性和效率。 5. 为了便于对照检查,测试用例应由输入数据和预期的两部分组成。 6. 程序设计语言的心理特性主要表现在、简洁性、传统性、局部性和顺序性。 7. 软件结构是以为基础而组成的一种控制层次结构。 8. 使用类创建对象的过程实际上是类的过程。 9. 结构化语言是介于自然语言和之间的一种半形式语言。 10.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P= 。 三、简答题(每小题5分,共20分)

2.以G.J.Myers的观点,简述对软件测试的目的。 3.就程序设计语言的工程特性而言,对程序编码有哪些要求? 4.模块的内聚性包括哪些类型?

四、理论应用题(每小题15分,共30分) PDL语言描述在数组A(1)~A(10)中找最大数的算法。 2.根据下列条件使用等价类划分法设计测试用例。某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065。

软件工程试题及答案

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、软件重用的效益是什么?

软件工程期末试题(部分答案)

选择题 . 开发软件的高成本和产品的低质量之间有着尖锐的矛盾,这称作()。.软件投机.软件危机.软件工程.软件产生 . 软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是()。 .引入新技术提高空间利用率.用较少的投资获得高质量的软件.缩短研制周期扩大软件功能.硬软件结合使系统面向应用 . 瀑布模型把软件生存周期划分为软件定义、软件开发和()三个阶段,而每一阶段又可细分为若干个更小的阶段。 .详细设计.可行性分析.运行及维护.测试与排错 . 一个软件项目是否进行开发的结论是在()文档中作出的。 .软件计划.可行性报告.测试报告.需求分析说明书 . 常用的成本估计技术不包括()。 .任务分解.自动估计成本.代码行.投资回收估算 . 需求分析说明书不能作为()。 .可行性研究的依据.用户和开发人员之间的合同.系统概要设计的依据.软件验收测试的依据 . 需求分析需要确定的系统基本需求不包括()。 .开发语言.功能.性能.接口 . 状态图中定义的状态不包括()。 .初态.终态.中间状态.事件 . 验证软件正确性不包括()。 .一致性.易操作性.完整性.有效性 . 软件的()设计主要任务是建立软件系统的总体结构。 .总体.抽象.逻辑.规划 . 下面()不是模块化设计的目的。 .可采用结构化设计方法.降低复杂度 .有利于信息隐蔽.描述系统的功能与性能 . 模块内部的算法设计在结构化方法的()阶段进行。 .系统分析.概要设计.详细设计.可行性分析 . ()先于任何技术活动之前开始,贯穿于软件的整个生命周期中。 .项目计划.风险评估.软件测试.软件项目管理 . 实现包括编码和()两个阶段。 .选择开发工具.测试.数据库设计.程序复杂度计算

软件工程试题与答案

《软件工程模拟试题及参考答案》(一) 一、单向选择题(四选一、每小题3分,共18分) 1、面向对象(Object Oriented)方法是将现实世界的事物以对象的方式(B )到计算机世界的方法。 对应 映射 反映 反射 2、盒图也称为(D)或Chapin图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。 流程图 框图 判定表 N-S图 3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。 程序 数据 逻辑 物理 4、人机界面的风格大致经过了(B)代的演变。

三 四 五 六 5、以下不属于白盒测试技术的是(D) 逻辑覆盖 基本路径测试 循环覆盖测试 等价类划分 6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。 纠错性维护 适应性维护 改善性维护 预防性维护 二、填空题(每空2分,共18分) 1.文档—一种数据媒体和其上所记录的(数据)。 2.机器语言、汇编语言:依赖于机器,面向(机器) 3.软件有效性,指软件系统的时间和(空间)效率。 4.软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。 5.软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。 6.为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。

7.一个软件的深度是指其控制的(层数)。 8.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终 可运行的代码的过程叫(编码)过程。 9.软件维护是软件生命周期的(最后)一个阶段。 三、判断题(每小题2分,共24分,错误打X、正确打√) 1.缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之 一。(√) 2.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。(X) 3.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第 一手资料,并从中提取出有价值的需求。(√) 4.快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计 一些复杂的算法等场合。(√) 5.流程图也称为程序框图是最常用的一种表示法。(√) 6.面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、选择和重复三 种基本形式表示数据等步骤。(√) 7.理想的人机界面应针对具有典型个性的特定的一类用户设计。(√) 8.数据输入的一般准则中包括尽量增加用户输入的动作。(X) 9.用穷举测试是较现实的测试方法。(X) 四、简答题(每小题4分,共20分)

软件工程期末试题及答案

软件工程期末试题及答案 选择题 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.软件测试用例主要由输入数据和()两部分组成。 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)编码

软件工程试题和答案

一、选择 1、在软件开发的各种资源中,(B)是最重要的资源。 A开发工具B方法C硬件环境D人员 2、软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。 A固有的B人为的C可消除的D不可降低的 3、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A )系统。 A需求不确定的B需求确定的C管理信息D决策支持 4、单元测试的测试用例主要根据( D )的结果来设计。 A需求分析B源程序C概要设计D详细设计 5、(A )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A软件过程B软件工具C软件生存周质量保证D软件工程 6、(A )意味着一个操作在不同的类中可以有不同的实现方式。 A多态性B类的复用C封装 7、软件测试计划开始于需求分析阶段,完成于(D )阶段。 A需求分析B软件设计C软件实现D软件测试 8、在软件生存周期的瀑布模型中一般包括计划、(C )、设计、编码、测试、维护等阶段。 A可行性分析B需求采集C需求分析D问题定义 9. 软件需求分析阶段的测试手段一般采用( C )。 A总结B阶段性报告C需求分析评审D不测试 10. (C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。 A多态性B继承C封装D消息 11. 软件测试是为了(B )而执行程序的过程。

A纠正错误B发现错误C避免错误D证明正确 12. 在结构化分析方法中,(C )表达系统内部数据运动的图形化技术。 A数据字典B实体关系图C数据流图D状态转换图 13. 软件工程的基本要素包括方法、工具和( A )。 A过程B软件系统C硬件环境D人员 14. TURBO PASCAL是(A)软件。 A、系统软件 B、人工智能 C、事务软件 D、应用软件 15、选择结构的复杂性比顺序结构的复杂性要(B)。 A、小 B、大 C、相等 D、无法比较 16、模块内聚度越高,说明模块内各成分彼此结合的程度越(B)。 A、松散 B、紧密 C、无法判断 D、相等 17、软件维护是软件生命周期中的固有阶段,一般认为,各种不同的软件维护中以()维护所占的维护量最小(C)。 A、纠错性维护 B、代码维护 C、预防性维护 D、文档维护 18、在下述哪一种测试中,测试人员必须接触到源程序(C)。 Ⅰ功能测试Ⅱ结构测试 A、均不需 B、只有Ⅰ C、只有Ⅱ D、Ⅰ和Ⅱ 19、软件设计阶段的输出主要是(D)。 A、程序 B、模块 C、伪代码 D、设计规格说明书 20、软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D)。 A、结构合理性 B、软件外部功能 C、程序正确性 D、程序内部逻辑 21、下面哪几个阶段是软件的设计阶段(D)。 A、编码 B、可行性研究 C、测试 D、维护 E、需求分析 22、数据字典是用来定义(D )中的各个成分的具体含义的。 A.流程图B.功能结构图C.系统结构图D.数据流图

软件工程试题及答案

软件工程 一、填空题(每题2分,共20分) 1、系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种 元素之间的( )情况。 2、成本效益分析的目的是从( )角度评价开发一个项目是否可行。 3、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和( ) 。 4、在JSP方法中解决结构冲突的具体办法是( )。 5、详细设计的任务是确定每个模块的内部特性,即模块的算法、( )。 6、所有软件维护申请报告要按规定方式提出,该报告也称( )报告。 7、独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路 径是至少包含有一条( )的边的路径。 8、设计任何一个人机界面,一般必须考虑()四个方面。 9、在软件测试中,已知产品内部工作过程,通过测试检验产品内部动作是否按照产品规格说明 的规定正常进行的方法称为()测试法。 10、()是对软件结构中模快间关联程度的一种度量。 三、判断题(每题2分,共20分) 1. 缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之一。 () 2. 一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。() 3. 在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手 资料,并从中提取出有价值的需求。() 4. 快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些 复杂的算法等场合。() 5. 流程图也称为程序框图是最常用的一种表示法。 6. 面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、选择和重复三种基 本形式表示数据等步骤。() 7. 理想的人机界面应针对具有典型个性的特定的一类用户设计。() 8. 数据输入的一般准则中包括尽量增加用户输入的动作。() 9. 用穷举测试是较现实的测试方法。() 10、在软件维护过程中改善性维护是为适应环境的变化而修改软件的活动。() 四、论述题(共40分) 1、软件维护是软件生命周期的重要组成,而影响维护的因素较多,除了人员因素、技术因素和 管理因素外,还有程序自身的因素,具体影响因素可归纳为:a) 软件系统的规模;b) 软件系统的年龄;c) 软件系统的结构。 试回答以下问题: 1) 给出上述三项因素的解释,阐述“规模”、“年龄”和“结构”的具体含义。(6分) 2) 扼要分析影响维护工作量的因素,即分析可能增加维护工作量的因素和可能减少维护工作 量的因素。(8分) 3) 简单传述软件可维护性度量的含义。(8分) 2、可行性研究报告的主要内容有哪些?(8分) 3、系统设计的内容是什么?(10分) 五、综合题(20分)某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一 个计算机辅助企业管理系统,其中:

软件工程试卷A

精品文档就在这里 -------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有-------------- -------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------精品 文档--------------------------------------------------------------------- 安徽农业大学经济技术学院2011―2012学年 第二学期 《软件工程》试卷(A 卷) 考试形式: 闭卷笔试,2小时 适用专业: 计算机科学与技术 (注:分大类或全校等) 一、单项选择题(每小题1分,共计20分) 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、需求分析阶段的任务是确定( ) A 、软件开发方法 B 、软件开发工具 C 、软件开发费 D 、软件系统的功能 8、下列文档与维护人员有关的有( ) 学院: 专业班级: 姓名: 学号: 装 订 线

软件工程期末试卷答案全解

软件工程试题一 一.单项选择题 1. 以下不是软件危机的典型表现的是:( D ) 。 A. 对软件开发成本和进度的估计常常很不准确 B. 用户对“已完成的”软件系统不满意的现象经常发生 C. 软件产品的质量往往靠不住 D. 采用面向对象方法开发软件 3. 下列哪个不是软件工程方法学中的要素( C )。 A. 方法 B. 工具 C. 程序 D. 过程 4. 下列模块的独立性的耦合方式中,最好的是( C ) A.公共耦合 B. 控制耦合 C. 数据耦合 D. 内容耦合 5.概要设计中,开发人员要解决的最重要的问题是( D ) 。 A. 要让软件做什么 B. 要给该软件提供哪些信息 C. 要求软件工作效率怎样 D. 要让该软件模块具有何种结构 6. 为了提高模块的独立性,模块内部最好是( C ) 。 A. 逻辑内聚 B. 时间内聚 C. 功能内聚 D. 通信内聚 7. 程序的三种基本控制结构的共同特点是( C ) 。 A. 不能嵌套使用 B. 只能用来写简单程序 C. 只能一个入口和一个出口 D. 已经用硬件实现 8. 以下说法错误的是( ) 。 A A. 面向对象分析与面向对象设计的定义没有明显区别 B. 从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程 C. 在实际的软件开发过程中,面向对象分析与面向对象设计的界限是模糊的 D. 面向对象分析和面向对象设计活动是一个多次反复迭代的过程 9. 软件测试过程中的确认测试主要是为了发现( A ) 阶段的错误。 A. 需求分析 B. 概要设计 C. 详细设计 D. 编码 10. 在面向对象的高层设计体系结构中,( C ) 是用来描述用户一般使用软件习惯的部分 A. 人机交互界面 B. 问题论域 C. 系统交互界面 D. 数据管理 11. 为适应软硬件环境变化而修改软件的过程是( B ) 。 A. 校正性维护 B. 适应性维护 C. 完善性维护 D. 预防性维护 12. 在UML的各类图中,( A )图是描述软件功能的。 A 用例图 B 类图 C 活动图 D 顺序图 13.( D )不属于OO三要素。 A.对象 B. 继承 C.封装 D.多态 14.(C )在ATM机系统中,下列哪个不能在面向对象设计中被定义为类。C A 中央计算机 B 柜台事务 C 拨号 D 营业厅15.在黑盒测试中,作为相关黑盒测试有效补充的测试方法是( B ) 。 A. 等价类划分法 B. 边界值分析法 C. 错误推测法 D. 因果图法二.判断题(本大题共__15__题,每题___1___分,共___15_____分。 1.软件简单的说就是程序和相关的数据及文档。T

广州大学-2018软件工程试卷a及答案

广州大学2017—2018 学年第一学期考试卷 课程软件工程导论考试形式(闭卷,考试) 一、单选题(每小题1分,共25分,答案写在下表中) 1.软件工程方法的提出起源于软件危机,而其目的应该是最终解决软件的(D)问题 A.产生危机 B.质量保证 C.开发效率 D.生产工程化 2.瀑布模型将软件生命周期归纳为3个时期,即计划期、开发期和运行期。下列(D )不属于开发期内的工作。 A.总体设计 B.详细设计 C.程序设计

D.维护 3.结构化方法将软件生命周期分为计划、开发和运行3个时期,下列任务中(B)属于计划时期的任务。 A.需求分析 B.问题定义 C.总体设计 D.编码 4.可行性研究要进行一次(C)需求分析。 A.详细的 B.全面的 C.简化的、压缩的 D.彻底的 5.经济可行性研究的范围包括(C)。 A.资源有效性 B.管理制度 C.效益分析 D.开发风险 6.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。 A.确定 B.行或不行 C.正确 D.无二义 7.产生软件维护的副作用,是指(C )。 A.开发时的错误 B.隐含的错误 C.因修改软件而造成的错误 D.运行时错误操作 8.软件需求分析阶段的工作,可以分为4个方面:需求获取、需求分析、编写需求规格说明书以及(B)。 A.用户 B.需求评审 C.总结 D.都不对

9.软件开发的结构化分析方法,常用的描述软件工程需求的工具是(C) A.业务流程图、处理说明 B.软件流程图、模块说明 C.数据流程图、数据字典 D.系统流程图、程序编码 10.数据流图用于抽象描述一个软件的逻辑模型,数据流图由以写特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A) A.控制流 B.加工 C.数据存储 D.数据流 11.软件开发的结构生命周期法的基本假定是认为软件需求能做到(C) A.严格定义 B.初步定义 C.早期冻结 D.动态改变 软件需求经过分析阶段后,通过软件需求说明书表示出来,后面的开发工作以此为基础进行,即假定软件需求确定后一般不再改变,即“早期冻结”。 12.在结构化方法中,软件功能分解属于软件开发中的(C)阶段 A.详细设计 B.需求分析 C.总体设计 D.编程调试 13.概要设计的结果是提供一份(A) A.模块说明书 B.框图 C.程序 D.数据流图 14.耦合是软件各个模块间连接的一种度量。一组模块都访问同一数据结构应属于(B)方式 A.内容耦合 B.公共耦合 C.控制耦合 D.数据耦合 解释:耦合分为以下几种,按照耦合度由高到低排列是:

相关文档