软件工程 维护

合集下载

软件工程导论PPT课件-第8章-维护

软件工程导论PPT课件-第8章-维护
改错或修改的要求不能及时满足引起的用户不满; 维护时的改动,引入潜伏错误,导致软件质量降低; 软件工程师从事维护工作造成的开发过程混乱。 生产率的大幅下降 维护工作量:生产性劳动+非生产性劳动。
分析评价,修改设计,编写代码等
理解代码功能、解释数据结构、接口特点和性能限度等
8.3 软件维护的特性
8.3.3 软件维护的副作用
-结构化维护
结构化维护是指软件开发过程是按照软件工程方法进 行的、各开发阶段文档齐全的软件的维护过程。
-非结构化维护
非结构化维护是指在只有源程序,缺乏必要的文档说 明,难于确定数据结构、系统接口等特性的情况下,进行 的软件维高昂
明显代价:高昂的维护费用,已上升达80%左右; 无形代价:
的工作环境,或适应已变动的数据或文件; (4)为预防软件系统的失效而对软件系统实施修改。
8.2 软件维护的分类
- 改正性维护
对在测试阶段未能发现的、在软件投入使用后才逐渐暴露出来的 错误的测试、诊断、定位、纠错,以及验证、修改的回归测试过程, 称为改正性维护。
- 完善性维护
为了满足用户在使用过程中对软件提出的新的功能与性能要求, 需要对原来的软件的功能进行修改或扩充。
- 适应性维护
使软件适应外部新的软硬件环境或者数据环境发生的变化, 而进行修改软件的过程。
- 预防性维护
为了提高软件未来的可维护性、可靠性等,或为了给未来 的改进奠定更好的基础而修改软件的过程。
8.2 软件维护的分类 预防性维护 4% 适应性维护 21% 完善性维护 50%
改正性维护 25%
四类维护占总维护的比例
修改软件设计、 复查、必要的代 码修改、单元测 试和集成测试、 验收测试和复审

计算机软件工程的维护措施及方法

计算机软件工程的维护措施及方法

计算机软件工程的维护措施及方法1.预防性维护:预防性维护是指在软件开发过程中,采取一系列的措施和方法预防软件在运行过程中出现故障和缺陷。

其中主要包括以下几个方面:-代码规范:制定统一的编程规范,保证代码的可读性和可维护性。

-质量管理:建立质量管理制度,进行代码评审、单元测试和集成测试,保证软件的质量。

-版本控制:采用版本控制工具,对软件进行版本管理和追踪,方便后续的维护和升级。

-文档记录:完善的文档记录,包括需求文档、设计文档、测试文档等,方便后续的维护和修改。

2.应急维护:应急维护是指在软件上线使用后,及时响应用户的反馈和故障报告,及时修复软件中出现的问题。

-故障分析:对出现的故障进行分析,确定故障原因,制定相应的解决方案。

-优先级管理:根据故障的优先级制定相应的解决方案,确保关键故障得到及时修复。

-快速响应:及时响应用户报告的故障,保证用户的问题得到及时解决。

3.定期维护:定期维护是指按照一定的时间周期,对软件进行定期的检查和维护,保证软件的可靠性和稳定性。

-检查和修复缺陷:定期对软件进行检查,发现并修复软件中的缺陷和漏洞。

-性能优化:对软件的性能进行评估和优化,提高软件的运行效率和响应速度。

-安全更新:定期更新软件的安全补丁,保证软件在安全方面的可靠性。

4.数据备份和恢复:对软件中的重要数据进行定期的备份,确保即使出现数据丢失或损坏的情况,也能够及时恢复数据。

5.知识管理:建立和维护知识库,记录和积累软件开发和维护过程中的经验和教训,方便后续的维护和升级。

6.版本升级:通过定期的版本升级,引入新的功能和修复已知的问题,提高软件的性能和功能,满足用户的需求。

