要进行项目风险管理,首先就要识别出项目有哪些风险。
大多数刚开始实施GJB5000的软件项目负责人,都不清楚怎样识别项目的风险。下面介绍几种识别风险的方法,希望对他们有帮助。
实际上识别项目风险有多种方法,比如:
专家咨询。即通过向专家咨询常见的项目风险和产品风险,再结合项目自身的实际情况来识别出项目可能存在的风险。
独立评估。即组织一些有风险管理经验的人对项目的风险情况进行评估。
风险模板。即使用组织的风险模板和经验数据来识别项目的风险。
经验教训。即通过在项目监控活动中发现的项目问题来识别项目的风险。
风险研讨会。例如:失效模式和影响分析。
头脑风暴法。即组织项目组和相关方共同讨论风险,最后将大家的意见进行归纳和总结,由此得出项目的风险。
风险分类。即按照组织定义的风险类别逐一识别本项目可能存在的风险。风险源和风险分类的方法可以参考GJB/Z 172《军用软件风险管理指南》。
过去的经验。即依据软件项目负责人过去管理项目的经验来识别当前项目存在的风险。
问卷调查法。即通过向利益相关方发放调查问卷的方式来识别项目风险。
这里重点介绍三种方法:
问卷调查法
这种方法看似容易,但实施起来也有一些困难.难点就在于能否设计出一个有效、实用的调查问卷。
这里给出的建议就是按照组织的定义的风险源和风险类别来设计调查问卷。比如:
对于需求风险,你可以设计这样的问题:
需求规格说明是否在开始设计之后还在修改?
需求规格说明中是否存在未确定的内容?
需求的实现是否都有相应的解决方案?
……
对于资源风险,你可以设计这样的问题:
所需的硬件是否能够及时到位?
开发人员是否能够熟练使用开发工具?
开发人员是否具备相关的开发经验?
……
风险模板
所谓的风险模板,实际上就是组织或者项目在风险管理上的经验总结,在模板中已经针对可能识别的风险进行了合理的分类,描述,甚至包括风险的缓解措施和应急措施,因此可以极大地帮助项目团队更好地开展风险识别活动。
项目组所要做的就是从模板中找出本项目最可能产生的风险。
失效模式和影响分析
失效模式和影响分析(FMEA),原本是一种可靠性分析方法。但它所分析出来的失效模式其实就是产品风险。因此它也同样可以用于风险识别。
利用失效模式和影响分析方法来识别风险,需要对软件产品有着深入的了解,并且不断挖掘软件可能的失效。具体来说,就是针对软件产品的各功能模块提出下面三个问题:
弱点:模块有什么样的弱点或者可能的失效?
原由:什么输入或者什么情况会导致模块出现弱点或者失效?
影响者:弱点或者失效的影响对象以及影响方式是什么?
下面是进行失效模式分析的一个模拟场景:
假如这个功能失效,会发生什么样的现象?
这个功能模块会不会在不恰当的时候被调用?
[指着原理图中的某个部分] 这里有没有相关的错误检查功能?
[指着原理图中的某个箭头] 这个箭头的具体含义是什么?假如这个箭头的通信不通,会有什么后果?
假如这个数据流出现中断,你如何发现这个问题?假如没有发现这个问题,会出现什么后果?
这个功能能够处理的最大并发用户数是多少?性能如何?
这个功能和其他功能之间是否有交互?
你对这个功能最没有把握的部分是什么?对测试有什么影响?
在上面的这个场景中,如果开发人员回答相关问题的时候,存在不确定或者犹豫,就可以判断开发人员在这些地方可能没有完全理解需求或者设计要求。而这通常是风险所在。
这正是:
识别风险不用怕,多种方法适用它
勤加练习有经验,下个项目手把拿
参考书目:软件测试管理,作者:郑文强,马均飞,出版社:电子工业出版社
联系客服