1、基本概念和背景数据库
项目管理理论是一门综合多门学科的新兴研究领域,共有九大知识领域,包括项目集成管理、项目范围管理、项目时间管理、项目费用管理、项目质量管理、项目人力资源管理、项目沟通管理、项目风险管理和项目采购管理。项目采购管理是指须要从执行组织之外得到货物和服务的过程。一般把货物和服务称为产品,把买方称为业主或对应分承制方的总承包商,而卖方称为承包商、厂商或供应商。项目采购管理通常包括如下主要过程:采购计划编制,询价计划编制,询价,承包商选择,合同管理,合同收尾[ 1 ].对于软件产品,通常采购能够分为两大类,一类是对已经在市场流通的软件产品进行采购。例如,某企业想作信息化建设项目,涉及到数据库,那么它就能够在目前市面流行通用的几种厂家和种类的数据库中选择。例如Oracle公司的Oracle数据库,Microsoft 公司的SQL Sever,IBM公司的DB2数据库等等。而后根据本身的需求,经过询价、签合同、安装培训等过程来购买此类产品。这种采购过程基本已经造成几套通用的解决方案,比较简单,中国企业在处理这类产品的采购时,大部分都处理的较好。个别的企业因为需求分析不清晰,培训工做不到位等缘由,也会产生购买的产品不适用,或不会用的状况。另一类软件产品采购的形式是外包采购。它是指在市场上没有出现现成的产品或者没有适合本身企业需求的产品的状况下,须要以定制的方式把项目(功能模块)承包给其余企业。例如某企业须要实施企业资源计划项目(ERP),虽然能够购买BAAN软件,可是基于本企业业务流程的管理软件必须定制,对于各个原有孤立岛的集成软件,没法购买现成的产品,必须本身开发或外包给别的公司。网络
2、 软件项目外包采购管理的意义许多大型复杂工程项目的实施须要业主、总承包商、分承制商、供应商和开发制造商等共同合做来完成。所以在任何甲方和乙方之间必不可少的涉及到部分子项目(功能模块)的采购活动。目前社会中,企业的信息化、网络化建设正在世界范围内展开。谁先进行信息化改造,谁就早日适应社会发展的要求,得到巨额利润。大规模的企业信息化建设造成了庞大的软件产品市场,促进了软件业的发展。许多项目庞大复杂、高风险而且涉及高科技信息领域,在客观上使企业须要采购和外包许多产品,包括软件产品。主观上,在经济全球一体化形式下,这种外包采购做为采购活动的一种特殊的、更为复杂的形式,在企业中更为广泛存在。企业为了在日益竞争的社会环境中加强自身的核心竞争力,须要根据企业的特色,专门从事某一个领域或几个领域的业务,在某个业务领域内造成本身的核心业务,把企业内部的智能和资源集中在那些有核心竞争优点的活动上;把一些非本身擅长的业务领域的子项目和功能模块外包给有实力和优点的公司,才有利于加快项目的完工进度,下降风险,优化资源配制,保证项目质量,下降成本,创造更高的价值。框架
以电信行业为例,爱立信公司2000年末宣布把手机生产的绝大部分业务外包给新加坡的 Flextronics公司,专一于移动通讯网络设备业务。缘由是爱立信的移动通讯网络设备的销售占爱立信公司销售额的54%,利润达90%以上,占有全球的移动通讯市场分额高达30%,而手机生产的投资回报率很底,甚至出现亏损状况。对于爱立信而言,手机生产"外包"是在信息化时代的战略调整,但愿经过外包生产,调整投资结构,使手机下降成本而且尽快盈利,集中精力稳定和拓展电信业的新市场。出于一样目的,美国的摩托罗拉公司也表示将外包部分地区的手机生产业务。做为手机市场份额最大的诺基亚,在专一于手机生产业务的同时,大力开发周边产业。但愿以手机业务带动相关产业的发展。从三大公司的投资趋势,能够看出,"外包"做为一种先进的国际专业化的生产方式正被一些大公司愈来愈多的采用。我国正处在信息化建设的高速发展阶段,必然会有愈来愈多的企业因为自身的能力限制或业务发展的战略选择,将采起业务"外包"的生产方式。性能
就软件项目外包采购的市场来讲,2000年是企业信息化实施的第一年,国内企业,特别是大型企业的信息化项目开始运做。行业信息化改造重点将由原来的电信、金融、海关等行业转向交通、制造、医疗等传统行业。这些行业因为自身计算机技术水平和业务发展重点的缘由,将会把大量的软件项目外包给软件公司。根据CCID的统计(软件能够分红平台软件、中间软件和应用软件),2000年中国软件市场中应用软件的销售额为147亿元,占软件总市场份额的63.9%.预计到2005年,计算机信息服务和软件市场销售额增加到1750亿元。届时我国软件项目"外包"市场潜力可想而知。测试
3、软件外包采购管理存在的问题虽然在传统行业,许多工程项目的采购活动,例如机械工程项目或建筑工程项目等等已经造成比较成熟的管理体制和标准。可是软件项目的外包管理工做并不象其余行业那样顺利。优化
软件工程项目管理引发普遍注意源于20世纪70年代中期,当时发现70%的项目是由于管理不善而引发。20世纪90年代中期,美国的软件开发仍然很难预测,大约只有10%的项目可以在预约的费用和进度下交付。商用软件一般只有9%(中小型软件公司有16%)的软件项目可以及时交付且费用并不超支。设计
这里有多方面的缘由:软件产品做为一种特殊商品形式,具备高度不可测量性和高度柔性;软件企业开发能力还不太成熟,软件开发大多数还处于手工做坊方式,软件研发企业有其自身的运作方式,人为因素比重大,很差量化管理。因为不肯定因素太多,许多软件开发企业对于本身的项目都难以精确控制进度、质量、资源和成本,那么对于业主来讲,想对外部企业(例如分承制商)保持良好控制力的难度就更大了。再加上具备技术优点的软件开发商通常集中在几个科技发达的大城市,与业主的距离远,相互的交流不方便,所以许多软件采购项目的实际应用效果都差强人意:不适用,进度超期,性能达不到标准,成本过高等等状况时有发生。调试
软件项目外包采购的成功与失败不只仅影响到当前软件项目的质量、成本和工做进度,并且关系到企业信息化建设整个项目的总体结构、性能以及进度,意义重大。特别是当软件项目做为总体项目计划关键路径的一个环节,软件项目采购的进度直接影响总体项目的进度,而且总成本将成指数级增长。因为软件采购的状况特别复杂,涉及的学科领域不只是科学技术上的,还有商业上的和观念上的,软件项目外包采购管理水平的高低,将直接关系到企业整个信息化建设进程。所以软件项目采购管理做为项目管理理论中一个新的研究课题,有必要给予足够的重视。生命周期
3、 目前软件外包采购管理状况美国项目管理协会的"项目管理知识体系指南"(PMBOK)[1]、美国卡内基-梅隆大学软件工程研究所的"软件能力成熟度模型"(CMM)[2,3]和国际标准ISO9000-3[4]中虽然对外包采购管理的流程有过论述,可是他们指出的只是外包采购管理的通常原则;虽然人们能够结合自身企业特色实施标准,具备必定灵活性,可是事物的另外一对立面就是操做过程不具体。这给软件产品的外包采购管理者带来具体操做上的困惑。另外PMBOK体系原则上是应用在各个行业的,缺少针对软件领域的特色作专门的论述。ISO 9000-3系列和CMM虽然是针对软件领域的标准,可是ISO 9000-3的最大的特色是只告诉你要按规定作,不强调效果和后续改善,不强调经验积累和后评估。从这个意义上讲ISO9000注重水平的评估,不太强调提升企业成长的过程,所以对于提升企业的管理水平意义不大;CMM虽然旨在强调企业的过程能力的持续改进,可是它重点强调软件的开发过程管理和产品管理,缺少软件的分发、转交和服务等方面的管理标准,因此也有必定的局限性。进程
4、 基于"共赢"策略的软件外包采购思想本文做者在集成美国项目管理协会的"项目管理知识体系指南"(PMBOK)和美国卡内基-梅隆大学软件工程研究所的"软件能力成熟度模型"(SW-CMM,SA-CMM)和ISO9000-3中关于外包采购的宗旨的基础上提出"共赢"策略的软件外包采购思想。
"共赢"策略的软件外包采购思想旨在利用双方业务能力互补,经过共同合做完成软件外包项目,达到"共赢"的目的,促进双方业务整体能力的提升。这种"共赢"策略要求双方在如下方面达成共识:双方共同关注过程控制,才能保证有效结果;只能成功,不能期望依靠惩罚手段来收回采购成本,软件外包采购项目的失败对整个项目带来的损失是巨大的;在合做过程当中,创建对分承制商关系的管理体系,做为之后合做的基础;重视开发过程的风险评估和采购项目后评估,使得双方业务能力获得持续提升。
传统的外包采购中,采购方只关心分承制商产品的进度和质量,觉得只要分承制商定期、按质交货,就能够圆满结束这次采购活动。有些项目尽管前期进度和质量知足合同要求,可是许可能是以高投入、高负荷、高消耗等手段来保证的,这给后期带来极高的风险。在阶段评审中,若是采购方对分承制商开发过程当中的费用投入、人员负荷、资源消耗、组织结构变化等不闻不问,所以就不能及早预见风险、控制风险。很难想象,后期在费用透支、人员疲惫或流失严重的状况下,分承制商仍能保证产品质量和进度。这种状况下,采购方只能要么加大投入,要么终止合同,并要求赔偿,要么延期验收等等。其反作用可想而知。而分承制商为了减小损失,根据博弈论中子博弈精练纳什均衡原理,必然采起下降质量要求,减小投入的策略,来加快进度。结果最终仍是采购方遭受损失。
5、 软件项目外包采购管理过程为了保证软件外包采购项目的顺利进行,本文做者在上诉理论体系和"共赢"采购策略的基础上,提出和细化了软件项目外包采购的整体框架和具体操做内容,旨在为软件项目外包采购管理人员提供具体的可操做过程。
对于本采购过程,若是业主方因为行业、人员等缘由,没有健全的监控部门,能够聘请具备软件监理职责的公司,或者总承包给具备必定软件工程监控能力的公司。这时的总承包公司角色至关于本文提到的采购部。
软件项目的整个外包采购过程能够分为十个工做阶段,包括整体项目需求分析和设计、子项目的需求分析、厂商选择、分承制商开发、业主阶段评估、交验测试、安装、培训、维护,后评价。
在开始外包采购以前,首先业主要完成项目的整体需求规格说明书和承包项目的需求说明书。通常承包项目的需求分用户需求和分配需求。对于分承包商来讲,业主对软件项目所提出的需求通称 "用户需求".对于业主来讲,系统整体分配给软件的系统需求通称 "分配需求".如何做好子项目的需求分析和管理,请参阅《软件需求》,详见参考文献5.而后业主把需求说明书交给采购组组织采购。采购部门收到需求说明书后,再补充质询调查表、报价指南、综合条款及条件等文件,组成采购质询技术文件发往厂商进行质询。采购部门在厂商质询的基础上,准备了厂商选择和投标估价等技术文件后,向业主送审,提请业主批准和确认所选厂商。在厂商选择和投标估价这两个文件中,采购部根据拟采购的软件对被质询的至少三家以上的供应厂商,就技术开发成熟能力、资源(包括以有的产品、硬件、软件、信息和已通过的培训)、资格和信誉、过去的合做关系、价格、提供的售后服务(包括培训和维护)、分承制方组织配置结构、与质询要求的差别等方面,通过经济技术和商业战略角度出发进行全面评估,通过其余各部门(例如系统工程组、软件工程组、质保组、财务组)审核后,列出供应厂商的优劣次序,择其优者为该项目的供应厂商。采购部通常以月为单位向业主通报软件采购状况。通常以招投标方式或内部评审的方式来肯定分承制商。
分承制商在接到采购部的订货之后,就能够进行工做说明书、用户需求说明书、软件需求规格说明书、软件开发详细计划和成本概预算、测试计划、质量控制方法、风险控制、拟采用的软件工程标准和软件生命周期等文档的制做。而后分承制商把有关的技术资料文件经过业主的采购部送给业主进行校核和批准,而后才能开始开发。
业主在接到分承制商的上述材料后,组织系统工程部、软件工程部、质保部、财务部、采购部、法律部就上述材料中的开发项目视图和需求范围、使用或须要购买的软硬件、进度计划和成本、测试计划与案例、使用的技术和工程标准、人员配置等进行评审,并出具评审文件和风险评估、控制建议书。并由采购部制定采购项目监督评估计划书。合格后,由采购部、质保部及法律人员与分承制商签署详细的软件采购子合同。如须要对软件项目投保,以此来下降风险,须要和分承制商协商后,归入合同文件。
分承制商在签署合同后能够进行设计和开发。业主应该委派采购部监督分承制商的工做。采购部应该有计划的组织质保部、软件工程部的项目计划管理人员和配置管理人员,按期对分承制商的开发活动进度、质量、成本等进行评估,并造成评估建议书。送审业主方的系统工程部、项目管理人员、分承制商的此项目的负责人。分承制方的项目负责人要对评估建议书的建议进行书面回复,并确保实施。
分承制方对全部须要采购的资源(软件、硬件、人力资源等)负责进行检验;采购部有权在任什么时候候对分承制商所采购的资源进行验证,使之符合所采用的规格说明书、规范、标准和其余技术文件所规定的要求,确保分承制商专款专用,创建开发环境。在这个阶段以前,采购部门和分承制商首先要肯定由分承制商提供的验证建议书,并做好准备工做,提交检验用的技术文件,包括厂商说明书、设备性能数据表、配制清单、试验程序、检验技术要求。在检验的物质条件和技术条件均已准备妥善后,分承包商就能够向采购部并经过采购部向业主提出书面检验申请。通常分承包商能够提早三周通知采购部,由采购部提早两周以书面形式向业主提出检验申请,由业主召集系统工程部、软件工程部、质保部组成验证组,在规定的时间、地点检验。经过检验后,分承包商进入项目开发阶段;业主进入监控和评估阶段。对于重大关键项目,业主能够派遣项目监督员短时间或长期进驻分承包商单位。
因为做为外部单位,业主不便时刻监督项目的开发过程。虽然理论上须要把分承制商看做是本身的一个项目部门来对待,归入本身的进度控制和质量控制体系,可是客观上因为分承制商与业主距离较远,人员不熟悉,各自有本身的企业文化和管理体制,双方之间的信息沟通不顺畅,业主难以实时监督分承制商的开发进程和质量。最好的办法就是在分承制商的软件项目的各个里程碑处和分承制商一块儿进行检查和评估。软件项目通常能够划分红若干个里程碑(3-5个为益),分承制商须要提早一周通知采购部组织相关人员来评估。软件项目的里程碑通常指产品设计趋于稳定,中间产品定义趋于明晰,项目开发组真正了解项目实际的关键技术难度和可行的进度计划,开发活动中止,产品进入除错和稳定、随时能够发布的阶段,或当产品设计被删减、资源增长、进度延误的时候。在评估软件质量、进度和功能的同时,还要评估分承制商的人员工做负荷程度、风险、费用和资源消耗状况,并造成文档。由采购部送审系统工程部、软件工程部、项目管理部和分承制商的此项目负责人。
当产品进入交验测试的时候,分承制商须要提早三周通知采购部,采购部于前两周通知业主做好交验的组织评估准备工做。这时业主组织系统工程部、软件工程部、测试部、质保部和采购部,根据分承制商和业主在分承制商开发阶段预先共同定义、评审并批准的测试计划和验收方案进行验收测试,对需求规格说明书中的各项逐个详细的测试。最后以书面的形式给出对整个软件项目的测试评估报告。并对未经过验收测试的软件产品指定相应的补救措施和计划。分承制商交付给业主方的软件产品应当包括:源代码、软件开发计划、仿真环境、软件需求规格说明书、设计文档、软件测试计划、软件测试说明、验收测试计划、软件使用手册、软件安装手册、软件维护手册。必要的话,还包括相关培训计划。
软件采购的一个重要阶段是交货,也是目前常常忽略的阶段。当所采购的软件产品以及硬件运行环境在规定的时间到达采购部时候,采购部要以书面的形式通知业主交货。业主对所交的整个软件产品清单进行验收,并事先通知采购部拆箱日期,要采购部和分承包商的表明按时到场。业主要在接到采购部交货通知后一个月内,对所检查验收的整个软件产品(包括相关的软件、硬件及其附属产品、文档、技术资料等子合同中规定的产品)出具一份交货证实,若是这些提交的软件产品没有受到损坏并与装箱清单相一致,并在业主方环境运行良好;不然出具一份书面通知,说明在某个方面此产品损坏或与装箱单不符,或在业主方提供的环境运行不良。此通知或证实应由采购部和分承制商表明签署。若是在签合同的时候,就规定分承制商负责安装和调试,则相应的过程省略。
最后业主方由采购部把全部的文档归类封存,以备后续相似项目采购的参考查询。同时采购部在两个月以内以书面形式,对分承制商的技术开发成熟能力、资源(包括以有的产品、硬件、软件、人力资源和已通过的培训)、信誉、分承制方组织配置结构,管理能力和企业文化提交后评价报告,做为创建客户关系管理(CRM)的依据。对于这次采购的经验和教训,包括进度控制、质量控制、成本控制、客户关系控制、流程控制、风险控制等方面,采购部以文档的形式在组内讨论并保存。
5、 结束语:做为大型工程项目中的软件子项目或者部分功能模块的采购(外包),因为软件开发的固有特性(风险大,柔性强,人为因素突出,结果不宜测量等),使软件项目的外包采购管理变得十分复杂。如何控制分承制商的开发进度和质量等关键因素,须要在实践中不断探索,并针对具体公司和项目对采购过程有所裁剪。