问题 单项选择题

关于维护软件所需的成本,以下叙述中正确的是()。

A.纠正外部和内部设计错误比纠正源代码错误需要更人的成本

B.与需求定义相比,源代码的文字量大得多,所以源代码的维护成本更高

C.用户文档需要经常更新,其维护成本超过了纠正设计错误的成本

D.需求定义的错误会在设计时被发现并纠正,因此需求定义纠错的成本小于源代码纠错的成本

答案

参考答案:A

解析:

[分析] 软件维护是指在软件运行或维护阶段对软件产品所进行的修改。根据软件维护的不同原因,软件维护可以分成三种类型,它们是改正性维护、适应性维护和完善性维护。

改正性维护的目的在于纠正在开发期间未能发现的错误。由于软件测试的不彻底性,任何大型软件在交付使用后都会发现一些潜藏的错误,对它们进行的诊断和改正就称为改正性维护。改正性维护约占总维护的20%。

完善性维护指的是任何软件,无论是应用软件还是系统软件,在使用期间都要不断改善,加强产品的功能和性能,以满足用户日益增长的需求,提高自己产品的市场竞争力。刚投入使用的是第l版,以后就可能不断升级为第2版、第3版等。在整个维护工作量中,完善性维护所占比重最大,约占50%~60%。

适应性维护是指软件为适应运行环境的变化而进行的一种维护,如硬件或支撑软件(如操作系统升级)改变引起的变化,将软件移植到其他的运行平台上等,这类维护大约占总维护量的25%。

在软件交付使用的初期,改正性维护的工作量较大。随着错误发现率不断降低,软件便进入了正常使用期。在长期的软件使用过程中,由于计算机新技术的出现和用户新需求的提出,适应性维护和完善性维护的工作量逐步增加。在这种维护过程中,又会引入新的错误,从而加重了维护的工作量。

在整个软件维护阶段所花费的全部工作量中,完善性维护占了一半以上的工作量,这说明较大部分维护工作是改变和加强软件,而不是纠错。同时,软件维护技术不像开发技术那样成熟和规范,自然消耗的工作量就比较多,其工作量占整个生存周期工作量的70%以上。

问答题
单项选择题