如何选择研发效能管理平台?好用的研发效能管理平台有哪些

news2024/10/8 15:27:06

本文将对比介绍8款比较知名的效能度量管理平台:1.PingCode;2.思码逸;3.云效;4.金山云;5.Git;6.Jenkins;7.Bamboo;8.Docker。但在对比研发效能平台之前,我们先来聊一些研发效能度量工具选型前的必知事项。

一、软件研发效能度量工具选型前的必知事项

不少客户现在对工具平台的要求是端到端、全流程、一站式,功能要齐全,尽量保证功能页面不跳转。面对这样的需求,必须清楚一点:没有一家厂商能够在每个点上做到100分。项目管理、代码托管、测试管理、部署管理,每一个单点要做到专业化都非常难。

有时候对于一个企业来说一站式带来的效能优化并没有想象中那么高,单点的解决方案更好,而对于有些企业来说全流程的效能管理解决方案更符合需求。

1.基于关键痛点选型

笔者之前负责一个万人级开发规模的项目,客户早期采纳的方案是咨询+CI落地应用,经过评估:

1. 每20个人需要有一个CI管理员,1万人就需要配置500个CI管理员。

2. 每个CI管理员最快1周能学会如何配置,500个人至少需要投入2500天来学习如何配置。

3. 10个人一批同时学都要学一年多才学完,按照IT人员的高流动率,可能永远都学不完。

这个项目的研发效能痛点不在大规模集成部署上,而是大规模的CI实施上,新的解决方案让团队无须学习,完成对应的授权后,1分钟就完成CI创建。通过快速落地CI能力,进而使大规模的集成部署效用发挥出来。

所以企业在采购研发效能平台之前,先需要弄清楚自己要用工具来解决什么人不能解决的、现在的工具不能解决的问题,对问题影响进行排序,找出关键的痛点。

可以通过以下一些问题来梳理:

1. 从需求到部署全流程哪些环节还没有工具,是人工在处理?

2. 哪些环节在过去是问题比较多的?

3. 团队、系统以及代码的规模如何?

4. 质量和技术债水平如何?

还有一些更专业的评估项,比如涉及到一些经验和基准的比较才能评估出可改进空间,建议寻求专业人士指导。如果没有非常明确的痛点,仅仅是满足数字化、线上化的发展需要,建议先选择标品、开源产品、免费产品,先从自动化构建部署做起,一点一点去驱动其它部分标准化和完善。

2.分开评估开发与集成部署效能需求

主要指各类PaaS和DevOps平台的区别。许多客户把微服务治理、监测这些应用开发层的东西也纳入到了研发效能平台需求,造成评估对象既有PaaS,又有DevOps,而DevOps不包含应用治理,很难直接通过功能对比出工具差别和优劣。

PaaS是将开发与部署集成到了一起,劣势就是基础设施、部署和应用框架耦合得太紧,升级不便。早期PaaS致力于支持各种语言运行时和多云环境,现在更多是微服务+K8S云原生套装组合,说明对紧耦合的平台来说,对多样化的支持是很难跟上各类语言及框架的发展速度的,只能聚焦在少量技术栈的装配。

PaaS更适用两种场景:

  1. 行业级应用平台:有一套固定的业务,也有稳定的技术栈选型,大量的工作是功能开发、扩展点实现,除非整个行业级应用平台的业务全不存在了,PaaS作为基础设施更稳定,效率更高。
  2. 三方开发者平台:PaaS可以提供一致性的环境供开发者构建、测试和部署。

总之,业务范围稳定、高一致性的要求的场景适用PaaS,业务变化多、技术多样性的场景,需要考虑构建部署平台与应用框架分离,使构建部署稳定、应用框架灵活,即优先考虑DevOps平台。

开发效能:覆盖从代码到测试完成。开发框架、语言、技术债、测试自动化程度、系统模块化程度等等,会影响到开发效能。

