EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在数字化的转型浪潮中,开发人员的生产力越来越被企业重视,提升团队研发效能、缩短TTM成为了实现企业战略目标的重要措施。企业中的研发团队从每个团队各自试验、探索,逐步整合基础设施、最佳实践、企业规范等,形成企业内部研发平台,为所有团队开放企业核心资源和提供DevOps能力,使研发团队更专注于业务价值的交付。 经过多年的业务能力建设、不同的技术投资和整合,许多传统组织被遗留技术、人员、流程和文化所困扰,这阻碍了企业进行创新和试验。他们看到互联网新玩家冲入行业赛道,并取得指数级增长,蚕食其耕耘多年的市场份额。这些新玩家没有负担,他们更快、更精益、更勇于尝试,并采用平台化思维。 在与这些企业或组织的合作经验中,我们观察到他们的平台化战略转型往往会经历三个演进过程,首先他们使用成熟的工具链提升研发速率,紧接着整合企业资源,构建研发平台实现效能度量和持续改进,并最终尝试开放技术平台打造共赢生态。 研发工具链在一个研发团队运行的早期,由于经验、成本、进度等限制,没有较为成熟的交付体系与研发工具,尤其是规模较小的团队,他们更倾向于选择市面上已有的一些研发工具。不论是FOSS(免费开源软件)还是COTS(商业现成产品),总是希望采用一些开箱即用的成熟产品,来提高整个研发交付的效率,尽可能降低研发工具自身复杂度对交付带来的影响。 不论一个团队规模如何,有几类常用的工具会贯穿整个研发与交付流程。我们可以简要的分为这几大类: - 项目管理类1 o2 @' g$ O& _ T# |8 m
在项目协作、需求管理方面,很多团队都采用了Jira,Confluence等Atlassian系工具,或TFS的微软系工具。国内企业常用阿里云效、禅道等。这类工具的功能大而全,能满足绝大多数团队的需求,并且有成熟的售后支持。
! v2 M9 J, f; u- r* y9 Y此外,还有一些功能较轻量级的管理工具,例如Trello,Mingle,github.pages等,只提供看板维护、文档展示等较为单一的功能,使用时需要在这些工具间来回切换。 - 研发构建类! ?( s1 z1 h9 N2 G
越来越多的团队开始实行敏捷开发,为了缩短发布周期,而逐步推动持续集成与持续部署,相应的研发工具也慢慢推广开来。如版本控制工具Git;构建工具Maven,Gradle;CICD工具Jenkins, GoCD, BuildKite, BamBoo等。 - 代码测试类* g, N& N- j# ]( d
由于人工手动测试耗时耗力,容易出错,特别是在上线前的回归测试,往往是重复枯燥的体力劳动,我们倾向于将更多的测试自动化,集成在流水线中。许多团队会在用Gatling,Selenium,Cucumber,Jmeter等测试工具,从安全、性能、UI、业务等角度全面覆盖,并将测试过程自动化。 - 部署运行类8 W% {; T3 N: r" Q& O* e; k
基础设施维护也是较为繁重的工作,从虚拟化到容器化,再到无服务化,大大减轻了运维的成本和复杂度。如Vagrant,Ansible,Docker,Kubernetes,Istio等工具,近年来被较多采纳并实践。 - 监控运维类
: I3 E4 [4 {. n0 O: t当软件运行起来后,需要持续地进行监控和维护,其工具也非常丰富,如Prometheus,Logstash,ZipKin,Zabbix等。
( F# u( X# u8 m# c2 h% [# ? ( C# ?6 q( u; M; z
|