五、 软件维护阶段
概述
软件维护是整个软件生命周期中比较重要的一个阶段,软件测试无误通过后,形成完整的软件产品交付客户使用,在使用过程中软件的原有功能和性能不能满足客户需求或软件发现错误需要修改等原因,需要对软件进行一系列的维护工作。
主要工作
维护工作一般分为以下几种类型:
- 改正性维护:软件在使用过程中出现功能性错误,需要修改代码来处理。
- 适应性维护:由于信息技术的发展,软、硬件平台更新较快,为适应这些变化所做的修改。
- 完善性维护:主要是针对使用过程中客户提出的需求及性能要求的维护。
- 预防性维护:对下一步可预见的问题的维护。
整个维护过程一般由客户提出修改需求或性能要求,由设计或开发人员对需求评审,判断问题是否需要修改,并确定修改内容及影响范围,然后修改程序并测试修改部分及结合相关业务系统测试,编写维护文档或二次开发文档,最终交付客户使用。
常见的问题
- 维护人员对客户需求的把握程度,维护的过程也是软件稳定的过程,维护人员对软件的稳定起着重要的作用,如果不能准确的把握客户需求,在对软件做修改时就力不从心,修改完的软件或新增的功能与客户提出的需求不符,这在现实中也是存在的,这样不仅做无用功,还影响软件的稳定性,所以在收到反馈的需求后,首先判断需求的通用性,如不通用直接否决掉,如通用则分析工作量视情况维护产品。
- 维护人员对所维护功能的熟悉程度,这也是影响软件稳定性的很重要的一方面,很多软件公司对软件维护不太重视,认为只要保证软件不出问题就可以,软件维护工作的任务重,时间紧,要达到快速、准确的处理问题,如果对功能不熟悉,效果可想而知。
- 修改问题认真、细心程度,不能修改一个问题带来好几个问题,软件问题的来源有很多种,有些是原来测试没有发现的,有些是外界因素造成的,还有一部分是维护人员在维护过程中修改引起的,这一点与维护人员的工作态度有很大关系,有时稍不注意就会引起其它问题,当然与上面提到的不熟悉软件功能也有关系,要尽量避免。
- 没有软件维护制度,软件的维护也需要一套完整的制度来遵守,问题应该有统一入口、统一出口,维护过程中我们经常会遇到这样的问题:客户或实施人员把一个问题同时反馈给好几个人,如果沟通不及时,就会造成工作重复,所以有时还是有必要按一定的制度去执行。
- 软件的二次开发,在维护过程中难避会遇到二次开发的问题,这非常不利于软件的稳定,软件每做一次二次开发基本上都会形成一个版本,影响补丁包的发放,也会加大后期维护的工作量。
- 另外在维护阶段电话、MSN、QQ、SKYPE等交流工具虽然经常用到,但也是影响工作效率的重要因素,对维护人员来讲还是尽量少用。
- 等等
六、 结束语
总之,各阶段存在的问题都会影响工作效率,导致软件问题多、不稳定,所有问题归根到底最终还是人的问题,整个研发队伍就是一个团队,团队间最重要的就是沟通、协作,如何提高工作效率是我们共同追求的目标,找出最优的工作方法,改正工作中的不足,这样才能开发出高效的软件,“发展国产ERP,努力打造国产ERP软件的一片天空”也是我们一直追求和奋斗的目标。