破
“到了‘破’的阶段,这时的我们已经不满足做普通的面包了,想做松酥的、薄一点或是厚一点的面包,这个时候就需要不同的处方,根据不同方式,做出不同的面包。”
熟练了敏捷的常规“清单”,加之日益丰富的实践,Alistair的内心萌生了很多创新的想法,开始寻求不同的敏捷方法。
他想要策划组织一个有关轻量级方法的讨论会,并罗列了参会人员的邀请名单。但邀请还未发出,他就先收到了一份来自Robert C. Martin的会议邀请。令人惊讶的是,两人要组织的会议主题竟是如此相像。Robert的邀请中写明了此次会议的目标:要创建一个宣言,来描述所有轻量级方法的共同之处。看到这一目标后,Alistair便欣然应邀。会议前期,两人把各自的邀请名单合并起来,共同准备着这场“轻量级方法峰会”。
在Alistair的建议下,峰会的地点改到了盐湖城的雪鸟。2001 年 2 月份,这个会议终于开始了。
Alistair成为了会议实际的组织者,与Jim Highsmith一起统筹安排来自各地的参会人员。20 位受邀者中,虽然只有 17 位聚集在此,但他们最终还是编写出了《敏捷软件开发宣言》。后来,这次会议有了一个更具标志性的名字——雪鸟会议。
水晶方法、六边形架构
《敏捷宣言》提出后,以极限编程为首的一系列敏捷方法就慢慢走入了大众视野,其中就包括Alistair提出的水晶方法。
水晶方法被认为是轻量级方法的一种,按照项目重要程度以及参加人员的规模,Alistair将水晶方法细化为透明水晶方法、黄色水晶方法、橙色水晶方法和红色水晶方法。
一般来说,透明水晶方法,适用于一个小团队来进行敏捷开发,人数在 6 人以下为宜。相比于同样适用于小规模团队的XP,都有以人为中心的理念,但在实践上有所不同。水晶方法的纪律性较弱,但管理运作与团队产出还是比较协调的。
现在来看,在产品开发过程中,也不能只运用单一的敏捷方法,而要根据项目的具体情况,借鉴多种方法,取长补短,形成新的敏捷思维。
2005 年,Alistair又提出了“六边形架构”,称为端口-适配器。Alistair认为传统的分层架构是一维的结构,不能满足系统应用多维的依赖,而六边形架构恰好可以解决业务逻辑与用户数据交错的问题,实现前后端分离,这也为后来的集成测试提供了很大的方便。