当时中国软件业兴起了CMM大潮,但是许多企业太过于急功近利,要在一天完成CMM的全流程,结果由于CMM太庞杂而失败。其实CMM并不腔调一步到位,而是强调持续改进流程,我觉得应该站在科学的立场上,对各种管理流程进行合乎国情的循序渐进的规范化。
在软件行业快速发展的今天,软件维护作为确保软件产品生命力和竞争力的重要环节,越来越受到企业的重视。然而,软件维护的组织实施并非易事,尤其在中国这样一个软件业起步较晚,但发展迅猛的国家中,如何在管理软件维护过程中既能追求效率又能保证质量,成了业界亟待解决的问题。在这一背景下,王坚先生所著的《论软件维护的组织与实施》一文,为我们提供了一种基于CMM(能力成熟度模型)的科学化维护流程。
文章首先提到,中国软件企业在追求CMM认证时往往过于急躁,期望在极短的时间内完成所有流程,这种急于求成的心态忽视了CMM的核心精神——持续改进。CMM作为一种成熟的管理框架,其根本目的是帮助组织建立起一套系统化的、可自我完善的软件工程过程。因此,对于CMM的理解和实施,必须遵循循序渐进的原则,结合自身情况逐步实现流程的规范化和管理的科学化。
在实际操作中,作者提出了一套六步骤的维护流程,这六步骤包括了需求收集、分析、设计、编码、测试和部署。该流程不仅涵盖了软件维护的方方面面,而且通过与CMM2级的缺陷跟踪管理相结合,确保了维护工作的有序进行。每个步骤中,都明确了各关键角色的职责,如提交者、维护经理、维护人员、测试经理和测试员等,从而在团队内实现了职责的清晰分工和有效协作。
为了进一步细化维护工作,作者将维护任务分为四类:错误修正、旧功能改进、新功能设计和辅助工程,它们分别对应改正性、适应性、功能性及预防性维护。这样的分类方法有助于根据不同的维护目标,制定不同的实施策略。同时,通过设定九个工作状态,流程能够对维护任务进行有效的跟踪和控制,从而保证了任务按计划推进。此外,作者还引入了难度、重要性和严重性的五级划分标准,这为评估任务的优先级提供了明确的依据,确保了紧急且重要的任务能够得到及时处理。
在维护流程的执行过程中,作者介绍了CVSTrac这一工具。CVSTrac是一个基于CVS的Web应用程序,它极大地提高了维护流程的透明度和协同工作的效率。通过CVSTrac,相关人员可以实时追踪任务状态、监控项目进度,并据此进行资源分配和决策报告的生成。尽管在实施过程中,沟通效率和任务关联性曾是困扰团队的两大问题,但通过编写触发器程序和提交驱动的方式,这些问题得到了有效解决,进而优化了整个维护流程。
文章最后强调,软件维护不只是单纯的错误修复,它还包括适应变化的需求和预防潜在的问题。因此,在实施维护工作时,不能将目光局限于眼前的错误和问题,而应从系统性和长远性的角度去思考。这样的思考将有助于企业持续改进产品,提升软件质量,并最终降低成本和提高用户满意度。
《论软件维护的组织与实施》一文通过细致的分析和实际案例的分享,为我们展示了一条科学化的软件维护之路。文章所倡导的六步维护流程、九个工作状态以及五级任务优先级划分等策略,为软件企业在实际工作中如何高效、规范地进行软件维护提供了明确的指导。同时,文章也提醒我们,在追求CMM认证的道路上,应该以平和的心态、持续改进的态度去实施管理,只有这样,才能真正提升软件工程的管理能力,促进软件行业的健康发展。