项目管理在软件项目中的应用

2017-03-04 02:10沈佳蓓
成长·读写月刊 2017年1期
关键词:项目管理计划软件

沈佳蓓

【摘 要】项目管理对于以应用开发为主的软件企业是行之有效的管理方法。本文结合实际工作进行分析。

【关键词】软件;项目管理

一、项目管理的重要性

软件项目管理是一种科学的管理手段,它是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。软件项目管理的范围不仅包括传统的软件开发过程,还应该包括开发前的准备工作以及运行中的维护工作和对项目的总结工作,因此具有极其重要的作用。

项目管理对于软件开发项目的重要性主要在于:项目管理可以帮助软件开发合理配置人力资源;项目管理可帮助软件开发团队形成顺畅有效的沟通机制;项目管理可以帮助明确软件需求;项目管理可以使软件项目计划周密可行;项目管理可以帮助健全完备的文档资料;项目管理有助于严格控制风险。目前的软件开发正逐步趋向于复杂化、多元化,大多数开发团队中都会出现同时开发多个版本、开发/维护工作并存、多地点同时开发等情况,给软件开发管理带来了前所未有的困难。如果管理不善,必将造成版本混乱,各个开发人员的工作相互交叉、干扰,整个开发团队的工作在一种无秩序的不良状况下运行,严重影响软件产品开发的进度和质量。因此国内的软件企业也纷纷认识到项目管理的重要性,引入CMMI软件成熟度模型。

作为项目管理人员,我参与了较多软件的需求、设计和开发过程,深刻的感觉到了项目管理在软件项目实施中的重要作用。项目管理在软件项目中的应用不仅使参加项目的相关人员自身价值和能力都得到了提升,同时也让承建公司在后期实施类似项目的时候,可以用更少的资金、更少的资源、在合适的周期内对项目进行更好控制。

二、软件项目管理的想法和体会

项目管理的精髓在于控制,通过控制可以衡量项目朝目标方向的进展、监控偏离计划的偏差,以采取纠正的措施使进展和计划相匹配,使项目符合既定的目标。项目的控制阶段超越项目生命周期的其他阶段,它涉及到9个项目管理知识领域中的7个领域,包括项目的整体变更控制、项目的范围管理、项目的时间管理、项目的成本管理、项目的质量管理、项目的沟通管理、项目的风险管理。

下面结合实际工作着重就项目范围变更控制及项目进度控制两方面进行分析:

1.项目范围变更的控制。项目管理最重要也是最难做的一件工作就是确定项目的范围。在以往做过的项目中,经常会遇见这样的问题:业主方并不了解他们真正的需求是什么,于是在项目实施的过程中不断提出新需求,使整个项目跌入需求变化的怪圈。在苏州市某行业业务系统中,我们监理方会同开发方在项目的开始阶段做了充分的需求调研,让业主方将所有的想法尽可能的阐述清楚,并把所有的需求罗列出来。同时要求开发方在取得客户信任的基础上,充分的挖掘客户潜在的需求,理解客户业务,使用客户的语言,站在客户的角度思考问题。最终,开发方在充分需求分析的基础上,做了良好的需求管理,并在软件需求规格说明书经过正式的评审之后纳入基线,建立需求功能矩阵。另外,对于需求的变更,要求开发方严格遵循文档化的变更流程,使软件的开发计划、工作产品和活动与需求保持一致。通过软件的需求追溯,使项目在变更影响分析、跟踪、再设计、测试等方面都有了很好的依据,同时保证了产品的完整性和准确性。因此,范围管理水平是项目成败的关键,范围管理水平低下是导致项目失败的主要因素之一。对于软件项目来说,要实现高水平的项目范围管理,重点要做好用户参与、明确的需求说明以及范围变更管理的程序设置等工作。

2.项目的进度控制。项目建设过程中,工期托延的情况时常发生。因而合理地安排项目时间是项目管理中一项关键内容。它的目的是保证按时完成项目、合理分配资源、发挥最佳工作效率。其实计划和实际状态之间总会存在一些差异,也就是“计划跟不上变化”,有的人因此得出结论“计划没用”。其实,没有“计划”便无从谈“变化”,没有计划就无法记录偏差和修正计划。工作中计划的作用是协调工作、分析变化,如果不根据计划执行并进行必要的控制,计划没有什么意义,也就是说控制过程中计划才能发挥作用。进度控制可以分成四个步骤:计划、执行、检查和行动。首先是制定计划,项目一开始首先要有明确项目目标、可交付产品的范围定义文档和项目的工作分解结构WBS。由于一些是明显的、项目所必须的工作,而另一些工作则具有一定的隐蔽性,所以要以经验为基础,列出完整的完成项目所必需的工作,同时要有专家审定过程,以此为基础才能制定出可行的项目进度计划,以进行合理的时间管理和进度控制。在徐州某大型项目建设过程中,我们要求开发方首先将项目工作分解為更小、更易管理的活动,这些小的活动应该是能够保障完成交付产品的可实施的详细任务。要求开发方在项目实施中,将所有活动列成一个明确的活动清单,并且让项目团队的每一个成员能够清楚有多少工作需要处理。活动清单采取文档形式,以便于项目其他过程的使用和管理。当然,随着项目活动分解的深入和细化,工作分解结构WBS需要修改。另外还需在产品描述、活动清单的基础上,找出项目活动之间的依赖关系和特殊领域的依赖关系、工作顺序。在这里,我们要求开发方既考虑团队内部希望的特殊顺序和优先逻辑关系,也考虑内部与外部、外部与外部的各种依赖关系以及为完成项目所要做的一些相关工作,例如平台的开发必须在集成测试之前完成等。

除此之外,设立项目里程碑是排序工作中很重要的一部分。里程碑是项目中关键的事件及关键的目标时间,是项目成功的重要因素。徐州某大型项目建设过程中,监理方会同开发方设定了里程碑事件,将软件需求书的最终评审、设计的完成、编码阶段的完成等关键任务作为项目的里程碑,使项目进度控制取得了良好的成效,在较短工期内顺利完成了系统建设目标。

三、结论

管理在软件工程项目中的地位和作用与其它工程项目一样,是十分重要的。软件项目管理始终贯穿于软件生命周期的全过程。在软件开发过程中,我们只有理论联系实践,积极从实践中积累经验,注意项目管理中的关键因素,实施有效的管理,才能使软件项目获得成功。

参考文献:

[1]《软件开发中的项目管理》 百度文库.

猜你喜欢
项目管理计划软件
禅宗软件
软件对对碰
Learn to Make a Holiday Plan学做假期计划
谈软件的破解与保护