AICon 深圳站聚焦 Agent 技术、应用与生态,大咖分享实战干货 了解详情
写点什么

为确保敏捷行为的实施而制定合约

  • 2016-04-18
  • 本文字数:2258 字

    阅读完需:约 7 分钟

Martin Kearns 在澳大利亚墨尔本的第一会议上发表了一场关于敏捷合约的演讲。InfoQ 对他进行了采访,内容如下:敏捷合约与瀑布项目的合约有何不同之处,合约该如何应对范围内的变化,在开发过程中的主要干扰或延误,可以做些什么来确保合约能提供敏捷行为的权利和帮助所有那些相关的人在基于敏捷思维的基础上一起工作,当机构想要在敏捷软件开发中使用合约时律师所起的作用,以及为了能够使用敏捷合约,机构必须做什么。

InfoQ:为什么您认为合约对敏捷开发来说很重要?

Kearns:一所机构,无论何时需要第三方的参与来传送结果、提供支持,增强所作用和增加金融业务都是交易的一部分,而合约是成功的基础。最重要的是合约代表着该途径的意旨、预期行为和责任制。

InfoQ:敏捷开发的合约以何种方式不同于瀑布项目的合约?

Kearns:最重要的不同是在支持文件中,总是试图删除瀑布项目的变动,许多费用和重点都在于后续变化(即范围蔓延),这是不可避免的,无论计划多么提前完成。这就自然而言地创造了一种不利关系,即双方都努力专注于他们自己的最大利益。

敏捷合同开始于允许项目失败的构想,因为合约体系必须允许双方基于一个可怜的商业理念构建一个合同。太多的项目因为某一方的自身利益而持续。还需要有一个延伸的退出条款,因为一旦传输的价值比迭代的成本还要少,那就没有理由继续了。在栅栏的另一边(供应商),如果客户行为和思维不支持敏捷方法,那么在不产生损失的情况下,退出的能力就是必不可少的。对敏捷合约来说,共同的责任是必要的,不能降低到一种单方的交易。

InfoQ:在大多数“传统合同”中,必须交付的范围是一致的。在这段时间里你想用敏捷来接受变化,适应范围。敏捷合同怎么支持呢?

Kearns:在第二到第四次的任务迭代中,我努力确定的一件事是对积压任务以及用户故事的周期时间的自信度,为了敏捷合同的成功,我们需要对计算交付混合项目的成本有一个很好的处理。为了做到这点,我通常喜欢参与 Time 和 Materials 建设中最初的冲刺。

一旦我们有可以接受的自信水平,我喜欢用工作来确定以固定成本可以实现的很多功能和 / 或故事点。一旦认为这是“可行的”,我就可以像进入我的夜间俱乐部,“1 进 1 出”。我改变的方法就是一直说“是”,客户可以提高项目的最高限度或者删除大小相等的故事 / 功能。很明显当项目的最高限度得以提高,成本和更多可能的时间也会提高。

InfoQ:您能就敏捷合同是怎么处理开发过程中的主要干扰或者延迟,举个例子吗?

Kearns:我最喜欢的方式之一是创造一个障碍的气泡图,这样我可以追查一下随着时间延迟的轨迹。一旦图上出现气泡,它就会随着障碍存在的时间变长,开始向右移动。随着因为无所作为而引发的相关交付影响变得越来越显著,我们就会“冒泡”。一旦气泡离开容忍边界,相关成本(气泡大小)就转变成一个变化请求。

当项目延迟的影响不再被目前的合同所忍受,那么它就必须通过合同修正处理。这可以通过减少故事点的限度,或者增加项目支出而产生。正如我们所看到的气泡每天超出项目容忍度,而我们在它们成为财务问题之前就提供最大的领先时间来解决问题。

InfoQ:在您的演讲里提到敏捷合约应该确保敏捷行为帮助所有那些相关的人在基于敏捷思维的基础上一起工作。您能就此详细说明一下吗?

Kearns:我喜欢在我的合约里看到的一件事是,早期失败是安全的。如果我作为一个供应商,已经证明了你的项目假设是错误的,期望值不可能达到,因为我得到报酬以及我的客户在能够重新分配项目资金到其他地方上看到价值,是很重要的。仅此一项在最初的讨论中就产生了一个不同的重点,早期的迭代作为结果,也更加重视起来。

另一件关于敏捷合约的事是,因为范围不能高度提前定义。传统的供应商交付也设计为逐渐形成以及独立于项目其他元素,以保护供应商的利益。不幸的是,项目成果是相互依存相关的,需要重新设计敏捷合同条款。一种可以解决的方式,一种可以设计正确行为的方式,是各方“以原则工作”的必要手段。这一责任必须在两个机构中共享。这对我而言已经是我在对这种合同安排负责的律师间的合作中,学会欣赏的东西。因为原则共享,它提供了一个公平的与他人交战的游戏领域。这样原则的一个例子是将明确地显示由供应商团队在商业决策上要求的响应率,以实现目标的发布日期或者连续的对市场的交付速度。

