在不到5分钟内解释预防性维护
在软件开发领域中,预防性维护是指为了确保软件/系统能够按预期工作尽可能长时间而展望未来的过程。
不幸的是,软件的成本并不仅限于采购阶段。如果您希望该软件能够平稳运行,您必须投资于维护。
维护分为四个类别:适应性维护、纠错性维护、完善性维护和预防性维护。尽管每种类型的维护都有优势,但我们今天的重点将放在预防性维护上。
在当代世界中,预防性维护指的是运营数据分析、machine learning和预测性资产健康监测,以优化维护并降低业务运营或工厂的可靠性风险。
预防性维护为什么重要?
软件预防性维护的主要目的是改善和纠正错误。预防性维护是软件演变的自然结果。
作为一家公司,您必须紧跟软件趋势的变化,以向客户展示最好的形象,并提高平台的效率。
在系统完全维护之前,它经历以下阶段:
#1. 问题识别阶段
在此阶段,识别修改请求并为其分配编号。然后对每个修改请求(MR)进行评估,以确定适合该请求的维护类型。这一步是必需的,因为存在不同类型的软件维护请求,每个修改都需要根据其类型和优先级存储在其存储库中。如果将预防性维护确定为解决方案,我们将进入下一步。
#2. 问题分析阶段
在此步骤中,准备了每个经过验证的修改请求的范围和可行性,并制定了计划。在此阶段制定了资源的初始估计、存储库信息和项目文档。
在问题分析阶段准备了可行性报告。这样的报告将包含以下内容:
- 变更的预期影响
- 组织的短期和长期目标
- 可用的替代解决方案
- 练习的安全性和安全性影响
#3. 设计阶段
当决定进行更改(如预防性维护)时,现在是设计如何进行更改的时候了。在此阶段执行以下操作:
- 识别受影响的软件模块
- 修改已识别的软件模块文档。评估程序设计语言和数据流图等内容。
- 为新设计编写测试用例
- 更新需求的文档。
#4. 实施阶段
在此阶段进行实际的代码修改。在此阶段执行以下步骤:
- 编码和unit testing。
- 集成。编码软件与现有系统集成。
- 风险分析和回顾。您不必等到测试阶段才分析与维护相关的风险。您可以评估的一些风险包括备份和数据故障的提供。
#5. 测试阶段
此阶段确保不会向现有系统引入新的故障。输入属性将包括更新的软件文档、更新的系统和测试准备评审报告。修改后的软件包将接受系统功能测试、regression testing和接口测试。
#6. 验收测试阶段
修改过的软件模块经过测试后,现在是时候测试完全集成的系统是否按预期工作。这个阶段的作用是检测错误,并验证修改是否按照可接受的标准进行。
将会检查的内容包括完全集成的系统、acceptance test过程、验收测试计划和验收测试案例。在这个阶段结束时生成FCA报告和验收测试报告。
#7. 交付阶段
在这个阶段,将向最终用户展示修改后的软件。用户还会获得有关软件操作的有用文件和更新文档。以下是交付阶段的典型步骤:
- 物理配置审计(PCA)
- 将新更改通知用户
- 安装修改后的系统,并通知用户
- 提供系统备份的机制
预防性维护的类型
#1. 基于使用情况
基于使用情况的预防性维护是在系统通常使用之后进行的。这种方法将考虑到系统的日常使用情况,并使用它来设置或预测维护或检查的日期。
#2. 基于时间
基于时间/日历的预防性维护是在一定的时间间隔之后进行的。可以是每周、每两周、每月、每季度、每半年甚至每年。当到期日期接近并且所有必要的工作指令都已创建时,维护操作会自动触发。
#3. 预测性
预测性维护在问题/故障发生之前安排纠正性维护操作。团队需要评估系统的状态来估计何时应进行维护。这样的维护任务被安排以防止意外的系统故障。
#4. 规定性
规定性维护更进一步,显示故障将发生的时间和原因。这样的预防性维护方法分析了不同的选项和潜在结果以减轻风险。
何时需要预防性维护?
修复错误和故障
软件系统可能存在错误和故障。这些错误可能目前不会影响操作。然而,当引入新功能时,可能会出现问题。预防性维护将很有用,以修复这些错误以避免未来的问题。
确保稳定的运营
系统往往在最不希望出现故障的时候发生故障。有时,您可能不得不停止运营以尝试修复问题,给其他人带来不便,并因此损失资金。预防性维护减少了这种中断,确保您的公司正常运作。
解决问题在其发生之前影响运营
一些简单的维护例程可以减少与生产线相关的问题。例如,如果您预计某个月的流量激增,您可以进行必要的更改,以确保这种情况不会导致服务器宕机。
确保符合保修条款
您可能从其他供应商那里获得了一个产品/系统。如果该系统/产品在保修期内发生故障,大多数供应商将要求您证明它不是因为您的过失而导致系统/产品故障。当您想要消除您的过失时,预防性维护非常有用。
预防性维护的示例
重构代码
软件预防性维护可以通过减少源代码的方式改变代码结构。这种方法可以使代码更易理解,甚至与您打算引入的硬件/软件产品兼容。
优化代码
您可能有一个执行所有尚未优化的职责的系统。代码优化可以使您的程序消耗更少的资源,如CPU和内存。如果您打算引入新硬件或削减与此类系统相关的成本,您可以将代码优化作为一种预防性维护机制。
更新文档
文档更新是系统的重要组成部分,它解释了程序的工作原理和随时间发生的更改。更新文档确保其与系统的当前状态保持最新。
预防性维护工具
无论类型如何,软件维护都不是随机进行的。如果您希望获得顺畅的体验,您必须使用这些工具:
- 文件比较器。这样的工具可以比较两个系统/文件,并提供差异报告。文件比较器还可以确定两个系统或文件是否相同。
- 编译器和链接器。编译器检查语法错误。在其他情况下,这些工具还可用于检查错误的源代码。链接器工具用于将编译代码与其他组件链接以进行执行。
- 调试器。调试器跟踪程序的逻辑。某些浏览器,如Google Chrome,有一个您可以利用的调试工具。
- 交叉引用生成器。您对代码所做的更改必须符合现有系统。此工具将确定在需要进行更改需求时,各种代码组件和设计将受到的影响。
学习资源
#1. 预防性和预测性维护完全指南
《预防性和预测性维护完全指南》分享了作者多年来在预防性维护方面获得的最佳实践、成功的关键步骤、错误和胜利。
预览 | 产品 | 评分 | 价格 | |
---|---|---|---|---|
|
Complete Guide to Preventive and Predictive Maintenance (Volume 1) | $23.18 | Buy on Amazon |
本书侧重于预防性维护的四个方面:心理、工程、管理和经济。
#2. 维护策略系列卷1-预防性维护
《维护策略》探讨了预防性维护对公司系统整体维护策略的重要性。
预览 | 产品 | 评分 | 价格 | |
---|---|---|---|---|
|
Maintenance Strategy Series Volume 1 – Preventive Maintenance | $39.99 | Buy on Amazon |
本书配有图解流程图,详细介绍了进行预防性维护时需要遵循的步骤。
#3. 工程师预防性维护指南
本书指导如何在进行预防性维护时记录故障模式和影响分析。
预览 | 产品 | 评分 | 价格 | |
---|---|---|---|---|
|
Engineer’s Guide to Preventive Maintenance: Mitigating Asset Risks Through Preventive Action… | $14.95 | Buy on Amazon |
您将学习到的一些内容包括:记录故障代码和系统/资产层次结构,评估风险和分析故障模式。
#4. 预防性维护基础知识
《预防性维护基础知识》提供经济合理且易于遵循的预防性维护步骤。
预览 | 产品 | 评分 | 价格 | |
---|---|---|---|---|
|
Fundamentals of Preventive Maintenance | $39.95 | Buy on Amazon |
这本结果导向的指南详细介绍了故障的原因,如何识别和纠正故障以及维护过程。
结论
很明显,如果您不希望系统出现故障并确保运营的连续性,预防性维护非常重要。预防性维护所涉及的成本将根据所实施的更改而变化。拥有维护计划可以确保进程顺利进行。
您还可以探索一些最佳的software testing tools。