拥抱敏捷开发(1)——为变而生

拥抱敏捷,拥抱变化。

软件开发的最终目的是交付符合需求的软件。为了能提高软件开发的效率,有人提出一些方法,比如,瀑布式开发、螺旋式开发、敏捷开发等等。

当然,边做边改也是一种开发模式,但是对比较大的项目来说,肯定是不适用的。

在这里不讨论这些模式孰优孰劣,应用场景不同,表现则不同。

敏捷开发

为变而生

软件的开发过程中,需求会变,用户会变,整个世界都在变!

鉴于此,有人提出了敏捷开发的模式,在业界也已经成为了一种推荐模式。

唯快不破

敏捷开发的主要思想就是要“敏捷”,敏捷的开发软件,敏捷的对变化做出反应。拥抱敏捷,就是在拥抱变化。

敏捷神功

管理“软件开发过程”和“软件开发中的人”是两大难题,《人月神话》和《人件》分别进行了讨论。

敏捷开发也针对这两点提供了解决方案。

“人月”

  • 需求拆分,把大的需求拆分成小的需求,及时获得用户反馈,减少对需求的理解偏差。
  • 提升软件开发的弹性,加入代码审查,让代码有弹性。
  • 加入持续构建,使软件具备快速交付的能力。
  • 加入自动测试,覆盖到人力测试无法满足的场景,使软件随时都可交付。

“人件”

  • 让每个人都参与到软件产品中来,成为软件开发的主人,激发每个人的潜能。
  • 鼓励团队的交流,在交流中提升自己。

敏捷开发就是综合“人月”和“人件”,加快软件的开发,从而达到敏捷。

敏捷价值观

总之,敏捷开发是为了迅速的适应变化。选择了敏捷,也就等于相信了敏捷,接受了敏捷的“洗脑”。

条条大路通罗马,我们在此选择“敏捷之路”。

参考链接:

  1. http://wiki.mbalib.com/wiki/%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E6%A8%A1%E5%9E%8B
  2. http://802796.blog.51cto.com/8476804/1361878
  3. http://www.cnblogs.com/jetlian/p/4213663.html
  4. http://bbs.chinaunix.net/thread-142180-1-1.html

-- EOF --