敏捷时代的建模:敏捷团队的扩张除了代码还需要什么?

敏捷方法已经成为了当前软件开发的主流模式,可工作的代码(以及自动化测试)被认为是团队最重要的产出。

那么是否不再需要建模了呢?UML真的已死?我并不这么认为。

在本文中,我将探索在敏捷时代,建模方法依然适用并且扮演关键角色的所在。尤其在开发规模扩张到多个团队后,对整个系统的“Big Picture”达成共识将变得非常关键。

敏捷中的“设计”在哪里

虽然代码表现了事实,但它并没有表现事实的全部 – Grady Booch

在开篇部分,我将描述一个使用Scrum的敏捷团队的精简流程。图1展示的是一个经过有意简化的流程,它仅仅保留了关键的部分。

列举在“Product Backlog”中的“用户需求” 。

开发团队从列表中选取一些需求,并在一个较短的迭代(或者一个Sprint)时间内实现它们。

每个Sprint结束后,团队创建了“可工作的软件”(或者是“增量内容”),表现为“产品代码”与“测试代码”。

图1,简单的Scrum框架

在这个最精简的框架中,团队所知的是“Product Backlog”上的“用户需求”,而产出的是代码(“产品代码”与“测试代码“)所呈现的“可工作的软件”。这里并未显式地描述两者间的设计成果。理想的情况是,这个Sprint所产生的设计意图作为团队产出的一部分,已经体现在最终发布的代码中了。但有些信息是无法用代码直接表达的。Scrum本身是一种流程框架,它并不有意图地表现任何设计的部分,但团队中仍然少不了各种各样的设计工作。

正如Grady Booch所说,“代码表现了事实,但它并没有表现事实的全部”。因此如果有些信息无法以代码形式进行表述或交流,我们将把这些知识财富保留在哪里呢?这正是本文尝试解答的疑问。

写文档就不是敏捷了吗?

建模是为了进行对话 – Craig Larman与Bas Vodde

对以上问题的一个回答也许是:“在我们的脑海中!”。每日例会、结对编程、设计研讨等等互动性的实践以一种同步的方式持续地将团队成员的思想进行归总。但是当团队开始扩张、或分布在不同地域、或有成员离开团队时,“脑海中的模型”的内容会被很快遗忘。我们需要以文档的形式将对系统的共识保存起来,以分享那些仅用代码形式不易保留及沟通的信息。

敏捷方法清晰地阐述了一个观点,即对话的价值更胜于文档,因此编写繁重的设计文档(它经常会重复代码中表述的信息)并非正确的途径。我们应该采取的途径是只编写那些使对话更有效的文档,它应该尽可能保持最简单的模型集合,与代码产生互补作用。

模型胜过代码的一个方面是它的可视化表达能力。换句话说,在某些情况下,文字是一种糟糕的交流媒介。图2表现了文字交流会失效的一种情况(感谢Jeff Patton为我推荐了这本书)。

图2,文字交流的失败

我猜测,这个“悲剧的”蛋糕是在给蛋糕厂家的电话答录机留言时的误解造成的(译注:订购者的原意是在“Best wishes Suzanne”这一句下方(Underneath that)加上“We will miss you”)、如果订购者能够用一张简单的图片(配上文字)来表达他的意图,那绝对可以避免这个悲剧。有些时候,真的是“一图胜千言”。

那么,在敏捷团队中,该怎样为了实现目的而有效地使用模型呢?

时间: 2024-09-17 03:55:34

敏捷时代的建模:敏捷团队的扩张除了代码还需要什么?的相关文章

《规范敏捷交付:企业级敏捷软件交付的方法与实践》——3.2 Scrum

3.2 Scrum Scrum作为一种核心敏捷方法,所表达的是非常出色的想法,在如今的敏捷团队中得到了广泛应用.但是,Scrum有意不提供方法指导如何将这些实践应用到框架中,而是由团队自身去发掘哪些实践对这个框架有价值有帮助,并决定是否采用它们.另外,它的重点主要在于敏捷交付的产品构造阶段的方方面面.从图3.2中我们也可以看出,Scrum生命周期重点关注敏捷交付的产品构造阶段.下面列出在DAD过程框架中用到的核心Scrum实践: 产品Backlog(工作项列表).在Scrum中,产品Backlo

Johanna Rothman——把敏捷项目扩展为敏捷计划

