敏捷史话(九):用做面包的方式做敏捷——Alistair Cockburn
在一次用例和敏捷技术交流大会上,Alistair给大家分享了自己比较崇尚的三个字: “守”“破”“离”,他用做面包的例子,形象地将这三个字与敏捷的不同阶段相贴合。结合 Alistair 丰富的经历,“守”“破”“离”三个字也恰好概括了他在敏捷中的不同阶段。
“守”
关于 “守”的阶段,Alistair 是这样理解的:“一个从来没有做过面包的人,需要有一个做法的步骤清单,来告诉我们具体怎样才能做出一个面包,这个阶段就是‘守’。这一阶段最重要的是,我们要知道,清单提供的是一种正确的方法,而只要按照方法去做,就能够做出面包来。”
求学时期的 Alistair, 就是照着“清单”打下了扎实的敏捷基础,并开始在敏捷圈崭露头角。
1963年,Alistair 出生于美国,是一位名副其实的学霸。先在美国以独立研究著称的凯斯西储大学内,获得了计算机科学学位。带着对计算机浓厚的兴趣与求知欲,Alistair 之后又在挪威享有“最顶尖学术研究”之称的奥斯陆大学中,拿到了博士学位。与此同时,Alistair 也找到了可以为之奋斗一生的事业。
工作后的 Alistair 凭借求学期间扎实的研究基础和大量实践,编写了很多书籍,其中的《敏捷软件开发》和《编写有效的用例》,分别在2001和2002年,获得了素有“软件业之奥斯卡”美称的 Jolt 生产力大奖,这也是软件行业对 Alistair 能力的强有力认证。
“破”
“ 到了‘破’的阶段,这时的我们已经不满足做普通的面包了,想做松酥的、薄一点或是厚一点的面包,这个时候就需要不同的处方,根据不同方式,做出不同的面包。”
熟练了敏捷的常规“清单”,加之日益丰富的实践 ,Alistair 的内心萌生了很多创新的想法,开始寻求不同的敏捷方法。
他想要策划组织一个有关轻量级方法的讨论会,并罗列了参会人员的邀请名单。但邀请还未发出,他就先收到了一份来自 Bob 的会议邀请。令人惊讶的是,两人要组织的会议主题竟是如此相像。Bob 的邀请中写明了此次会议的目标:要创建一个宣言,来描述所有轻量级方法的共同之处。看到这一目标后,Alistair 便欣然应邀,会议前期,两人把各自的邀请名单合并起来,共同准备着这场“轻量级方法峰会”。
在 Alistair 的建议下,峰会的地点改到了盐湖城的雪鸟。2001年2月份,这个会议终于开始了。
Alistair 成为了会议实际的组织者,与 Jim Highsmith 一起统筹安排来自各地的参会人员。20位受邀者中,虽然只有17位聚集在此,但他们最终编写出了《敏捷软件开发宣言》。后来,这次会议有了一个更具标志性的名字——雪鸟会议。
水晶方法、六边形架构
《敏捷宣言》提出后,以极限编程为首的一系列敏捷方法就慢慢走入了大众视野,其中就包括 Alistair 提出的水晶方法论。
水晶方法被认为是轻量级方法的一种,按照项目重要程度以及参加人员的规模,Alistair 将水晶方法细化为透明水晶方法论、黄色水晶方法论、橙色水晶方法论和红色水晶方法论。
一般来说,透明水晶方法,适用于一个小团队来进行敏捷开发,人数在6人以下为宜。相比于同样适用于小规模团队的 XP,都有以人为中心的理念,但在实践上有所不同。水晶方法的纪律性较弱,但管理运作与团队产出还是比较协调的。
现在来看,在产品开发过程中,也不能只运用单一的敏捷方法,而要根据项目的具体情况,借鉴多种方法,取长补短,形成新的敏捷思维。
2005年,Alistair 又提出了“六边形架构”,称为端口-适配器。Alistair 认为传统的分层架构是一维的结构,不能满足系统应用多维的依赖,而六边形架构恰好可以解决业务逻辑与用户数据交错的问题,实现前后端分离,这也为后来的集成测试提供了很大的方便。
“离”
“像我的妻子那样做面包,就和前面两个层次不一样了,她只需要凭她的手感,抓一些面粉,倒一些水,弄点鸡蛋在里面揉揉,就能做出她想要的面包, 这就是‘离’的阶段。到了这个阶段,我们可以根据方法来做,但即使没有方法,我们也知道怎么做。”
从各种轻量级方法,到如今成熟的敏捷方法体系,有关敏捷的应用早已刻在 Alistair 的内心。换句话说,Alistair 其实早已达到了“离”的阶段,只是抽离到行业乱象之外来看敏捷,他才意识到,是时候要为敏捷做点什么了。
创立国际敏捷联盟
2009年,Alistair 与 Ahmed Sidky 和 Ash Rofail 共同创立了国际敏捷联盟(ICAgile),敏捷认证由此问世。三人找到了敏捷不同的“处方”,他们希望以这个方式鼓励大家对敏捷方法、技能以及工具的相关思考和学习,广泛推行敏捷。
ICAgile 的认证是基于技能的,不仅需要大家来证明自己已经了解了敏捷的核心技能,同时还要参加现场测验,以此证明自己具备灵活运用这套技能的能力。希望它可以不受市场或利益干扰,以匠心传承“真敏捷”。
然而当时的他们怎么也不会想到,如今的敏捷认证遍地丛生。敏捷这个词,似乎也非常容易跟金钱等价交换,但是能轻易交换的往往都是皮毛。
敏捷亦如此。2001年以来,敏捷开发逐渐成为软件工程、项目管理中不可分割的一部分。Alistair 发现, 敏捷在发展过程中也被过度包装,原本的简单纯粹,早已披上了利益化的外衣。于是 Alistair 认为,是时候该还原敏捷的本质了。
创立“敏捷之心”网站
2015年,Alistair 推出了“ 敏捷之心”网站(heartofagile.com),强调回归敏捷之本。“敏捷的核心是简化信息提示,以便更好地专注于实现出色的结果”,这也是 Alistair 对敏捷行业过度复杂状态的高调回应。
“敏捷之心”可以说为更多人打开了敏捷的大门,使更多人受益的同时,也使他们不断创新并找到了适合自己的工作方式。
Alistair 对敏捷有着清醒的认识,以至于没有在物欲横流的现实中迷失。他有过在零售业、电子商务等多个领域中摸索敏捷开发的经验,也有过在挪威中心银行和 IBM 中身居要职的光辉职业生涯,还有过在2007年来自行业内的肯定:被评选“‘有史以来最伟大的150位 IT 英雄’之一”……这些对 Alistair 来说,无疑也是敏捷所带给他的回馈。
如论英雄,必当走过一条荆棘之路,这条路上要扛得住世界对我们发起的任何挑战,不管是利益,亦或是道德。Alistair 做到了,于是才有了他与敏捷的互相成就。这条英雄之路,你在路上吗?