持续集成continuous integration (CI) :频繁的(一天多次的)将所有开发者的工作合并到主干上,核心 在于 确保新增的代码能够与原先代码正确的集成
持续交付Continuous delivery (CD or CDE) :一种能够使得软件在较短的循环中可靠的发布的软件工程方法。侧重点在于 交付,确保新增的代码在生产环境中是可用的
持续部署Continuous deployment (CD) :通过自动化部署的手段将软件功能频繁的进行交付。强调了通过 automated deployment 的手段,对新的软件功能进行集成,与持续交付相比,就在于其功能可靠性与功能及时性的侧重不同。
敏捷开发Agile software development:一种从1990年代开始逐渐引起广泛关注的新型软件开发方法,是一种能应对快速变化需求的软件开发能力。它们的具体名称、理念、过程、术语都不尽相同,相对于"非敏捷",更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重做为软件开发中人的作用。总结为四大特性:递增、避免不必要的开销、协作、说真话。