4. 要求仕様
4.1 機能要求
本章の要求は,CADL言語とその処理系が目指す目標であり,現在の実装がこれらを満たすことを述べるものではない。実装の状況は,要求ごとではなく実装フェーズごとに,第10章に示す。
4.1.1 制度記述機能 (FR-1)
| ID | 要求名 | 内容 |
|---|---|---|
| FR-1.1 | アクター定義 | SoSの構成システム(アクター)を,識別子・役割・自律性レベルとともに定義できること。 |
| FR-1.2 | 契約定義 | 当事者・権限範囲・情報共有構造・責任・インセンティブを含む契約を定義できること。 |
| FR-1.3 | 権限構造記述 | 意思決定のスコープと決定権者を明示的に記述でき,意思決定集中度β(0=分散,1=集中)で定量化できること。 |
| FR-1.4 | 情報共有構造記述 | 各アクターの観測可能な情報と共有モード(push/pull/broadcast)を定義できること。 |
| FR-1.5 | インセンティブ記述 | 報酬・ペナルティ・評判メカニズム等のインセンティブ構造を定義できること。 |
| FR-1.6 | 環境モデリング | 遅延・障害率・需要率等の環境パラメータを区間または確率分布で定義できること。 |
4.1.2 プロトコル記述機能 (FR-2)
| ID | 要求名 | 内容 |
|---|---|---|
| FR-2.1 | イベント駆動プロトコル | トリガー条件に基づいてアクター間のメッセージ交換手順を定義できること。 |
| FR-2.2 | タイミング制約 | 応答時間の上限,タイムアウト,周期的実行等の時間制約を付与できること。 |
| FR-2.3 | フォールバック定義 | タイムアウト・障害時の代替動作を定義できること。 |
| FR-2.4 | プロトコル合成 | 複数のプロトコルの並行実行・逐次実行・条件分岐を組み合わせた合成プロトコルを定義できること。 |
4.1.3 アルゴリズム参照機能 (FR-3)
| ID | 要求名 | 内容 |
|---|---|---|
| FR-3.1 | アルゴリズム抽象参照 | 経路計画,最適化等のアルゴリズムを名前と入出力インタフェースで参照できること。 |
| FR-3.2 | アルゴリズム切替 | 環境条件やガバナンス構造に応じたアルゴリズムの動的切替を記述できること。 |
4.1.4 検証機能 (FR-4)
| ID | 要求名 | 内容 |
|---|---|---|
| FR-4.1 | 静的型検査 | 契約の当事者・権限・情報共有の整合性を静的に検査できること。 |
| FR-4.2 | 無矛盾性検証 | 複数契約間の義務の矛盾,権限の衝突を検出できること。 |
| FR-4.3 | デッドロック検出 | プロトコル間のデッドロック可能性を検出できること。 |
| FR-4.4 | 安全性検証 | 制度遷移時の安全不変条件の保持を検証できること。 |
| FR-4.5 | 構成的検証 | アクターの追加・離脱時に差分検証で全体の整合性を確認できること。 |
4.1.5 制度遷移機能 (FR-5)
| ID | 要求名 | 内容 |
|---|---|---|
| FR-5.1 | 遷移条件定義 | 環境パラメータの閾値に基づく制度遷移条件を定義できること。 |
| FR-5.2 | 遷移プロトコル | 制度遷移時の移行手順(段階的切替,ロールバック等)を記述できること。 |
| FR-5.3 | モードマップ定義 | 環境パラメータ空間上の制度境界を定義できること。 |
4.2 非機能要求
以下も同様に目標であり,定量的な目標(NFR-3など)や変換先(NFR-5)を含む。現在の実装が提供する範囲は第10章を参照されたい。NFR-7は,人が読むテキストと識別子を区別する。識別子はASCIIに限る(付録AのA.1節)。識別子は生成コード(Python,Solidity,Rego,C#)の名前になり,非ASCIIの名前はすべての変換先で受け付けられるわけではなく,正規化の規則も必要になるためである。リファレンス実装は,文字列とコメントの中のUnicodeテキストを受理する。また,cadl 0.3.9からは,ASCIIの規則に違反するidをエラーとして報告する(付録AのA.12節)。
| ID | 要求名 | 内容 |
|---|---|---|
| NFR-1 | 万人理解性 | 学生・企業実務者・自治体職員・市民を含む幅広いステークホルダが,制度記述の意図と構造を理解できること。YAMLベースの宣言的構文,自然言語に近い語彙(authority, responsibility, incentive等),段階的記述レベル(概要/設計/検証)を基本手段とする。 |
| NFR-2 | 段階的参加 | 利用者の専門性に応じた3段階の記述レベル(概要レベル・設計レベル・検証レベル)を提供し,非専門家は概要レベルから,専門家は検証レベルまで,それぞれの能力に応じて制度設計に参加できること。 |
| NFR-3 | スケーラビリティ | 100以上のアクター,50以上の契約を含むSoS記述を実用的な時間内(検証: 数分以内)で処理できること。 |
| NFR-4 | 拡張性 | ドメイン固有の語彙・制約をライブラリとして追加できるプラグイン機構を持つこと。 |
| NFR-5 | 相互運用性 | SysMLv2 [OMG, 2025],AADL [Feiler & Gluch, 2012],スマートコントラクト(Solidity [Solidity Documentation])へのコード生成をサポートすること。 |
| NFR-6 | AI親和性 | LLMが自然言語からCADL記述を生成・修正・説明できるよう,構文が規則的で曖昧さが少ないこと。AI支援による敷居低減(NL→CADL変換,自然言語での説明生成)を前提とした設計であること。 |
| NFR-7 | 国際化 | 人が読むテキスト(name,description,role などの文字列値とコメント)を,Unicode文字(日本語等)を用いて任意の言語で記述できること。識別子(アクター・契約・プロトコルのIDと,式で用いる名前)はASCIIに限る。 |
| NFR-8 | ビジュアライゼーション | CADL記述から権限構造図,プロトコルシーケンス図,モードマップ等のダイアグラムを自動生成し,非技術者でも制度の全体像を視覚的に把握できること。 |
4.3 制約条件
| ID | 内容 |
|---|---|
| C-1 | 五層フレームワーク[Shimoyama & Matsubara, 2026]との対応付けが可能であること。対応は2.2節に示す。 |
| C-2 | [ISO/IEC/IEEE 21841:2019] のSoS分類(D/A/C/V-SoS)を記述可能であること。 |
| C-3 | IEC 62853 [IEC 62853:2018] のプロセスビュー(合意形成・説明責任・障害対応・変化対応)との連携が可能であること。 |
| C-4 | assume-guarantee契約セマンティクスに基づく形式的基盤を持つこと。 |