软件

被认为是开发过程子集的软件维护类型

在软件开发生命周期中,软件维护被认为是开发过程的一个子集。它的主要目的是在软件应用程序交付之后更改和更新,以消除故障和提高性能等等。软件是现实世界的代表。当现实世界发生变化时,软件必须更新才能跟上时代的步伐。

为什么需要软件维护?

您的软件可能出于各种原因需要维护,包括保持其正常运行,增加功能,为将来的更改重新构建系统,转移到云,或为您可能有的任何其他目的。无论软件维护的驱动力是什么,它对组织的长期成功都是至关重要的。因此,软件维护不仅仅包括问题的发现和纠正。它是保持公司核心运转的过程。

软件开发人员经常把软件维护比作汽车维护。某些软件维护和支持服务任务,如更换机油和对准轮胎,必须定期完成,以使汽车正常运行。更大的调整,如发动机重建,也需要保证汽车的性能保持在其达到特定里程后的峰值。

对汽车维修的要求是可以理解的,因为物理物品会随着时间的推移而退化。然而,当涉及到像软件这样没有物理形式的数字产品时,这个想法可能很难理解。因为代码不应该随着时间的推移而退化,所以非软件工程师的人有时会认为,如果软件一开始就被正确地创建,那么它就不需要维护。然而,情况并非总是如此。

另一方面,软件和汽车维修之间的比较并不完美。与汽车相比,软件有许多不断变化的活动部件。对一个组件的修改可能导致另一个组件失败。在这种情况下,这就好像是一个同步带停止了工作,因为火花塞被更换了。此外,软件的主要功能经常被改变,这就类似于把一辆日常的车辆变成一辆高强度的跑车。

虽然比较和对比这两种形式的维护可能有助于理解维护的基本需求,但是需要更多的解释来说明对软件维护服务的良好规划和预算的需求,这在本文中没有涉及。

软件维护可分为四类:

1.动态的软件维护

当谈到软件维护时,大多数人会将纠正性软件修复与术语“维护”联系起来。你必须进行适当的软件维护,以防止软件应用程序中的错误和缺陷,这些错误和缺陷可能会影响你程序的许多组件,如设计、逻辑和代码。这些调整通常是用户或客户发送的错误报告的结果;但是,正确的软件维护和支持服务可以帮助您在消费者发现这些问题之前发现这些问题,这可以在此过程中有利于您的品牌形象。

2.响应式软件维护

当软件运行的环境发生变化时,就有必要进行自适应软件维护。更改操作系统、硬件、程序依赖项、云存储,甚至更改操作系统本身都可能导致这种情况。适应性软件维护有时也可以看作是组织政策或规范的反映。由于各种原因,可能需要自适应软件维护,包括更新服务、更改供应商和切换支付处理器。

3.软件维护是完美无缺的

完美软件系统的维护与系统中已经存在的需求和特性的开发有关。当用户使用你的应用程序时,他们可能会发现一些你没有发现的东西,或者他们可能会提出他们希望在程序中看到的新功能,这可能会导致未来的项目或添加你没有想到的内容。精确的软件维护通过引入可能改善用户体验的特性和删除不再有用或不再起作用的元素来减轻部分负担。术语“特性”指的是没有被利用或不能帮助您实现最终目标的功能和特性。

4.防病毒和反恶意软件维护

软件维护和支持服务是很重要的,因为它允许你对你的程序进行调整和修改,以便它可以继续工作更长时间。这种维护形式的主要目标是防止软件在不断适应和开发过程中恶化。这些服务可以根据需要覆盖从代码优化到文档更新的任何内容。