Johanna Rothman在OnAgile2016题为<把敏捷项目扩展为敏捷计划:自主.合作.探索的小世界网络>的演讲中,她鼓励观众使用公司内已有的小世界网络来帮助改变.沟通和整合.此外,她推荐了不同的方法来加强这些小网络,使它们能够改善交付大型功能程序的流程. Rothman是<敏捷和精益项目管理:将合作扩展到整个公司>(Agile and Lean Program Management: Scaling Collaboration Across the Organizati

大数据时代对建模仿真的挑战与思考

大数据时代对建模仿真的挑战与思考-中国科协第 81 期新观点新学说学术沙龙综述 胡晓峰 贺筱媛 徐旭林 2013年9月中国系统仿真学会承办了中国科协第81期新观点新学说学术沙龙, 沙龙主题为"大数据时代对建模仿真的挑战与思考",重点对\以大数据为基础的第四范式是否成立? 大数据方法对仿真建模带来了什么挑战?大数据方法对仿真建模带来了什么机遇?" 等三个议题进行了研讨,本文对与会专家的主要观点和研讨取得的主要成果进行综述. 大数据时代对建模仿真的挑战与思考

面对物联网化的时代变迁 华为敏捷网络协同Liteos加快物联网发展

这个时代是一个变化的时代."张顺茂这样讲到,"在这个万众创业 .大众创新的时代里,在互联网+的背景下,各行各业都需要发展互联网."确实,现在小到零售店,乃至个人,大到行业领头的企业,都在关注着网络的发展以及物联网的进程. 华为也紧跟时代步伐,召开了华为网络大会(HNC2015),会上发布了敏捷网络3.0和Liteos物联网操作系统以应对互联网世界的变化,华为产品与解决方案 Marketing与解决方案部总裁,张顺茂也就物联网的发展谈了他的看法,以及华为的应对方案.  华为产品

亚马逊跨境业务结束 团队大扩张

摘要: [编者按]团队扩容.大规模招商.建新运营中心,过去几年,在跨境电商上走得不紧不慢,有些拖泥带水的亚马逊突然发力,如睡虎突醒,露出利爪,让人猝不及防.但面对半年跨境 [编者按]"团队扩容.大规模招商.建新运营中心--",过去几年,在跨境电商上走得不紧不慢,有些"拖泥带水"的亚马逊突然发力,如睡虎突醒,露出利爪,让人猝不及防.但面对半年跨境贸易额已高达260亿美元的eBay和正在新兴市场上不停攻城略地速卖通,现在才发力的亚马逊还有机会吗?是否为时已晚? 9月15

新三板质量欠缺:仅体现数量扩张离纳斯达克还远

被市场俗称为"新三板"的全国中小企业股份转让系统在去年获得了飞速发展.2014年全年,新三板挂牌公司达到1572家,年增长3.4倍,总市值增长7.3倍,投资者数量增长5倍,发行次数达到过去7年总量的2.9倍.新三板在2014年里取得的发展,远远超过了A股主板和中小企业板.创业板的发展速度.就沪深A股市场来说,虽然在年底最后两个月里出现了行情的爆发式上升,但就全年来说,大部分时间的行情是比较低迷的,这在客观上抑制了A股市场的新股上市.A股市场在当时上升动力不足的一个客观原因是市场流动性严

华为网络大会深度体验HCIE

2014年5月25-26日 华为网络大会2014(HNC2014)在北京国际会议中心隆重举办,华为携手5000名嘉宾共同探讨大数据时代的敏捷之道.HCIE(Huawei Certified Internetwork Expert, 华为认证互联网专家,以下简称HCIE)作为华为认证的最高端认证体系,以"HCIE体验专区"的形式亮相,并在华为网络大会期间进行了全程开放,吸引了来宾们的关注和深度体验.HCIE体验专区以"IE进化论--敏捷而生适者生存"为主题,其含义在于

什么是BUG?

我知道你们都很忙.忙得连给代码写注释的时间都没有,哪有时间做总结呢?还是我来替大家做一些总结吧.我最近会找时间写一系列的短文,在email给你们的同时会发送到你们常去的JavaEye上.如果你抽空看看,对你和我们团队都有好处.今天我写了第一篇.   写给我的团队成员(一)-- 什么是BUG?         什么是BUG?每个写过代码或者使用过软件的人似乎都知道它是什么.然而,我们的很多工作年限有限的开发人员总是简单认为:程序跑通了,自己测了N遍了就 很少有BUG了.这是个危险的观念,没有理解深

王梓晨 | 京东敏捷团队看板与潜在交付物实践

大家好,我是京东运营研发部架构师王梓晨."青龙系统"是京东分拣配送系统的代号,既京东高效物流体验的支撑系统.而青龙智能分单系统是该环节的"大脑",负责规划配送的全路径.即从您在京东网站下单后,货品出库到分拣中心运输到哪个配送站,以及由哪个配送员最终送达到您的手中,这些规划工作都是由智能分单系统来计算完成的. 你是否曾有这样的疑问,系统业务流程繁杂.战略项目层出不穷.与日俱增的访问量与背后技术体系需要不断优化--今天我们就来分享京东一线作战连队,运营研发-青龙研发部,