前言
为了更高效地维护软件,同时为新的软件开发创造尽可能多的时间,以下为你介绍一些企业采取的方法和步骤。
2019年,Tiedlift,一个开源支持和维护的企业,对软件开发人员进行了一项调查,结果显示,开发人员开发新代码的时间不到三分之一(32%)。在同一项调查中,开发人员说他们35%的时间花在软件维护上。
在这两种情况下,花在维护软件上的时间都会阻止企业追求新项目和完成任务。同时,维护那些你创建或继承的软件是无可争辩的事实。
软件维护被定义为“软件开发生命周期”的一部分。其主要目的是在交付后修改和更新软件应用程序,以纠正错误并提高性能。软件是真实世界的一种模型。当现实世界发生变化时,软件需要尽可能地进行更改。
鉴于此,当企业要为新软件开发创造尽可能多的时间时,可以采取哪些步骤来执行软件维护?
1,倾听你的咨询台
在IT领域没有功能比咨询台更好地把握应用程序性能的脉搏。咨询台从用户那里得到所有的问题。服务台的工作人员从他们接到的电话中知道哪些应用程序是最有问题的,以及为什么。
如果更多的IT企业在其应用程序开发集思广益和性能评估中修补了咨询台的洞察力,它们将更成功地识别出持续存在的应用程序问题和故障的领域,以便这些领域可以通过修复它们来完全解决,也可以通过另一个解决方案来替代。同样重要的是,从咨询台的应用程序问题“热点”中获得的知识,可以让我们从学到,新的软件开发中不会重复同样的错误。
2,参与质量保证
在太多的企业中,开发人员在严格的截止日期前往往会在最后一刻将他们的工作“抛到墙外”给QA。然后,在应用程序部署到生产环境之前,只完成部分应用程序测试。当应用程序上线时,可能会有几个星期的问题报告和故障排除,并由此产生修复和解决方法。
相反,通过彻底测试应用程序的技术正确性、集成性和可用性,可以大大减少生产后的软件维护。为了促进这一点,项目经理需要介入并确保有足够的时间进行软件质量保证。
3,考虑转移到云端
还在使用已损坏的内部部署遗留软件的企业,可以考虑通过迁移到供应商提供和支持的基于云的软件版本,从无休止的维护中解脱出来。在这样的场景中,软件维护从车间转移到供应商手中。一个缺点是,你永远无法确定你想要的修复或增强什么时候能完成,但是如果你能忍受这些不便的话,这一举动是值得的。
4,废掉那些没有回报的应用程序
几乎每个企业都有一些遗留系统,不再提供它曾经提供的价值。现在是时候考虑废掉这些系统,并可能计划用一个新的系统来“替换”。替换工作可以在只有少数需求的系统集成到其他那些正在运行的软件时。基于替换可行的情况下,你可以将新系统的大部分系统维护工作转移到支持供应商。
5,不断地做回归测试
当你迫不及待地要完成一个项目时,你的冲动就是要赶在最后期限前,跳过一些质量测试。一个关键的测试是回归测试,它将在模拟生产环境中新修改的任何应用程序与其他应用程序放在一起,以测试并确保与其他应用程序和调用例程的集成可以正常工作。
当跳过回归测试时,新修改的应用程序将由于引入的编码错误而中断或导致其他系统部分中断的风险增大。这会导致系统停机并导致服务中断。
6,使用标准化程序安装新的软件版本
无论是安全修补程序还是功能添加或修复,新软件版本的安装都应尽可能统一和标准化,以适用于软件运行的所有设备。这使得软件发布过程保持有序,并减轻了当软件发布没有系统地分发、不同设备运行不同版本的软件时,咨询台和维护团队的压力。
7,充分利用你的软件维护团队
有些人喜欢做软件维护,他们的工作应该得到鼓励和奖励。软件维护也是新员工开始职业生涯的一个很好的领域,因为他们可以对公司运行的各种系统进行全面的了解。这将使他们以后受益,无论他们是继续维护还是转移到IT企业的另一部分。