2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Scrum 的风险管理

  • 2008-08-11
  • 本文字数:2161 字

    阅读完需:约 7 分钟

Michele Sliger 指出在敏捷开发中每日站立会议、迭代计划会议、发行计划会议、项目回顾(retrospective)以及检讨会议都能应付风险。但是,她也提出结构性风险管理方法。步骤包括,风险确定——每次迭代中整个团队都进行一次,在结果纪录在白板或者活页样板上。

风险分析——凭主观判断、直觉、及经验作定性分析去判断风险和潜在损失。敏捷开发中的短开发周期及定期检讨使这分析可行而有效。这有别於传统项目管理中进行定量分析,按破坏程度配以分数。

风险反应计划——整个团队参与探讨相关措施及行动以减低威胁

风险监察及控制——于迭代后期监察风险及商讨控制策略。以信息辐射体(Information Radiator)方式每日监察风险

Ron Jefferies 指出风险不是问题, 而是在Scrum Master 的观察清单上的项目,记录下哪些事情会出问题。他说,风险有不同的形式,例如内容未组装好、新或不熟悉的技术、团队分散於不同地域、与其他项 目的依赖等。Scrum 团队可以按价值和风险程度来决定故事的优先次序,花足够的时间在有风险的故事上,正确地确定及减轻风险,风险应该以故事形式加上 Backlog 并被处理。

Michael James 提到像 Scrum 的软件开发过程在项目周期中早期小心处理风险,提供各种途径让风险得以解决,像每日站立会议、迭代检讨等。根据 Micheal,Scrum 不需要创建风险纪录,但是,团队能定期管理风险。

有其他人指出, Scrum 不能应付项目外部的风险,她能处理有关於需求转变、缺乏沟通、和团队表现不济的风险,但是项目外部的风险就需要 Scrum 以外的技巧来处理。

Paul Hudson 在 Scrum Development 群組亦同意类似想法, 他提出Scrum 能处理项目中大部份的风险,但是Scrum 不能处理团队层面所不能处理的风险。他指出一些例子来支持他的观点,例如顾客缺乏对Scrum 的认识、第三方产品未能如期运作、项目所依赖的外部因素没有及时出现、团队系统有数据丢失及遭到破坏、顾客有不同的意见声音、顾客代表有私心并与项目目的 相违等。

另一个社区内激烈辩论的题目是“谁负责风险管理?” Michele Sliger 认为,整个 Scrum 团队负责风险管理以及减低风险。

Scrum Development 群組的讨论上,Ron Jeffries 指出,以 Scrum 的术语来说,是产品负责人有责任去管理风险。有些成员同意 Ron 的说法,因为产品负责人最了解业务情况,他 / 她是决定 那些风险需要处理的最佳人选。产品负责人可以从团队各成员收集讯息但最终责任始终归於产品负责人。Peter Stevens 说,

作为主要项目投资者,减轻风险直接关乎产品负责人的利益。Scrum Master 和团队应该帮助产品负责人在 Backlog 作出最佳排列,但是因为产品负责人需直接负责投资回报(ROI),而风险的后果就是成本,所以风险管理就是产品负责人的责任。

群组上其他会众提到风险管理是团队的责任,Scrum 团队所有成员需要同心合力管理风险。由 此可见 Scrum 能否管理风险以及应否明确指定管理风险都存在分歧。大多数敏捷社区的人仕都同意 Scrum 能处理项目有关的风险,但是当风险处於项目外部 就显露出真空。同样道理,到底谁负责风险管理亦没有共识,有意见倾向产品负责人,但有部份则认为整个团队有责任管理风险。

查看英文原文 Managing Risk with Scrum

译者附注:

风险管理是一个很大的研究题目,与软件工程有关的风险管理的文献亦有很多,很值得参考,首先要明白的概念是“风险”和“问题”之间的分别,风险是将来可能发生的事情,而不是现在发生又或者笃定会发生的事情,最明显例子是“顾客缺乏对Scrum 的认识”,在决定是否开始进行项目时这还是需处理的风险,但到项目进行中的事后,这已经是一个需要解决的“问题”。另外值得留意一点,由SEI 到南加州大学有关软件系统工程风险研究都提出一整套风险管理方案,而没有分“项目外部风险”或“项目内部风险”的处理方案。

