徐磊,英捷创软 LEANSOFT 创始人兼首席架构师,专注于软件工程、DevOps 方面解决方案咨询。有超过 10 年的软件研发项目管理经验,曾任 SSW 中国研发中心总经理。是资深 ALM 顾问和解决方案专家,微软最有价值专家和大中华区域社区技术总监,认证 ScrumMaster 和敏捷教练。 StuQ 工作坊:您拥有多年 DevOps 实战经验,曾担任京东商城、华为、中国农业银行、百威英博等多个项目的高级 ALM/DevOps 顾问。您怎么理解 DevOps?在您看来, DevOps 的核心竞争力是什么? 徐磊:核心竞争力就是两个字:效率。 IT 行业非常擅长发明新名词,其实过去的 10 年中我一直都在做软件工程相关的工作,一路走来撞上了很多这样的名词:SDLC(软件开发生命周期),ALM(应用生命周期管理),敏捷,精益等等,到了 2012 年第一次听说 DevOps。开始的时候也很迷惑,到后来发现这 10 多年都只做了一件事情,就是提高效率。DevOps 不能帮你直接解决业务问题,它只能帮你更快更好的交付业务需求,这就是效率。 这么多年,其实软件工程行业的关注点经历了一个从微观到宏观,再回归微观的过程。比如一开始的 SDLC 就是一个关注软件开发过程本身的方法论,后来发现这不够,只关注开发本身解决不了问题,就开始向更大的范围延展,也就是出现了 ALM。 其实 ALM 和 DevOps 所关注的问题领域很接近,只是前者更关注管理,而后者又开始向技术回归,更加关注具体的实践和落地的方案。而敏捷和精益在整个过程中则起到了价值观引导和方向性指导的作用。 说的更直白一点,软件工程行业做的就是效率的工作,我们虽然不能帮你写代码,做测试,但是我们会让你写的代码体现出更多的价值,让你的交付过程更加顺畅,让管理人员更有信心,让技术人员在单位时间创造更多价值。 StuQ 工作坊:可否用一个您之前的案例,说说应用 DevOps 给开发团队带来哪些改变? 徐磊:案例很多,都可以和 DevOps 扯上关系,DevOps 其实就是一顶帽子,只要你做的是软件工程领域改进效率的工作其实都可以说自己在做 DevOps。所以,不应该说 DevOps 这顶帽子给开发团队带来那些改变,而是 DevOps 下面的实践给开发团队带来哪些改变。 我做的案例中金融行业比较多,比如:农行,兴业银行,博时基金等等。这个行业有一个普遍的特点,就是监管很严,造成的结果就是企业内部流程繁琐,审批多,部门墙很严重。 我个人比较看重的改变其实是团队士气上的改变,比如之前给其中一家引入了用户故事地图和影响地图实践,协助他们完成了需求梳理过程。参与的成员普遍的反应是业务人员和技术人员可以开始对话了,而且效率很高,以往可能需要几个月才能完成的需求梳理和设计,这次仅仅用了 2 周时间,项目就可以启动了。而这种对话所带来的默契在后续的开发过程中让沟通更加顺畅。 另外一家,我为他们的 iOS 开发项目定制了一套在 TFS 上面的集中自动化构建系统,这个事情让他们的开发人员不再需要每个月抱着电脑到构建管理员那里拷贝代码才能发布版本。这里解决的其实是 AppStore 证书的问题,因为企业证书是不能拷贝给开发人员的,而发布正式版本又需要这个证书,所以以前是靠人来管理,现在可以靠自动化系统。这个事情其实做的就是持续集成,但是解决的却是流程问题。 引入 DevOps 实践最重要的是要能带来效率提升,让涉及到的人员感受到价值。 StuQ 工作坊:您觉得哪一类企业适合 DevOps?如何评估一个企业适不适合,以及什么时候适合实施 DevOps? 徐磊:我觉得没有不适合 DevOps 的企业,开奖,只有不适合 DevOps 的人。企业都要盈利,没有一家企业会认为效率提升对它没有价值,所以都适合做 DevOps,而且都应该做。但是具体到人的个体,就不一定了。 这里还是个案例,我的一家银行客户,一直希望能够做到全生命周期的软件工程管理,就是用需求把整个过程串起来,一直不能落实。2016 整个行里把互联网金融作为战略级决策,由副行长出面协调组织了一个跨部门跨职能的虚拟团队来做这个事情,这个项目里终于做到了全生命周期管理。 我在这里不想探讨为什么要做全生命周期管理,我只想说为什么之前的 10 年都做不到,这次做到了。我参与了这个项目整个过程,我觉得最大的区别就是这个组织架构的调整。以前的人员都属于各个部门,各自的 KPI 都是对部门的,没有人会觉得全生命周期管理对自己有任何的好处,因为自己做的都是其中一段,做多了也没有人会说你好。这次采用这种虚拟团队的组织架构,让这些人的思想一下子从做好自己这一段转变成了做好这个项目。这个事情就成了,就是这么简单。 (责任编辑:本港台直播) |