1、第 1 章 项目风险与风险管理软件研发与实施项目是一种特殊的项目,它创造的产品或者服务是逻辑载体,没有具体的形状和尺寸。它的活动过程更多的是设计过程,所以软件项目质量的更难有统一的标准和参数衡量。软件项目参与的资源主要是人力资源。所以项目的执行过程更难管理。电子文件管理系统的建设和实施是典型的软件项目建设。它的风险和困难也在项目的计划、项目的分析、项目的设计、项目的实施部署、项目的运行维护各个过程中存在。项目执行过程中除了软件项目执行过程中共用的风险外,也有项目本身特点的风险。例如人们对系统的认知程度、各单位办公业务的差异、个人办公习惯方式的不同等都成为了潜在的风险。在项目执行过程中,为最大限
2、度的避免风险、减少风险,必须实施健全工作体系,规范业务流程,加强过程控制,细化实施计划,健全保障机制等措施,加强宏观管理。必须按照软件工程的方面,在各个过程中加强管理。1. 风险识别和分析项目风险识别的根本目的就是要缩小和取消项目风险可能带来的不利后果。在识别出项目风险和项目风险的主要来源之后,必须全面分析项目风险可能带来的后果及其后果的严重程度。当然,这一阶段的识别和分析主要是定性分析。风险识别是风险管理的第一步。它是通过一定的方式,系统而全面地识别出影响建设工程目标实现的风险事件,并加以适当归类和鉴定风险性质的过程。对风险的识别可以依据各种客观的统计、类似建设工程的资料和风险记录等,通过分
3、析、归类、整理、感性认识和经验等进行判断,进而发现各种风险的损失情况及其规律。风险识别的工作相当重要,它是整个风险管理系统的基础。风险的范围、种类和严重程度经常容易被主观夸大或缩小,使项目的风险评估分析和处置发生差错,造成不必要的损失。项目风险识别的方法有很多,任何有助于发现风险信息的方法都可以作为风险识别的工具。以下是一些常用的方法:1.1. 主观信息源出发的方法1. 头脑风暴法(Brainstorming),也称集体思考法,是以专家的创造性思维来索取未来信息的一种直观预测和识别方法。此法由美国人奥斯本于 1939 年首创,从 50年代起就得到了广泛应用。头脑风暴法一般在一个专家小组内进行。
4、以“宏观智能结构”为基础,通过专家会议,发挥专家的创造性思维来获取未来信息。这就要求主持专家会议的人在会议开始时的发言中能激起专家们的思维“灵感” ,促使专家们感到急需回答会议提出的问题,通过专家之间的信息交流和相互启发,从而诱发专家们产生“思维共振” ,以达到互相补充并产生“组合效应” ,获取更多的未来信息,使预测和识别的结果更准确。2. 德尔菲法(Delphi method)又称专家调查法,它是 20 世纪 50 年代初美国兰德公司(Rand Corporation)研究美国受前苏联核袭击风险时提出的,并在世界上快速地盛行起来。它是依靠专家的直观能力对风险进行识别的方法,现在此法的应用已遍
5、及经济、社会、工程技术等各领域。用德尔菲方法进行项目风险识别的过程是由项目风险小组选定项目相关领域的专家,并与这些适当数量的专家建立直接的函询联系,通过函询收集专家意见,然后加以综合整理,再匿名反馈给各位专家,再次征询意见。3. 情景分析法(Scenarios analysis)是由美国 SllELL 公司的科研人员 Pierr Wark 于 1972 年提出的。它是根据发展趋势的多样性,通过对系统内外相关问题的系统分析,设计出多种可能的未来前景,然后用类似于撰写电影剧本的手法,对系统发展态势作出自始至终的情景和画面的描述。当一个项目持续的时间较长时,往往要考虑各种技术、经济和社会因素的影响,
6、可用情景分析法来预测和识别其关键风险因素及其影响程度。情景分析法对以下情况是特别有用的:提醒决策者注意某种措施或政策可能引起的风险或危机性的后果;建议需要进行监视的风险范围;研究某些关键性因素对未来过程的影响;提醒人们注意某种技术的发展会给人们带来哪些风险。情景分析法是一种适用于对可变因素较多的项目进行风险预测和识别的系统技术,它在假定关键影响因素有可能发生的基础上,构造出多重情景,提出多种未来的可能结果,以便采取适当措施防患于未然。1.2. 客观信息源出发的方法1. 核对表法。核对表一般根据项目环境、产品或技术资料、团队成员的技能或缺陷等风险要素,把经历过的风险事件及来源列成一张核对表。核对
7、表的内容可包括:以前项目成功或失败的原因、项目范围、成本、质量、进度、采购与合同、人力资源与沟通等情况,项目产品或服务说明书,项目管理成员技能,项目可用资源等。项目经理对照核对表,对本项目的潜在风险进行联想相对来说简单易行。这种方法也许揭示风险的绝对量要比别的方法少一些,但是这种方法可以识别其他方法不能发现的某些风险。项目管理培训。2. 流程图法。流程图方法首先要建立一个工程项目的总流程图与各分流程图,它们要展示项目实施的全部活动。流程图可用网络图来表示,也可利 WBS 来表示。它能统一描述项目工作步骤;显示出项目的重点环节;能将实际的流程与想象中的状况进行比较;便于检查工作进展情况。这是一种
8、非常有用的结构化方法,它可以帮助分析和了解项目风险所处的具体环节及各环节之间存在的风险。运用这种方法完成的项目风险识别结果,可以为项目实施中的风险控制提供依据。3. 财务报表法。通过分析资产负债表、营业报表,以及财务记录,项目风险经理就能识别本企业或项目当前的所有财产、责任和人身损失风险。将这些报表和财务预测、经费预算联系起来,风险经理就能发现未来的风险。这是因为,项目或企业的经营活动要么涉及货币,要么涉及项目本身,这些都是风险管理最主要的考虑对象。对项目风险的识别,可以根据项目自身特点,采用相应的方法。从某种意义上讲,风险识别方法的主要作用在于建立初始风险清单,而风险调查法的作用则在于建立最
9、终的风险清单。2. 风险对策和管理2.1. 风险及对策1. 需求变更的风险。项目实施单位研发组内部成立需求调研和控制小组(包括总负责人和各子系统负责人)负责配合业务需求调研和需求的决策与控制;系统分析人员通过演示和讲解原型系统引导需求和展示将来系统情况;项目开发过程中,项目建设单位定期派人员监督开发进度,并与开发人员就阶段成果进行交流、沟通。2. 人员稳定性风险。建立良好的沟通氛围,避免相互误解和误会;双方领导应极为重视人员稳定问题,尽力避免因人员离职导致的项目脱节。3. 工作协调风险。充分利用项目决策小组的沟通机制及时沟通和决策;建立定期项目会议和日常的工作会议机制进行沟通、协调;书面备忘录
10、和报告形式进行沟通和反馈提高工作协调效率。4. 设计开发风险。 主要采用快速原型法,首先建立系统的准确原型,构架系统的整体结构及主要功能特点,保证用户的理解和认同,保证方向的正确性; 在开发设计过程中,采用先进的软件过程管理方法,如 CMM、PSP 和 TSP 等,保证设计过程中的每个环节的有效控制,保证项目的整体质量和项目的进度; 采用分包交付的方式,开发完成一部分测试一部分,并通过典型建设使用一部分。在设计过程中,属于基础功能先行开发,保证项目的进度; 在设计过程中,技术的先进性和成熟性要并重;高度重视文档工作,建立文档科学规范的管理。5. 项目进度风险。客观准确的项目实施计划和质量保证计
11、划是保证项目进度的关键;良好的沟通、协调机制能保证项目进度的顺利实施;及时调整和决策项目实施出现的问题的机制是项目进度的保证。6. 团队管理风险。 建立领导小组,对各项目组执行统一的领导,对团队在建设过程中分歧问题进行权威决定,同时建立团队间的沟通机制,保证相互间的了解配合,避免产生误会或者不信任; 优秀的团队负责人是项目成功的一个关键因素,团队负责人要有大局观,要有丰富的项目管理经验,要能对项目的整体进度、项目的质量、项目的人员以及项目的风险有整体的控制能力; 除了关键的团队负责人外,还有团队的构成。比较每个项目最后是有项目组实现的。在团队的组成结构上,要包括开发、测试、文档管理、沟通管理等
12、不同层次不同能力的各种人员。甚至在性格上也要能相互补充,保证整个项目组的和谐统一。在管理方式上,要尊重各位成员,在任务分配和监督上要合理及时。要注重对成员的培训,要保证有足够的激励措施 。7. 其他不可预测的风险。按合同要求,双方本着推进项目顺利进展为共同利益,相互谅解和协商解决。2.2. 风险管理风险管理是指通过采用科学的方法对存在的风险进行识别、估计、评价、应对和监控,选择最佳风险管理措施对风险予以处理,以保证以较低的成本投入,最大限度减少风险损失,获得较高安全保障的过程。1. 风险管理是一种系统的过程,风险管理者通过对风险的识别、评估、评价、应对和监控,来实现风险的管理。2. 风险管理目标是通过减少风险损失,获得较高的安全保障,而不是为了获得巨额的额外收入