维护计划的制定:维护计划是指根据软件的需求和实际情况,制定明确的维护目标、任务和时间计划。

维护计划的制定包括以下几个方面:-维护目标:明确软件维护的目标,包括故障修复、性能优化、功能升级等。

-维护任务:制定具体的维护任务,明确每个任务的负责人和完成时间。

计算机软件工程维护措施

计算机软件工程维护措施

计算机软件工程维护措施在当今数字化的时代,计算机软件工程已经成为推动社会发展和经济增长的重要力量。

然而,随着软件应用的日益广泛和复杂,软件维护的重要性也日益凸显。

有效的软件维护不仅能够延长软件的使用寿命,提高软件的质量和性能,还能够降低软件的运营成本,增强用户的满意度。

因此,探讨计算机软件工程维护措施具有重要的现实意义。

一、计算机软件工程维护的重要性计算机软件在运行过程中,由于各种原因可能会出现故障或性能下降的情况。

例如,软件可能会受到病毒的攻击,或者由于用户的不当操作导致数据丢失。

此外,随着业务需求的变化,软件可能需要进行功能的升级和改进。

如果不能及时进行有效的维护,这些问题可能会导致软件无法正常运行,影响用户的工作效率,甚至给用户带来经济损失。

另外,良好的软件维护能够提高软件的可靠性和稳定性。

通过定期的检查和修复,可以及时发现并解决潜在的问题,减少软件出错的概率。

同时,软件维护还能够提高软件的适应性。

随着技术的不断发展和业务环境的变化,软件需要不断地进行调整和优化,以适应新的需求和环境。

二、计算机软件工程维护的类型1、改正性维护改正性维护是指对在测试阶段未能发现的,在软件投入使用后才逐渐暴露出来的错误进行的修改。

这些错误可能包括逻辑错误、计算错误、数据错误等。

改正性维护的工作量通常较大,因为需要对软件的代码进行深入的分析和修改。

2、适应性维护适应性维护是指为了使软件适应新的运行环境而进行的维护。

例如,操作系统的升级、硬件设备的更换、数据库管理系统的变更等,都可能导致软件需要进行适应性维护。

3、完善性维护完善性维护是指根据用户的需求,对软件的功能和性能进行改进和扩充。

例如,增加新的功能模块、优化软件的界面、提高软件的运行速度等。

完善性维护是软件维护中最常见的类型,通常占维护工作总量的一半以上。

4、预防性维护预防性维护是指为了提高软件的可维护性和可靠性,采用先进的软件工程方法对软件进行重新设计、编码和测试。

计算机软件工程维护措施和方法

计算机软件工程维护措施和方法

计算机软件工程维护措施和方法在计算机软件工程中,维护是指对软件系统已经部署的版本进行修复缺陷、改进功能、适应环境变化等一系列活动。

为了保证维护工作的高效进行,常常需要采取一系列维护措施和方法。

以下是一些常用的维护措施和方法:1. 缺陷管理:建立缺陷跟踪系统,及时记录和跟踪发现的缺陷,分析缺陷的根本原因,并进行合理的优化和修复。

2. 变更管理:建立变更控制过程,对软件的任何变更进行严格管理和控制,包括需求变更、设计变更、代码变更等。

3. 配置管理:建立配置管理系统,对软件、文档、工具等各种配置项进行版本控制和管理,确保不同版本的软件和文档能够正确地配合使用。

4. 版本管理:采用版本控制工具,对软件的源代码、编译后的代码、文档等进行版本管理,便于开发人员进行协同工作和版本回溯。

5. 预防性维护:制定适当的维护计划和策略,定期对软件系统进行检查和维护,以预防可能出现的问题。

6. 知识管理:建立知识库,记录和管理软件系统的知识和经验,包括设计文档、测试用例、问题解决方案等,方便团队成员共享和查阅。

