软件项目管理探析

时间:2020-08-30 16:06:27 项目管理 我要投稿

软件项目管理探析

  软件项目管理是门科学,也是一门艺术;它是一个复杂的系统,决定了软件项目成败的关键。软件项目管理虽然没有非常高深的理论,但要真正实施起来,也绝非易事。

  1.引言

  随着信息技术的飞速发展,软件产品的规模和复杂度随之增加,传统作坊式的开发方式逐步被以项目组为单位的协作式开发方式所取代,这就必然涉及到对软件项目的管理。实践表明,一个软件项目的成败,不在于其项目组的技术人员的技术水平,而在于是否采用了合适的管理。好的管理方式不一定能使项目完全成功,但是一个不合适的管理模式往往会导致软件项目的失败。软件项目管理目前还没有引起人们的足够重视,究其原因:首先是人的传统观念,软件项目管理不为人们所重视,从项目主师到软件设计开发人员都认为软件项目管理可有可无;另一方面软件工程是一个新兴的学科领域,软件项目管理的问题也是刚被提出的,还没有多少经验可以借鉴或引用。同时,由于软件产品的特殊性,使软件项目管理涉及到很多学科。因此,对软件工程管理,人们还缺乏经验和技术。但事实证明,由管理失误造成的后果要比程序错误造成的后果更为严重。根据多年来型号产品的研制过程可以发现,很少有软件项目的实施进程能准确地符合预定目标、进度和预算的,这也就足以说明软件项目管理的重要性。

  2.软件项目管理的概念

  软件项目管理是指在软件项目活动中运用专门的知识、技能、工具和方法,使项目能够按照预定的成本、进度、质量顺利完成,通过计划、组织、控制等一系列活动,合理地配置和使用各种资源,对成本、人员、进度、质量、风险等进行分析和管理,以达到既定目标的过程。这一定义不仅仅是强调使用专门的知识和技能,还强调项目管理中各参与人的重要性。软件项目管理的根本目的是对软件开发的各个阶段进行管理,增强对软件开发的控制能力,提高软件开发质量。项目管理可以让一个项目获得高额的盈利也可以让一个项目损失惨重,而编码的影响力则相对小一些。软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。

  3.软件项目管理的内容

  软件项目管理是一种科学的管理手段,它是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。管理的范围涉及人员的组织与管理、软件度量、项目计划、风险管理、质量保证、过程能力配置管理等几个方面,这几个方面都是贯穿、交织于整个软件开发过程中的。从软件工程的角度讲,软件开发主要分为六个阶段:需求分析阶段、概要设计阶段、详细设计阶段、编码阶段、测试阶段、安装及维护阶段。不论是作坊式开发,还是团队协作式开发,这六个阶段都是不可缺少的。根据项目管理知识体系中的定义,软件项目管理可以分为以下几个方面:

  (1)集成管理:项目计划制定、项目计划实施等。

  (2)范围管理:范围计划编制、范围定义核实、任务协调等。

  (3)时间管理:项目任务分解、进度计划编制、任务持续时间估算、进度计划控制等。

  (4)成本管理:资源计划编制、成本估算、成本预算和控制等。

  (5)质量管理:项目质量计划编制、软件质量保证、软件质量控制、软件过程改进等。

  (6)人力资源管理:组织的计划编制、人员职责的分配、团队合作发展等。

  (7)沟通管理:建立沟通渠道、信息交换管理等。

  (8)风险管理:项目风险识别、项目风险分析、项目风险优先分析、项目风险控制等。

  (9)采购管理:采购计划编制、合同管理、合同收尾等。

  在软件项目管理中,有几个关键因素,它影响着软件项目的成败,下面就这几个关键因素进行探讨。

  4.软件项目管理的关键因素

  (1)合理配置人力资源

  众所周知,人是决定组织和项目成败的关键,也是影响软件开发质量的最关键的因素,因此软件项目管理应该以人为本,有效管理人力资源,合理配置人力资源。应该根据项目组成员的组成结构情况,合理搭配,充分发挥每位成员的技术专长,做到人尽其能;组织组建好项目团队,培养团结一致的团队精神,规范良好的职业道德;建立健全完备的奖惩制度,落实权利责任制度,做到权责明确,并在项目进程中能及时化解各种人事冲突,营造良好的团队协作环境。

  (2)顺畅有效的沟通管理

  软件项目管理是一项知识性极强的工作,对人的依赖性比其它行业更为突出,因此加强人员之间的有效沟通,实现顺畅有效的沟通管理是软件项目成功的另一个关键因素。沟通管理是一个收集、存储、配置和发布项目生命周期内所形成的各种信息的过程,它把成功所必须的因素——人、想法和信息之间提供了一个关键连接。对于项目来说,要科学地组织、指挥、协调和控制项目的实施过程,就必须进行信息沟通。这里的沟通包括两个方面,一个方面是软件项目组开发人员与用户的沟通,另一方面则是软件项目组内人员的沟通。前者是做好软件需求分析所必须的;而后者则有助于组内成员的彼此交流,减少理解错位,实现信息畅通,改善人际关系,化解可能的冲突,加快项目的进度。沟通的方式是多样的,可以采用常用的项目组例会方式,可以通过面谈彼此交换意见;也可以利用方便快捷的通讯工具如电话、EMAIL、传真等方式加强信息的沟通;总之,顺畅有效的信息沟通,可以取得彼此的理解,剔除项目进度中的“BUG”,有利于项目按计划顺利开展。

  (3)正确可靠的软件需求

  软件需求是软件项目的根本所在,需求不明确,软件项目开发范围不确定,项目开发就会失去方向,容易造成开发的产品和用户实际的需求“南辕北辙”,最终导致项目的失败。一个可靠的需求,也是项目管理的关键因素之一。软件需求应当是项目有关的人员一致同意的`、清楚的、完整的、详细的、可实现的和可测试的需求,开发人员应该反复和用户进行沟通,认真听取用户的意见,及时归档记录,并适时发掘用户的潜在需求,最大限度地满足用户的目标,开发出用户最理想的产品。最后应拿出开发人员和用户一致认可的软件需求说明书,并加以确认。在项目开始以后,应该尽最大可能不更改需求,要与用户进行很好地沟通,以确保开发过程能按照需求进行,减少需求变更带来的风险!因此,正确可靠的软件需求也是项目成功的重要保障。   (4)周密可行的项目计划

  “凡事预则立,不预则废。”软件项目实施过程中,还必须有一个周密可行的项目计划。软件项目计划的目的是为完成软件工程和管理软件项目而制定的合理的计划,它包括以下步骤:估计软件产品规模及所需的资源,制定软件开发计划、软件测试计划和软件质量保证计划,评估软件风险和协商约定风险解决办法,而且要标志出几个阶段性的里程碑,这些都是极为关键的。因此,要想成功进行项目管理,就要对计划高度重视、周密制定、严格执行,只有严格执行计划才能使项目管理得以成功实施。

  (5)健全完备的文档资料

  软件项目的文档作为软件产品的主要形式之一,集中体现了软件人员的劳动成果,软件研制是脑力劳动,具有不可见性,为了实现对软件研制过程的管理,在软件研制过程的每个阶段,都应按规定的格式编写出完整准确的文档,文档是软件中不可缺少的组成部分,在整个软件生存周期中均占据重要位置。软件研制过程中文档可以作为开发人员在一定阶段内的工作成果和结束标志;还可以向管理人员提供软件开发过程中的进展和情况,把软件开发过程中的一些“不可见的”事物转换成“可见的”文字资料。此外,健全完备的文档资料在项目接近尾声时也便于软件的测试与后期的维护工作,在项目结尾时,健全完备的文档资料也为人员的培训和项目的再开发发挥重要作用。因此健全完备的文档资料是软件项目成功的重要因素,在项目管理过程中应该高度重视。

  (6)严格的风险管理

  软件项目的管理是存在风险的,我们应该提前重视风险,并有所防范,最大限度减少风险的发生,实行严格的风险管理是有效的手段,建立风险项目检查表是进行风险识别的有效方法。主要涉及到产品规模风险检查、过程风险检查、技术风险检查、开发环境风险检查等。

  5.结论

  软件项目管理是门科学,也是一门艺术;它是一个复杂的系统,决定了软件项目成败的关键。软件项目管理虽然没有非常高深的理论,但要真正实施起来,也绝非易事。因此在软件开发过程中,我们应该理论联系实践,积极从实践中积累经验,注意项目管理中的关键因素,实施有效的管理,使软件项目获得成功。

【软件项目管理探析】相关文章:

软件项目管理中的进度控制问题探析06-12

软件项目开发管理10-14

软件项目管理浅析09-11

医院项目资金管理探析09-08

企业项目成本管理探析07-19

软件项目组合管理战略09-08

软件项目管理案例教程06-30

软件测试与项目管理11-02

软件项目的沟通管理06-08