从业者指南:简介 - 解释指标时要考虑的事项

  • 相关指标: 全部
  • 受众:从业者指南旨在供那些可能不是数据分析专家但希望更好地了解如何解释开源项目的数据以形成见解的从业者使用,这些见解可以帮助他们改善开源项目的健康状况项目。这些指南对于开源项目办公室 (OSPO)、​​项目负责人、社区经理、维护人员以及任何想要更好地了解项目健康状况并根据从指标中学到的知识采取行动的人特别有用。

衡量项目健康状况很复杂,需要考虑很多潜在方面(Linåker 等人,2022 年)。实践者指南系列旨在将项目健康状况分解为一系列逻辑主题,您可以使用这些主题来评估和改善开源项目的健康状况。本入门指南旨在让您思考您可能想要衡量的内容以及如何衡量它,以及一些一般提示和注意事项。它旨在补充实践者指南系列,您将在其中找到有关如何对特定主题(如响应能力、贡献者可持续性、组织参与等)得出见解的详细信息。

没有一种万能的方法可以用指标来衡量项目的健康状况。每个开源项目都略有不同,指标的解释应始终考虑到该项目的需求及其背景(Goggins 等人,2021 年)。小型项目的需求与大型项目不同。开源操作系统项目与生产小型软件包或库的项目具有非常不同的特征。不同的社区将有不同的工作方式来制作他们的开源软件项目。项目发布版本的方法也不同。项目和为其做出贡献的人会有不同的需求和目标。

最好的起点之一实际上不是从指标开始,而是花一些时间了解项目的总体目标。如果项目主要由一个组织驱动或由某个组织拥有,您还应该考虑该组织的目标。通过战略性地思考总体目标,您将能够更好地决定需要衡量什么来确定项目是否实现其目标。开源项目会产生海量的数据,这些数据可能会令人难以承受,但通过专注于目标,您可以开发一个 指标策略 这可以帮助您专注于对特定项目最重要的指标。

所有这些以及更多因素都会对任何开源指标的解释产生影响。真正的专家是那些参与项目日常工作的人。除了关注目标之外,您可能还需要花一些时间查看与谁参与社区以及他们如何参与相关的趋势,以全面了解项目以及您可能想要联系谁以了解更多详细信息。您需要让您正在衡量的项目/社区中的关键人物参与进来,因为他们可以帮助您以最符合道德的方式解释指标和任何确定的趋势,这些趋势对于该特定项目最有意义(Casari 等人,2023 年),如“第 2 步:诊断”部分中更详细地描述。如果您还没有阅读 超越存储库 作者:Amanda Casari、Julia Ferraioli 和 Juniper Lovato,我建议您现在暂停并阅读这篇 6 页的文章。

在 CHAOSS 项目中,我们有 软件(Augur 和 GrimoireLab) 它可用于以中立的方式收集数据并识别趋势,并且可以轻松地随着时间的推移进行审计和跟踪。但是,这些从业者指南并不假设您正在使用任何特定的软件,因为您可能有适合您的特定情况的其他度量工具。无论您如何收集指标,这些指南都可以帮助您解释这些指标,以得出有意义且可操作的见解,从而帮助改善项目的健康状况。

第 1 步:确定趋势

开源项目的指标可能很嘈杂,项目中的许多活动会生成许多数据点。消除这种噪音的一种方法是关注一段时间内的趋势。与其查看昨天或上周发生的事情,不如先按月汇总数据,然后查看社区的某些方面在过去 3 到 6 个月中是否正在改善、保持稳定或下降。您可以稍后深入查看特定一天或一周的数据,以帮助了解您所看到的内容。通过观察大趋势,您可以避免过度修正或过多担心日常波动。

第 2 步:诊断

诊断问题或确定改进机会的第一个行动是与密切参与项目的人员交谈。向他们展示数据并询问可能导致问题的原因。项目领导者和社区成员可能不知道是什么导致了问题,因此每个指南都应该有一些探索领域的提示和潜在的想法,以了解在哪里寻找以及如何诊断特定问题或找到改进的机会。