7. 自动化测试:采用自动化测试工具,对软件进行全面的自动化测试,包括单元测试、集成测试、系统测试等,提高测试效率和测试覆盖率。

8. 性能监测:建立性能监测系统,对软件系统的性能进行持续监测和分析,及时发现和解决性能问题。

9. 用户反馈管理:建立用户反馈系统,及时收集和分析用户的反馈和意见,优化软件的用户体验,提高用户满意度。

10. 定期维护:制定定期维护计划,对软件系统进行定期的维护和更新,包括安全补丁的应用、数据库的备份和优化等。

以上是一些常用的计算机软件工程维护措施和方法,通过合理地应用这些措施和方法,可以提高软件维护的效率和质量,确保软件系统的稳定和可靠性。

软件工程第八章维护

软件工程第八章维护

软件工程第八章维护第一点:软件维护的定义和重要性软件维护是指在软件发布后对其进行的一系列操作和活动,旨在确保软件系统的持续可用性、可靠性和性能。

软件维护是软件开发生命周期中的一个重要环节,它涉及到对软件进行修正、优化和升级。

软件维护的重要性体现在以下几个方面:1.保障软件质量:软件在实际运行过程中可能会出现各种问题,维护可以帮助及时修复这些问题,保证软件的正常运行。

2.提高用户满意度:通过维护,可以对软件进行功能优化和界面调整,使其更加符合用户的需求,提高用户的使用体验。

3.降低风险:软件维护可以帮助提前发现并解决潜在的风险,避免因软件问题导致的损失。

4.延长软件寿命:通过不断的维护和升级,可以使软件适应不断变化的环境和需求,延长其使用寿命。

5.提高开发效率:良好的维护可以避免因软件问题导致的重复开发,提高开发团队的效率。

第二点:软件维护的类型和策略软件维护可以分为以下几种类型:1.改正性维护:这种维护类型主要是针对软件中存在的问题和错误进行修复,保证软件的正常运行。

2.适应性维护:随着环境的变化和用户需求的变化,软件需要进行相应的调整和优化,以适应新的环境和工作需求。

3.完善性维护:这种维护类型主要是针对软件的功能进行增强和扩展,以满足用户的新需求。

4.预防性维护:预防性维护是为了避免软件出现潜在的问题和风险,提前对软件进行调整和优化。

在进行软件维护时,可以采取以下策略:1.计划维护:制定详细的维护计划,包括维护的时间、内容、责任人等,确保维护工作的有序进行。

2.变更管理:对于软件的修改和更新,需要进行严格的变更管理,确保每次变更都是经过审核和评估的。

3.版本控制:通过版本控制工具,对软件的不同版本进行管理,确保软件的每个版本都是可追踪和可恢复的。

4.文档管理:对软件的维护过程和结果进行详细的文档记录,方便对软件进行管理和维护。

5.持续集成:将软件的维护工作与开发工作结合起来,通过持续集成的方式,确保软件的质量和稳定性。

软件工程学维护

软件工程学维护
对已经存在的软件,重新进行开发是可行的,因为: ① 维护一行源代码的成本可能是该行代码初始开发成本的
20-40倍。 ② 使用现代设计概念重新设计软件体系结构,对未来的维护
工作将有很大的帮助。 ③ 由于软件原型已经存在,软件开发生产率将远远高于平均
水平。 ④ 由于用户已经有较丰富的软件使用经验,所以很容易确定
为了使软件和变化了的环境(如软/硬件升级、新数据库 等)适当地配合而修改软件的活动。约占全部维护活动的18 % ~25%。
§1. 软件维护的定义
③ 完善性维护(perfective maintenance) 为了增加软件新功能、改已有功能(如改造界面)、增强软
件性能、提高运行效率等,而修改软件的活动。 约占全部维护活动的50% ~66%。
④ 预防性维护(preventive maintenance)
为了改进未来的可维护性或可靠性,或为了给未来的改进奠 定更好的基础而主动修改软件的活动。与其它维护活动共占总 维护的4%左右。
注:① 一般维护的工作量占生存周期70%以上,维护成本约 为开发成本的4倍;
② 文档维护与代码维护同样重要。
§2. 软件维护的特点
1、建立维护组织(maintenance team)
在维护活动开始之前就明确维护责任是十分必要的,这样可 以大大减少维护过程中可能出现的混乱。
§3. 软件维护过程
钱太少 要
任务评价

