DevOps狭义的概念是开发运维一体化,强调软件开发和运维团队之间更好的沟通协作,以便更快更高质量的软件交付。广义的讲,DevOps是一种文化,流程和实践,覆盖整个软件开发的全生命周期和所有干系人。强调项目经理、研发、测试和运维人员思维转变,更好的协作和更紧密的整合。通过自动化的流程,使得构建、测试、发布软件更加地快捷、频繁和可靠。最终的目的是提高软件质量、缩短交付周期,甚至于像工厂的流水线一样,扣动按钮,即可实现自动化的、持续的软件交付。
文化-沟通与协作
DevOps强调项目干系人,尤其是开发、测试和运维之间更早、更多的沟通和协作。DevOps认为所有人的目标是一致的,即项目高质量和按时交付,而不是仅仅限于自己的职责分工。开发团队要邀请测试和运维人员参加需求分析、系统设计、详细设计和技术选型等会议。整理需求时,不仅关注功能和性能需求,还需要了解测试和运维方面的需求,并将这些需求纳入系统设计中,以便测试团队更好的对系统进行测试,运维人员更好的对系统进行部署、监控和运营。测试团队邀请开发和运维团队参加测试脑图和测试用例讨论的会议,协助测试人员完善和优化测试方案。运维团队邀请开发和测试团队了解运维流程、工具和方案,分享经典案例,以便开发在开发过程中优化技术方案,测试在测试中补充相关的用例。