DevOps 到底好在哪里?这篇文章告诉你了
本帖最后由 FYIRH 于 2021-12-25 17:24 编辑写在前面
最近疫情严重,正好利用这个时间,把自己之前的Blog和印象笔记的东西搬搬家,整理整理,希望在疫情过去后,自己也能坚持把自己平时工作的关于技术和管理的实践多写写,一起交流。
产品研发得码多少人
首先打算写一个自己平时在工作中,对于日常的工作流程和工具进行一个整理,也就是DevOps。本人一直在创业公司,有很多人觉得创业公司不需要技术管理和流程,就不到10个人,为什么需要这么多乱七八糟的。在讲这个问题之前,我们想想,现在当下互联网或者物联网相关的产品,需要的角色有多少呢?
我整理了下,我们需要的上面这么多角色,当然,在很多创业公司,都是一人兼多职(工资就一份)。但是和我们需要的产品发布和迭代节奏完全相反的是,老板肯定需要快速稳定的发布产品,1周恨不得更新一次feature list。
产品研发流程有多复杂
上面的流程,基本是软件研发的基本流程,为了保证各种质量,涉及到各种角色和阶段,需要整体项目负责人有很强的管理和协调能力,才能保证项目的预期发布和质量管控。纯靠人去跟踪,基本管不好。
迭代速度 快!快 !快!
下面的桥段,大家肯定遇到过:
老板说:我们先做一个DEMO,BD需要这周末去个客户演示拿单子。演示完了,然后。。。。
老板再说:客户那边演示的不错,要求1-2周内上线(程序猿懵逼,下面就是产品和程序猿的互撕了)
我们有多少产品和项目是从DEMO改起来的,软件质量、架构体系、产品价值和前景,是否符合公司核心价值,这些都不是考虑范畴了,基本属于,后续全是坑。
任何公司的核心价值都是产品质量的优秀,优秀的产品,我们这里不谈什么是好产品,我们这里聚焦的点是,产品技术怎么保证稳定快速发布新产品。答案就是DevOps。
DevOps的核心价值
DevOps由开发(developments)和运维(operations)组成,字面意义就是鼓励跨部门协作。DevOps的出现其实是敏捷软件开发的产物,下面是敏捷宣言的经典摘录:
DevOps想要强调的是:个体和互动是非常重要的,用自动化代替重复人工工作,把更多的时间留给大家的沟通和交流,产生真实的价值。
举个简单例子,PM想尽快了解开发的进度(眼见为实,其实UI更需要眼见为实),那就要求RD和QA,需要在测试环境进行快速的增量交付,并且交付的内容可以让PM和UI等利益相关方,尽快看到,并且可以第一个吃狗粮。如果是跨部门的传统合作,试想下,难度是不言而喻的。但是DevOps可以通过一系列自动化和持续交付的工具,以及统一产品目标的理念,让部门壁垒消失,工具提醒人员,去做这个阶段需要做的事情,大家都在管道内,进行有条理的工作,管道的终点就是产品稳定快速发布。
DevOps 的流程和工具
[*]流程:DevOps是为了产品交付服务的,交付肯定是有流程的,所以我们先需要明确流程
[*]工具:根据语言、技术人员素质、产品特点,选择合适的工具拓扑,其实最主要的工具包含以下几类:需求管理工具、代码库、构建工具、工件库、测试工具、部署工具、监控工具、问题跟踪(转自天行者YANG)
页:
[1]