不干!
求 维
客户要求





任务评价
维护管理员
系 统 管 理 员
2、维护报告
§3. 软件维护过程
⑴ 维护要求表(Maintenance Request Form)

软件工程中的软件项目维护管理

软件工程中的软件项目维护管理

软件工程中的软件项目维护管理软件项目维护管理是指对软件项目在交付后进行的各种维护和管理工作,旨在确保软件系统的可靠性、稳定性和可扩展性。

在软件工程中,软件项目维护管理是一个重要的环节,它对于项目的后期运行和维护具有至关重要的作用。

本文将从软件项目维护管理的概念、重要性、方法与技术等方面进行论述。

一、软件项目维护管理的概念软件项目维护管理是通过对已交付的软件项目进行规划、组织、实施和控制,以保证软件系统的正常运行和持续发展。

它包括对软件项目的改进、更新、优化、故障修复等维护工作,以及对项目的进度、成本、质量等进行管理和控制。

软件项目维护管理的目标是满足用户对软件系统的需求,提高软件系统的可用性和性能,并与时俱进地适应新的需求和技术变化。

二、软件项目维护管理的重要性软件项目维护管理对于软件系统的长期运行和发展具有重要意义。

首先,软件项目维护管理可以及时修复软件系统的故障,确保系统的正常运行,并提高系统的稳定性和可靠性。

其次,通过对软件项目的改进和更新,可以提升软件系统的性能和用户体验,满足用户的新需求,增强软件系统的竞争力。

此外,软件项目维护管理还可以减少软件系统的维护成本,提高项目的可管理性和可维护性,为软件开发团队提供更好的技术支持。

三、软件项目维护管理的方法与技术为了有效进行软件项目维护管理,需要运用一系列的方法与技术。

下面列举几种常用的方法。

1.变更管理变更管理是软件项目维护管理的一项重要工作。

其目的是跟踪和控制对软件系统的变更,包括软件需求的变更、设计的变更、程序的变更等。

变更管理需要建立相应的变更控制机制,明确变更的审批流程和责任人,以确保变更的正确性和有效性。

2.故障管理故障管理是软件项目维护管理中的关键环节。

通过对软件系统中出现的故障进行分析和处理,可以保证系统的正常运行。

故障管理的具体方法包括问题定位、原因分析、解决方案设计、验证等。

在故障管理过程中,需要建立完善的故障报告和跟踪机制,及时响应用户的反馈,并持续改进系统的容错能力。

软件工程中的软件维护流程

软件工程中的软件维护流程

软件工程中的软件维护流程软件维护是软件工程中不可缺少的一个环节。

它包括对软件进行修改、调试、优化和完善等活动,以确保软件能够持续运行并满足用户需求。

本文将介绍软件工程中常见的软件维护流程。

一、问题识别和报告软件维护流程的第一步是问题的识别和报告。

这是通过用户反馈、错误日志等方式来获取软件问题的信息。

在识别问题时,可以针对软件的功能、性能、可靠性等方面进行分类,以便更好地定位和解决问题。

二、问题诊断和确认在问题报告后,维护团队将进行问题诊断和确认。

这需要对问题进行详细分析和调查,以找出问题的根本原因。

同时,还需确认问题是否确实存在,并与用户进行沟通和确认。

只有明确问题后,才能制定有效的解决方案。

三、问题解决问题解决是软件维护流程的核心环节。

根据问题的性质和严重程度,维护团队将采取不同的策略和方法来解决问题。

