本章练习答案



一、单选:

1.D 2.B 3.C 4.B 5.C 6.C 7.C 8.A 9.C


二、填空:

1.最多

2.维护

3.非结构化

4.生产率

5.非生产性

6.软件问题

7.维护支援


三、简答:

1.软件维护有哪些内容?

(1)校正性维护。在软件交付使用后,一些隐含的错误在某些特定的使用环境下会暴露出来。为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护。

(2)适应性维护。为了使应用软件适应计算机硬件、软件环境及数据环境的不断发生的变化而修改软件的过程称为适应性维护。

(3)完善性维护。为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为完善性维护。

(4)预防性维护。为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护。

2.软件维护的特点是什么?

(1)非结构化维护和结构化维护。软件的开发过程对软件的维护有很大的影响。若不采用软件工程的方法开发软件,则软件只有程序而无文档,维护工作非常困难,这是一种非结构化的维护。若采用软件工程的方法开发软件,则各阶段都有相应的文档,容易进行维护工作,这是一种结构化的维护。

(2)维护的困难性。软件维护的困难性是由于软件需求分析和开发方法的缺陷。软件生存周期中的开发阶段没有严格而又科学的管理和规划,就会引起软件运行时的维护困难。

(3)软件维护的费用。软件维护的费用在总费用中的比重是在不断增加的,这是软件维护有形的代价。另外还有无形的代价,即要占有更多的资源。软件维护费用增加的占有原因是软件维护的生产率非常低。

3.软件维护的流程是什么?

软件维护的流程如下:知道维护申请报告、审查申请报告并批准、运行维护并做详细记录、复审。

4.软件维护的副作用有哪些?

(1)编码副作用。在使用程序设计语言修改源代码时可能引入的错误。

(2)数据副作用。在修改数据结构时,有可能造成软件设计与数据结构不匹配,因而导致软件错误。数据副作用是修改软件信息结构导致的结果。但它可以通过详细的设计文档加以控制。

(3)文档副作用。如果对可执行软件的修改没有反映在文档中,就会产生文档副作用。

5.什么是软件可维护性?可维护性度量的特性是什么?

软件可维护性的定义:软件能够被理解、校正、适应及增强功能的容易程度。软件的可维护性可用以下七个质量特性来衡量,即可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

6.提高可维护性的方法有哪些?

(1)建立明确的软件质量目标。

(2)使用先进的软件开发技术和工具。

(3)建立明确的质量保证。

(4)选择可维护性的程序设计语言。

(5)改进程序的文档。