在确定某件事是否是需要解决的问题或担忧时,第一个问题是该问题是否可能是暂时的波动而不是真正的问题。您的社区、项目和生态系统中还发生了什么?是否有大型会议、主要版本、假期或其他影响人们做出贡献的时间的事情?它可以帮助将这些类型的里程碑叠加在图表上,以更好地了解它们的影响,如果看起来有影响,请等待一两个月,看看指标是否在暂时中断后反弹。如前所述,这就是为什么让人们每天参与项目如此重要,以帮助解释您在指标中看到的内容。

临时波动的一个很好的例子是,如果您在假期或假日季节的地方有很多贡献者,则七月/八月和十二月/一月出现下降趋势。下降趋势表明人们正在花一些时间休息和充电,这对于项目的长期可持续性来说可能是一个积极的信号,而不是一个问题。

如果您确定问题可能会持续存在而不是暂时的,那么是时候开始考虑可能导致问题的原因了。这可能是特定于指标的,并且将在特定主题的从业者指南中更详细地介绍。

第 3 步:根据需要收集其他数据

此时,如果你知道自己需要改进什么以及如何改进,可以暂时跳过这一步。如果您进行了更改,但在接下来的几个月内没有看到任何改进,您可以随时返回到它。

在其他情况下,您应该在决定采取哪些改进措施之前更详细地研究某个领域。针对特定主题的从业者指南将包括其他指标,可用于收集其他数据以诊断特定问题。

第四步:做出改进

在开始采取改进行动之前,获得社区和项目领导层的支持非常重要。没有项目的支持可能会导致变更无效、具有破坏性,甚至对项目及其贡献者造成损害。

开源项目、社区和生态系统很复杂;您在某一领域所做的更改可能会影响项目的其他部分。许多从事开源项目的人可能很忙,几乎没有时间进行额外的工作,因此重要的是不要让人们超负荷到精疲力尽的程度。出于这些原因,通常最好一次集中实施不超过 2 或 3 项改进措施。

与其他步骤一样,特定主题的从业者指南将包含有关如何改进该主题的更多详细信息。

第 5 步:监控结果

要了解您改进某个主题的行动是否有效,重要的一步是继续衡量并监控这些结果。至少,您可能需要对其进行 2 或 3 个月的监控(对于复杂的更改则需要更长时间),然后再决定您的操作是否开始有效。请记住,如果发生任何可能导致暂时波动的事情,您将需要延长该时间范围。

您还应该继续长期监控它,看看您的改进是否继续产生影响。一种常见的模式是,当人们专注于改进时,改进往往会持续下去,但如果人们陷入旧模式并停止改进,那么改进就会出现倒退。您可能会发现自己循环执行这些步骤来重新激发人们的兴趣并继续进行改进。

注意事项和注意事项

  • 在解释指标并在开源项目中进行改进时,您应该始终首先考虑参与项目的人员以及这些变化可能如何影响他们(积极和消极)。
  • 始终让项目工作人员参与收集和解释指标以及您可能采取的任何潜在改进行动。
  • 每个项目都略有不同,因此必须根据项目的个体需求和运营方式来解释指标。
  • 尽可能避免使用指标来比较项目,但如果您需要比较项目,请确保仅比较具有相似特征的项目。仅举几个例子,Javascript 项目与 C / C++ 项目有非常不同的特征和模式;基金会拥有的项目将不同于公司驱使的项目; Kubernetes 规模的项目与生成小型库或包的项目完全不同。
  • 请小心,切勿让人们将您的指标武器化,并且要非常小心那些可用于将人们相互比较的指标,从而可能导致个人受到惩罚。
  • 请记住,自动化和机器人活动可能会影响许多指标的解释,因此了解自动化和机器人如何影响您的结果至关重要。

补充阅读

反馈

我们很乐意收到反馈,以了解更多有关人们如何使用 CHAOSS 从业者指南以及我们如何随着时间的推移对其进行改进的信息。请完成此 简短的调查 提供您的反馈。

合作者

以下人员为本指南做出了贡献:

  • 黎明福斯特
  • 陈翁
  • 路易斯·卡纳斯·迪亚斯

案例

CHAOSS 从业者指南是 MIT 授权的动态文档,我们欢迎您的反馈和意见。您可以在以下位置建议对本文档进行修改 https://github.com/chaoss/wg-data-science/blob/main/practitioner-guides/introduction.md