集成部署效能:系统规模、系统可测试性、接口测试自动化程度、流水线配置能力、并发构建能力、基础设施自动化能力、环境利用率等等,会影响到集成部署效能。

但无论开发还是集成部署,架构都会影响到研发效能的优化,通常还需要对架构进行评估和治理。

3.明确研发效能工具定位

部分客户不太清楚买的究竟是什么,一揽子解决方案来了最后却见不到效果。对研发效能工具来说,可以按照价值分层进行定位,再明确预期和具体的实施计划。

3.1 战略级定位

研发在企业中属于关键活动、核心部门,完全自有人员,研发效能决定公司营收。

在这种情况下,需要通盘考虑研发效能工具完整的能力项支持、流程与实践落地,并需要持续通过优化治理保持行业的领先性。

建议采购的组合是:主流稳定的商业工具一次性采购+咨询解决方案+持续评估服务。

3.2 运营级定位

研发在企业中提供支持活动,服务业务部门,部分自有人员,研发效能决定内部满意度。

大部分IT还属于成本中心,效能痛点包括累积的技术债、遗留系统以及需求质量,当然也包括发布方面的问题;对研发效能工具的需求来说,更倾向于项目管理与资源分配的优化,各种各样技术栈的支持、定制需求,以及内部的能力提升与沉淀。

建议采购的组合是:可二次开发的工具/开源工具链+运营优化咨询方案+开发服务+内部能力培养。

3.3 管理级定位

包括只有少量项目或仅作供应商管理的活动,研发效能的重点在于需求管理和跟踪,以及绩效评价。

建议采购的组合是:项目管理工具+研发管理报表。

如有尚未覆盖的部分,欢迎补充。

4.合理制定预算

最后补充谈谈在选型与采购的过程中,企业还需要仔细评估对方的工具哪些是可销售部分。不得不提及的是,当前大量的研发效能工具是基于开源框架进行二次封装,隐藏的问题包括:

  • 是否有销售、商业使用的授权许可。
  • 销售方能否解决开源框架自身的问题,包括升级、缺陷等。
  • 如果对方的产品是自有开源,需要明确授权许可的范围和付费服务范围、采购模式。

当然更重要的是弄清楚供应商究竟卖的是什么,是集成功能还是服务,这样更容易针对性地评估工具的实际成本与价格,以制定合理的预算。几点参考:

  • 具体应用开发框架的集成不属于产品,而属于一种经验,即使买了产品也需要学习,可以通过招聘有相关经验的人员来获得。
  • 开源产品有相当高的集成成本,但仅需集成一次,应对集成进行付费,具体可以参考集成的工作量。
  • 工具的作用不是直接替代某个具体的岗位或人,而是节省某些活动的时间,并提供7X24的处理能力。

二、国内一些比较知名的效能管理工具对比

1.PingCode

这是国内最近几年比较火的一站式研发管理平台,产品矩阵中为研发效能管理专门打造了一款工具,能够满足企业研发效能评估、研发团队效能度量、项目交付数据分析、个人效能指标统计等场景的需求。

PingCode 在研发效能管理上功能包括:自动采集研发全生命周期数据、丰富的研发效能度量指标体系(比如交付质量、交付效率、交付能力,流程上覆盖了需求、开发、CI/CD、测试、发布)、自定义的数据分析报表、建立效能度量分析模型

其优点是:

  • 能够帮助企业打造效能度量、分析、回顾、改进的 MARI 闭环;
  • 提供覆盖端到端的交付效能度量体系;

除此以外,PingCode 是一款覆盖研发全生命周期的项目管理系统,被广泛用于需求收集、需求管理、需求优先级、产品路线图、项目管理(敏捷/kanban/瀑布)、测试管理、缺陷追踪、项目文档管理、效能度量、目标管理等领域。并且集成了github、gitlab、jinkens、企微、飞书等主流工具,也就是说我们能在需求下面关联代码,关联集成信息,在飞书查看通知等。

