在实践和推广 DevOps 的过程中, 当对着客户吐出 DevOps 这个词之后, 收获的往往不是大腿一拍热泪盈眶, 而是一脸困惑欲言又止想问又没问的场景. 在一番解释后, 到团队中落地的时候, 往往又单独拉几个人出来, 划了个圈说这是一个 DevOps Team. 这类做法背离 DevOps 的初衷. 背后的原因很多, 但一个浅显却影响深远的原因往往被忽略, 就是 DevOps 这个名字本身.
DevOps 目前并没有中文翻译, 对于中国人来讲, 即使直觉的望文生义也无法产生. 当几番了解知道是” Development” 和” Operations” 的拼接之后, 对应的中文是”开发运维”, 依然一头雾水不明所以. 而由于” 开发”和”运维”目前是常见的两种角色, 两个团队, 而 DevOps 需要新的技能和工具, 因此把 DevOps 作为一种新的角色, 成立一个新的团队, 就自然而然了.
语言的边界就是思想的边界. 一个精确表达概念的词汇将阻止误解的产生. TDD 也好, Pair Programming也好, 虽然实践本身争议不断, 但其含义却少有误解. DevOps 对于英语母语的人来说或许精确表达了它的意思, 但对于中国的开发团队来说, 带来的只有困惑.
“开发自运维” 是我推荐的 DevOps 中文翻译. 它依然没有反映全部的含义, 甚至暗示着不再需要运维团队, 但它至少从字面上就阻止一件事: 成立专门的 DevOps 团队. 想想吧, 把几个人弄出来, 说你们是”开发自运维”团队, 这从语义上就说不通啊. “开发自运维”从字面上就意味着运维是开发团队内置的责任, 这也符合 DevOps 运动的初衷.
在高度不确定性的产品创新中, 对市场的响应速度越来越快, 开发自运维是一个趋势, 可以缩短交付时间和对反馈的修复时间. 这种趋势的前一波浪潮, 则是”开发自测试”/“开发自设计“, 而下一波运动则极有可能是”设计自开发”.
”开发自测试”已经接近成功而即将成为过去式, 可最初也曾经面对”开发”和”测试”天然是两个团队这种概念而阻力重重. 并没有一个像 DevTest 这样的运动来指导开发和测试的融合, 而是敏捷推行的”全功能团队”帮了忙. 而最终的结果是并不会取消测试这种活动, 甚至依然有专职的测试人员, 但相当一部分测试活动被”开发人员自测”涵盖了. 对照历史, 我们有理由相信, “开发自运维”并不会取消运维这种活动, 甚至依然会有专门的运维人员, 但相当一部分运维工作, 将被”开发自运维”涵盖.
“开发自设计”几乎从未引起过困惑和质疑. 事实上无论是 PC 时代还是 Mobile 时代, 大量软件都是个人能力的结晶. 这里面的制约因素是开发能力而非设计能力. 即使对企业应用开发, 架构师, 交互设计师等也都算作开发团队成员.
而”设计自开发”则已初露端倪. “心声”是一款帮助听障患者与他人沟通的 iOS App, 由 ThoughtWorks 设计师朱晨独自设计并开发. 随着对市场响应速度的追求, 对不确定性快速验证的追求, 设计师们发起了”Lean UX” 等工作方式, 而对开发工具的掌握, 将极大提高其产品设计和验证效率. 开发工具及平台朝着简单易用的方向发展, 也会助设计师们一臂之力.
联系客服