在开发过程中,难免会有人问,我们的需求改拆分到多细才算合适
我与火星人陈勇在聊天时,我们有过这样一种共识:按团交付更合理
那么什么叫按团交付呢?
简单来说,就是每次交付刚好可以且仅可以交付一个完整的客户价值——达成一项客户诉求。(注意区分客户与用户——奶瓶的客户是家长,用户是儿童,客户价值是家长以此来简化喂奶,这种价值以家长购买奶瓶的价格来体现)
怎么才能防止拆的过粗?需要明确定义一项需求的客户是谁、这个功能对客户有什么样的价值,直到每一项仅满足一个完整的客户价值。
怎么才能防止拆的过细?拆分到技术、部署上可以独立发布版本——确保是个潜在可部署的增量
好的需求拆分可以带来好的优先级排序,而好的优先级排序可以带来多次潜在交付。
以画梦娜丽莎为例:
拆分方法1:每次只画一个完整且完美的局部
结果:需要9个步骤完成后,才能交付
拆分方法2:每次都画整幅图画,并提供整体增量
结果:每三个步骤就能进行一次交付,并且每次交付都越来越好
所以,更好地拆分方法不是完整功能块的堆积(纵向),而是将所有功能块中与某个客户价值相关的任务放到一起(横向)
从而能够制定基于交付物的增量交付计划