原始碼要開放
以開放精神編寫原始碼,能改善資訊透明、提高原始碼品質、讓原始碼更容易稽核,也能促進互相協作。
這些合在一起,讓公民更有機會瞭解軟體與政策如何影響他們與公家機關的互動。
需求規定
- 任何使用中政策的所有原始碼都「必須」要公開(用於偵測詐欺的原始碼除外),且能供民眾取用。
- 任何使用中軟體的所有原始碼都「必須」要公開(用於偵測詐欺的原始碼除外),且能供民眾取用。
- 程式基底「禁止」包含與使用者及其組織單位,或與第三方相關的敏感性資訊。
- 目前非使用中的任何原始碼(像是新版本、提案版本,或較舊版本)都「應該」公開。
- 「可選擇」是否要以文件記錄一般大眾與組織單位之間可能發生的任何特定互動,其背後所採用的原始碼或 支持的政策。
測試方式
- 確認目前使用中的每個版本都有公布原始碼在網際網路上,而且民眾不需要經過任何形式的身分核對或授權,就能在原始貢獻組織以外,查看這些原始碼。
- 確認程式基底檔案與送交版次歷史紀錄,不包含敏感性資訊。
- 檢查目前非使用中的原始碼是否有公開。
公共政策制定者:需要的工作
- 制定合乎開放精神的政策。
- 以公開透明的政策為優先。
管理人員:需要的工作
- 孕育擁抱開放、重視學習、歡迎意見回饋的文化。
- 與外部供應商和自由工作者以開放精神的方式協作。
開發人員與設計師:需要的工作
- 審查人員在檢核每次的送交版次紀錄時,要確實核對內容沒有包含組態設定、使用者名稱或密碼、公開金鑰,或其他產品系統中使用的實名憑證等敏感性資訊。
- 為符合上述敏感性資訊的相關規定,請明確分開資料與原始碼。
延伸閱讀
- 英國政府數位服務團《以開放精神編寫原始碼》。
- 英國政府數位服務團《程式碼應該開放或封閉的時機》。
- 英國政府數位服務團《以開放精神編寫原始碼的資安考量》。
- 英國政府數位服務團《定期部署軟體》。
- 英國政府數位服務團《政府數位服務團如何使用GitHub》。