软件工程(第五版)--习题及答案 下载本文

内容发布更新时间 : 2024/11/16 5:57:43星期一 下面是文章的全部内容请认真阅读。

一、判断题 1、(×)CMM可用于评估软件开发机构的软件开发能力,软件开发机构的CMM级别越低越好。

2、(√)在软件开发过程中,盲目增加人员可能会造成事半功倍的效果。 3、(×)甘特图是项目成本估算的工具之一。 4、(√)IEEE是一个国际标准化组织。

5 、(√)用户手册应从软件工程的需求分析阶段开始编写。 二、选择题

1、软件项目管理是(D)一切活动的管理。

A、需求分析 B、软件设计过程 C、,模块设计 D、软件生存周期

2、在软件工程项目中,不随参与人数增加而使生产率增加的主要问题是(D)。 A、工作阶段的等待 B、产生原型的复杂性

C、参与人员所需的计算机数目 D、参与人员之间的通信困难

3、COCOCO估算模型是(B)模型。

A、模块性成本 B、结构性成本 C、动态单变量 D、动态多变量

4、自底向上估算方法的缺点是估算往往缺少系统级工作量,所以估算(A)。 A、往往偏低 B、往往偏高 C、不太准确 D、较为准确 5、软件管理比其他工程管理更为(B)。

A、容易 B、困难 C、迅速 D、迟缓 6、CMM模型中属于可管理级的特征(D)。

A、工作无序,项目进行过程中经常放弃当初的计划 B、建立了项目级的管理制度 C、建立了企业级的管理制度

D、软件过程中活动的生产率与质量是可度量的 7、由(B)组织制定的标准是国际标准。

A、GJB B、IEEE C、ANSI D、ISO 8、GB/T 8567-2006《计算机软件文档编制规范》是(D)标准。 A、强制性国家 B、推荐性国家 C、强制性行业 D、推荐性行业 9、以下说法错误的是(B)。

A、IEEE是指美国电气与电子工程师协会 B、GB是指中华人民共和国军用标准 GJB C、DOD-STD是指美国国防部标准 D、MIL-S是指美国军用标准

10、测试计划文档应从软件工程的(B)阶段开始编写。 A、可行性研究 B、需求分析 C、软件设计 D、编码 三、简答题

1、为什么要进行软件项目管理?

41

答:软件项目管理的根本目的是为了让软件项目尤其是大型项目的整个软件生存周期都能

在管理者的控制下,以预定的成本按时、保质地完成软件并交付用户使用。

2、软件项目管理的职能包括哪些? 答:软件项目管理的职能包括:

(1)制定计划:规定要完成的任务和要求,安排资源、人员和进度等。

(2)建立组织:建立分工明确的为实施计划的责任制机构,以保证任务的完成。 (3)配备人员:根据任务要求,任用各种层次的技术人员和管理人员。

(4)协调或追踪与指导:跟踪项目的进展情况,协调、指导、鼓励和动员各种人员完成所分配的任务。

(5)控制或检验:对照计划和标准,监督和检验项目实施的情况。

3、程序设计小组的组织形式有哪几种? 答:(1)主程序员制小组。该小组的核心有3个人。主程序员、辅助程序员和程序管理员。

如果大多数开发人员比较缺乏经验,而程序设计过程中又有许多事务性工作,则采取该种组织方法。

(2)民主制程序员小组。在民主制小组中,组内成员之间可以平等地交换意见。适合于研制时间长、开发难度大的项目。

(3)层次式小组

这种组织中,组内人员分为3级。组长负责全组工作,直接领导2~3名高级程序员,每位高级程序员管理若干名程序员。这种组织比较适合于层次结构的课题。

4、软件开发成本估算方法主要有哪几种? 答:常用的成本估算策略有以下4种:

(1)参考已经完成的类似项目,估计待开发项目的工作量和成本。

(2)将大的项目分解成若干个小项目,分别对每个子项目的工作量和成本进行估算,再估算整个项目的工作量和成本。

(3)根据软件生存周期,分别估算出软件开发各阶段的工作量和成本,然后再把这些工作量和成本汇总,估算出整个项目的工作量和成本。

(4)根据实验或历史数据给出软件项目工作量或成本的经验估算公式。 成本估算方法有自顶向下估算法、自底向上估算法和差别估算方法。

5、软件质量的六个要素是什么? 答:软件质量的6个要素是:

(1)功能性:软件所实现的功能满足用户需求的程度。

(2)可靠性:在规定的时间或条件下,软件所维持其性能水平的程度。 (3)易使用性:对于一个软件,用户学习、操作、准备输入和理解输出时所做努力的程度。 (4)效率:在指定的条件下,用软件实现某种功能所需的计算机资源(包括时间)的有效程度 。

(5)可维护性:在一个可运行的软件中,为了满足用户需求、环境改变或软件错误发生时进行相应修改所做的努力的程度。

(6)可移植性:把程序从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。

6、CMM的五个级别各有哪些特征? 答:CMM的5个级别及其特征如下:

(1)初始级:软件过程未加定义,工作无序,无步骤可循。

(2)可重复级:已建立了基本的项目管理过程,可以重复以前类似项目所取得的成功案

42

例。

(3)已定义级:用于管理和工程的两个方面的过程均已文档化、标准化,并形成了整个软件组织的标准软件过程。

(4)已管理级:制定了软件过程和产品质量的详细的度量标准,收集了软件过程和产品质量的详细度量数据,使用这些度量数据,能够定量地理解和控制软件过程和产品。

(5)优化级:通过定量的反馈能够实现持续的过程改进,这些反馈是从过程以及对新想法和新技术的测试中获得的。

7、什么是软件配置管理?它有什么作用?

答:软件配置管理(Software Configure Management,SCM)用于整个软件工程过程,其任

务是标识和确定系统中的配置项,在系统整个生命期内控制这些配置项的发布和变更,记录并报告配置的状态和变更要求,验证配置项的完整性和正确性。

SCM活动的目标是为了:①标识变更;②控制变更;③确保变更正确地实现;④向其他有关人员报告变更。

8、软件工程标准化的意义有哪些?

答:软件工程标准化会给软件开发工作带来以下好处:

(1)提高软件的可靠性、可维护性和可移植性,从而提高软件产品的质量。 (2)提高软件的生产率,提高软件人员的技术水平。 (3)改善软件开发人员之间的通信效率、减少差错。 (4)有利于软件工程的管理。

(5)有利于降低软件成本、缩短软件开发周期,降低运行与维护成本。

9、软件文档的作用有哪些?

答:软件文档也是软件产品的一部分,没有文档的软件不能称其为软件。

软件文档在软件开发人员、软件管理人员、软件维护人员、用户以及计算机之间起着重要的桥梁作用。开发人员通过软件文档交流设计思想和设计软件;管理人员通过文档了解软件开发项目安排、进度、资源使用和成果等;维护人员通过文档对项目进行维护;用户通过文档掌握软件的使用和操作。

规范、齐全、有效的软件文档会使软件开发活动更科学、规范,更有成效。缺乏必要的文档资料或者文档资料不合格,必然给软件开发和维护带来许多严重的困难。

43