作者:范军 (Frank Fan) 新浪微博:@frankfan7   微信:frankfan7

【DevOps】谁说大象不能跳舞?一文之后,本文对DevOps的理念作进一步探讨。

最近在读一本书《Project Phoenix》,用小说的方式来描述了作为IT部门总裁的主人公临危受命,

面对IT开发和运维中出现的种种危机,在险峻的情况下采用新的管理理念,从而带领IT团队从低谷走向成功的故事。书中的一些场景,我是再熟悉不过了。有时候也不禁想,如果自己身在其中,会如何应对呢?

这本书也引用了很多DevOPs的理念,故事一波三折,其中的道理很耐人寻味。

话说该公司的IT部门是最备受责难的一个部门。很多商业计划因为IT不给力而拖延,IT环境极其不稳定,大小问题接连不断。IT每天忙于救火而疲于奔命。人员士气低落,各部门各自为战。出了事互相指责。

主人公在一位高人的指点下,开始了卓有成效的改革之旅。其中很重要的一个课题就是,到底根本问题出在哪里呢?为什么永远都觉得在疲于奔命?

他们从把工作分类开始,一步步得找到了症结所在。大体分四类工作:

Business Projects

比如其他部门的要上一个商业应用或者新的商业流程,需要IT提供软硬件环境,实施设计开发并运维。这类项目是有其他部门为实现某种商业目的来驱动的。

Internal  Projects

往往指由IT内部驱动的项目,软件更新换代、扩容、安全措施、提高IT环境的稳定性、性能等等。

Change

ProductionEnvironment的有计划的升级,改动等等

Unplanned Work

一些突发情况,比如系统或应用的中断等等

上面的图揭示了一个恶性循环。

第一象限:因为商业计划往往时间紧、任务急,IT手忙脚乱把活干了,为了节省时间人力走了很多捷径,造成了系统稳定性的降低。为日后埋下了隐患。

第二象限:因为忙着赶第一象限的活儿,本来应该做的InternalProject就被拖延了。软件补丁和升级不及时,系统没有很好的优化和长期的计划,直接造成的系统稳定性、性能等的降低。

第三象限:因为没有很有效的ChangeControl,部门之间对改动互不知晓,还由于系统不稳定造成很多计划中的Change失败。从而累积了越来越多的问题

第四象限:由于前三个象限中问题产生的雪球效应,很多意外情况就不可避免的发生了。解决这些意外情况的成本是非常高的,因为打乱了本来的计划,造成了其他三个象限工作的拖延。从而又产生了新的一轮的恶性循环。

问题的症结找到了,那么如何入手解决呢。主人公Bill一连下了几记重拳:

建立高效的ChangeControl流程

这个流程开始的时候很不容易,因为人们习惯了各行其是,觉得Change Control太繁琐复杂。但这个流程是必须的,它可以评估改动的风险,防止出现意外情况。

暂时冻结Business Projects

短期的冻结,给了IT人员调整优化系统的喘息之机,从而能实施一些Internal  Project来稳定IT环境。同时为新的BusinessProjects做好准备。

定位瓶颈

该书中描述了一位技术大拿Brent,总是在关键时候力挽狂澜。在很多情况下,少了Brent事情就干不成。主人公Bill意识到了如果不解决这个瓶颈,整个IT团队的生产力都要受到个人的影响。于是采取了一系列的措施解决这个问题。比如:最佳合理利用Brent的时间,避免很多琐事的干扰;培养一个梯队来承担Brent的任务,做好知识和经验的传承。

几套组合拳下来,很明显的减少了Unplanned Work,从而遏制住了恶性循环,为下一步的流程优化打下了基础。更重要的是增加了团队间的凝聚力和信心。

除此之外,书中反复强调了一个有重大意义的理念,就是以流水线的方式来开发和管理IT环境。我们会在下文中详细介绍。