在合同计里嵌入敏捷思维有很多好处。我想提及的最后一件事是供应商管理在这种情况下的作用。随着我们在合同评审(2-4 周)上有更快的节奏,会持续关注于结果以及迭代的交付产品如何增加价值和 / 或认知。通过正式的循环反馈,定期重新调整关系,透明度也以此鼓励各方关注结果,互惠繁荣,因为成功是共享的。

InfoQ:您认为当机构想要使用敏捷软件开发合约时,律师该起到什么作用?

Kearns:律师有着同样确保项目条款反映交付的工作性质以及客户利益得以保护的责任。我觉得这个没有改变。敏捷合同的迭代是通过使用更精细的信息和定期的审核节奏来降低风险的。

InfoQ:为了能够使用敏捷合约,机构自己需要做些什么呢?

Kearns:于我而言,首先它开放于一种新的工作方式,并意识到为了成功实施,任何合同都有双向责任。在一项敏捷合同中,有更多的合作以及对双赢局面的忠实渴望。人们需要积极主动地参与其中。当难以辨认在办公室奔波的是供应商 / 客户时,我就知道了一切都在运转。

查看英文原文:Contracting to Enable Agile Behaviour


感谢张龙对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号:InfoQChina)关注我们。

2016-04-18 19:001439

评论

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

九章云极DataCanvas YLearn因果学习开源项目荣获“可信AI实践优秀案例”奖

九章云极DataCanvas

直播预告 | 流程挖掘如何助力头部制造业实现千万级增长?

望繁信科技

【杂谈】网络协议(二)

自然

网络层 8月月更

多模态算法在视频理解中的应用

之家技术

人工智能 算法 视频 多模态

灵魂拷问:你精神内耗了吗?由TA来治愈吧

白洞计划

已有小程序应用转App的一种技术

Speedoooo

小程序 小程序容器 小程序转app

[教你做小游戏] H5小游戏技术选型分析,低代码?小游戏框架?canvas或SVG?还能用React?

HullQin

CSS JavaScript html 前端 8月月更

分布式系统接口用例自动回归实践

转转技术团队

接口测试

你就是函数响应式编程(FRP)啊?!【附 RxJS 实战】

掘金安东尼

前端 函数式编程 8月月更

Java开发微信公众号初体验

源字节1号

前端开发 后端开发 小程序开发

参与 TDesign 收获了什么?听听社区贡献者怎么说

TDesign

设计 产品经理 设计师

开源一夏 | 一个裸机工程转FreeRTOS的实例

矜辰所致

开源 stm32 STM32CubeMX 8月月更 FreeRTOS

诚邀|8月31日,【因果学习和决策优化挑战赛TOP10队伍作品秀】邀您共享因果学习智慧盛宴

九章云极DataCanvas

人工智能

实力上榜|海泰方圆跻身2022企业网络安全服务Top15

电子信息发烧客

多核驱动时代的降维打击 英特尔异构混合架构破局之路

科技之家

开源一夏 | Foundation对于模态框以及Subsystems的深入运用的理解心得

恒山其若陋兮

开源 8月月更

开源一夏 | 23张图,4500字从入门到精通解释Redis

wljslmz

redis 开源 8月月更

Beetle编译/部署自动化

转转技术团队

CI/CD

828选华为云,实惠更实用——为什么选择华为云CDN的企业多?

sofiya

“九章云极DataCanvas AI平台赋能厦门航空”荣获AI平台应用标杆案例

九章云极DataCanvas

人工智能

圆壹智慧创始人兼CEO 潘麓蓉:AI制药工业落地的痛点与前进方向

阿里云弹性计算

HPC 高性能计算 AI制药

全链路灰度新功能:MSE 上线配置标签推送

阿里巴巴中间件

阿里云 微服务 云原生

字典服务的设计与管理

Java 架构

TDesign 设计资源大更新,产品经理和设计师都可以省心啦~

TDesign

设计 设计师

在 WSL2 上部署 PyTorch

吴脑的键客

WSL2 Windows 10 PyTorch

华为云CDN&云视频通信专场:828低价购,CDN0.05元/GB起,短信0.006元/条起

sofiya

付费会员之我见-02(44/100)

hackstoic

商业模式 付费会员

前端食堂技术周刊第 49 期:Deno即将迎来重大变革、Blitz 2.0 Beta、Chrome删除HTTP/2服务端推送

童欧巴

JavaScript typescript deno

什么数据库这么猛?5.6 版本刚开源一个半月,8.0 版本竟然就要启动了?| StoneDB 社区答疑第二期

StoneDB

MySQL 数据库 开源 StoneDB 8月月更

【杂谈】网络协议(一)

自然

网络 8月月更

leetcode 503. Next Greater Element II 下一个更大元素 II(中等)

okokabcd

LeetCode 算法与数据结构

为确保敏捷行为的实施而制定合约_文化 & 方法_Ben Linders_InfoQ精选文章