1. 程式人生 > 資訊 >OpenHarmony 2.0 運營者開放原子開源基金會發布孵化專案畢業標準 v1.0

OpenHarmony 2.0 運營者開放原子開源基金會發布孵化專案畢業標準 v1.0

6 月 3 日訊息開放原子開源基金會是致力於推動全球開源產業發展的非營利機構,於 2020 年 6 月正式獲得民政部批准在北京成立,由阿里巴巴、百度、華為、浪潮、360、騰訊、招商銀行等十家龍頭科技企業聯合發起,由工信部作為業務指導單位。開放原子開源基金會擬通過共建、共治、共享的方式,系統性打造資訊產業和工業開源開放框架,搭建國際開源社群,提升行業協作效率,賦能千行百業。目前開放原子開源基金會業務範圍主要包括為各類開源軟體、開源硬體、開源晶片、開源內容提供中立的智慧財產權託管、戰略諮詢、法務諮詢、專案運營、品牌營銷和教育培訓等服務。

今天,OpenHarmony 2.0 孵化和運營者開放原子開源基金會發布了孵化專案畢業標準 v1.0。

1. 程式碼與文件 (Code and Document)

OA-CD-10

【中】專案程式碼是易於找到的,並且能被公開訪問。

【EN】The project's code is easily discoverable and publicly accessible.

OA-CD-20

【中】可以使用常用的標準工具對專案程式碼進行重複構建。

【EN】The code can be built in a reproducible way using widely available standard tools.

OA-CD-30

【中】應通過原始碼管理系統保留專案程式碼的完整變更歷史,所有已釋出版本都可以被重新構建。

【EN】The full history of the project's code is available via a source code control system, in a way that allows any released version to be recreated.

OA-CD-40

【中】每一行程式碼必須由具備強認證機制的提交者通過原始碼管理系統建立,當提交第三方貢獻時,提交備註中要包含可靠的程式碼來源資訊。

【EN】The provenance of each line of code is established via the source code control system, in a reliable way based on strong authentication of the committer. When third-party contributions are committed, commit messages provide reliable information about the code provenance.

OA-CD-50

【中】專案必須有終端使用者文件,例如:API、CLI、儀表板、安裝部署、配置等。

【EN】The project must have end-user docs in place such as API use, CLI use, Dashboard use, Deployment use, Configuration use.

OA-CD-60

【中】專案應具有可證實的使用者支援歷史,可以是在郵件列表或 issue 系統中的答覆。

【EN】The project should have a proven history of providing user support,such as replies in mailing list or issue systems.

2. 流程 (Process)

OA-PR-10

【中】專案需要有符合業界最佳實踐的程式碼提交流程。

【EN】The project requires a code commit process that meets industry best practices.

OA-PR-20

【中】專案團隊應該與營銷團隊一起確定合適的官方名稱。

【EN】The project should have engaged with marketing team to check suitable official name.

OA-PR-30

【中】專案需要通過獨立的第三方安全審計。

【EN】The project should have completed an independent and third party security audit.

OA-PR-40

【中】專案必須使用基金會基礎設施團隊認可的任務、缺陷和設計跟蹤工具。

【EN】The project must use task, defect and design track tools that approved by infrastructure team of OpenAtom Foundation.

3. 許可證與版權 (Licenses and Copyright)

OA-LC-10

【中】程式碼釋出需要滿足專案所採用開源許可證的合規性 / 相容性要求,且符合開放原子開源基金會的智慧財產權政策。

【EN】The code is released under the open source license that project used, meets the compatibility requirements,and complies with OpenAtom Foundation's IPR policy.

4. 釋出 (Releases)

OA-RE-10

【中】釋出要包含原始碼,分發時需要採用標準開放的打包格式,以便長期保持可讀性。

【EN】Releases consist of source code, distributed using standard and open archive formats that are expected to stay readable in the long term.

OA-RE-20

【中】釋出由專案的專案管理委員會批准。

【EN】Releases are approved by the project's PMC (Project Management Committee).

OA-RE-30

【中】釋出需要進行數字簽名或帶有雜湊摘要,以校驗下載包的完整可靠。

【EN】Releases are signed and/or distributed along with digests that can be reliably used to validate the downloaded archives.

OA-RE-40

【中】釋出必須包含原始碼,也可同時釋出二進位制檔案。

【EN】Release must include source code; convenience binaries can be distributedalongside source code.

OA-RE-50

【中】釋出過程必須有詳細的文件說明,並且是可重複進行的。根據文件指引,任何人能夠獨立生成釋出所需的所有制品。

【EN】The release process is documented and repeatable to the extent that anyone is able to independently generate the complete set of artifacts required for a release.

OA-RE-60

【中】專案必須有清晰的版本計劃,並且必須制定至少 2 個常規的後續里程碑。

【EN】The project must have a clear roadmap and must have followed at least two common milestones.

5. 質量 (Quality)

OA-QU-10

【中】專案對程式碼的質量要開放且誠實。

【EN】The project is open and honest about the quality of its code.

OA-QU-20

【中】專案的安全性是最高優先順序的。

【EN】The project puts a very high priority on secure software.

OA-QU-30

【中】需要提供一套規範化的安全響應流程。

【EN】The project requires a standardized security response process.

OA-QU-40

【中】專案要重視相容歷史版本,儘可能將所有不相容的變更文件化,並提供工具和使用說明幫助使用者過渡到新的特性。

【EN】The project puts a high priority on backwards compatibility, aims to document any incompatible changes and provides tools and documentation to help users transition to new features.

