写点什么

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

  • 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:051837
用户头像

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

关注

评论

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

机器学习笔记-概念

superman

华为,与山河共舞这支芭蕾

脑极体

你觉得Android又凉了?那带你看下2020年Android开发的前景如何?

Geek_211aa0

android 程序员 中年危机 移动开发 前景

有感-人工智能学习

superman

按自己的逻辑,避免千篇一律的呈现品牌官方商城

boshi

产品设计 页面展示 商城

甲方日常 21

句子

生活 工作 随笔杂谈 日常

【MySQL】面试官:如何添加新数据库到MySQL主从复制环境?

冰河

MySQL 高可用 主从复制

学习笔记-人工智能概念(小白)

superman

01_Eureka源码初探

阿亮

源码 微服务 SpringCloud Eureka

腾讯看点基于 Flink 的实时数仓及多维实时数据分析实践

Apache Flink

flink

中国消费者独享长达三个月的年终跨境网购狂欢季

爱极客侠

Initialization failed for 'https://start.spring.io' Please check URL, network and proxy settings解决办法

Geek_416be1

阿里3轮面试都问了RecyclerView

Geek_211aa0

android 面试 阿里 移动开发 RecyclerView

第13周作业

Mac 系统 VS Code 设置向下复制粘贴当前行快捷键(Ctrl + D)

AlwaysBeta

ide vscode Mac

为什么选择敏捷软件开发-考虑敏捷开发的主要优势

小隐乐乐

敏捷开发

Flink 源码 | 自定义 Format 消费 Maxwell CDC 数据

Apache Flink

flink

提高网站的吞吐量

架构师修行之路

Java8 之 Lambda 表达式

hepingfly【gzh:和平本记】

Lambda java8 新特性

机器学习如何推进现代医疗护理服务的变革

Geek_b33b8e

学习 开源 跨平台 行业资讯 医疗方案

北京自贸区总体方案公布:建设法定数字货币试验区

CECBC

金融 国内宏观

架构师训练营第 1 期第 2 周学习总结

好吃不贵

极客大学架构师训练营

Apache Pulsar 社区周报|09-12~09-18

Apache Pulsar

开源 云原生 pulsar Apache Pulsar 消息中间件

Spring 5 中文解析数据存储篇-DAO支持

青年IT男

Spring5

“工业互联网+区块链”融合发展新图景

CECBC

区块链 互联网 信息安全

磨刀不误砍柴工,搞定云网络系统性能测试

lklmyy

IaaS 云网络 质量保障

week13--课后总结

Geek_165f3d

week13---课后作业

Geek_165f3d

区块链行业简报

CECBC

区块链 金融 银行

架构师训练营第 1 期第 2 周作业

好吃不贵

极客大学架构师训练营

第二周-框架设计-学习总结

刘希文

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