Standard for Public Code

目次

  1. 程式或程式碼 (Code)
  2. 程式基底 (Codebase)
  3. 持續整合
  4. 不同情境
  5. 一般大眾
  6. 開源或開放原始碼 (Open Source)
  7. 開放標準
  8. 政策
  9. 公共程式 (Public Code)
  10. 儲存庫
  11. 原始碼 (Source Code)
  12. 版本控制

詞彙表

程式或程式碼 (Code)

任何明確的規則系統,包括法律、政策與規則條例(法規、法式,也可稱為程式),以及用來開發軟體的原始碼(程式碼)。兩者都是規則,有些是由人類來執行,其餘則是由機器執 行。

程式基底 (Codebase)

任何獨立分離的統合包,內含執行部分政策或軟體所需的程式(包含原始碼與政策)、測試與文件等的整套內容。

舉例而言,這個具體形式可以是文件,或是版本控制的儲存庫。

持續整合

在軟體工程中,持續整合 (CI) 是盡可能頻繁地將所有開發人員工作中的副本,合併回程式基底開發中分支的實務作法。

不同情境

只要是不同的公家機關或不同的部門,無法透過同一個決策單位讓協作自然發生,那就算是兩個不同的情境。

一般大眾

整體民眾:程式碼與其所建立的服務的終端使用者。

舉例而言,城市的居民即視為該城市的服務、以及驅動這些服務運作的程式碼的終端使用者。

開源或開放原始碼 (Open Source)

所謂「開源」或「開放原始碼」,是根據 OSI 開放原始碼促進會發表的《開放原始碼定義》而來。

開放標準

任何符合 OSI 開放原始碼促進會《開放標準需求規範》的標準,就是開放標準。

政策

政策是一套謹慎設計的原則體系,用來引導決策並達成合理的成果。政策是一種意圖的聲明,並以程序或協定來執行。政策通常是由組織單位內的理事機構採用執行。政策能協助做出主觀 與客觀的決策。

公共政策是政府將其政治願景,轉化成計畫與行動來取得成果的程序。

在國家層級,政策與立法(法律)通常是分開的;而在地方政府中,這兩者之間的區別通常比較模糊。

在本標準當中,「政策」一詞指的是公家機關,例如政府與自治市等,所制定與採用的政策。

公共程式 (Public Code)

公共程式,是由公家機關所開發的開放原始碼軟體,同時包含協作與重複利用所需的政策與指引。

公共程式是在公共情境下,由人類或機器所執行的電腦原始碼(例如軟體與演算法)以及公共政策兩者。

服務公眾利益的公共程式,具有開放、易懂、課責、近用、永續等特性。

透過獨立於當地情境,但仍可在當地情境下實作的方式,還有公開以文件記錄開發程序等作法,來開發公共程式。如此,公共程式能作為基礎組件提供給他人,使其得以:

  • 根據其當地情境重新實作
  • 作為起點並繼續開發
  • 當作學習時的基礎

為了促進重複利用,公共程式通常放到公眾領域發行,或者採取允許他人能自由檢視、重複利用其成果,甚至產出衍生作品的開放授權。

儲存庫

儲存庫是版本控制工具,用於存放程式基底的檔案與中介資料的儲存位置。儲存庫讓多位貢獻者,得以同時對同一組檔案作業。儲存庫可以儲存一組檔案的多個版本。

原始碼 (Source Code)

人類可讀,並且能夠翻譯成機器指令的電腦程式文字。

版本控制

版本控制,是對原始碼及其相關檔案的變動行為作管理的流程。變動行為,通常是以稱為「修訂編號」(或版次等類似名稱)的代號作識別。每次修訂都會標示其改動時間以及作者, 方便追溯程式碼的演進。修訂控制系統可用來比較不同版本之間的差異,以及查看內容隨著時間經歷的變動。