QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

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

  • 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:001251

评论

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

百度CTO王海峰:AI大生产平台再升级 助力中国科技自立自强

百度大脑

人工智能

个推漫话知识图谱:《女心理师》中的智能语音识别系统如何实现?

个推

机器学习 nlp 知识图谱

Fortinet :《2021 年OT与网络安全现状报告》 之「要点综述」

喀拉峻

网络安全

都2022年了,这个20篇Linux内存管理的期刊论文,你读了吗?

奔着腾讯去

Linux Kenel 内存映射 内存池 内存页

世界女性科技群落(四):技术与流行文化顶格发展,日韩女性的科技暗面

脑极体

资产租赁管理系统解决方案

低代码小观

资产管理 CRM 企业管理系统 融资租赁 CRM系统

高性能队列Disruptor在测试中应用

FunTester

Disruptor 测试 性能测试 高性能队列 FunTester

年底了,聊聊述职

CatTalk

职场

如何促进用户首次下单?

石云升

AARRR 产品思维 28天写作 产品增长 12月日更

银行兴起数字极简风:“智能手机App恐惧症”终于有救了

CECBC

设计消息队列存储消息数据的 MySQL 表格

奔奔

Python代码阅读(第73篇):字符串字节数

Felix

Python 编程 字符串 阅读代码 Python初学者

11月云短信报告出炉,腾讯云再次蝉联到达率冠军

博睿数据

Java 必看的 Spring 知识汇总!

CRMEB

2021百度AI开发者大会在元宇宙举办

百度大脑

人工智能

当 Redis 发生高延迟时,到底发生了什么

程序员历小冰

redis 延迟 28天写作 12月日更

研究了一圈React学习资料,发现最好用的React教程还是这个

sai

云原生促进基础设施变革,百度“磐玉”蜂巢服务器正式发布

科技热闻

基于kali的域控环境搭建——黑盒测试环境搭建

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

信通院首批AIOps系统和工具评估,博睿数据获评异常检测模块“全面级”

博睿数据

一文带你了解数据库设计基础

坚果

数据库 28天写作 12月日更

Hadoop学习过程中遇到的错误及解决方法

阿丞

hadoop hdfs mapreduce YARN

政法重点关注人员管控系统开发,跨部门大数据办案平台建设

a13823115807

语音信号处理14:语音信号的特征应用

轻口味

28天写作 12月日更

Go 软件设计之道

宇宙之一粟

Go 语言 12月日更

Nginx+IIS做站点访问负载均衡

为自己带盐

nginx dotnet 28天写作 12月日更

Spring框架基础知识(01)

海拥(haiyong.site)

28天写作 12月日更

忆父亲

wood

28天写作 父亲

Kubernetes 与 OpenYurt 无缝转换(命令式)

阿里巴巴云原生

阿里云 容器 云原生 openyurt

Hoo虎符研究院 | 币圈后浪——Swivel Finance

区块链前沿News

Hoo虎符 虎符交易所 虎符研究院

Kubernetes中的亲和性与反亲和性

xcbeyond

kubernete 28天写作 12月日更

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