今年偶然的一次机遇了解到DevOps。现就自己的理解对Dev进行探讨。有不对的地方,欢迎交流。
DEVOPS定义
DevOps(Development和Operations 的组合)是一组过程、方法与系统的简称,用于促进开发(应用程序/软件工程)、技术运营和质量保证(QA)部门之间沟通、协作与整合。
--来源baidu 百科.
本文简单聊一聊一个数据人对DevOps的理解。
信息化的历史过程:
一、信息化早期(开发+业务):
业务(需求方)、开发(实施方)
业务:我有一个需求,需要实现XXX
开发:为什么要做这个需求,意义是什么、规则是什么。。。(XXX调研)
业务:是这样的:巴拉巴拉
开发:好的,了解。
开发coding...
(业务、开发可能多次就细则进行沟通)...
开发coding...
开发单元测试通过
业务验收
上线。
二、开发+业务+测试
业务:我有一个需求,需要实现XXX
开发:为什么要做这个需求,意义是什么、规则是什么。。。(XXX调研)
业务:是这样的:巴拉巴拉
开发:好的,了解。
测试:@开发,你这里有问题,业务不是这个意思吧,这个处理方案有漏洞吧。。。?
三、开发+业务+测试
业务:我有一个需求,需要实现XXX
开发:为什么要做这个需求,意义是什么、规则是什么。。。(XXX调研)
业务:是这样的:巴拉巴拉
开发:好的,了解。
测试:@开发,你这里有问题,业务不是这个意思吧,这个处理方案有漏洞吧。。。?
开发:我们已让业务配合进行了测试,这个应该没有问题的,要不和业务确认一下?
测试:@业务,他这个地方是不是有问题呢?。。。
。。。。。。
三、开发+业务+运营(运维)
业务场景复杂、业务规模扩张。为保障业务正常运行引入运维:
开发:我这边有意需求,需要修改XXX模块;
运维:(这厮怎么又来改东西了,侧目怒视)为什么提这个需求,背景是什么?有没有风险?怎么证明对现有模块没有影响?
开发:额,这个是因为。。。(开发心中已万马奔腾,心想怎么有了运维开发工作就这么难呢)
作为it开发的你有没有遇到类似的场景呢 ?呵呵,遇到这个问题的你并不孤独。有太多的it同学有这种经历,所以就有人想了,能不能把开发和运维的工作通过一套理论或者方式:既可以保证满足运维安全、稳健等一系列要求有可以减轻开发和运维的沟通成本的方法或者工具呢?在此设想的努力下DevOps顺势而生。
笔者看来DevOps 在未来一段时间内,会逐步成为开发的一套理论,并会有众多的产品助理实现开发(应用程序/软件工程)、技术运营和质量保证(QA)的无缝链接,从而节省公司成本,赋能公司的业务开展。
你们公司使用DevOps了么 ?