什麼是規則即程式碼 (RaC) - brcommunity
經合組織公共部門創新觀察站最近釋出了一份關於政府中規則的建立和表達的重要討論檔案: "Cracking the Code.",其核心思想是“規則即程式碼”(RaC),可以理解為兩種方式。
- 首先,它是一種改進規則建立過程的方法。
- 其次,它確實建議政府應該以軟體和機器可以直接使用的格式提供規則——例如,作為計算機程式碼。
我們在這篇簡短文章中的目的是提煉 Primer 的核心原則,以便為理解和使用 RaC 提供一個簡單的入口,並推動討論向前發展。關於 RaC 的潛力、侷限性和影響,仍有許多待探索。
規則即程式碼 (RaC) 是一個高度創新的想法,它解決了如何以自然語言和工作計算機程式碼同時生成法律和法規。
RaC 不僅對制定更好的規則(意味著明確和符合目的)具有重要意義,而且還為強大的新一代基於規則的軟體平臺(更適合政府和企業制定的現實世界規則的平臺)提供了強大的動力)。
RaC 代表了對如何實現政府的核心責任——規則制定的根本性重新思考。它重塑了規則制定過程中各種利益相關者的互動,包括法律法規的起草者、規則編寫者和分析師以及軟體編碼者。
RaC 的精髓可以提煉為六個基本原則或核心概念,如下所示:
(1) 數字公共基礎設施
RaC讓政府有責任將規則作為計算機程式碼與以自然語言表達的規則一起交付。
目前,規則已經被編入數字服務和軟體系統的一部分,儘管通常不是由發行政府本身制定的。透明度、避免翻譯問題和減少重複工作是 RaC 的關鍵目標。世界許多地方普遍認為,政府應提供適合數字經濟的公共基礎設施——例如,用於數字身份管理。RaC 或“數字”立法和法規是數字世界和經濟的類似基礎要素。
(2) 更好的規則。
RaC 規定了一種迭代的、以人為中心的、測試驅動的方法來制定規則。
RaC 假設如果與機器可消耗的版本同時起草或解釋,人類可消耗的規則本質上會更好(更易讀、更完整、更適合目的)。傳統的規則建立模式可能會給數字服務交付帶來挑戰。這些規則可能難以理解或導航,並且它們的邏輯不健全。這些缺點可能使設計人員和開發人員難以構建良好的數字服務,以便人們可以輕鬆瞭解他們的權利、義務和權利。
(3) 消歧。
RaC 規定了人性化規則的清晰性和精確性;因此,概念模型[5]形式的詞彙協調是必不可少的。
清晰和減少歧義是概念模型開發過程中的重點,這有助於決策建模和規則開發過程中的相同方面。在多學科團隊中開發模型和規則的迭代過程提高了清晰度和精度。最終的測試是使用工作程式碼和自動化測試用例來清楚地證明高質量。執行自動化測試用例將識別任何剩餘的模稜兩可或缺乏清晰度或精確度的區域。
(4) 數字孿生
RAC 為政府規則規定了數字雙胞胎。
任何供人類使用的規則也必須以機器可用的形式提供——一種既可讀又高度精確的形式。
為什麼是規則的數字孿生?
從歷史上看,規則是由孤立的組織編寫的,通常是政府之外的組織,他們自己解釋。沒有辦法確保意圖與這樣的分散實現的一致性。
例如,支付給員工的工資和假期付款可能會在工資單軟體中以數字方式完成。
但是,工資單軟體必須符合就業立法的規定。
如果沒有數字雙胞胎,就無法保證工資單軟體與就業立法中的源規則一致。
(5) 同構
RAC 規定,每條機器消耗規則都應在其整個生命週期內與其人類消耗規則保持緊密耦合,以便始終有效地同步更改。
使用 RAC,機器可消耗的規則不是由不同的人在不同時間點對規則的翻譯,而是並行和同時開發的。這個數字雙胞胎與其人類可消費的對應物保持密切聯絡,因此兩者的含義不會隨著時間的推移而出現分歧。
(6) 互操作性
RaC 規定為機器呈現的規則應該獨立於軟體平臺。
政府規則必須民主化且易於獲取。公民、企業家、社會創新者、軟體開發人員以及他們開發的系統應該能夠“使用”規則,而無需翻譯規則。這意味著考慮開源解決方案並避免任何供應商鎖定平臺捕獲規則並使規則公開可用。使用開放和廣泛接受的標準是 RaC 成功的關鍵因素。
相關文章
- 什麼是規則引擎? - martinfowler
- 什麼是業務規則引擎?
- 什麼是基礎架構即程式碼(IaC)-dev架構dev
- 什麼是單一斷言規則
- 羊了個羊遊戲規則是什麼?微信小程式羊了個羊遊戲規則有什麼規律遊戲微信小程式
- 規則引擎面臨的問題和挑戰 - brcommunityUnity
- 業務規則引擎平臺如何降低程式設計師工作量? - brcommunity程式設計師Unity
- 低程式碼是什麼?
- 什麼是程式碼整理?
- Android 程式碼混淆規則Android
- Infra即資料與Infra即程式碼:有什麼區別?
- Python命名規則是什麼?需要注意哪些事項?Python
- 什麼是 unicode 程式碼點Unicode
- 低程式碼是什麼意思
- 低程式碼是什麼意思?
- 什麼是程式碼審計?程式碼審計有什麼好處?
- Python語言中變數名是什麼?命名規則有哪些?Python變數
- 通過程式碼解釋什麼是API,什麼是SDK?API
- 低程式碼是什麼意思?低程式碼平臺的技術特點是什麼?
- 什麼是程式碼覆蓋率
- HTTP狀態程式碼是什麼?HTTP
- 這是什麼騷批程式碼!
- 什麼是低程式碼的窘境?
- html的空格程式碼是什麼HTML
- 什麼是功能即服務(FaaS)?
- YAGNI原則是什麼? -oliverkumper
- 什麼樣的程式碼稱得上是好程式碼?
- 為什麼說GitOps是基礎架構即程式碼 (IaC) 和 DevOps 最佳實踐?Git架構dev
- java程式碼規範有什麼意義Java
- 什麼是HTTP 304狀態程式碼?HTTP
- 什麼是低程式碼(Low-Code)?
- Android之什麼是樁程式碼(Stub)?Android
- 正則式表達是什麼,有什麼作用
- 什麼是如何把握波段操作?波段操作的原則是什麼
- 什麼是依賴倒置原則
- 什麼是迪米特法則?
- java開閉原則是什麼?Java
- 什麼是低程式碼?低程式碼平臺能解決什麼樣的問題?