
第10章软件维护 2学时
第10章 软件维护 2学时

引言 ▣例子:某药厂的设备管理信息系统已交付用 户运行了1年,工厂购置了小型机,需要将 原来的在Windows下运行的系统移植到 Unix操作系统下运行。 口软件在交付给用户使用后,由于应用环境、 业务需求变化以及软件自身问题,对它进行 维护不可避免。 口软件维护是一个长期过程,耗费较大
引言 例子:某药厂的设备管理信息系统已交付用 户运行了1年,工厂购置了小型机,需要将 原来的在Windows下运行的系统移植到 Unix操作系统下运行。 软件在交付给用户使用后,由于应用环境、 业务需求变化以及软件自身问题,对它进行 维护不可避免。 软件维护是一个长期过程,耗费较大

主要内容 要求 1.软件维护的概念 掌握 2.软件维护过程 理解 3,软件维护工作的管理方法 了解
主要内容 1. 软件维护的概念 2. 软件维护过程 3. 软件维护工作的管理方法 掌握 理解 了解 要求

10.1软件维护概念 口软件维护三 在软件交付使用之后对软件进 行的任何改变工作。 ▣引起软件改变的原因一为了纠正运行中出 现的错误;为了使软件适应新的运行环境: 用户增加新的需求,为了提高软件可靠性
10.1 软件维护概念 软件维护——在软件交付使用之后对软件进 行的任何改变工作。 引起软件改变的原因——为了纠正运行中出 现的错误;为了使软件适应新的运行环境; 用户增加新的需求;为了提高软件可靠性

软件维护分类 ▣纠正性维护 口完善性维护 ▣适应性维护 ▣预防性维护
软件维护分类 纠正性维护 完善性维护 适应性维护 预防性维护

改正性维护 ▣什么是改正性维护一改正软件中的错误 ▣起因一软件运行过程中一旦发现错误,用 户会向开发人员提出改正性维护的请求。 口目的一诊断和改正软件系统中出现和潜藏 的错误。 ▣出现概率一古整个维护工作量21%。 口通常遇到的错误有一设计错误、逻辑错误 编码错误、文档错误、数据错误
改正性维护 什么是改正性维护——改正软件中的错误 起因——软件运行过程中一旦发现错误,用 户会向开发人员提出改正性维护的请求。 目的——诊断和改正软件系统中出现和潜藏 的错误。 出现概率——占整个维护工作量21%。 通常遇到的错误有——设计错误、逻辑错误、 编码错误、文档错误、数据错误

适应性维护 ▣什么是适应性维护一对软件进行改造以便适应新 的环境和平台。 口起因一软件运行硬件、OS、网络等环境发生变 化。 口目的一适应环境变化和发展而对软件进行维护。 口出现频率一古整个维护量的25%。 ▣环境变化主要包括一影响系统的规定、法律和规 则发生了变化:硬件配置发生了变化,例如机型 终编、打印机等:数据格式和文件结构发生变花, 清髓謬斋麦北湖案作家级嶺泽素蔬或卖
适应性维护 什么是适应性维护——对软件进行改造以便适应新 的环境和平台。 起因——软件运行硬件、OS、网络等环境发生变 化。 目的——适应环境变化和发展而对软件进行维护。 出现频率——占整个维护量的25% 。 环境变化主要包括——影响系统的规定、法律和规 则发生了变化;硬件配置发生了变化,例如机型、 终端、打印机等;数据格式和文件结构发生变化; 系统软件发生变化,例如操作系统、编译系统或实 用程序包的变化

完善性维护 ▣什么是完善性维护一对软件进行完善以增 加新的功能、修改己有功能。 口起因一用户要求增加新的功能、修改已有 功能,或提出其他改进意见 ▣目的一满足用户日益增长的各种需求而对 软件系统进行的改善和补充。 ▣出现频率一古整个维护量50%。 ▣常见的完善要求一用户的业务会发生变化, 组织机构也会发生变化
完善性维护 什么是完善性维护——对软件进行完善以增 加新的功能、修改已有功能。 起因——用户要求增加新的功能、修改已有 功能,或提出其他改进意见 目的——满足用户日益增长的各种需求而对 软件系统进行的改善和补充。 出现频率——占整个维护量50%。 常见的完善要求——用户的业务会发生变化, 组织机构也会发生变化

预防性维护 ▣什么是预防性维护一对软件的结构进行改 造以便提高软件的可靠性和可维护性等 ▣起因一改进软件质量属性,为以后的软件 改进奠定基础的维护活动. 口目的一提高软件的质量。 ▣出现频率一古整个维护量的4%
预防性维护 什么是预防性维护——对软件的结构进行改 造以便提高软件的可靠性和可维护性等 起因——改进软件质量属性,为以后的软件 改进奠定基础的维护活动。 目的——提高软件的质量。 出现频率——占整个维护量的4%

10.1.1影响维护的因素 口软件规模:维护工作量与软件规模成正比。软件的规模可以由 源程序的语句数量、模块数、输入输出文件数、数据库的规模 以及输出的报表数等指标来衡量。软件规模越大,复杂程度越 高,其维护就越困难。 口程序设计语言:通常高级语言编写的程序比低级语言编写的程 序易于维护。 先进的软件开发技术:使用先进稳定的开发技术会提高软件的 质量,例如,使用数据库技术、面向对象技术、构件技术和中 间件技术可以提高软件的质量,减少维护费用。 目 软件年限:软件越老,其维护越困难。老的软件不断被修改, 结构可能越来越混乱。随着时间的增长,原来的开发和维护人 员不断离去,了解软件结构的人越来越少,如果文档不全就更 加难以维护:
10.1.1 影响维护的因素 软件规模:维护工作量与软件规模成正比。软件的规模可以由 源程序的语句数量、模块数、输入输出文件数、数据库的规模, 以及输出的报表数等指标来衡量。软件规模越大,复杂程度越 高,其维护就越困难。 程序设计语言:通常高级语言编写的程序比低级语言编写的程 序易于维护。 先进的软件开发技术:使用先进稳定的开发技术会提高软件的 质量,例如,使用数据库技术、面向对象技术、构件技术和中 间件技术可以提高软件的质量,减少维护费用。 软件年限:软件越老,其维护越困难。老的软件不断被修改, 结构可能越来越混乱。随着时间的增长,原来的开发和维护人 员不断离去,了解软件结构的人越来越少,如果文档不全就更 加难以维护