Advertisement

敏捷开发、持续集成、持续交付和DevOps之间的关系(一张图解释)

阅读量:

敏捷开发:一种新型的计算机开发方式(与瀑布开发相对立),以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

持续集成(CI):在源代码变更后自动检测、拉取、构建并进行单元测试的开发过程,持续集成的目标是快速确保开发人员新提交的变更是好的,并且适合在代码库中进一步使用。

CD有两个含义 ,最早的CD是与CI一起的,CI/CD,这里的CD表示的是持续部署(Continues Deployment)。CD后来又演进为Continuous Delivery,也就是持续交付。二者的区别可以参考下面这个帖子:

[持续交付(Continuous Delivery)和持续部署(Continuous Deployment)的区别]( "持续交付Continuous Delivery和持续部署Continuous Deployment的区别")​​​​​​​

DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。

全部评论 (0)

还没有任何评论哟~