10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

折叠有价值吗?

  • 2011-03-15
  • 本文字数:926 字

    阅读完需:约 3 分钟

Mike Burrows写道:

我突然想到,我们经常把较大的功能展开(分解)成规模较小的功能,但事后我们往往不会再把它们折叠回去。 这种做法:

  1. 常见吗?
  2. 好吗?(我能想到一些好的理由)
  3. 不好吗?(同样的,我能想到一些不好的理由)
  4. 视情况而定?(在哪些情况下好,哪些情况下不好?)

Kanbandev 讨论组里的一些人认为,将较小的功能折叠回较大的功能并不能增添多少价值。Kurt Häusler说道

我不喜欢展开和折叠。我的确喜欢将较大的需求展开成许多小的故事,就在刚开始的时候,甚至是在那些需求进入系统前,并且在整个过程中让它们保持较小的规模。我想有时候这可能是做不到的,但是我想,相比简单地利用较大的最小化市场功能(Minimum Market Features)或者微型项目,坚持那么做会更好,因为降低交易成本是很难的,因为客户无法测试“未完成的”功能,因为人们思考问题的时候总是会把问题“想得太大又复杂”。 对功能进行简单轻薄的垂直切分,贯穿整个价值流,就一定会成功(For The Win)

Ron Jeffries认为

极限编程过去常常建议大家把故事分解成任务。我们中有很多人不再推荐大家那么做:我们建议大家将它们切割成更小的故事。 在极限编程中,没有明确的“折叠”概念,因为没必要那么做。

Siddharta Govindaraj认为折叠有一些价值,但是:

如果这种观点只是围绕开发团队,那么这能行。你切分好故事并一个个展开它们,没有必要折叠。但是,在开发团队以外,许多端对端的流确实是操作大功能的。所以,尽管你在开发团队中使用的可能是较小的故事,当较大的功能要移动到下一个阶段时,仍然有必要将它们折叠回去。

Ron Jeffries回复道

为什么你会有下一个阶段的想法?举例来说,在 Scrum 和 XP 中,每个迭代团队都会生产可交付的软件增量(包括所有必要的文档)。 从 kanban 的观点来看,我们只对需要的东西进行建模。但如果它是一个很大的展开或折叠,那么几乎可以确定,这种建模意味着浪费、缓冲和延期,可以移除掉。

Paul Beckford说道

这里的关键部分是较小的增量、反馈和迭代。当你这样做时,那么折叠这种想法,在最小的增量中就是没有意义的(比如,一个切分,对我而言可能是一组小的验收条件,只需要半天时间),而在其他任何级别的抽象上也都是没有意义的。

查看英文原文 The Value of Collapse?

2011-03-15 09:071978
用户头像

发布了 38 篇内容, 共 97037 次阅读, 收获喜欢 1 次。

关注

评论

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

《迁移学习导论》第2版,升级内容抢先看!

博文视点Broadview

华为开源:聚焦开源基础软件,共建健康繁荣生态

科技热闻

开源一夏|ArkUI如何自定义弹窗(eTS)

坚果

开源 HarmonyOS OpenHarmony 8月月更

mysql进阶(二十六)MySQL 索引类型

No Silver Bullet

MySQL MySQL索引 8月月更

【黄啊码】MySQL入门—2、使用数据定义语言(DDL)操作数据库

黄啊码

MySQL 8月月更

萌宠来袭,如何让“吸猫撸狗”更有保障?

旺链科技

区块链 产业区块链 宠物行业

Java 是否应该使用通配符导入( wildcard imports)

HoneyMoose

Jina 实例秀|基于神经搜索的网络安全威胁检测(一)

Jina AI

神经网络架构搜索 Python.

技术干货 | 用零信任保护代码安全

权说安全

语音社交app源码——具备哪些开发优势?

开源直播系统源码

软件开发 语聊房 直播系统源码 语音聊天系统 语音聊天app

【黄啊码】MySQL入门—1、SQL 的执行流程

黄啊码

MySQL 8月月更

关于技术学习的6个观点

郭明

技术人

MySQL之my.cnf配置文件

TimeFriends

8月月更

CentOS6搭建nginx+uwsgi+flask

haiger13

签约计划第三季

Rust 入门指南 (用 WASM 开发第一个 Web 页面)

王泰

rust Wasm WebAssenbly ​Rust

临床研究方法学,到现场,到数据真实发生的地方 | 对话数智 x 张维拓

ModelWhale

数据分析 人才培养 数据科学 8月月更 临床医学

IDEA 自动导入的配置(Auto import)

HoneyMoose

React的理念与V16的架构变化

郭明

React

仿钉钉审批流程后端 PHP 处理(一)

CRMEB

再次搞定 Ali 云函数计算 FC

小鑫同学

签约计划第三季

SAP 人工智能解决方案的演进史 - 从 SAP Leonardo 到 SAP Data Intelligence

汪子熙

人工智能 机器学习 AI SAP 8月月更

什么是 DevOps?看这一篇就够了!

胡说云原生

管理 DevOps 运维 开发 签约计划第三季

直播回放含PPT下载|基于Flink & DeepRec构建Online Deep Learning

阿里云大数据AI技术

深度学习

STM32+SIM800C采用MQTT协议登录OneNet上传温湿度、MQ2烟雾浓度、GPS数据

DS小龙哥

8月月更

Java使用IReport导出复杂报表

源字节1号

微信小程序 软件开发 前端开发 后端开发

转转测试环境的标签域名实践

转转技术团队

nginx hosts

开源一夏 | 查询分页不只有limit,这四种分页方法值得掌握

知识浅谈

开源 8月月更

Jina 实例秀|七夕神器!比你更懂你女友的口红AI

Jina AI

七夕 神经网络架构搜索

【LeetCode】分组的最大数量Java题解

Albert

LeetCode 8月月更

浅聊偏函数

掘金安东尼

JavaScript 函数式 8月月更

C#/VB.NET:在 Word 中设置文本对齐方式

Geek_249eec

C# word VB.NET 文本对齐

折叠有价值吗?_研发效能_Dan Puckett_InfoQ精选文章