探讨如何做好软件项目管理
摘要: 随着计算机信息技术在我国的广泛应用,各行各业的信息化建设都发展到了一个前所未有的高度。但是,软件项目的失败也成为了一个普遍现象。项目失败的原因大致可以归纳为四大类:项目组织原因、缺乏需求管理、缺乏计划与控制和估算错误。那么,我们在进行软件项目管理的过程当中,就需要特别注意运用好项目管理的相关知识,在解决以上这些问题方面下大工夫。这样,不仅使参加项目的相关人员自身价值和能力都得到了提升,同时也使公司以后在实施类似项目的时候,用更少的资金,更少的资源在合适的期间之内对项目进行更好控制。
关键词:项目组织;需求管理;资源;计划;监控。
1.建立有效的项目组织
项目组织是按照项目的目标以一定的形式组建起来的,由组织各部门调集专业人才,并指派项目负责人在特定时间内完成任务。在项目期中,所有成员仅向项目经理负责,不再听命原部门主管指挥,待项目完成后,所有成员再回到原组织单位。
我们实施的地税发票项目,在项目启动阶段就与用户约定分别设立了甲方和乙方两个项目组。甲方项目组由负责软件需求的征管处人员和负责软件技术的信息中心人员组成;乙方由公司项目经理、需求分析人员、开发人员、配置管理人员、测试人员组成。所有的用户需求必须要经过甲方项目组评审同意签字后方能提交给乙方项目组,乙方项目组评审同意进入开发流程。甲乙方项目组之上分别有双方的项目领导小组,由具备决定权的领导担任。重大事件或重大需求变更均需经项目领导小组同意。同时双方约定,定期召开项目沟通会,解决项目过程中出现的一些问题。
项目团队成员可以在项目组织结构图中找到自身的位置与工作责任,使项目团队成员对项目有一种依赖与归属感,这为项目组织带来相对的稳定,这种相对稳定是完成项目目标所必需的。
2.掌控用户需求
对于特定的招标型项目,用户需求一般会体现在SOW工作说明书或招标相关文件里面。用户需求是从用户期望角度出发,提出的为了解决用户实际问题而提出的产品在功能或非功能上应该具备的各种特性。项目范围不明确和不受控是导致IT项目频繁变更和延期的重要原因。
在“地税发票项目“中,我们在项目的开始阶段做了充分的需求调研,让客户将所有的想法尽可能的阐述清楚,并把所有的需求罗列出来,我们对客户的需求进行分析、归纳和整理,充分的挖掘客户潜在的需求,理解客户业务,使用客户的语言,站在客户的角度思考问题,同时取得客户的信任;在充分的需求分析基础上,我们做了良好的需求管理,在软件需求规格说明书经过正式的评审之后纳入基线,建立需求功能矩阵,对需求的变更遵循文档化的变更流程使软件的开发计划、工作产品和活动与需求保持一致,进行软件的需求追溯使项目在变更影响分析、跟踪、再设计、测试等方面都有了很好的依据,同时保证了产品的完整性和准确性。
另外,用户一般对软件系统或软件开发并不清楚,因此用户需求本身并不会更多的考虑功能的易用性,性能和安全等问题。而在软件需求开发中这也是需要重要考虑的非功能性需求,一个功能如果开发出来了不易用或不好用,用户是无法满意的。只有站在用户的角度上设身处地的为用户考虑,才能建立良好的客户关系,赢得用户的信任。
3、凡事要有计划
古语亦云:谋定而动。“谋”就是做计划,也就是做任何事情之前,都要先计划清楚。项目管理也一样,有人说项目管理就是制定计划、执行计划、监控计划的过程。项目管理泰斗科兹纳更是一针见血:不做计划的好处,就是不用成天煎熬的监控计划的执行情况,直接面临突入其来的失败与痛苦。可见项目计划在项目管理中的重要性。
所谓磨刀不误砍柴功,制定计划以前应该先完成项目管理工作中的范围管理部分。如果只图节省时间,把这些前期工作省略,后面的工作必然会走弯路,反而会耽误时间。项目一开始首先要有明确项目目标、可交付产品的范围定义文档和项目的工作分解结构(WBS)。由于一些是明显的、项目所必须的工作,而另一些则具有一定的隐蔽性,所以要以经验为基础,列出完整的完成项目所必需的工作,同时要有专家审定过程,以此为基础才能制定出可行的项目进度计划,进行合理的时间管理额和进度控制。在地税发票项目中我们首先将项目工作分解为更小、更易管理的工作包也叫活动或任务,这些小的活动应该是能够保障完成交付产品的可实施的详细任务。
4、全方位的项目监控
项目监控是围绕项目,跟踪进度,掌握各项工作现状,以便进行适当的资源调配和进度调整,确定活动的开始和结束时间,并记录实际的进度情况,在一定情况下进行路径、风险等方面的分析。在实施项目的过程中,要随时对项目进行跟踪监控,以使项目按计划规定的进度、技术指标完成,并提供现阶段工作的反馈信息,以利后续阶段的顺利开展和整个项目的完成。
项目监控是项目管理的重要组成部分,项目监控这项关键活动的目标是综合项目目标,建立项目监控的指标体系及其例行报告制度,然后通过评审、例会及专项审计等监控方法,对新产品开发项目实施监控。
项目监控中最重要的当属对计划的监控。在地税发票项目中,我们将整个WBS工作分解计划细化到天,将每天的工作内容上墙,完成后打勾;建立晨会机制,每天早晨项目组人员围成一圈汇报昨天的工作完成情况并承诺今天的工作进度。每个人都能看到自己和别人每天的工作内容以及完成进度。这样无形之中增加了项目组成员的责任感。
日常的工作检查非常重要,没有及时跟进的检查,相当于什么都没干。在地税发票项目中,我们的检查形式包括:开发人员代码Review、定期重构,测试人员尽早介入等。尤其是测试人员每天将bug入库,开发人员能随时看到自己名下的问题,同时按照bug多少进行绩效考评,增加了开发人员工作改进的压力和动力。
里程碑是项目中关键的事件及关键的目标时间,是项目成功的重要因素。里程碑事件是确保完成项目需求的活动序列中不可或缺的一部分。比如在地税发票项目中我们将软件需求书的最终评审、设计的完成,编码阶段的完成等关键任务作为项目的里程碑。
5、结束语
曾有人在谈到什么是管理的时候说,管理就是制定计划,然后按计划执行。项目实施过程中可变因素很多,但项目管理会促使大家向一个相对较好的目标去努力。项目管理中的需求管理,可以了解项目的细节问题,从而把未知因素降到最低,是需求能够得到更好的控制;项目管理中的项目计划,在关键点设立检查点,使得项目经理能够随时监控项目的进度,及时发现问题,能对出现的异常现象做出快速反应;项目管理中的设计和过程的文档化,可以保证项目流程的清晰和计划性,也能使经验得到充分的积累和总结。试想,如果所有的事情都能够按照计划执行,管理将成为一件简单的作业。但是实际情况并不那么简单,由于环境的变化、认识的偏差、能力的不足等,造成了实际状况与计划的偏离。而要保证项目围绕计划开展,就得用到项目控制。