OA-QU-50

【中】專案應該努力及時響應已上報的 BUG。

【EN】The project strives to respond to documented bug reports in a timelymanner.

OA-QU-60

【中】該專案必須具有合理的 CI 流程 / 工具、單元測試及測試程式碼覆蓋率。

【EN】The project must have decent CI process/tools, unit test and test code coverage.

OA-QU-70

【中】專案對登記的 issue 應進行合理的分類、分級。

【EN】The project should have a decent record of triaging incoming issues.

6. 社群 (Community)

OA-CO-10

【中】專案有一個眾所周知的主頁。

【EN】The project should have a well-known homepage.

OA-CO-20

【中】社群歡迎所有出自善意、行為受尊重、為專案增添價值的參與者的貢獻。

【EN】The community welcomes contributions from anyone who acts in good faith and in a respectful manner and adds value to the project.

OA-CO-30

【中】貢獻包含但不侷限於原始碼,也可以是文件、建設性的錯誤報告、建設性的討論、市場推廣或者其他任何會為專案增值的內容。

【EN】Contributions include not only source code, but also documentation, constructive bug reports, constructive discussions, marketing and generally anything that adds value to the project.

OA-CO-40

【中】社群要符合賢能治理的精神,隨著時間的推移,為專案增值的貢獻者會被賦予更多的權利和責任。

【EN】The community strives to be meritocratic and over time aims to give more rights and responsibilities to contributors who add value to the project.

OA-CO-50

【中】社群的運作基於具有決策權的成員的共識,避免一言堂。

【EN】The community operates based on consensus of its members who have decision power. Dictators, benevolent or not, are not welcome in projects.

OA-CO-60

【中】專案致力於及時解答使用者的問題。

【EN】The project strives to answer user questions in a timely manner.

OA-CO-70

【中】專案需要在專案網站或 Readme 顯示專案的孵化狀態。

【EN】The project should list project’s incubation status prominently on website/readme.

OA-CO-80

【中】專案有一定數量的活躍提交者和相當規模的程式碼提交數量和合並數量。

【EN】The project should have a healthy number of committers, and demonstrate a substantial ongoing flow of commits and merged contributions.

OA-CO-90

【中】專案應明確定義專案治理和提交者的管理流程。

【EN】The project should explicitly define a project governance and committer process.

OA-CO-100

【中】專案應至少在主要程式碼倉庫中提供公開的使用者列表(例如提供 ADOPTERS.md,或在專案網站上展示採用者的 Logo 列表)。

【EN】The project should have a public list of project adopters for at least the primary repo (e.g., ADOPTERS.md or logos on the project website).

7. 共識建立(ConsensusBuilding)

OA-CS-10

【中】該專案維護著具有決定權的貢獻者的公開列表 - 專案管理委員會由這些貢獻者組成。

【EN】The project maintains a public list of its contributors who have decision power -- the project's Project Management Committee consists of those contributors.

OA-CS-20

【中】決策由專案治理委員會成員的共識形成,並在主要的溝通渠道中記錄。要考慮社群意見,如有異議,專案管理委員會擁有最終決定權。

【EN】Decisions are made by consensus among Project Management Committee members and are documented on the project's main communications channel. Community opinions are taken into account but the Project Management Committee has the final word if needed.

OA-CS-30

【中】無法通過討論形成共識的情況下,可以使用文件化的投票規則來達成目標。在專案中,否決權只對程式碼提交有效,且否決要求有合理的技術性理由。

【EN】Documented voting rules are used to build consensus when discussion is not sufficient. In projects, vetoes are only valid for code commits and are justified by a technical explanation.

OA-CS-40

【中】所有重要的討論都應該以書面形式在專案的主要溝通渠道上非同步進行。對專案會產生影響的線下、面對面或私下的討論也應在該渠道記錄下來。

【EN】All important discussions happen asynchronously in written form on the project's main communications channel. Offline, face-to-face or private discussions that affect the project are also documented on that channel.

8. 中立性 (Independence)

OA-IN-10

【中】專案獨立於任何公司或組織。

【EN】The project is independent of any company or organization.

OA-IN-20

【中】專案必須有不少於三方的核心評審團隊。

【EN】The project must have a diverse core reviewers team (at least 3).

OA-IN-30

【中】貢獻者的社群角色許可權不應受僱傭關係變化而影響。

【EN】The role & permissions of contributors in the community should not be affected when their employment relationship changes.

OA-IN-40

【中】專案畢業需要至少三位 TOC 成員提名進入畢業流程。

【EN】The project should require at least 3 TOC members to step forward as sponsors to enter graduationprocess.

9. 成熟度 (Maturity)

OA-MA-10

【中】至少三個獨立使用者成功將專案用於生產環境,TOC 根據質量和範圍判定使用者是否有效。

【EN】The project should be used successfully in production by at least 3 independent end users which, in the TOC‘s judgement, are of adequate quality and scope.

10. 其它 (Others)

OA-OT-10

【中】專案畢業需獲取全部 TOC 席位 2/3 的贊同票。

【英】To enter graduation, the project should receive the affirmative vote of two-thirds of the authorized TOC.

OA-OT-20

【中】上述指標由於專案的型別、範圍和大小不同有一定的偏差,因此 TOC 對上述指標有一定的自由裁量權。

【EN】Since these metrics can vary significantly depending on the type, scope and size of a project, the TOC has final judgement over the level of activity that is adequate to meet these criteria.