三、迎接变化
在我们了解需求的过程中,部门的同事都会提到两个字“目前”。“这是我们目前的工作。”,“这是我们目前存在的问题”。
没错,没人敢预测未来。我们也没打算做一劳永逸的系统。但我们该如果应对变化呢?
了解变化点,我们做不到预测未来。但我们可以尽力去掌握哪些地方有可能变,哪些地方会经常变。甚至能分析出他会朝着那个趋势变。
齐头并进开发子系统
一、“并列式”开发
将开发团队分割成小组,不同的子系统交由各个小组负责开发。大家可以同年同月同日开工,不一定非得同年同月同日完成。总比一条线的“瀑布”要快的多。
二、关注代码,以人为本
不必在开发的每一个阶段整理无穷尽的文档。整齐的代码更能体现程序员的智慧。可以没有详细设计,这样其实更不害怕变化。
没有计划变化也就无所谓变化了。
三、迭代
这是迭代法的解释:迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。
敏捷开发中鼓励迭代,周期性的停下来歇一歇,看看过去几天写的东西,整理整理思路。其实这是我们在自己寻找变化。所以说敏捷的核心思想是适应变化!