1 导论
1.1 研究背景
中山市中凯信息科技有限公司(以下简称“ZK 公司”)是一间在中山市成立和经营的中小型软件技术开发及服务公司。该公司专注于税务、民政、城市管理等政府部门行业应用信息系统及社会公共服务信息平台的规划、开发及运营服务。
ZK 公司所属软件开发行业,发展前景一直都被大家看好。随着信息技术(InformationTechnology,IT)在社会生产、生活的各个层面的不断普及与应用,整个社会的信息化步伐进一步加快,IT 应用在广泛的社会组织运营中越来越特显其重要性,近年来国内软件开发的业务不断增长。而据美国商业周刊 (Bloomberg Businessweek)2006 年的数据,全球相当规模的大公司在 IT 的投入甚至可以占到公司年度总财务支出的 50%,甚至更多 (EmieJordan、Luke Sileock,2006)。
在软件开发项目业务量和利润额不断增长的同时,风险也随同如影,无数失败的软件开发项目案例让人们对软件公司的风险有理性的认识。在高度信息化的当今社会,软件开发项目的失败,它给甲乙双方甚至社会带来的损失也可能是惊人的。软件开发项目不可避免地伴随着巨大的风险。更加严重的是,软件开发项目的成败都不是由于某个单一风险因素决定的。
美国专门从事跟踪 IT 项目统计调查的权威机构斯坦迪什团体(Standish Group),从 1994 年开始每年都发布专业的 CHAOS 报告公布各种 IT 项目数据。而依据其对 1999年美国 IT 项目的统计数字讲明,昔时由于存在问题的或是失败的项目带来的直接损失超过 970 亿美元,差不多是美国当年悉数的 IT 投资 2550 亿美元( 共 17.5 万个项目)的40%,而由这些IT项目所带来的间接损失则是没法权量的。而在其2011年的CHAOS报告中,统计了 2002 年至 2010 年期间的项目数据,这些年中超过半数的软件开发项目都被认定为存在缺陷或者是彻底失败,只有 37%的软件开发项目是被认为是成功的,相当部分的项目都存在超出预算成本、工期延误等问题。
从上个世纪的七十年代后期开始,IT 技术飞速发展,各种新的理论、技术、应用日新月异,软件产业的业务量和成交额都在爆炸性增长。另一方面,软件开发项目所涉及业务范围、技术手段、硬件设备等不确定因素也日益增多,面临的各种风险也越来越多,当然可能导致的损失也越来越大。软件开发项目的风险管理也逐渐在理论上和实践上得到 IT 技术人员和企业管理层的重视。
ZK 公司从 2005 年成立以来,业务不断增长,公司规模稳步扩展,当前已有 35 人,大部分都是科班出身的技术人员,人员素质较高,承接的软件开发项目也越来越多,同时也开始有一些技术难度高、项目复杂程度高的项目。业务增长带来利润的同时,技术人员数量的增加也带来成本的增加,同时开展多个项目也增加协调和管理的难度。
对于 ZK 公司这样的中小企业,某一个软件开发项目的成败,可能都会对公司产生很大的影响。对公司每一个软件开发项目开展风险评估显然对 ZK 公司来说是必要和急迫的。
ZK 公司董事长陆培飞很早就意识到这个问题,经过不断思考以及对前几年公司承接的软件开发项目进行回顾,认为很有必要在公司内实施软件开发项目风险控制。2013年,在陆培飞董事长的支持下,本文作者连同 ZK 公司研发部经理林晋一起,根据公司的实际情况,着手对软件开发项目的风险进行研究,并建立一个公司内部遵从的风险评估模型。
1.2 软件开发项目风险评估的重要性
随着软件开发技术的不断发展和变革,软件系统的复杂度越来越高,顾客对软件产品的要求也在不断提高,一个软件开发项目可以给企业带来前所未有的成功,同样也可能带来的是一个巨大的风险。腾讯科技在 2013 年的代码增量就达 3 亿行,同时有数千个程序员在进行开发,项目经理都有上百个,这样庞大的系统如果没有很好的项目管理和风险评估与控制,其软件质量是难以想象的。
风险评估是风险管理中的重要组成部分。风险管理的理论开始在德国第一次世界大战后提出,后来于 1931 年在美国管理协会得到倡导。之后,美国管理协会陆续不断地通过学术会议等多种多样的形式,集中研讨风险管理的理论,并初步实践某些大型企业的日常经营当中。二十世纪五十年代后,美国工商企业才重视并推广风险管理。
1963 年,因为美国出版了《企业的风险管理》,才让欧美各国普遍重视风险管理。尔后,风险管理逐渐转向系统专业化研究,并成为了一门单独的企业管理学科。相对工程项目风险管理来说,软件开发项目风险管理的相关标准与技术还不成熟,起步比较晚。
但无论是那一种风险管理理论和模型,风险评估必然是其中的主要组成部分。
一个软件开发项目的成败可能会直接影响到公司的生存,特别是中小软件企业的生存。面对着越来越更复杂的业务需求,但软件的质量要求和用户的预期却越来越高,而软件企业的项目开发成本一直上升,客户预算却越来越苛刻。因为开发周期长、技术更新快等特殊性,导致软件开发项目的管理难度、企业团队面临的风险日益增大。
对软件开发项目的风险管理和风险评估已成为项目成功的重要抓手。
软件开发项目的过程普遍都是持续的,技术难度越来越大,成果缺少参考对照,没有标准衡量等特点,相对于传统工程项目风险程度高得多。国内的软件开发企业缺乏对软件开发项目风险评估的手段和管理措施,大部分项目都有超出预算或是无法达满足用户需求的风险。因此,软件开发项目风险评估无论是对于项目风险管理还是对于整个项目管理意义重大。
1.3 基本思路与研究方法
公司面临的风险有很多方面,而 ZK 公司目前急于解决的是如何有效对公司实际承担的具体软件开发项目的风险评估,在此基础上才有可能继续完善风险的控制。基于此明确的目标,我们将直接从软件开发项目风险管理相关理论和方法进行研究,重点关注 IT 企业在实施软件开发项目过程中的风险以及如何能有效进行评估。
有系统地对软件开发项目风险管理的研究,是从上世纪七十年代对软件缺陷的预测开始,当时主要是集中研究某个属性是否对软件质量产生影响而进行预测的方法。
Boehm 首次在 1989 年提出了软件开发项目风险管理的概念,在此之后开始有相当的研究人员用各种方法研究软件开发项目中的各种风险管理,并且有一定的成效。
国内和国外的 IT 企业有很多不同的特点,所以在软件开发项目中的风险研究领域中,我国的科研成果和外国特别是欧美国家相比,在理论方法、技术运用、社会效应等等方面都远不及别人。其中也是由于传统的项目管理研究和风险管理研究和实践方面,西方社会以及其企业都已经相当有经验,项目的风险控制已经早有体系,以至于他们的软件开发项目的风险也比我国同期的低很多。从而国外对软件开发项目的风险研究的层面不同于我国,软件开发项目风险管理的理论研究和应用实践也必然不同于我们。所以,我们要结合我国的 IT 软件开发企业的特点来根据实际情况研究。
我们针对特定的企业进行研究,ZK 公司是典型的民营中小企业,其运作相对灵活,对软件开发项目的风险认知明显不同于成熟的 IT 大企业。项目风险评价指标不能简单依赖当前行业成熟的模型,必须精简以及重新构建。
在构建 ZK 公司软件开发项目风险评估模型时,采取理论和实际相结合的研究方法。首先,以项目管理开始,由传统工程项目管理延伸到软件开发项目管理,再结合风险管理领域,重点查阅软件开发项目风险管理的国内外研究成果文献,了解当前软件开发项目风险评估的主要理论和有效实践状况。然后,根据国内软件开发公司的行业特点以及适合中小企业的经营特点,确定适当的风险评估分析方法和评价方法。
通过文献研究,我们了解到计算机软件开发风险管理的研究工作国外开展比较早。
美国在这方面的研究水平世界领先,很多大型的软件开发项目都成立了软件风险管理部门或组织,在软件开发过程中负责管理各种风险,并且提出了各种风险管理模型。
这些风险管理模型的风险评估基本上都是以数理统计及概率论为基础,但也各有特点。
典型的理论模型有:Boehm 理论、Charette 理论、SEI 的 CRM 模型(参见第 2 章)。
我国由于社会环境、管理方法与技术基础等因素,软件开发项目的风险及建设面临的主要矛盾与国外不同,因此在软件开发风险管理领域的研究还暂时不能形成一套自己的理论体系,但在软件项目的风险评估也有一些研究成果,如有研究基于 SVM 方法的软件需求分析方面的风险评估模型(熊齐、潘梅森,2007)。
风险评估作为风险管理的重要组成部分,一般包括风险识别、风险估计、风险评价等三个步骤。
1、风险识别
风险评估的第一步就是风险识别,是分析、判断与归类所面临和潜在风险的过程。
软件开发项目中到底有哪些潜在风险要素、会引起怎样的风险、严重程度如何等问题,是风险识别步骤中必须回答的问题。风险预测与识别就是要找出风险和引起这些风险的主要因素,以便下一步能估计其后果。
2、风险估计
风险估计便是要在风险识别的基础上,使用概率统计理论,对搜聚到的大批材料开展定性和定量分析,估计风险产生的概率及损失的巨细,风险估计可以为风险管理者提供科学可靠的数据,便于风险决策及管理技术选择。
3、风险评价
风险评价便是基于风险识别和风险估计,考虑发生的概率,风险程度等因素,与其它安全风险指标相比,综合描述风险,从而得出是否要采取或采取什么样的风险控制措施的结论。
上述风险评估的三个步骤,每一个步骤都可以采用一种或多种科学的方法和工具来据具体的项目特点单独或综合使用。
在本文作者主持下,ZK 公司的中高层管理人员对自身经验的总结以及公司各项目组的成员充分讨论,决定在风险识别步骤采用流程图分析法、头脑风暴法总结归纳本公司软件开发项目过程中的风险因素并完善为指标体系;在风险估计步骤利用 ZK 公司之前实施的项目以及公司中高层管理人员以往参与的软件开发项目的实施结果和经验,以及组织行业专家运用专家调查法完成指标的关联程度和风险概率的估计;在风险评价步骤则运用层次分析法和模糊综合评价法将定性描述转化为定量的描述,使风险程度能较准确地被描述;还要划分风险严重程度级别,从而为风险决策提供科学的依据,可操作性强。最后,本文作者连同 ZK 公司技术部经理,利用上述理论和工具方法结合公司实际情况构建一个合适的风险评估模型,并以 ZK 公司当前正在实施的软件开发项目来利用该风险评估模型进行评估和验证(采用到的方法和工具参见第 2 章,评估模型构建及应用参见第 4、5 章)。
1.4 创新点
综观国内外软件开发项目风险评估研究现状,基本都是在传统项目管理和风险管理的理论基础上,再联系软件开发项目的特点进行研究。研究的方向基本上都是将软件开发项目的风险进行识别、分类,并分别对风险进行处置或控制,有些研究是如何进行风险防范,建立软件开发项目风险评估模型的研究并不多。研究对象多数都是针对大型软件开发项目或大型软件公司,针对中小企业自己本身以及在中小型软件开发项目上的应用研究并不多见。所以,本文研究的创新点在于:运用风险管理的方法,以层次分析法和模糊综合评价法为技术手段对 ZK 公司公司实施的软件开发项目进行合理、快速的评估。同时,将软件开发项目的风险评估结果划分为“V1(极低),V2(低),V3(一般),V4(高),V5(极高)”五级,更加直观,有利于 IT 中小企业负责人用最低的成本快速了解公司各项目的情况,集中精力和资源处理好相关的项目。
第四章A公司成本控制存在的问题分析一、前期决策阶段成本控制存在的问题项目前期决策阶段包括项目的可行性研究、市场调研、项目风险预测等等工作。在充分调研的基础上提出项目建设的各种可行方案,然后在技术上和资金上对各个项目的成本、收益、利润进行比...
第4章项目风险分析与控制对项目进行各种风险因素进行分析,并进行有效管控,可以降低各类风险对该项目的不利影响。同时,还可以将项目风险合理转化,分散给项目各参与方。因此,培训中心项目的风险分析与控制是该项目实施的重要部分。4.1风险分析建...
第七章项目风险分析该项目属于物流房地产项目,有着较大的投资金额,项目在建设与开发的时间上比较长,存在各种各样的影响因素,并且在项目建设期间,会受到来自市...
1绪论1.1研究背景项目管理是一门关于项目成本、时间、范围和人力等资源管理的科学。这种管理方法起源于美国。在20世纪50年代后期,先后在一些领域进行了应用,并取得了良好的效果。但是,在当今知识经济时代,尤其是IT行业,新技术、新产品、新市场层出...
第6章总结当前,供应链管理已经成为企业经营管理的一个重要方面,在经济全球化环境下,企业需要建立适合本企业发展的供应链并对其进行管理,帮助企业提高自身的竞争力。在本文中对供应链管理中最关键的环节采购管理进行研究,针对A公司目前采购管理的...
本文结合国内外 ERP 风险管理的理论基础和易华录公司实际经营管理情况,根据风险管理理论对 ERP 实施阶段的不同阶段不同类型的风险进行识别,主要包括四大类风险:软件选型和服务商风险、组织管理变革风险、项目实施过程风险和安全及运维风险,并利用科学的分...
第一章绪论一、研究背景房地产行业是我国的支柱产业,作为前导性的产业,产业链较长、关联度较高,房地产行业所涉及的建筑材料有76大类、2500多个规格、1800多个品种。房地产业的发展对于加速城镇化建设,增进社会健康发展有着举足轻重的作用。当前在国家...
摘要随着经济的发展,人们的生活水平显着提高,汽车成为寻常百姓家的重要交通工具。随着经济全球化的发展,汽车产业的发展面临机遇和挑战。研究汽车公司产品开发中的风险管理有利于保证汽车项目正常运行;有利于减少汽车公司项目资金的损失;有利于树立汽...
第2章相关理论综述2.1科技企业孵化器2.1.1科技企业孵化器的内涵1959年,美国学者约瑟夫曼库索首次将企业孵化器(BusinessIncubator)的概念定义为一种介于市场和企业之间的新型的社会经济组织,协助初始创业的小微型企业成长为能够自我运行并迅速...
第3章巴莱资本与贵州魔芋项目的案例分析3.1巴莱资本概况上海巴莱资本(集团)是一家集直接投资(金融股权、高端制造、现代农业、生物科技)、地产置业、金融服务于一体的综合性投资集团。上海巴莱资本(集团)总部位于上海,分支机构和投资区域遍布浙江、...