对开发方式的思考
由为什么我需要迭代引起的思考。
开发的目标是什么(the target of dev)?
双层交互(人与环境之间的信息交换)
开发的目标是为了实现人和工具的交互,工具和工具之间的交互。
对效率的思考
迭代的过程把复杂问题分解成可实现、可部署的小的升级过程。
这里的问题是, 不同的团队背景的“复杂问题”是不同的。
产品定义初期的“复杂问题”
产品或者工具本身带来的不确定性。
< 根本原因是,市场需求的本质是盲目的。>
这对开发者来说, 从市场反馈的信息也是“相对盲目”的。 需要“决断”过程。
这种产品定义的决断过程一般不是快速“升级”可解决的。
所以, 对开发者来讲, 产品定义初期, 需要整理出一份“代码清单”:
- 哪些是可复用的?
对移动产品来讲, 基础通信框架和UI定义方式是可复用的。
- 哪些是临时的?
业务实现逻辑是临时的。
产品或者工具发展过程中的“复杂问题”
这个过程,用户量从1到N, 系统复杂度度从1到N
这里带来的“复杂问题”是, 如何做反馈?
有价值的东西并不是N的用户量, 而是1到N的增长率带来的反馈信息。如何捕捉这种信息?
产品或者工具问题“基本稳定”后的复杂问题
这个过程的复杂问题是”稳定性“, 如何修复系统问题性?
这里,稳定性包括: 系统升级稳定性和系统降级稳定性。