我国软件从业人员有50多万人,在6000多家软件企业中有60%是50人以下的小企业,1000人以上的企业仅10余家,软件出口额不到印度的10%。据统计,目前我国软件企业项目的按时完成率平均为20%左右。我国软件企业在项目管理能力方面与印度软件企业相比还存在很大差距。目前,我国软件企业尽管在国际竞争中存在技术、 人才 等方面的不足,但管理能力,特别是项目管理能力的不足是我国软件企业面临的典型性成长障碍。本文从提高我国软件企业项目管理的能力出发,提出在两方面软件研发项目的管理,即:面向利益相关者的项目策划、基于统计数据的项目计划。
一、面向利益相关者的项目策划
软件项目策划的目的主要在于明晰定义项目的价值和项目目标,它是软件项目正式启动的基础是明确项目需求的基础,也是控制项目范围的基础。据统计,超过50%的软件项目都遭受过不充分的需求管理的问题,平均有25%的软件项目需求会发生变化。对有缺陷的需求、设计、代码进行返工的花费占整个项目费用的40%—50%。项目策划的要点包含以下四个方面。
1.识别和定义项目的利益相关者。现代项目管理的核心理念是项目必须让其利益相关者满意,要理解和定义项目的价值,进而在此基础上定义项目的目标,必须从识别项目的利益相关者入手。然而,实践表明,识别清楚软件项目的利益相关者并不是一件容易的事。有时一个项目进行了很长时间,但项目组未必知道项目的真正客户是谁,最常犯的错误是仅将项目成果的使用者作为客户。例如,电子政务系统的真正用户是该机关的决策层,而不是具体负责这个电子政务项目的某个部门。如果需求仅仅来自负责这个项目的某个部门,那么即使这个系统建好了,也极有可能没有真正达到目的。但是由于各种原因,决策层人员往往没有足够的精力来关心这件事,这时如果项目组不去想方设法解决这个问题的话,那么,这个项目从一开始就埋下了“陷入泥潭”的阴影。此外,必须识别出具体的项目发起人并充分发挥其作用。实践过程中易犯的错误是误将一个部门、一个机构作为项目的发起人,这样的结果是决策时有很多人,但真正需要项目发起人提供资源、予以协调时却找不到人。
2.促成利益相关者的参与。不仅是在策划活动中,在整个软件项目的生命周期内都必须强调项目利益相关者的参与,必须要与利益相关者一起启动项目。由于软件项目的成果将改变人们的生活或工作方式。因此,客户必须在项目策划阶段就了解项目成果对其生活或工作方式的影响,他们必须开发相应的政策、流程等以准备接受项目成果。目前众多的ERP项目之所以失败,重要的一个原因是人们误认为ERP项目仅是一个信息系统项目,该项目带来的仅仅是一个信息产品。其实,ERP项目带来的是一新的运营方式,如果企业在没有做相应调整的情况下强行引入ERP,将会使企业运行的混乱速度加快而不是更好。事实表明,促使软件项目成功的最重要的要素莫过于利益相关者的全过程参与。
3.培育/运用行业专家。软件项目的价值是为了实现某些商业目的,它们一般是由行业专家而不是由软件开发人员挖掘出来的。许多软件企业被投标价格所困扰,其原因有来自市场竞争方面的,更多的则是软件企业没有能够挖掘项目的价值所致。目前,许多软件企业的弱点在于缺乏行业专家,它们没有意识到行业专家也是专业人员,而只是将软件开发人员作为专业人员对待。在项目定义活动中,软件开发人员常犯的错误有三点:需求镀金、需求过滤和需求包办。所谓镀金,是指软件开发人员不顾客户的实际需求,片面强调和夸大技术先