掌握先进工具 提高开发效率
文/中国计算机软件与技术服务总公司通用产品研发中心 关 勇
防水墙项目是中软通用产品研发中心第一个实施CMMI的项目,开发人员经历了从开始实施到通过CMMI5级的整个过程。在大家的共同努力下,项目管理从无到有,从无序到有序,逐步走向了规范化,特别是运用先进的工具,工作效率也因为过程的不断改进而得到了极大的提高。
一、引入VSS工具,让代码从此有了保障
1、引入VSS源代码管理工具效率提升。回顾实施CMMI之前,代码还是由公司的开发人员自己负责管理,自己负责代码的备份,只在最后才向项目经理提供一份最终代码;有时修改代码出现了错误,或者一个新的设计方法不太合适的时候,想找原来的代码,却发现没有备份,这个时候,开发人员只好凭着记忆再将代码改回去,吃了不少苦头。
引入VSS源代码管理工具早期,公司的开发人员对这个工具不太熟悉,甚感操作繁琐,还有点抵触情绪。可当熟悉之后,却发现自己再也离不开它了。每日的工作,开发人员会自动将其CHECKIN到VSS中。出现错误时,也可以很方便地找到任何时候的版本。当BUILD人员想要打包时,也只需从VSS中获取指定标签的代码即可,而不用像从前那样还需要从每个人那收集最新代码。从而实现了效率的提升!
2、使用“软件问题管理工具”,让BUG有章可循
实施CMMI的第二个突破性举措就是“软件问题管理工具”的使用,它成为了研发组与测试组之间进行工作交互的接口。借助工具,公司内部形成了一整套问题管理流程。测试组将发现的软件BUG登录到工具中,指定给对应的开发人员;开发人员通过“软件问题管理工具”,查看自己负责模块的BUG问题,及时进行修改,修改完后再提交给测试人员进行验证。通过这种方式,一是让产品的BUG得到了很好地管理与跟踪;二是让工作更加专注化。作为研发人员,每天只需要关注工具,关注属于自己的BUG,进行问题修复即可,省去了众多中间交互环节。
3、采用单元测试工具,让测试工作自动化
作为一名开发人员,保证自己开发出的软件有尽可能少的BUG,保证软件的质量是每个人都必须面临的问题。针对每一段代码,开发人员都要确保其逻辑的正确性,确保对于参数的合法性有很好的验证,即使在一些边界情况下,程序也能够正确处理。一直以来,这些质量的保证,都是靠的是开发人员自己手动的测试,效率很慢,且得不到保障。代码改动之后,就必须一步一步地重复以前的测试过程。在开发防水墙7.2R2产品的时候,中软的开发人员开始对部分代码采用CPPUNIT单元测试工具。对于一些重要的函数,依据其要实现的功能,其对参数的要求,开发人员会设计相应的测试用例。写完代码之后,只需要编译运行所设计的测试用例,即可完成对代码的验证。面对新的改动,也只需要添加一些新的用例就可以轻松做到对代码的验证。通过这种自动化的测试过程,可以避免众多人为因素,将工作人员从重复的测试中解放出来,为代码的正确性提供了很好的保障。
CMMI的实施为中软总公司项目的管理的规范化,为软件质量的提高带来了实实在在的效果。