同时在国产化方面支持信创、麒麟等;以及支持私有部署、定制化以及saas等购买方式;

官网

2.思码逸

国内的一款研发效能平台,这是虽然是一个单点工具,但支持灵活组合DevOps工具,从而搭建最适合你的研发平台。思码逸为研发团队提供了研发数据汇总分析的一站式入口,度量指标包括效率、质量及人才三方面,从高管、团队Leader、项目/产品经理、开发者等视角,帮助研发团队各角色成员客观、全面地洞察研发流程及成果。



官网: https://www.merico.cn/ 

3.云效

云效是云原生时代一站式 BizDevOps 平台,产研数字化同行者,支持公共云、专有云和混合云多种部署形态。PingCode 类似,为效能度量专门打造一个管理工具。提供的交付过程观测和研发效能度量、分析能力,为项目管理、研发管理场景下进行过程跟进、效能改进时提供可视化数据依据。

效能洞察的原始数据来自云效用户在项目协作 Projex、代码管理 Codeup 等云效其他应用中的日常协作、研发行为,能够直观地反映企业的整体研发进展情况,最大化发挥团队优势。



官网: https://www.aliyun.com/product/yunxiao 

4.金山云

它官网的介绍是:一站式研发效能平台,提供从产品规划到部署上线的全流程工具链,更融合多年互联网研发实践,提供咨询、培训完整服务。让您的企业轻松通过Devops转型实现研发效能快速提升,加速业务成功。

软件优势:

  • 提高研发效率:一站式Devops工具链,融合多年研究效能领域的丰富实践,告别拼凑低效的工具,让协同研发效能大幅提升
  • 资源利用率更高:基于容器技术,底层计算资源按需创建、使用和释放,提升资源使用效率,大幅降低IT成本
  • 降低运维成本:对底层计算资源的屏蔽,让您和团队无需关注底层计算资源运维,降低运维成本 更快的响应速度:强大的持续交付能力保障您和团队能够快速的响应市场需求变化,交付价值。弹性部署和动态伸缩能力,让您的服务秒级响应业务流量变化

官网: https://www.ksyun.com/nv/solution/EDEP.html 

除此以外,企业还可能使用开源或者自研效能工具平台,在搭建自研工具平台时,并非所有工具都需要进行自研,重点考虑现有工具是否能够完成企业对研发工具平合的特定需求,而在进行工具选型时,一般也可以延伸至其他商业工具,当然还是希望完成全生命周期工具平台搭建的企业是云服务提供商。一般企业搭建自研工具平台的重点是功能的集成,而不是所有研发工具平合的子领域都需要从零自行研发。

5.Git

Git 是最受欢迎的DevOps工具之一,广泛应用于整个软件行业。它是一个分布式SCM(源代码管理)工具,深受远程团队和开源贡献者的喜爱。Git允许你跟踪开发工作的进度。您可以保存源代码的不同版本,并在必要时返回到以前的版本。你可以创建独立的分支,在上线前将新特性合并到分支。

6.Jenkins

Jenkins 是许多软件开发团队的首选DevOps自动化工具。它是一个开源CI / CD服务器,可以在自动化交付流程的不同阶段使用。Jenkins受欢迎的主要原因是其巨大的插件生态系统。目前,它提供了1000多个插件 ,集成了几乎所有DevOps工具,从Docker到Puppet。

7.Bamboo

Bamboo是Atlassian的CI / CD服务器解决方案,具有许多与Jenkins类似的功能。两者都是流行的DevOps工具,可以在自动化交付流程的不同阶段使用。然而,Jenkins是开源的,但Bamboo得按需收费。

8.Docker

Docker 是2018年的头号容器。它也被认为是最重要的DevOps工具之一。Docker在IT科技圈广受欢迎,主要是因为它使分布式开发成为可能,并能使应用程序部署自动化。它使应用程序部署过程变得更便携更安全。Docke应用程序也独立于操作系统和平台。您可以使用Docker容器而不是VirtualBox等虚拟机。