【DevOps】为什么我们永远疲于奔命?的更多相关文章

  1. 小程序—银行、券商们下一代APP的进阶方向

    传统金融机构们的App——尤其以手机银行.手机证券为最,发展到今天,已经产生一系列的问题:从用户角度看,体验普遍不好.高度同质化:从业务运营角度看,几乎没有什么“运营”的抓手:从IT角度看,投入产出比 ...

  2. (视频)《快速创建网站》 4.1 为啥造软件不同于造汽车,为啥是软件就一定会有Bug - 构建开发运维一体化(DevOps)

    本文是<快速创建网站>系列的第9篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...

  3. DevOps的修炼之路!

    作为一名产品经理,首先要知道产品对于所属公司来说意味着什么,要探寻这个问题,我们又得知道和公司息息相关的是什么,在我的理解来看,与公司状况相关的因素有以下这些: 市场份额 平均订单金额 盈利能力 资产 ...

  4. 解谜谷歌 DevOps:什么特质可以打造世界级可靠系统?

    [编者按]本文是 Gene Kim 总结自对 Randy Shoup 两个小时的采访,主要关注谷歌 DevOps 的提升之道.本文系 OneAPM联合高效运维编译整理. Randy Shoup 曾协助 ...

  5. 如何与 DevOps 为伍?

    DevOps 是一个席卷 IT 界的新术语.但它究竟是什么,南非的公司们如何利用它来加快高品质应用程序的开发速度?国外知名博客作者凯西·吉布森找到了一些答案. 其实 DevOps 这个词已经火了一段时 ...

  6. 全球顶级专家为你解读:什么是真正的 DevOps?

    [编者按]本文是 Skytap 内容主编 Noel Wurst 对 DevOps Enterprise Summit (DOES)的不完全综述,内容包括了 Noel 和一些与会嘉宾的思考,旨在勾画 D ...

  7. 基于TFS的.net技术路线的云平台DevOps实践

    DevOps是近几年非常流行的系统研发管理模式,很多公司都或多或少在践行DevOps.那么,今天就说说特来电云平台在DevOps方面的实践吧. 说DevOps,不得不说DevOps的具体含义.那么,D ...

  8. 一分钟告诉你究竟DevOps是什么鬼?

    历史回顾 为了能够更好的理解什么是DevOps,我们很有必要对当时还只有程序员(此前还没有派生出开发者,前台工程师,后台工程师之类)这个称号存在的历史进行一下回顾. 如编程之道中所言: 老一辈的程序员 ...

  9. 什么是DevOps

    历史回顾 为了能够更好的理解什么是DevOps,我们很有必要对当时还只有程序员(此前还没有派生出开发者,前台工程师,后台工程师之类)这个称号存在的历史进行一下回顾. 如编程之道中所言: 老一辈的程序员 ...

随机推荐

  1. 《学习OpenCv》 笔记(1)

    P1-P17 废话 可跳过 不过讲了如何搭建环境,如果你没有搭建的话,可以查看我的另外一个博文,详细讲了如何构建OpenCv的编程环境 P19 开始编写第一个代码

  2. C#高级编程9-第2章 核心C#

    C#基础 使用C#命名编译器csc.exe,编译C#程序 变量 变量一般初始化后才能使用 类型判断弱类型var,根据初始值判断类型, 变量作用域,可以访问该代码的区域 类中定义的成员变量和属性,作用在 ...

  3. SpringBoot无法启动,Process finished with exit code 0

    1.排查yml和properties文件是否配置错误 2.排查POM引入的包

  4. PostgreSQL增强版命令行客户端(pgcli)

    效果: 安装: https://www.pgcli.com/install 官网: https://www.pgcli.com/

  5. Android - Mount a Samba share

    Mount Manager, Cifs manager :Manage your CIFS/NFS network shares was working, but the command from t ...

  6. HttpPost+json请求---服务器中文乱码及其他

    好凌乱的题目,只是一些功能点的总结咯. 首先构造一个json对象用于存放数据,如果光加上header为utf-8就能解决中文就大错特错了... json对象可以put变量,也可以put对象.取的时候o ...

  7. [Asp.net MVC]HandleErrorAttribute异常过滤器

    摘要 在asp.net mvc中除了使用try...catch/finally来处理异常外,它提供了一种通过在Controller或者Action上添加特性的方式来处理异常. HandleErrorA ...

  8. matlab快捷键大全

    原文地址,点此查看 一.常用对象操作 除了一般windows窗口的常用功能键外. 1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看. 2.who   可以查看当前 ...

  9. 借助LVS+Keepalived实现负载均衡

    原文地址:http://www.cnblogs.com/edisonchou/p/4281978.html 一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了 ...

  10. VS2010属性

    基于virtual studio 所有工程属性和  工程属性 这是VS2010的改变,不能够在“工具-选项”中看到“VC++目录”了. 但是呢,我们可以在另外一个地方找到它,请看下边的对比照片. VS ...