软件项目中客户与开发商的互动关系

文章作者 100test 发表时间 2007:01:15 18:24:38
来源 100Test.Com百考试题网


摘要:软件项目是需要客户自始至终高度参与的项目。客户在项目中的工作质量以及客户和开发商的互动关系是决定项目成败的关键因素。本文在介绍客户在软件项目中的工作范围和作用的基础上,运用项目管理中的组织结构理论和沟通理论,分析了客户和开发商的组织结构关系对项目的影响,尤其是对双方沟通协调和互动关系的影响。
客户是提出需求,提供必要的资金,以达到通过开发商获得软件或服务的组织。开发商是根据客户的需求开发软件,并向客户提交软件和服务的组织。在软件项目中,由于客户需求难以精确定义,双方只能在项目过程中通过“逐步求精”的方法获得最终的软件产品,因此软件项目中开发商和客户的互动关系对项目的成功至关重要。本文主要有两个内容,一是介绍客户在软件项目过程中的作用,从中可以看出客户和开发商互动关系的重要性。二是探讨客户和开发商的组织结构对双方互动关系的影响。
一、软件项目中客户的作用
软件项目过程通常包括客户需求的识别、需求和方案的确定、开发、测试、验收和投产运行几个阶段。在软件项目的整个生命周期中,客户是需求的提出者、软件和服务获得策略的制定者,它选择开发商并监控其开发过程,对开发商在各阶段提交的结果进行评审和确认,对最终产品进行测试验收和组织投产运行。在项目过程中客户和开发商应始终保持有效的沟通,逐步精确定义需求,及时向对方提供和反馈信息。下面根据ISO/IEC TR 15504-2对客户在软件项目中的作用进行具体介绍, 从中可以看出软件项目中客户和开发商互动关系的重要性。

1.识别需求和确定获得策略
在项目的初始阶段,客户首先认识到开发软件的需要,然后通过可行性研究,明确目标,确定需求,确定软件获得的策略,并定义软件验收的标准。

2.开发商的选择
客户在完成项目初始阶段的准备工作后,开始选择开发商。这包括:准备需求建议书,列明项目的工作范围,软件的性能指标,对开发商交付物的要求,进度要求,评标的标准等。开发商根据客户的需求建议书,准备和提交方案建议书。客户根据开发商的方案建议书选择开发商,与开发商谈判并签订合同,明确期望,双方的责任和义务。

3.监控开发商
客户要监控开发商开发过程中的活动,执行合作活动,定期交换技术进度信息,按双方已同意的需求监控开发商的工作情况。

4.客户验收
按验收标准验收,根据双方已同意的需求对提交的产品或服务进行评审。

5.需求逐步求精过程
客户与开发商保持沟通,收集,处理和跟踪软件过程中的需求,以便精确定义需求和修正不恰当的需求,评估需求更改对项目的冲击。

6.运作过程
客户要识别和监控由于软件的引入和运作可能带来的风险,监控运作中出现的问题和产品质量,识别对开发商提供支持服务的需求,监督开发商提供服务的质量。


二、组织结构及其对项目的影响
通常参与项目的客户和开发商不是个人而是组织,组织环境是项目成败的重要决定性因素。这里介绍组织结构对项目的影响。
由于组织目标、资源和环境的差异,造成组织的多种结构形态。最常见的组织结构有三种,职能型结构、项目型结构和矩阵型结构。
1.职能型组织
职能型组织是一个等级组织,每个人有一个明确的主管,组织内按专业将人员分组,如:生产部,销售部,财会部,工程部等等。职能型组织也有项目,但项目的范围限于职能内,例如:职能型组织的工程部独立于生产部和营销部做自己的工作。在纯职能型组织内,一个新产品的开发,其设计阶段通常被称为设计项目,它只有工程部的人员参与,当出现有关制造的问题时,问题按等级逐级传递到工程部经理,工程部经理向生产部经理咨询,然后再按等级反馈到工程部的项目经理。职能型组织的优点是没有重复活动,职能优异。其缺点是狭隘、不全面,反应缓慢,不注重客户。

2.项目型组织
组织中的绝大多数资源参与项目工作,项目组人员被组织在一起专门从事项目工作,项目经理有很大的独立性和权威。在项目型组织中也有称为部门的组织单位,但这些组织单位要么直接向项目经理汇报,要么为各个项目提供各种支持服务。项目型组织的优点是能控制资源,向客户负责。其缺点是资源利用率低,项目间缺乏知识信息交流。