可能的解决方案包括修复代码错误、重新设计功能模块、优化性能等。

在解决问题的过程中,需要进行详细的测试和验证,以确保解决方案的有效性和稳定性。

四、验证和发布解决问题后,维护团队将对软件进行验证和测试,以确保问题已经完全解决,并且没有引入新的问题。

验证过程中需要进行功能测试、性能测试、兼容性测试等,以确保软件的整体质量。

通过验证后,维护团队将发布修复版本,供用户升级使用。

五、文档更新在软件维护流程中,不可忽视的一个环节是文档的更新。

随着问题的解决和软件的升级,相应的文档也需要进行更新,包括用户手册、技术文档、API文档等。

更新文档可以帮助用户更好地理解和使用软件,减少后续的问题和困惑。

六、反馈和监控软件维护流程的最后一步是反馈和监控。

这需要与用户建立有效的沟通渠道,及时获取用户的反馈和建议。

同时,还需要对软件进行持续监控,以及时发现和解决潜在的问题。

反馈和监控可以帮助持续改进软件的质量和性能。

综上所述,软件维护流程包括问题识别和报告、问题诊断和确认、问题解决、验证和发布、文档更新以及反馈和监控等环节。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

分析原设计 理解源程序 安排更改计划 修改程序 测试程序 009
用户 维护 人员
维 护 申 请
改正性 维护 批 准 申 请
001 评价 申请
002 判断维 护类型 006 评价优 先级 高 严重
007 开始问 题分析 安排维护 修改后的 软件
通过并交付软件 复审
适应性/完 善性维护

D2 安排工作计划


