Open Source Project Empowerment Tool | Measure Community Metrics


For how to measure the quality and health of an open source project, we can start by analyzing different aspects of the project, such as technical health (number of forks on GitHub, number of contributors over time, and number of bugs), financial health ( donations and income), community engagement (social media mentions, post sharing, and sentiment analysis across social media channels), and diversity and inclusion (developing codes of conduct, creating inclusive events, hosting colorblind-friendly presentations) and project design, etc.).

But how to specifically collect and analyze these aspects is a big problem. To know if a project is healthy, we need to calculate and analyze metrics data over time. In addition, the daily operation of the open source community generates a large amount of data, and the use of Dashboard to collect and analyze a large amount of data in the community can help the entire project to make decisions and develop directions. This article will detail how metrics and dashboards are being leveraged by the open source community.


"The goal here is not to construct an enormous vacuum cleaner to suck every tiny detail of your community into a graph. The goal is instead to identify what we don't know about our community and to use measurements as a means to understand those things better."

The Art of Community - Jono Bacon



Open source software is rooted in the community. Through the information brought by different indicators, community participants (Stakeholders) can learn more about the community and make informed decisions. For example, developers can choose the most suitable projects to join, maintainers can determine which governance measures are effective, end users can choose projects that are healthier, live longer, and prosperous, and investors can choose projects investment [1]. In addition, the Open Source Program Office (OSPO), an in-house office designed to manage the open source ecosystem on which companies depend [5], is able to assess the health and sustainability of projects by analyzing different metrics. Since about 90% of the components of modern applications are open source [6], OSPO has become very popular. Therefore, it is important for OSPO to measure the risks of using, contributing and releasing open source software [5].


  1. Setting goals : Measurement without goals is meaningless; understand what specific goals the community wants to achieve [3].
  2. Find reliable sources of statistics : Once you have identified your goals, the next step is to identify channels or methods that will help you achieve your goals. It is important to find a way to do statistics on your most important goals [4]. Some statistics are obvious, for example on GitHub, you can collect the number of stars, forks, and contributors of the codebase, and you can also access the data through mailing list subscribers and the project website. However, some statistics are not so obvious and may require specialized tools to help mine these data.
  3. Interpret statistics : Interpret and statistic data in terms of people, products, processes, and partners [4]. That is, looking at the data most relevant to the people in the community, such as the efficiency of contributors, which channels have the most influence, etc. Then, based on the speed and maturity of the project, such as the number of PRs and the number of Issues, think about what a mature review process should look like? How long does it take to resolve an Issue? Finally, look at the entire open source ecosystem from the perspective of partners, such as project dependencies and some data that depend on your project.
  4. 使用仪表盘来评估开源指标 :目前有许多工具能够创建仪表盘,可用于分析和衡量开源社区的健康状况,其中包 括 LFX Insights, Bitergia, and GrimoireLab。
  5. 修改完善 :评估指标后,开源项目则需要按照评估结果做出相应的改善。
不同的项目应使用不同的策略来衡量项目的健康状况。

CHAOSS 社区创建了分析方案和指标来帮助了解项目的健康状况。他们有许多工作组,每个工作组都会专注于一种特定的指标。例如:
  • Diversity and Inclusion工作组 专注于活动的多元化和包容性、社区治理的多元化和包容性以及社区领导方向的健康程度。
  • Evolution 工作组创建了用于分析软件开发中涉及的活动的类型和频率、提高项目质量的过程以及社区发展的指标。
  • Value 工作组创建度量标准,用于确定项目在软件项目之外改善人们生活的程度、项目对用户或献者的价值程度以及项目从组织角度来看具有货币价值的程度看法。
  • Risk 工作组创建指标以了解特定软件包的质量、潜在的知识产权问题,并了解给定软件包在许可证、依赖项等方面的透明度。

Mozilla 项目与 BitergiaAnalyse & Tal 合作构建了 Mozilla 贡献者社区的交互式网络可视化。通过可视化不同的指标,他们发现 Mozilla的社区之下还有许多社区,涉及了不同领域的贡献、动机、参与度等。在此基础上,他们构建了一份 报告(文末附链接) ,以可视化这些不同社区是如何相互关联的。

此外,Kubernetes 和 TARS等一众开源项目都在使用 LFX Insights 工具来分析他们的社区。
LFX Insights 是一个仪表盘,可帮助项目社区评估有关开源开发的不同指标,用于促进开源生态的可持续发展。该工具具有不同的功能来支持不同的社区参与者 [2],例如:
  • 维护者和项目负责人 可以获得项目的多维度报告,避免维护者倦怠,确保项目的健康、安全和可持续性。
  • 项目推广者和社区布道者 可以使用这些指标来吸引新成员和参与社区,并确定提高知名度的机会。
  • 成员和企业赞助商 可以知道要参与哪些社区和软件,在社区内交流并评估其员工的开源贡献。
  • 开源开发人员 可以知道将他们的工作重点放在哪里,展示他们的领导力和专业知识,管理社区动态及其影响力。
此外,在LFX Insights中,开源项目可以提取各种指标。从 源代码存储库 中可以看到诸如commits总数和贡献者的数量、贡献者的数量、commit的最多的贡献者以及对项目做出主要贡献的公司等指标。Pull request (PR) 则可以从 Gerrit 和 GitHub 等许多工具中提取。与commits类似,PR 的数据可按贡献者和公司来计算。该工具还计算审查 PR 的平均时间,以及仍需合并的 PR,还可以提取issues和持续集成工具的指标。除此之外,LFX Insights 允许项目从不同的通信渠道(如邮件列表、Slack 和 Twitter)收集通信和协作信息。
使用 LFX Insights 时,项目也会有不同的目标。例如,TARS 项目会使用 LFX Insights 来全面了解每个子项目(如 TARSFramework、TARSGo 等)。通过 LFX Insights 工具创建的仪表盘,TARS 社区可以了解每个单独项目以及整个社区的统计数据(见图 1 和 2)。TARS 社区还可以分析有多少人在为每个项目做出贡献,以及哪些组织为 TARS 做出了贡献。此外,他们提取每个贡献者贡献的提交数量和代码行数。通过分析这些指标,TARS社区能够更多创造吸引和留住更多贡献者的方法。

图1

图2
文中提及链接:
LFX Insights: https://insights.lfx.linuxfoundation.org/projects
Mozilla报告:
https://report.mozilla.community/assets/report/Mozilla-Rebel-Alliance-Report-2020.pdf

文献
[1] Jansen, Slinger. "Measuring the health of open source software ecosystems: Beyond the scope of project health." Information and Software Technology 56.11 (2014): 1508-1519.
[2] https://www.youtube.com/watch?v=hwTOrDg3LsI
[3] https://opensource.com/bus/16/8/measuring-community-health
[4] https://dzone.com/articles/-measuring-metrics-in-open-source-projects
[5] https://opensource.com/article/20/5/open-source-program-office
[6] https://fossa.com/blog/building-open-source-program-office-ospo/




TARS基金会是Linux基金会下的非营利性、微服务基金会,致力于建设一个强大而灵活的微服务生态系统。无论你在哪个行业,无论你使用什么技术栈,这里能助你快速实现你的创意。


点“在看”让TARS小姐姐变好看

本文分享自微信公众号 - TARS星球(TarsCloud)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

{{o.name}}
{{m.name}}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324074222&siteId=291194637