如何衡量一個開源項目是否健康?

https://www.redhat.com/en/resources/open-source-project-health-checklist

近期,紅帽發佈了《Checklist for measuring the health of an open source project》,用於衡量一個開源項目是否健康。這是一個 pdf 文檔,目前沒看看到中文版。做開源的朋友可以下載參考。使用此清單來評估開源項目的運行狀況。完成時看到的檢查越多,項目就可能越健康。也可以根據這個 ckecklist 指定規範或者改善計劃。

衡量 Checklist 分爲如下 7 大部分:

Infrastructure、Governance、Release management、Onboarding、Documentation、Outreach、Contributions。

我們先看第一部分,基礎設施:

把上圖內容,機器翻譯如下。這段檢查的是開源項目最基本的基礎設施。

• 代碼存儲庫和問題跟蹤器已存在並且易於訪問

• 提供開發和測試工具,並且易於訪問

• 項目網站存在且易於訪問

• 郵件列表服務器存在並且易於訪問

• 文檔平臺存在並且易於訪問

• 視頻會議平臺存在並且易於訪問

• 社區論壇存在且易於訪問

• 同步聊天工具存在並且易於訪問

• 社區活動日曆存在並且易於訪問

上圖內容,機器翻譯如下。這段檢查的是開源項目基礎設施中的項目網站:

• 網站具有唯一的域名

• 網站具有其他公開可見的站點或子域

• 網站包含對項目及其目的的清晰描述

• 網站具有一致的風格和導航元素

• 網站功能軟件二進制文件下載鏈接

• 網站具有多種下載格式

• 網站內容和版權聲明是最新的

• 網站包含 GDPR 政策和其他相關隱私政策

• 網站解釋了項目的治理模型

• 網站不包含對過時,未使用或舊版工具的引用

接下來我們看第二部分:治理。

上圖內容,機器翻譯如下。

• 項目許可證

• 項目代碼已獲得許可

• 項目許可證是 OSI 批准的開源許可證

• 項目不需要貢獻者許可聲明或協議

• 項目不具有按文件授權的代碼

• 項目代碼不包含明顯的固有許可證不兼容性

• 代碼包括許可意向通知

• 代碼包括許可證文本的副本

上圖內容,機器翻譯如下:

• 項目明確確定了主要維護者

• 項目確定了與主要維護者聯繫的方式

上圖內容,機器翻譯如下:

• 項目記錄了決策過程

• 項目公開制定並記錄決策

• 項目已記錄領導過渡的流程

• 項目確定了貢獻者可以扮演的各種角色

接下來看第三部分:發佈管理.

上圖內容,機器翻譯如下。

發佈頻率

• 項目在過去 12 個月中發佈了版本

• 項目以一致的時間間隔發佈軟件

發佈約定

• 項目發佈已充分記錄

• 項目使用一致的版本控制方案

發佈工具

• 項目已實施質量保證流程

• 項目使用自動化的持續集成和開發工具

發佈可用性

• 可從一致的下載位置獲得項目版本

• 項目發佈多種格式的軟件

第四部分,Onboarding

上圖內容,機器翻譯如下。

 Onboarding guides

• 可從一致的下載位置獲得項目版本

• 項目發佈多種格式的軟件

Onboarding practices

• 項目專門爲新用戶和貢獻者提供交流渠道

• 項目清楚地確定了不同類型的貢獻機會(代碼,文檔,設計等)

第五部分,文檔:

上圖內容,機器翻譯如下。

文檔內容和樣式

• 文檔似乎已完成

• 文檔在風格上是一致的

• 專爲新用戶設計的項目功能文檔

• 項目已全面記錄了安裝過程

• 項目已全面記錄了源代碼的編譯過程

• 項目文檔包括用例示例

文件編制實務

• 項目擁有一支專門的文檔維護人員團隊

• 項目通過自動化流程創建和維護文檔

第六部分,Outreach

項目訊息

• 網站上的項目描述少於 100 個字

• 項目描述在各個平臺上是一致的

宣傳渠道

• 項目有專門的社區外展專家或團隊

Project 在所有渠道中一致地提供開發更新(包括髮布公告)

• 項目有一個博客

• 項目在至少一個社交媒體平臺上處於活動狀態

• 項目通過同步聊天平臺提供支持

外展頻率

•Project 每月至少更新一次博客

•Project 每週至少更新兩次社交媒體

• 項目在 12 小時內回覆社交媒體查詢

外展活動

• 項目有專門的活動策劃團隊

• 項目主持每週或每月的社區電話

• 項目舉辦年度會議或研討會活動

• 項目支持社區用戶組或本地聚會

第七部分,貢獻。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/lW_csqTd7VOPbSMs13jJLw