一种快速开发、快速迭代、快速交付、快速试错的一种开发模式。
开发过程中,并不追求很完美的设计,而是力求在最短的时间内开发完产品的核心功能,尽早出版本,完成交付。然后在后续的生产周期内,不断按照需求进行迭代、升级、优化产品。
传统开发模式:瀑布模式,构建化思维,了解并分析用户痛点,构建整个设计,开发完整模块
新时代开发模式:敏捷开发模式,快速开发,快速迭代,注重团队沟通协作
1、快速交付
对于互联网产品而言,市场风向转变很快,需要一种即时快速的交付形式,而敏捷开发则能更好的适用于这种情况,不要求有完整设计的模块,先保证核心功能,不追求一个大而全的功能,拆分核心功能,尽早出版本,完成交付。
2、降低风险
敏捷开发属于增量式开发,对于需求范围不明确,需求变更较多的项目而言,可以很大程度的响应和拥抱变化,根据用户反馈,不断进行需求优化,快速迭代。频繁迭代优化,保证产品价值。
3、团队内主观能动性提高,交流互动频率增多
不断沟通、交流,频繁的会议碰撞,明确需求及设计,快速开发完成产品
1、需求分析
2、设计
3、编码
4、测试
5、部署和评估
每个迭代大约持续2~3周,甚至更短。
瀑布式开发:
家里来客人,留在家里吃饭,初步了解客人喜欢吃什么、口味如何、有没忌口,一连做了好几个菜,等到上桌后,才发现这个菜太辣,不符合客人胃口,那个菜味道太咸、有香菜。重新做则增加成本,客人等待时间也长。在吃的过程中,客人喜欢喝汤,又得重新下厨。
敏捷式开发:
家里来客人,同样留在家里吃饭,了解客人口味,先做一样菜出来,根据客人反馈味道咸淡,下一道就多放或少放盐。中途客人想喝汤,下一道就做汤,快速响应客人需求变化。
实际项目中,并没有严格界定完全的敏捷开发或者完全的瀑布开发,两者可能是各有掺杂。个人觉得,没必要过于强调开发模式,能解决问题,完成需求即可。根据公司项目情况,切实解决实际问题,少整一些没意义条框。