7.1.1 影响维护的因素(续)
文档质量:许多软件项目在开发过程中不断地修改需求和设计, 但是对文档却不进行同步修改,造成交付的文档与实际系统不 一致,使人们在后来参考文档对软件进行维护时无从下手。软 件维护阶段利用历史文档可以简化维护工作,历史文档有下面 3种。 软件开发日志:它记录了软件开发原则、目标、功能的优先 次序、选择设计方案的理由、使用的测试技术和工具,计划 的成功和失败之处,开发过程中出现的问题。 错误记载:记录了出错历史,对于预测今后可能发生的错误 类型及出错频率有很大帮助,可以更合理地评价软件质量。 系统维护日志:记录了维护信息,包括修改目的和策略、修 改内容和位置、注意事项、新版本说明等信息。
修改源程序
2)修改源程序 (1)程序员修改源程序前,要先做好源程序的备 份工作,以便于将来的恢复和结果对照。另一个重 要工作是将修改的部分以及受修改影响的部分与程 序的其他部分隔离开来。 (2)修改源程序时应该尽量保持原来程序的风格, 在程序清单上标注改动的代码。也可以先将原来的 代码格式定义为统一的字体,将新修改的代码以加 粗字体或其它颜色的字体显示。在修改模块的头部 简单注明修改原因和日期。
7.1.2.软件维护策略
针对软件的4种主要维护活动,James Martin提 出了一些维护策略。 1)改正性维护——通过新技术和好的开发策略提高软 件可靠性,减少改正性维护活动。 2)适应性维护——在设计时就把硬件和操作系统以及 其他相关因素的可能变化考虑在内,可以减少某 些适应性维护。 将与硬件、操作系统、其他外部设备相关的程序 归纳到特定的程序模块中,一旦需要适应新的环 境变化,只要修改几个相关的模块就可以了。 使用内部程序列表、外部文件为适应性维护提供 方便。
维护过程说明(续)
7. 编码和单元测试。 8. 评审编码情况,维护人员必须填写维护工作记录 表,记录所做的修改。维护主管要检查维护记录, 确保只在授权的工作范围内作了修改。 9. 不仅测试修改的部分,还要测试对其他部分的影 响,可以借鉴开发阶段设计的测试用例对软件进 行全面的测试。 10. 更新文档,保持程序和文档一致性。 11. 用户验收。 12. 评审修改效果及其对系统的影响。
7.2.1维护需要的文档模板(续)
维护计划模板:维护主管负责制定维护计划 。 内容:维护类别、内容、工作量、维护涉及的 模块和文档、维护任务划分、各任务负责人、 开始和结束时间等。 负责人签字确认。
7.2.1维护需要的文档模板(续)
维护记录:维护人员做好维护记录。 内容:维护初始状态、终止状态,参与的维 护人员、实际工作量、编程语言、涉及的模 块和文档、程序运行的状态、维护的结束时 间等。 维护人员签字。
软件维护分类
纠正性维护 完善性维护 适应性维护 预防性维护
改正性维护
什么是改正性维护——改正软件中的错误 起因——软件运行过程中一旦发现错误,用 户会向开发人员提出改正性维护的请求。 目的——诊断和改正软件系统中出现和潜藏 的错误。 出现概率——占整个维护工作量21%。 通常遇到的错误有——设计错误、逻辑错误、 编码错误、文档错误、数据错误 。
适应性维护
什么是适应性维护——对软件进行改造以便适应新 的环境和平台。 起因——软件运行硬件、OS、网络等环境发生变 化。 目的——适应环境变化和发展而对软件进行维护。 出现频率——占整个维护量的25% 。 环境变化主要包括——影响系统的规定、法律和规 则发生了变化;硬件配置发生了变化,例如机型、 终端、打印机等;数据格式和文件结构发生变化; 系统软件发生变化,例如操作系统、编译系统或实 用程序包的变化。
7.3 提高软件可维护性
软件可维护性:指改正软件中的错误、完善 软件功能的容易程度。 提高软件的可维护性可以降低维护成本,提 高维护效率,延长软件的生存期。 为了提高软件的可维护性,在软件开发过程 的各个阶段要充分考虑影响软件可维护性的 因素。
各阶段考虑软件可维护性的因素
在需求分析阶段检查每条需求,分析维护时这条 需求可能需要的支持,对于可能会发生变化的需 求要考虑系统的应变能力。 在设计阶段应做一些变更实验,检查系统的可维 护性、灵活性和可移植性。将可能变更的内容与 其他部分分离,遵循高内聚、低偶合的原则。 编码阶段保持源程序的可理解性、规范性、与文 档一致性。 在测试阶段应该按照需求文档和设计文档测试软 件的有效性和可用性,收集出错信息并进行分类 统计,为今后的维护打下基础。
7.2.2源程序修改策略
步骤:分析源程序修改源程序验证修改 1)分析和理解源程序 阅读和理解其他人的源程序是非常困难的。 也是非常好的学习和锻炼机会。阅读理解别 人写的源程序有一些技巧,可以帮助你快速、 准确地理解源程序。下面介绍这些技巧:
源程序阅读技巧
(1)首先要阅读与源程序相关的说明性文档 包括程序功能说明、数据结构、输入输出格 式说明、文件说明、程序使用说明,阅读这 些文档有助于理解源程序。 (2)概览源程序。这步只能粗略地阅读源程 序,因为对源程序了解还少,无法一下深入 到源程序中。但是,这步要完成的任务比较 多:
7.1.2.软件维护策略(续)
3)完善性维护——利用面向对象方法的继承、封装和 多态性技术减少因变动带来的影响。 采用原型法开发,使用户通过研究原型进一步完善 系统的功能,对于减少完善性维护非常有益。 4)预防性维护——将自检能力引入程序,通过非正常 状态的检查发现程序问题。对于重要软件通过周期 性维护检查进行预防性维护。
7.2.1 维护需要的文档模板
维护申请模板:申请可由用户也可以由系统维护者 提出。 内容:原因、缓急程度。如果是改正性维护,必须 完整地说明出现错误的情况,包括输入数据、输出 信息、错误信息以及其他相关信息。如果是适应性 维护,应说明软件要适应的新环境。如果是完善性 维护,必须详细说明软件功能和性能的变化,若增 加新功能,还要进行需求分析、设计、编程和测试, 相当于一个二次开发的工程。 维护机构对申请进行评价,将评价结果填写在申请 表的评价结果栏内。
主要内容
1. 软件维护的概念 2. 软件维护过程 3. 软件维护工作的管理方法
要求 掌握
理解
了解
7.1 软件维护概念
软件维护——在软件交付使用之后对软件进 行的任何改变工作。 引起软件改变的原因——为了纠正运行中出 现的错误;为了使软件适应新的运行环境; 用户增加新的需求;为了提高软件可靠性。
7.2 维护过程
软件的可维护性常常随着时间的推移而降低, 如果没有为软件维护工作制定严格的条例, 许多软件系统都将蜕变到无法维护的地步。 介绍一个典型的软件维护过程,见下图。
D1
错误改正计划
不严重 003 评价严 重程度
005 安排改 正性维 护 004 开始问 安排维护 题分析 008 维护
源程序阅读技巧——概览源程序2:
建立过程的间接调用二维表。若过程i调用过 程j,过程j调用过程k,则间接表的第i行k列 是1,否则是0。 列出程序定义的全局变量和数据结构。对于 复杂数据结构,画出数据结构图更好理解。
源程序阅读技巧(续)
(3)分析程序结构。画出软件结构图,在这 个图上反映过程之间的调用关系和调用参数。 图中的箭头线表示过程之间的调用关系,带 尾的箭头线表示过程调用传递的参数。 (4)画出软件的数据流程图。根据程序的 信息处理流程画出数据流程图,可以获得相 关数据在过程间的处理和传递方式,对于维 护人员判断问题、理解程序特别有用。
完善性维护
什么是完善性维护——对软件进行完善以增 加新的功能、修改已有功能。 起因——用户要求增加新的功能、修改已有 功能,或提出其他改进意见 目的——满足用户日益增长的各种需求而对 软件系统进行的改善和补充。 出现频率——占整个维护量50%。 常见的完善要求——用户的业务会发生变化, 组织机构也会发生变化。
7.1.1 影响维护的因素(续)



