谈到敏捷,大家首先想到的是什么?
敏捷宣言、Scrum、Kanban、XP…?可能大家的的反应都不一样。那么我们为什么敏捷呢?很多人会说,是为了“快速、高效高质量的交付软件功能。”那么我看一下软件开发的全生命周期。
在整个软件生命周期中,客户、业务部门、开发部门、运维部门之间都存在着因为目标不一致的而导致的问题,只有解决了这些所有的问题,才能从根本上提高整个过程的效率,达到快速交付用户价值的目的。如果错误的认为敏捷开发就是解决这些所有问题的方法,那么就走入了误区之一,最后形成了“敏捷是个框,啥都往里装”的结果。如下图所有,敏捷只是解决业务部门和开发部门之间问题的解决方案之一。
如何学习敏捷?考什么认证能够帮助个人快速的提升技能?
下图是2020年统计的一些有敏捷认证的机构和持证人数。国内的各种其他非官方认证的培训、课程更是百花齐放、百家争鸣,当然也存在良莠不齐的现象。在这种情况下,很难让初学者在短时间内有比较清晰、全面的学习、实践路径。
企业敏捷实践成功了,就一定能提升软件的交付速度吗?
这个问题的答案也是否定的。看下面这张图,敏捷实践只是提升整个软件研发过程中,某一阶段的效率的实践。一个企业如果想从根本上提升企业的效能,管理端、工程实践端都需要有比较扎实的积累,才能做到端到端的快速的交付,形成实现用户价值的完整闭环。
综上所述,敏捷开发不是银弹。
不能解决整个软件研发领域的所有问题。但是敏捷开发又是一种软件开发领域比较优秀的实践,能够解决软件交付速度以及代码质量的一部分问题。所以只有充分的学习、领会敏捷的本质,结合其他工程实践方法,才能达到提高企业软件效能的最终目标。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。