以上就是关于如何选择研发效能平台,以及国内主流的一些研发效能管理平台的一些内容。

部分内容整理自《 研发效能平台选型三大关键事项 》作者/陈加兴

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/191037.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux驱动开发基础__POLL机制

目录 1 适用场景 2 POLL机制的内核代码详解 2.1 sys_poll 函数 2.2 do_sys_poll 函数 2.3 do_poll函数 3 poll机制使用流程 4 驱动编程 5 应用编程 6 代码 6.1 gpio_key_drv.c 6.2 button_test.c 6.3 Makefile 可以看 字符设备驱动程序之poll机制 那篇文章中的机…

【认证相关】FTA

FTA 测试需要涉及的工作与流程测试大致流程及涉及的工作送测Lab 之前需做的准备工作项目与测试样机基本信息如下信息请填写发给MTK,以便MTK 了解基本的认证项目与产品信息PICS 相关MTK 会提供一份Chip 的default PICS,但是客户还需要自行修改一些项的Val…

分享154个ASP源码,总有一款适合您

ASP源码 分享154个ASP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下..., 154个ASP源码下载链接:https://pan.baidu.com/s/1Jt3X-WAZv-rZswzjwyEtSQ?pwdt46u 提取码&#x…

【C++初阶】七、STL---vector模拟实现

目录 一、模拟实现接口总览 1.1 接口总览 1.2 vector整体框架 1.3 vector成员变量介绍 二、vector模拟实现 2.1 构造函数 2.1.1 无参构造 2.1.2 迭代器区间构造 2.1.3 n个val构造 2.1.4 拷贝构造 2.2 赋值运算符重载 2.2.1 传统写法 2.2.2 现代写法 2.3 析构函数…

蓝桥杯刷题018——和与乘积(贪心)

2021国赛:和与乘积 题目描述 给定一个数列 ,问有多少个区间[L,R] 满足区间内元素的乘积等于他们的和,即 输入描述 输入第一行包含一个整数 n,表示数列的长度。 第二行包含 n 个整数,依次表示数列中的数 a1​,a2​,⋯,a…

【Vue】模板语法——文本插值

一、模板语法什么是模板语法Vue 使用一种基于 HTML 的模板语法,使我们能够声明式地将其组件实例的数据绑定到呈现的 DOM 上。所有的 Vue 模板都是语法层面合法的 HTML,可以被符合规范的浏览器和 HTML 解析器解析。在底层机制中,Vue 会将模板编…

(十四)docker安装nacos

一、简介 操作系统:Linux CentOS 7.3 64位 docker版本:19.03.8 nacos版本:默认拉取最新版本 二、实践 1、拉取镜像 docker pull nacos/nacos-server 2、运行容器 docker run --name nacos -p 8848:8848 \ --privilegedtrue \ --restar…

二、什么是GStreamer

GStreamer是一个用于创建流媒体应用程序的框架。基本的设计来自俄勒冈研究生院的视频管道,还有一些来自DirectShow的想法。 GStreamer的开发框架使编写任何类型的流媒体应用程序成为可能。GStreamer框架旨在使编写处理音频或视频或两者同时处理的应用程序变得容易。…

01_学习springdoc的基本使用

文章目录1 什么是 springdoc ?2 springdoc 基本信息3 maven 依赖4 正文来袭4.1 给 Controller 加注解4.2 给 Model 加注解5 大功告成1 什么是 springdoc ? 网上冲浪🏄🏻‍♂️时,无意间发现 java web 应用程序的在线接口文档,除…

开源大数据分析平台的内容有什么?

在大数据时代,做好数据管理是非常重要的一个步骤。可以给企业做出正确的经营决策,指引新的发展方向。因此,随着数字化时代的到来,很多企业都倾向于寻找适宜的开源大数据分析平台,以此提升企业办公协作效率,…

