软件开发中的CI、CD、CD概念

在软件的编译发布的过程中,经常能够看到CI、CD这样的词语。其实他们是专业的缩写短语,这里介绍下他们的概念和区别。

敏捷软件开发

英文全称:Agile software development,是从1990年代开始逐渐引起广泛关注的新型软件开发方式,是一种应对快速变化的需求的一种软件开发能力。它们的具体名称、理念、过程、术语都不尽相同,相对于“非敏捷”,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发过程中人的作用。

CI:持续集成(CONTINUOUS INTEGRATION)

持续将每次提交的代码集成进行自动化测试,可以借助一些precommit工具每次提交前进行自动化测试。

CD:持续交付(CONTINUOUS DELIVERY)

持续集成基础上,可以考虑部署生产环境,也可因业务原因不进行部署
需要开发同学尽可能早的快的提交,要求自动化测试组件,案例充足,
让QA等同事可以减少测试,其实也减少了很多传统发布日的繁琐流程,
更加有效的提升迭代的效率,可以有更多的时间让大家专注在开发和
打造更优秀的产品事情上。

CD:持续部署(CONTINUOUS DEPLOYMENT)

在持续集成基础上,自动部署生产环境,比持续交付更自动
需要开发同学尽可能早的快的提交,要求自动化测试组件,案例充足。

详见:https://blog.csdn.net/sinat_35930259/article/details/79429743

你可能感兴趣的:(软件工程)