随着过程改进在国内的逐步推广,越来越多的软件企业开始认识到过程能力的提高对软件开发的重要性。于是企业开始大力推广过程改进活动:成立过程改进小组,制定规范制度,开展大量培训,强行要求员工执行等等。但,我们依然能听到来自于员工的很多抱怨。如:我们项目的版本依然是那么的混乱;进度总是不知不觉中就延迟了;过程做的越来越细,文档越来越多,但项目就是没有见好转。
“工欲善其事,必先利其器”,一个好的工具对于贯彻公司规范制度的要求是一个不错的选择。
合适的工具可以帮助我们降低过程的复杂度。如上员工抱怨的这些问题,如果我们采用一些如项目管理工具,需求跟踪工具和配置管理工具等工具,我们便可以从一定程度上解决这些问题。如资源使用方面的问题,我们可以使用一些项目管理方面的工具,既可以对项目进行跟踪,又可以对个人的工作进行跟踪,可以很方便的了解人员分配的情况。
合适的工具还可以减少因复杂过程带来的很多问题。如配置管理,如果我们不使用配置管理工具,很容易在文档和产品版本方面出现问题。可能会出现大家使用的需求规格说明书版本都不一致,开发可能使用的是最新2.0版本,而测试则可能还在使用1.8版本。最后,测试会发现开发出来的东西和他们测试用例有很大区别。
合适的工具还可以减少我们的工作量,帮助我们提高工作效率和工作质量。如果我们手工完成需求跟踪将会花费大量的时间,而且很容易出错,采用需求管理工具后,我们可以方便的建立追溯,快速的了解需求实现情况以及变更影响等。另外,没有统计分析工具的数据分析将是一项巨大的工作量,从大量的数据中提取需要的信息非常消耗时间。
既然工具这么有用,那我们为何不大量使用工具呢?正所谓,过犹不及,不合时宜的使用工具反而会给我们带来很多的麻烦,增加我们的工作量。
使用工具应考虑以下几个方面因素:
Ø 整体规划:使用工具应从企业整体出发,考虑哪些过程使用工具可以快速提高工作效率和质量。同时,也要考虑工具之间的整合,避免相关的工具和工具之间无法交互数据的情况,这会给过程改进带来很大的不方便。
Ø 适时适宜:工具使用一定要考虑公司的具体情况。没有最好的工具,只有最合适的工具,不同公司有不同公司的情况。如果公司是开发硬件底层的,采用UML工具做需求分析可能就不是很合适,如果公司过程的成熟度还没有达到一定程度,就应该选择满足当前成熟度的工具。因此,应根据公司的特点选择最合适的工具,避免一味的追求工具的功能和追随业界的评价。
Ø 易用和易维护:工具购买了,是给员工使用的。选择一款很易用和易维护的工具,可以减少很多的培训和维护成本。
Ø 稳定性:选择的工具,应具有足够的稳定性。否则,在公司内越大范围的使用,就会越影响公司整体工作效率。
Ø 价格因素:价格方面要考虑公司实际的承受能力,以及期望获得的售后服务等因素。
一、工具的类型
过程改进工具从其功能覆盖范围来看,可以分为面向任务的综合过程改进工具和独立的过程改进工具。
1. 面向任务的综合过程改进工具
面向任务的综合过程改进工具具有覆盖过程广的特点,从目前市场上的这类工具看,基本上都能够覆盖5个过程域以上。常见的这类工具可覆盖的过程域有:项目策划、项目监控、风险管理、测量分析、质量保证、需求管理、缺陷管理等。这类工具能够将各个过程进行有机的整合,过程的执行能够形成一个整体。
这类工具基本都支持GJB5000A ML3或以上,但并不是每个过程域的支持都能够符合GJB5000A模型的要求。
这类工具从使用上看,功能不如独立的过程改进工具强大,大部分这类工具易用性也稍有逊色。
2. 独立的过程改进工具
独立的过程改进工具是针对特定过程的过程而提供的工具,这类工具按照功能划分又可以分为:
² 项目管理工具;
² 需求管理工具;
² 测试管理工具;
² 缺陷管理工具;
² 配置管理工具;
² 度量分析工具;
² 等等。
这类工具功能比较单一,它们只是针对某个过程或过程的一部分而开发的。由于功能单一,将它们整合起来形成公司整体的过程改进工具方案比较困难,要想很好的整合就得进行二次开发工作。
二、根据企业特点选择合适的工具
以上介绍了各种过程改进工具的功能及其优缺点,那么企业应该选择什么样的工具比较合适呢?并不是说贵的软件就是好的,也不是说免费、开源的软件就是好的。考虑到以上因素,我们可以开始来选择工具了。
1. 不同规模企业(不同行业)的工具解决方案
对于不同规模的企业,在选择工具的时候往往有很大的差异。接下来,我们分析一下小企业和大企业的特点。
Ø 小企业的主要特点:
小企业最主要的是解决“生存”问题,因此,小企业往往表现出的是以业务为导向,一切工作都体现在业务上,一般很少关注纯粹的职能工作。
小企业规模比较小,业务往往比较单一,公司的整个工作中心围绕着某一个或2~3个业务开展,企业活动集中、能够迅速积累企业的知识和经验。
小企业员工比较少,往往在百人左右,大部分员工都是企业的早期创立者,企业管理者往往是企业的创业者,他们对企业行为的影响很大。企业结构扁平化,沟通迅速,问题能够很快传达给领导进行决策。
小企业资金较少,很难掏出几十万来买一个工具,而且更难单独安排人员对工具进行维护。
小企业往往制度建设不健全,企业流程规范很少,或执行起来存在很大的随意性。小企业在制度执行上灵活性非常大。
Ø 大企业的特点
大企业最主要的问题是解决维持和稳定的问题,因此,大企业往往以加强内部管理为工作重心,以企业稳定为关注焦点,员工分工明确,工作有条不紊。
大企业规模一般都上千、上万人,业务复杂,部门繁多,公司的工作协调安排复杂。
大企业制度建设相对比较健全,企业流程规范,员工工作都要求按照规范的过程执行。
因此,小企业选择工具的时候要考虑简便、易用、便宜以及数据的可移植性强。而大的企业应该多从整体、稳定性等上面来考虑。
三、 总结
选择工具既要考虑企业过程改进的需要,也要考虑人员的能力、资金承受能力等方方面面的因素。
使用工具即可能给我们带来效率和质量的提升,也可能降低我们的效率和质量。如何合理的选择工具,是企业在过程改进中需要慎重考虑的一个方面。盲目的跟风往往会对企业过程改进自身带来伤害。