【184】Win10下Java8调用Python的face_recognition库来实现人脸识别

前言 face_recognition 是一个开源的、人脸识别的Python库。本文讲解了在 Windows 10操作系统上,使用 Java8 来调用 Python 的 face_recognition 库来实现人脸识别。虽然 Java8 有 Jython,但是由于截至发文时 Jython 支持的版本太老(只有Pyt…

oracle——列表分页查询(原理)

文章目录前言数据表的准备分页sql1、简单分页实现2、排序分页3、排序优化前言 在平时的开发中,Oracle的分页查询用的特别多,接下来不止是说使用,更讲分页sql写法的原理。 数据表的准备 创建一张数据表,并填充大量的数据。 cre…

大数据技术架构(组件)12——Hive:判断函数

1.4.6、判断函数1.4.6.1、ifselect if(11,a,b),if(12,a,b) ;1.4.6.2、isnullselect isnull(1),isnull(null);1.4.6.3、isnotnullselect isnotnull(1),isnotnull(null);1.4.6.4、nvlselect nvl(1,1),nvl(null,1);1.4.6.5、coalesceselect coalesce(1,null,2,3,null,4,null),coal…

感谢第三弹 | 开启地铁国产化浪潮 GBASE获多方城市“地下动脉”肯定

岁末年初,GBASE收到了来自深圳地铁、高新现代智能系统股份有限公司、深圳达实智能股份有限公司等客户及合作伙伴发来的荣誉证书及感谢信。作为亲密无间的战友,GBASE携手高新现代、达实智能在深圳地铁CLC、ACC、AFC多个条线项目中通力合作,助力…

背包问题学习

01背包 01背包(0-1 Knapsack Problem) 有NNN件物品和一个容量为VVV的背包。放入第iii件物品耗费的费用是CiC_iCi​,得到的价值为WiW_iWi​。求解将哪些物品装入背包可以使价值总和最大 设F[i,v]F\left[i,v\right]F[i,v]表示前iii件物品敲好放入一个容量…

软件防错设计

出现非预期错误的原因解决方案原理介绍断根原理原理:将可能造成人错误的原因/条件从根本上排除断绝掉。通过冗余设计,屏蔽掉其中9种错误的方式;案例:USB的SD卡防写开关。4种可能性断根设计为只有1种可能是正确的。软件设计&#x…

Linux学习之环境准备【Vm+Centos】

文章目录前言一 VMware Workstation17 Pro下载和安装1.1 Vm下载指南1.2 VM安装指南二 Centos7安装2.1 装机器2.2 装系统三 补充内容3.1 卸载Centos前言 工欲善其事,必先利其器,我们要学习Linux当然需要Linux的环境由于大部分人使用的是Windows系统无法进…

介绍OAuth2

目录 一、什么是OAuth2? 二、OAuth2中的角色 1、资源所有者 2、资源服务器 3、客户 4、授权服务器 三、认证流程 四、OAuth2授权方式 注:使用令牌方式的优点 1、授权码 2、隐藏方式 3、密码方式 4、凭证方式 一、什么是OAuth2&#xff1f…

深入浅出ConcurrentHashMap1.8

前言 HashMap是我们平时开发过程中用的比较多的集合&#xff0c;但它是非线程安全的&#xff0c;在涉及到多线程并发的情况&#xff0c;进行get操作有可能会引起死循环&#xff0c;导致CPU利用率接近100%。 final HashMap<String, String> map new HashMap<String,…

基于Springboot搭建java项目(二十四)——权限认证框架SpringSecurity

权限认证框架SpringSecurity 一、为什么要做权限认证 在WEB开发的过程当中&#xff0c;安全一直是很重要的一方面。安全和直接的业务是没有直接挂钩的&#xff0c;但是在业务实现的初期如果没有考虑的安全性的化&#xff0c;在后期迭代的时候就会出现很多的问题。例如存在着安…