中小型软件企业的项目管理改进研究
2016-02-26吴亚男
吴亚男
(中国人民大学,北京 100872)
中小型软件企业的项目管理改进研究
吴亚男
(中国人民大学,北京 100872)
我国自改革开放以来,在发展软件产业方面取得了巨大成绩,对科技进步、经济腾飞起到了重要作用。然而,随着我国软件产业发展的加快,逐步暴露了很多问题,有些甚至开始影响产业的进一步发展。同时,我国中小型软件企业的项目管理中存在的问题贯穿了项目管理的各个领域,本文仅就需求、计划、进度和风险控制这三个领域做了初步的探讨,并整理出针对我国中小型软件开发企业的项目管理改进方案。
项目管理;风险控制;软件项目
1 明确定义用户需求,明晰项目价值和目标
明确定义用户需求,它是软件项目正式启动的基础,也是控制项目范围的基础。主要包含以下几个方面:
1.1识别和定义项目的利益相关者
现代项目管理的核心理念是项目必须让其利益相关者满意,要理解定义项目的价值,进而在此基础上定义项目的目标,必须从识别项目的利益相关者入手,识别项目的真正用户。然而,时间表明识别清楚软件项目的利益相关者并不是一件容易的事情。有时一个项目进行了很长时间,但项目组未必知道项目的真正客户是谁,最常犯的错误是仅将项目成果的使用者作为客户。必须识别出具体的项目发起人并充分发挥其作用。
1.2相关者必须全程参与和积极配合
不仅在项目重启策划中,在整个软件项目的生命周期内都必须强调项目利益相关者的参与,必须要与利益相关者一起启动项目。由于软件项目的成果将改变人们的生活或工作方式,客户必须在项目策划阶段就了解项目成果对其生活或工作方式的影响,他们必须开发相应的政策、流程等准备接受项目成果。
1.3善于利用外部行业专家
软件项目的价值就是为了实现某些商业目的,一般是由行业专家(包括用户)根据现有业务流程设想出来的,而不仅仅是由项目需求分析人员设计出来的。开发商劣势在于缺乏完全理解业务流程的行业专家,没有意识到行业专家也是专业人员。在项目定义活动中,软件项目常犯的错误有3点:需求镀金、需求过滤和需求包办。所谓需求镀金,是指项目成员客户的实际需求,片面强调和夸大技术先进性;需求过滤指项目需求人员根据自己的偏好对客户的需求进行主观筛选;需求包办是指客户将需求分析委托给专业的“软件人员”。实践证明,缺乏行业专家的参与,对项目需求的定义不仅不适用,有可能完全不能用,造成资源的无谓浪费。
1.4正确理解客户需求的多样性
客户的需求包含多个方面,其中既有对项目成果特性的要求,又有客户在感情等反面的需求。客户分为三类:第一类是“Musts”,即如果缺少了就不能实现项目基本目的的成果特性;第二类是“Wants”,即客户希望得到的能够丰富项目成果的东西;第三类是“Nice-to-haves”,即对客户和项目而言多多益善的东西。从对客户的重要性而言,这三类需求是递减的。然而,在项目的运行过程中,客户向项目承担方表达的频率却常常是递增的。这是导致项目管理范围蔓延最终失控乃至失败的重要原因。
2 提高计划执行准确率,加强基础数据积累和分析
软件项目开发过程中面临的最大挑战就是计划的准确性差。根据统计,在对软件项目进度与成本估算时,开发者的估算比现实要乐观,大约低20%到30%,大多数项目实际完成时间超过估算进度的25%到100%,少数的进度估算精确度达到了10%,能控制在5%之内的项目十分罕见。提高计划的准确性,需要把握以下三点:
2.1加强基础数据的统计与分析
软件项目都是具有独特性的,不能照搬其他项目的经验作为制定本项目计划的依据。由于不重视基础数据的收集和统计,中小型软件企业中,软件项目的计划常常是凭经验或“拍脑袋”决定的,并没有足够统计数据来支持计划的制定和完成。想要“一次就将事情做正确”,就需要遵照项目管理中计划管理的方法,充分利用项目估算和安排。
2.2小心谨防里程碑陷阱
里程碑式项目计划于控制中的一个极为重要的概念,但过于依赖里程碑反而会使项目计划落空。具体表现在以下几个方面:首先在软件项目的里程碑被设定以后,认为“目标管理是只问结果,不计过程”,从而忽视对过程的监控而导致项目里程碑不能按期达到。第二,对里程碑控制不严。因为大部分里程碑毕竟只是一些项目的中间结果,在项目过程中人们易于放松对里程碑变更的控制,易于出现里程碑大多按期完成而项目却难以按期完成的现象。第三,里程碑的设置仅仅由项目组根据项目本身的特点而定,忽视了利益相关者的沟通并得到他们的承诺。为避免落入里程碑陷阱,特别强调客户、供应商等利益相关者对这些里程碑提供承诺,并通过建立各方签字的责任矩阵将其锁定。
3 加强项目风险管理与过程控制
IT项目管理的主要对象就是与信息技术紧密相关的各类IT项目,诸如软件开发、组件计算机网络和信息系统集成等。随着建设环境的日趋复杂,IT项目的投资和建设规模急剧增加,然而IT项目固有的建设标准不统一、人员流动性强、技术发展迅猛等特点决定了它不但要考虑项目管理可能遭遇的一般风险,还面临着其他类型项目所不具备的特殊风险。这些风险的存在很有可能会造成数据丢失、进度延迟、成本增加等不良后果,更为严重的可能会导致整个项目的失败。因此,在IT项目管理中引入风险研究很有必要。目标主要在于:识别可能影响IT项目成功的任何风险,提供识别和评估风险的标准过程和方法;通过适当的行动将风险产生的概率或后果压制最低;实时监测和报告风险,为制定防范和应对风险的措施提供决策依据。
在国内外学者研究的基础上,单就IT项目管理这一领域将影响IT项目风险定义为以下五个方面:
3.1外部风险
外部风险主要是指那些超出IT项目经理乃至整个项目组织控制范围的影响项目成功的干扰因素,主要体现在:市场和政策的变化、IT行业的迅猛发展、威胁IT项目的安全因素、先关法律问题、自然灾害等。
3.2成本风险
成本风险指因项目或项目组织的变化或失误从而影响项目成本控制的隐患,主要包括:项目运营成本溢出、项目范围的改变导致成本上升、出现未估算的项目成本、项目预算超支。
3.3进度风险
进度风险指由于错失或延误IT项目产品或服务的市场机会而导致项目失败的可能性,其直接表现:项目进度估计不准确,过多的技术、运营和外部问题牵扯项目进程、资源短缺或变更导致项目进度拖延。
3.4技术风险
技术风险指干扰项目达到预期功能或性能目标或期望的不可靠因子,突出体现在:技术成熟度不够、开发与管理工具选择不当,项目测试不严谨,软硬件的集成矛盾。
3.5运营风险
运营风险指项目无法达到预期收益目标或期望的可能性。主要包括:对优势和冲突的理解不充分、沟通不善、多项目管理。
在项目管理中,建立风险管理策略和在项目的生命周期中不断控制风险是非常重要的,一般来说,一套完整的IT风险管理策略包括以下四个阶段:确定业务需求、评估风险等级、设计与实施解决方案、监控、管理与发展。
风险管理在IT项目管理中并没有得到应有的重视,因此从事IT项目管理的专业人员必须通过学习或培训了解风险管理的重要性并掌握风险管理的只是和防范风险的方法与手段,也只有将风险管理的内容纳入正规培训日程才能突显其重要性。
项目管理的指导思想在于不仅关注项目的成果,还要关注项目的过程。项目管理是一种典型系统管理,也是一种典型的变化管理。项目过程控制的目标在于对项目成果(包括中间成果)的可预见、项目资源的可调度、项目问题的可追溯、项目组绩效的可评价等几个方面。项目管理的定律之一是“魔鬼藏在细节中”,项目经理必须在对项目各种活动全面了解的基础上,才能确定工作地重心。同样,由于项目组成员存在不同的分工,要是他们能够明了各自的工作对象目的目标到什么作用和影响,不能仅靠鼓励他们提高对项目的整体责任感,也不能仅靠评价机制来驱动他们的共同承担的责任,还必须使他们能够直观地看到他们的工作于项目目标之间的动态关系。即便是一个经验丰富的项目团队,如果不能完全理解项目的每一个组成部分,不能形象、直观地了解项目的各部分之间的关联关系,也容易“一叶障目,不见泰山”。只有将项目的运行做到可视化才能够帮助他们解决这些问题。
计划是项目进度控制的基准,项目执行过程中采用定期和不定期的检查,发现问题及时采取纠正措施。
4 成功的软件开发项目标准
成功的项目标准解释为:项目范围、项目成本、项目开发时间、客户满意度四点达到要求。项目范围、客户满意度主要代表客户的利益,项目成本主要代表开发商的利益,项目开发时间同时影响双方的利益。成功的软件开发项目应取决于三个阶段的努力:
第一,项目开始前必须做到“了解什么是客户的成功”,只有客户成功了项目才能成功。就是要了解客户的真正需求,客户需求是项目存在的根本原因。一定要站在客户的立场上考虑问题,客户需要的不是将一堆硬件和软件组装起来,而是一定要能解决实际问题。
第二,项目执行中能够“担负客户成功的责任”,按要求完成承诺的工作。
第三,项目结束后能“帮客户实现价值”,只有客户说项目成功了才是真正的成功。要让客户达到预期目标。
做好企业内部的支撑体系:
4.1质量管理意识
质量管理意识是实施任何管理思路的主观因素,如果没有质量管理意识,往往看不到存在的问题,也看不到质量改进的必要性和紧迫性。企业一味追求经济效益,在项目上只是往前冲,而忽略了从项目中总结问题,就是因为质量管理意识薄弱。没有真正感受到质量管理的重要性。只有加强培养质量管理意识,才能将质量管理提上重要日程。
4.2软件工程思想
软件工程中对软件项目的各个环节都做了明确的规定。每个做IT项目的人不管是系统的还是非系统的都学习过软件工程,但只有将软件工程思想真正贯彻到实际的工作中去,才能从根本上找到提高质量的方法论。
4.3合理的组织架构
合理的组织架构能使组织内部的资源得到合理的分配。更多适合项目的资源能分配到项目中来,只有这样才能使需求管理、测试、文档管理得到有力的资源支持。
4.4培训
软件项目中人力资源是最主要的资源。而人的能力是资源好坏的重要标准。很多能力需要长时间的培养与培训。培训对于质量管理来说是一件基础性的工作,主要侧重的是以下四种能力:第一,质量管理意识,如何让项目组把项目的质量管理而非进度放在第一位,是当前最需要解决的问题。就算是有多好的人员配备,多优秀的管理手段,没有人重视,那质量管理也不能真正开展起来。当前质量管理的首要问题就是,项目组过度的关注开发进度,而质量问题放到最后几种处理。导致质量维护成本居高不下,这都是质量管理意识薄弱造成。第二,文档规范性培训,随着开发技术和开发模式的变化,以及文档规范化的自身要求越来越高,规范文档的格式和要求也随之变化。这些规范需要通过培训的方式传递给每一个使用文档的人员,使得每一个人都可以规范使用文档。第三,规范性培训,不管是开发部门、测试部门、研发管理部门,都有工作的规范流程以及工作细节上的规范。开发部门的规范可以保证提交产品的高质量。测试部门的规范可以使得研发管理的工作更好的管理和指导项目。第四,行业知识的培训,每个项目根据项目本身所属行业的不同,项目需求会有所不同。想要保证项目需求的准确掌握,对行业的了解也是必不可少的,行业知识的培训能使得项目组成人员更好把握需求并实现需求。
5 项目的目标实现是多重的
项目的目标实现需要考虑范围目标、质量目标、进度目标、成本目标和其他目标等待。在一定条件的约束下,要想使各种目标都达到完美是不可能的,必须根据当前项目的特点,对各种目标的重要性进行排序、取舍、平衡。假如没有足够的资源或时间,又要完成项目范围目标,则质量目标必然受到牺牲。
信息化建设是当前世界经济和社会发展的必经之路,更是我国实现产业化结构和建立长期经济战略的手段和方法,IT项目的成功率是体现信息化成熟度的一个标尺,可以说如何成功地管理IT项目是我国企业信息化建设过程中面临的最大挑战和关键问题,项目管理理念的引入使得IT项目的管理逐步实现标准化和可执行化,项目管理方式、方法的延伸和扩展对IT领域的管理提供了多种选择和机会,IT项目管理正进入一个快速发展的空间。
对于我国IT项目来说,IT行业发展极不均衡,直接导致发达地区IT项目实施的成功率越来越高,而欠发达地区能成功实施IT项目的数量普遍较低,从本质上分析主要是地方政府支持及人才流向聚集等原因产生的,IT行业聚集的省份对IT行业的建设从整体上看投入都比较大,无论从政策上还是经济上都有倾斜,行业成长速度快,产业链比较成熟。IT行业本身又属于高科技行业,其对工作人员要求比较高,待遇也比较好,进而高素质、高水平、高技术的人才都汇入该行业中,在实施项目管理过程发挥着不可替代的作用。所以,IT项目管理不能仅仅从自身做文章,还要考虑地区间交流和协作,只有这样才能更好地完成该项目的管理工作。
吴亚男(1987.04-),女,汉族,辽宁抚顺人,初级会计师,大学本科,研究方向:IT项目管理。
F830.59
A
1671-1602(2016)18-0125-02