系统变更的风险管理
风险管理是提高和保持系统可用性和扩展性的最基本和最重要的方面。确定系统变更风险的方法:直觉法、交通灯法、故障模式及影响分析法
故障模式及影响分析法(Failure mode effects analysis,FMEA),其实也是直觉法和专家评分法的量化应用。
通过三个因素对故障现象进行打分,即故障的可能性、严重性、可检测性,分别进行1/3/9作为打分的范围。
可能性: 即故障真实发生的概率高低。
严重性: 指如果故障发生,对业务和客户产生的总体影响,可能是可用性、也可能是利润。
可检测性: 指如果故障发生,你是否能够注意到或者监控到。
针对故障问题,进行这三项的打分,即可能性X严重性X可检测性,得分即为特定组件、任务在行为中的整体风险。
功能 | 故障 | 影响 | 可能性 | 严重性 | 可检测性 | 风险分数 | 应对措施 | 修正分数 |
登录服务 | 用户状态数据无法写入 | 用户无法注册 | 3 | 3 | 3 | 27 | 测试注册,发布后进行脚本验证 | 3 |
登录服务 | 权限错误 | 数据未隔离 | 1 | 9 | 3 | 27 | 发布后检查异常交易 | 9 |
通过不断对风险进行记录和评估和改善,逐步完善系统的质量。通过风险的积累,可以识别出各“功能”模块的风险水平,进一步进行风险管控,例如不同风险水平的模块,进行差异化的发布窗口管理,通常况下可以一刀切,类似工作时间不能发布、日常迭代集中发布集中检查和应急处理,超过一定复杂度的模块和项目,单列发布等等措施,通过一定的量化办法则还可以进一步优化:
例如: 工作时间发布的事项总体风险要控制到50分以下,日常夜间发布的风险要控制200分以下,配置变更控制在50分以下,这样不同模块的发布就进行了适度的差异化,方式更灵活风险也可控。
可给不同层级岗位配置不同风险冗余分数,通过审批评估,批准额外的风险分数。
通过一定的量化方式,把系统风险可视化,并逐步积累和完善风险应对措施,提升风险管理能力和系统稳定性。