软件的应用领域:有些软件用于一些特殊领域,涉及到一些复 杂的计算和模型工具,这类软件的维护需要专门的业务知识和 计算机软件知识。 软件结构:在进行概要设计时,遵循软件设计的高内聚、低耦 合、信息隐藏等设计原则,使设计的软件具有优良的结构,会 为今后的维护带来方便。 编程习惯:因为软件维护通常要理解别人写的程序,这是很困 难的,如果仅有源程序没有说明的文档,则会使维护工作更加 困难。如果开发人员都按照编程规范编写程序,并且程序思路 清晰、结构简单,则程序易于维护。 人员的变动:由原来的开发人员参与维护是比较好的策略,可 提高维护效率。但是在软件的生命周期中人员变动是不可避免 的,有时候这也是造成一个软件彻底报废的原因之一。
第8章 软件维护
2学时
引言
例子:某药厂的设备管理信息系统已交付用 户运行了1年,工厂购置了小型机,需要将 原来的在Windows下运行的系统移植到 Unix操作系统下运行。 软件在交付给用户使用后,由于应用环境、 业务需求变化以及软件自身问题,对它进行 维护不可避免。 软件维护是一个长期过程,耗费较大。
维护过程说明
1. 受理维护申请。 2. 分析修改内容和修改频度,考虑修改的必要 性。研究修改对原设计的影响程度,有冲突? 对原系统性能的影响? 3. 同意或否决维护申请。 4. 为每个维护申请分配一个优先级,并且安排 工作进度和人员。 5. 如果新增加功能,则要进行需求分析。 6. 设计和设计评审。
相关文档
最新文档