敏捷开发在互联网时代里的价值
上世纪八九十年代,市场需求较为稳定,大型开发项目更新缓慢,且造价昂贵,几乎没有迭代概念,典型情境是每隔几年升级一次,瀑布式开发流程是首选。随着市场需求不断变化,为适应产品快速迭代的需求,敏捷开发应运而生。
传统的开发模式,像瀑布模型、喷泉模型、螺旋模型等等,虽然有不断的进化与创新,但始终没有一款能快速、灵活地适应市场变化;进而发展了很多轻量化的软件开发方法,比如Scrum、水晶清透法、极限编程法等等,它们都是迭代和增量式的开发,因此虽然都起源于敏捷开发宣言之前,但也统称为敏捷软件开发法。
由于允许同时对不同的开发单元进行测试,因此该项目可以轻松地进行迭代,从而使开发人员可以检测故障并更轻松地修复它们。通过不断开发和测试不同的软件单元,可以及时完成软件项目,并且延迟最少。
敏捷的迭代开发方法,使得它可以确保在软件启动后的早期阶段就实现收入的更快增长和稳定的回报。随着新功能的不断增加和时间的推移,客户将从软件产品中受益,客户满意度逐渐提高,从而确保了更快的用户获取,收入流和业务转换。
得益于敏捷的方法论,软件开发项目可以基本上减少遇到失败的机会。由于敏捷开发允许频繁且重复的迭代,因此满足客户的期望和偏好变得非常容易。通过跨多个单元映射整个开发路径的敏捷性使整个项目的结果非常可预测,并且不增加引入新功能和设计元素的开发成本,可以让客户对软件项目进行完全控制和最佳可预测性,因此项目失败的可能性最小。
同时,敏捷开发基于价值驱动,其项目范围可以灵活调整,也因此具有了更大的范围,可以让不同的团队和利益相关者参与构建软件项目。由于整个项目被分为不同的同时运行的节点,因此使涉众和客户参与迭代变得更加容易。其构建的包含多个分隔单元的软件产品的方法,在很大程度上提高软件产品的可信度。