写点什么

专家建议:以特性团队扩展敏捷项目

  • 2012-01-20
  • 本文字数:1100 字

    阅读完需:约 4 分钟

敏捷实践在由 5 到 9 个人组成的小型团队里面实施得很好。但是如果客户希望得到更多的软件功能,并且准备好了为之付出更多的钱,又会如何?你如何能够安全地增长敏捷团队的规模,从而提升生产率?

Martin Fowler 警告了未及成熟就增长敏捷团队规模的行为,因为那可能会导致沟通的破坏,而且可能会破坏代码库本身的内聚性。

因为新加入的成员不理解当前的代码库如何工作,所以他们以不一致的方式去做一些修改——例如引入一个竞争性的框架,这时就会导致 代码库内聚性的破坏。如果太多的新人加入,团队的领袖无法保持对整个代码库的监控,代码库越来越滋生更多问题。这些问题又互相恶化,因为没有人能够找到一 致的方式进行修改。

Martin 建议从小型团队开始,缓慢地增长团队规模。

从其他做过大型项目(超过 50 人)的人那里,我得到的最为坚定的建议之一是项目应该始于小规模——或许只是十来个开发人员。他们应该通过构建早期的部分,弄清楚系统核心的设计元素与交互。只有当设计被明确下来,才应该考虑增长团队规模直至完整。

Esther Derby 讨论了超越 Scrum of Scrums 的实践,可能会有助于扩展团队。

  • 只要可能,就尽量围绕着场景的边界来组织团队,而不是组件的边界(场景可能是一个特性集,例如销售系统中的“订单”)。
  • 使跨越场景的沟通公开化。使用集成团队以在接口处理与系统集成上达成一致。集成团队应该编写验收测试,以确认跨越边界的集成。
  • 设置“组件守护者”——他们的目的是审查代码与指导团队,以维护组件或共享服务的完整性。
  • “技术委员会”(由集成团队成员、组件守护者以及测试专家组成)应该专心于整个系统的完整性。

James Shore 建议基于精益原则“单件流”,创建高效的工作单元

精益工作单元通过同步流,几乎完美地契合了敏捷中跨越职能、一地办公团队的理念。不同于阶段式的流程——由组到组(需求、再设计、再编码、再测试)一环一环地移交职责,敏捷团队一次承担一个或两个特性的责任,整个团队作为整体工作于其上,直至特性完成。

Siddharta Govindaraj 提议了一则名为特性团队的类似方法,并举了一个可行的团队组建案例。

假定有一个尚未开始的新故事。来自主干团队的小组成员将决定谁想要这个故事的特性团队的一员。在最简单的情形下,这个特性团队会 包括一个或两个开发人员以及一个测试志愿者。你们可以在 sprint 的开始阶段,或者之后及时(JIT)做出这个决定。一旦组成特性团队,他们就有责任共 同努力,交付故事。一旦交付,特性团队就会被拆散,每个团队成员会选择一个新的故事,加入了一个新的特性团队。


在敏捷团队规模增长的时候,哪些实践让你从中受益了呢?

查看英文原文: Experts advise growing Agile projects with feature teams

2012-01-20 08:051371
用户头像

发布了 76 篇内容, 共 24.3 次阅读, 收获喜欢 3 次。

关注

评论

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

《深度工作》学习笔记(完)

石云升

读书笔记 时间管理 专注 深度工作

我国开启“逆袭战”,区块链的盛夏来了?

CECBC

云计算 区块链技术

数据平台、大数据平台、数据中台……你确定能分得清吗?

华为云开发者联盟

大数据 数据中台 开发者 数据湖 数据

美丑平等

shengjk1

随笔杂谈

浅析Python中的列表和元组

王坤祥

Python python升级

低/零代码会让程序员失业吗?

代码制造者

程序员 低代码 零代码 信息化 编程开发

DSN 主流项目调研 2——Sia和SAFE Network

AIbot

区块链 分布式存储 分布式文件存储 Sia SAFENetwork

SpringBoot系列(三):SpringBoot特性_SpringApplication类(自定义Banner)

xcbeyond

Java 微服务 springboot Banner

关于微服务架构的一些思考

俊俊哥

微服务

JAVA位运算

彭阿三

Java 位运算

易观CTO郭炜:如何构建企业级大数据Ad-hoc查询引擎

易观大数据

一文搞懂Flink rocksdb中的数据恢复

shengjk1

大数据 flink源码

别让非理性思维毁了你的人生

看山

随笔杂谈 非理性 认知偏差 自控术

熬得住,人生路

shengjk1

随笔杂谈

解析中美数字货币竞争战略 | 构建属于“人类命运共同体”的货币体系

CECBC

数字货币 人民币

奋斗在一线大城市的年轻人的生活工作实录(工厂蓝领篇)

Learun

程序员 软件开发 故事 企业信息化 短片小说

Cobra 命令自动补全指北

郭旭东

cobra Go 语言

手抖了

shengjk1

随笔杂谈

害怕

shengjk1

随笔杂谈

你看脸吗?

shengjk1

随笔杂谈

Django中的session的使用

BigYoung

django session Cookie

SpringBoot系列(二):如何灵活使用SpringBoot

xcbeyond

Java 微服务 springboot

DSN 主流项目调研 3——Orbit数据库的故事

AIbot

区块链 分布式存储 IPFS 分布式文件 Orbit

流媒体云时代的声与色,融云铺就的桥与路

脑极体

网站域名备案怎么做?有哪些快速备案的方法?

姜奋斗

网站 备案 网站搭建 域名解析 网站平台

《深度工作》学习笔记(6)

石云升

读书笔记 专注 深度工作

每个大火的“线上狼人杀”平台,都离不开这个新功能

ZEGO即构

游戏 RTC 社交

流量明星翻车的“直播卖房”,为什么众盟做成了?

脑极体

普通工程师简史

郭华

LeetCode题解:88. 合并两个有序数组,for循环合并数组+sort排序,JavaScript,详细注释

Lee Chen

大前端 LeetCode

Django查看操作数据库的执行命令

BigYoung

数据库 django 操作

专家建议:以特性团队扩展敏捷项目_研发效能_Anand Vishwanath_InfoQ精选文章