3.矩阵型组织
矩阵型组织混合了职能型组织和项目型组织的特点。在矩阵型组织中,项目组通常有全职的项目经理,项目组的其他人员来自各个职能部门,他们在必要时可以为项目兼职或全职工作一段时间,因此项目组的成员具有“临时性”,但作为项目组整体来说,具有“专职性”。因此,矩阵型组织的优点是能有效利用资源,职能专业知识可供多个项目共享,可以促进学习和交流知识。由于项目组在组织内部可以有效的沟通协调一致,从而形成对客户和项目负责的项目队伍,因此它具有注重客户,增强客户满意度的优点。其缺点是项目组人员一方面向项目经理负责和报告工作,另一方面要向职能经理负责和报告工作,这种双向汇报关系,需要平衡权利。在矩阵型组织中,根据项目经理的独立性和权威的强弱以及项目组内全职人员的多少,分为强矩阵型和弱矩阵型。本文所指矩阵型组织一般是指中强型矩阵组织。

三、客户和开发商的组织结构关系对项目的影响
如上所述,客户和开发商在软件项目过程中的互动关系尤为重要。但双方的互动行为受到各自组织结构的深刻影响。这里提出一个组织结构关系模型,初步探讨组织结构对软件项目的影响。作者从事软件项目的开发管理多年,积累了很多案例,但本文限于篇幅不能举证。
信息沟通是项目的生命线,一般而言,客户和开发商之间建立和维持一条沟通渠道,是双方进行低成本有效沟通的理想选择。但是如果项目的一方是职能型组织的多个部门或多个相对独立的子组织,而且它们不能组成内部协调有效的项目组,那么项目的另一方不得不与对方的多个部门或子组织直接沟通协调。根据组织结构的三种主要类型,软件项目中的客户和开发商之间可能出现下表所列的九种组织结构关系,这些关系对双方在项目中的沟通协调和互动起着决定性的影响。下面详细分析双方组织结构关系对项目的影响,尤其是对双方沟通协调的影响。

开发商
职能型 矩阵型 项目型
职能型 CF-VF CF-VM CF-VP
客户:矩阵型 CM-VF CM-VM CM-VP
项目型 CP-VF CP-VM CP-VP
客户-开发商组织结构关系
注:表中CF,CM,CP分别表示职能型、矩阵型、项目型组织
表中VF,VM,VP分别表示职能型、矩阵型、项目型组织

1.CF-VF: 客户和开发商都是职能型组织
如果客户的项目限于单个职能部门内,而且开发工作由开发商的一个职能部门完成。在这种情况下,只需要双方的部门经理进行有效的沟通协调。双方的沟通模式见图CF-VF(1)。例如,银行的人事部委托某公司开发劳资管理软件,由于项目小,项目从需求的提出,实施和投产,仅在客户方人事部和开发方软件部内执行,双方的沟通协调简单、直接,因此项目容易成功。
如果客户的项目较大,必须有多个职能部门参与工作才能完成项目,但开发工作由开发商的一个职能部门完成。项目沟通协调模式见图CF-VF(2)。从图可以看出,随着项目参与方的增加,项目沟通成本迅速增加。当项目只有两个参与方时,只需要维持一条沟通渠道,当项目有三个参与方时,需要维持三条沟通渠道,当项目有五个参与方时,需要维持10条沟通渠道,当项目有20个参与方时,需要维持190条沟通渠道。数学上可以证明,当项目有N个参与方时,需要维持N×(N-1)÷2条沟通渠道。在这种情况下,开发方的部门经理要与客户方的多个职能经理进行有效的沟通,仔细识别客户的各职能部门在项目中的作用和利益,并与客户的职能经理的上级主管进行适当接触,才能较好地协调项目。当项目参与方很多时,需要花费较大的成本才能建立和维持有效的沟通渠道。如果不能建立和维持有效的沟通渠道,软件项目就很容易失败。因此,建议(一)在项目规划时,应尽可能减少项目参与方的数量,(二)在项目实施中,尽可能合理分割项目,减少项目中各参与方的关联程度。(三)在签订合约时,要求客户指定专门的项目经理或项目协调人,以避免在项目工作中由开发商去协调客户的不同部门。但要记住客户是职能型组织,客户项目经理对组织内各职能部门的协调能力很弱,开发商除了要保持与客户项目经理所在职能部门的主要沟通渠道外,还要与客户的其他部门接触沟通,以弥补主要沟通渠道的不足,沟通模式见图CF-CF(2)’。
如果开发工作由开发商的多个职能部门完成,沟通模式见图CF-CF(3)’。在这种情况下,客户应在签订合约时,要求开发商成立项目组,指定专门的项目经理,以避免在项目工作中由客户花很多精力去协调开发商的不同部门。


相关文章


项目管理过程之进度控制
案例--合同管理与索赔案例25
案例--合同管理与索赔案例24
软件项目中客户与开发商的互动关系
TurboCRM助力合众思状科技解决方案
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