2007 年南加州大学 Barry Bohem 发表的 Incremental Commitment Model ,虽配以传统定量分险管理计划之外,也有以里程(Risk driven anchor point milestones)型式去决定下一步的工作。

  • 如果项目参与者认为风险程度可以接受而风险管理计划亦都合适,项目可以进行下一步。
  • 如果风险程度可以接受而风险管理计划未能达到需要,那需要延长这阶段工作然后再检讨一次。
  • 如果风险程度很低,亦直接可以进行开发。
  • 如果风险程度太高,可以终止项目。

这方式提供了一个简易的框架让产品负责人作出相关决定。(文中对“时期”(stage)、“阶段”(phase)、“里程”(milestone)有不同意思,阅读时请留意)敏捷开发的历史中不断提及去除浪费的活动,大型系统开发对风险管理的需求实在很明显,然而对於较小型的开发项目(试想像一个四个人月完成的网站),像文中提 到“明确规定的风险管理过程”就会变得累赘,开发人员可能为“合乎标准”而循例完成一些他们或者产品负责人都觉得没多价值的官僚活动,这样就降低了“敏捷度”。另一方面,由於迭代和回顾机制低下,所以也不用担心没有及时引入风险管理措施。


译者简介: 麦天志(Steven Mak),现职系统工程经理,工馀时间除了游水、观赏足球赛事、看电影以外则喜欢钻研有关软件开发过程、另类编程语言、美学、道德、创意、和预测市场等问 题。从小对编程产生兴趣,毕业于香港大学,主修计算机科学,并于伦敦帝国学院获取工商管理学硕士学位。志愿参与 InfoQ 中文站内容建设,请邮件至 editors【AT】cn.infoq.com

2008-08-11 20:246292
用户头像

发布了 21 篇内容, 共 64386 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

对于处理高并发用户请求的一些思考

Java 架构 分布式 高并发

如何实现对 Oracle 的实时数据捕获和性能调优|Flink CDC 专题

Apache Flink

大数据 flink 实时计算

精彩回顾 | 2023工赋Meetup—上海站

工赋开发者社区

互联网出海风大雨大,融云助力 App 守护用户「被遗忘权」

融云 RongCloud

互联网 安全 融云 泛娱乐

为什么ChatGPT不是中国搞出来的?

慕枫技术笔记

人工智能 后端 4月月更

知名度比较高的堡垒机有哪些?大家喜欢哪款?

行云管家

堡垒机 行云管家

提高API采用率的关键:快速创建有效的API监控任务

云智慧AIOps社区

API api 网关 监控宝 API Gateway 监控产品

百度研发效能从度量到数字化蜕变之路

百度Geek说

百度 研发效能 企业号 4 月 PK 榜 效能数字化

AutoCAD(CAD2024)中文特别版Mac/win

Rose

CAD绘图 cad2024激活版

Visual Studio Code for Mac(好用的微软代码编辑器)中文版

Rose

PCB拼板,不得不注意的10个问题!

华秋PCB

电路 PCB PCB设计 拼版 邮票孔

一文读懂华为云云原生产品及开源实践

华为云开发者联盟

开源 云原生 华为云 华为云开发者联盟 企业号 4 月 PK 榜

基于 LowCodeEngine 的低代码组件体系建设和实践

阿里技术

前端 低代码

经验分享|如何用ChatGPT开发一个安卓应用

Onegun

人工智能 移动开发 ChatGPT

IT采购,不再默默扛下“背刺”

脑极体

AI ChatGPT

对谈阿里云祝顺民:经济复苏,云网络如何加速企业效率提升?

云布道师

云网络

World Clock Deluxe for Mac(世界时钟豪华版)

Rose

AI推理服务平台升级,阿里云机器学习PAI推出新规格

阿里云大数据AI技术

人工智能 机器学习 模型 在线服务

开发板如何适配OpenHarmony 3.2

OpenHarmony开发者

Open Harmony

软件测试/测试开发丨ChatGPT在软件测试领域的应用

测试人

软件测试 自动化测试 测试开发 ChatGPT

毕业设计 - 电商秒杀系统

架构实战营 「架构实战营」

昇思MindSpore:人工智能的创新之源

极客天地

Bigasoft Video Downloader Pro :视频网站下载和转换视频器

Rose

GaussDB(DWS)网络调度与隔离管控能力

华为云开发者联盟

数据库 大数据 华为云 华为云开发者联盟 企业号 4 月 PK 榜

免费广告效果监测服务,实现全链路营销效果跟踪

HarmonyOS SDK

HMS Core

Scrum的风险管理_研发效能_Vikas Hazrati_InfoQ精选文章