敏捷开发与devops有啥区别,用哪个好?
1、两者产生的背景
敏捷与devops在当今都有广泛的应用,敏捷和devops都是为了解决公司流程中环节交互的问题。在软件开发的整体流程之中,存在很多环节,这些环节之间也存在很多障碍。需求从用户提出到公司业务部门消化后再传递到研发部门最后运维上线,各个环节的流转都有可能出现不顺畅的情况。客户与公司各个部门之间都有各自不同的工作目标,不同的目标产生不同的文化从而形成沟通、工作方式等障碍。

客户/用户,目标是期望降本增效,希望产品可以让他们的业务更加顺畅,工作和生活越来越好,追求价值至上。
业务部门,目标是快速的满足客户需求,为公司带来营收的增加。他们追求的是市场文化,在这种客户至上的市场文化里,他们最终的目标就是赢单。
开发部门,目标是快速高质量的交付产品功能,期望产品没有bug的情况下交付给运维部门。
运维部门,目标是保障系统在各个环境下的稳定运行,直接面向客户服务,稳定是他们的首选。
基于上述各个部门的不同追求,必然导致他们之间存在着很多障碍。那么对于这些不同阶段存在的障碍,业界就提出了各种不同的解决方案。
由此在企业的日常流程中便有了敏捷和devops的应用。

2、敏捷与Devops的区别
敏捷于2001年2月年提出,目的是改进研发过程,以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。敏捷改变传统瀑布模式的思维,以透明、检视、适应三大支柱为基础,通过敏捷方法促成经验性实践的不断完善改进,从而找出适合企业和团队的研发流程和机制。
敏捷更多关注的是研发流程,保证每个迭代的高效产出价值。持续交付价值。
Devops于2009年提出,是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。DevOps是一种软件开发方法,涉及软件在整个开发生命周期中的持续开发、持续测试、持续集成、持续部署和持续监控。这些活动只能在DevOps中实现,而不是敏捷或瀑布,这就是为什么顶级互联网公司选择DevOps作为其业务目标的前进方向。DevOps是在较短的开发周期内开发高质量软件的首选方法,可以提高客户满意度。
Devops关注整体系统的价值流动,在产品发布全流程中,所有成员通过协作确保产品有价值。通过自动化工具持续集成、持续测试、持续部署、持续发布。
3、敏捷与Devops的关系
敏捷和devops一起用并不矛盾,都是基于精益思想的产物,devops实践是在敏捷开发的基础上进行了演变,因为devops拓展和完善了持续集成和发布流程,因此可以确保代码是生产上可用,并且确实能给客户带来价值。二者结合使用,更能有效的消除部门墙,降低内耗,降低成本,快速回报。