2015年6月,Gartner预测,“到2017年底,市场对移动APP开发服务的需求将至少比内部IT组织提供的能力快五倍。”事实上,企业已经看到他们的应用程序工作负载猛增。因此,越来越多的组织正在采用DevOps——一种通过让应用程序开发人员和运营专家在端到端应用程序开发和部署过程中进行协作来加速应用程序开发和交付的方法。以下是组织中公认的10个DevOps“最佳实践”。1.打破IT中的障碍打破IT职能之间的职能障碍必须来自高层管理人员,因为IT几十年来一直被组织成职能孤岛。在这种环境下,应用程序开发工作历来采用流水线方法(瀑布模型),其中一个部门构建应用程序,然后将应用程序发送到操作组进行集成,然后应用程序由QA组进行测试,之后app返回Deploy到运维组。这种功能分离限制了协作并导致应用程序部署延迟。为了更快地交付当今的应用程序,IT经理已开始将IT重组为DevOps团队,这些团队是所有IT方法的组合,每个团队负责特定类别的应用程序。2.调整绩效考核当IT文化需要“出轨”时,团队绩效和个人参与的团队绩效考核可以大踏步进入流程。为开发人员和运营人员提供更多绩效衡量标准,以便他们的团队能够实现应用程序开发和部署目标。3.建设项目的实时可见性当前的项目管理软件现在具有内置的自动化功能,可以减轻项目更新的麻烦。项目管理工具可以提供对应用程序的实时可见性,并提供有关开发在部署过程中所处位置的准确描述。它还可以显示当前任务的人员和关键任务资源(看板)。项目管理软件可以作为跨职能IT团队的“单一版本”(所有人可见,统一理解),使项目协调更加容易。4.随时随地使用软件自动化您可以通过选择与您的IT环境兼容的应用程序自动化工具集来减少时间、错误和成本。这种自动化可以扩展到应用程序源代码开发、系统和中间件配置,甚至数据库和网络更改。部署前的回归测试和负载测试等重要的类似生产的测试也可以自动化。这节省了开发人员和运营商的时间和精力。5.选择相互兼容的工具DevOps使用工具和自动化的另一个考虑是应用程序和系统级别的工具产生的状态信息不会冲突。从单一供应商选择工具通常更有效,因为这些工具已经相互紧密集成。这改善了应用程序开发人员收到的有关其应用程序运行状况的状态,以与操作人员在其应用程序中看到的内容保持一致。6.从小而成功的项目开始希望打破孤岛的IT文化的CIO需要确保为他们新整合的DevOps员工队伍带来一些快速的胜利。这建立了他们对新方法的信任和合作。不要贪图一切,需要有单点突破的能力,甚至说构建完整的持续交付流水线都是错误的。这个地方的手法是整体设计,分块搭建,对于每个角色,高频交互场景是优先切入点。7.不要忘记用户!您正在开发的应用程序是最终业务。如果没有业务利益相关者的重要支持,您的DevOps努力将会失败。从您与他们坐下来定义应用程序需求、原型设计、单元测试集成/回归测试、培训和部署的那一刻起,整个DevOps过程都涉及最终用户。这种包容是基于用户的价值,站在用户的角度,考虑其在业务连续性、可用性、用户体验、满意度等方面的要求。从今天的角度来看,让用户参与设计是一种详细的设计方法,可以通过一些轻量级的技术手段,比如A/B测试,来减少和加快这个过程。8.协作管理变更当多方协作进行涉及原型设计和其他工具的快速开发工作时,对应用程序的更改迫在眉睫。这就是有效的变更管理流程对每个DevOps项目都至关重要的原因。当应用程序需要更改时,应该向团队中的每个人提出该请求,无论他们从事IT的哪个部分。这种交流还应针对最终用户的利益相关者。在分布式研发管理模式中,工具非常重要。使用分布式管理工具,自动化构建和测试工具,都是为了提高协作效率。9.应用程序的持续部署DevOps在持续应用程序部署模型中最有效,在这种模型中,网站不会等待各种增强功能被捆绑到一个独立的软件版本中,而是选择持续修改和交付修改后的应用程序(基于MVP,增量迭代开发模型).具有强大变更管理系统的应用程序持续交付模型可以更快地向业务交付新的应用程序功能。变更管理平台需要具备灰度发布和A/B测试的能力,而不是更多地依赖人工保障。10.在公司内部营造服务环境IT温室的日子已经过去了。要做好面向业务的交付,IT必须牢记业务用户的需求,并交付满足或超过功能和上市时间预期的应用程序。如果改变文化可以强调团队合作的价值、开放的沟通和对客户满意度的承诺,那么即使客户居住在相邻的办公室也可以做到这一点。总之,要把我们的服务意识放在离客户最近的地方。【本文为专栏作家“王金银”原创稿件,转载请注明出处】点此阅读更多该作者好文
