システムの論理構成と物理構成について
はじめに
Automotive SPICEのプロセスである、SYS.3 システムアーキテクチャ設計プロセスでは、システムの機能要求と非機能要求に関して、静的/動的の両側面での設計が期待されています。
しかしながら、システムの構成要素であるセンサ・アクチュエータ・制御回路・マイコンなどに、システム要求をどのように割り当て、実装することが最適なのかを分析・検討することは難しいものです。
単に、Automotive SPICEに期待されているように、静的な側面と動的な側面で設計結果を図案化しても、適切な設計をした根拠として少し心もとないですし、「流用元のシステムがこうなっているから」では説得力にも欠けます。
今回は、システムエンジニアリングの国際標準である
「ISO/IEC 26702 IEEE Std 1220-2005, Systems engineering – Application and management of the systems engineering process」を参考に、システム要求からシステムを設計する流れを解説していきます。
機能アーキテクチャと物理アーキテクチャ
システム要求を実現するシステム構造は1つではありません。複数の実現案がある中から最適なシステム構造を決定していく必要があります。
そのため、まずシステム要件を満たすために、システムが保有すべき、論理的な機能を定義し、それらの関係を整理していく必要があります。
そして、これらの機能を、その後定義するシステムの構成要素(センサ・アクチュエータ・制御回路・マイコン)に割り当てていきます。
システム構成要素を定義したものが物理アーキテクチャになります。
システム設計の全体の流れを簡単に示すと下図のようになります。
機能分析
機能アーキテクチャは、システム要件を満たすために、実行の順序、制御フローまたはデータフローを定義した機能・サブ機能および内部/外部インターフェースを整理したもので、システムの論理構成を示したものです。
また機能アーキテクチャでは、システム機能をサブ機能に分解 (細分化) した結果生じる、サブ機能の機能的な配置と順序を検討する必要があります。
この際、この後物理アーキテクチャを考慮せずに必要な機能配置を分析することがポイントになります。
システム要件をインプットに、機能アーキテクチャを設計するためのプロセスは以下のようになります。
ここでの「振る舞いの分析」や「機能間インタフェース」の定義が、Automotive SPICEにおける静的な側面の仕様化の一部であり、「時系列の流れ」や「データフルーと制御フロー」の定義が、動的な側面の仕様化の一部となります。
例えば、扇風機の機能アーキテクチャを設計した結果の一部である、論理構成のブロック図は以下のようになります。
※ 具体的なやり方を知りたい方を知りたい方やトレーニングを受講されたい方は、是非お問い合わせください。
設計
物理アーキテクチャは、機能アーキテクチャとシステム要件を満たすために、製品の設計結果提供する設計要素の配置を整理したものです。
設計結果を定義し、検証された機能アーキテクチャの要件を満たす、システムの構成要素を特定します。
機能アーキテクチャを元に、システム構成要素の配置、それらの分解、インターフェイス (内部および外部)、および設計制約を提供する物理(設計)アーキテクチャを設計していきます。
この際、必要に応じて、複数の実現案を評価し、リスクを特定・評価・定量化し、適切なリスク軽減アプローチを選択した上で、コスト、スケジュール、およびパフォーマンスへの影響を分析することがポイントとなります。
システム要件と機能アーキテクチャをインプットに、物理アーキテクチャを設計するためのプロセスは以下のようになります。
ここでの「機能をグルーピングし設計要素に割り当て」や「物理インタフェースの定義」が、Automotive SPICEにおける静的な側面の仕様化の一部であり、「設計特性や性能特性の定義」などが、動的な側面の仕様化の一部となります。
例えば、扇風機の物理アーキテクチャを設計した結果の一部である、機能ブロックの設計要素への割り当て結果は以下のようになります。
※ 具体的なやり方を知りたい方を知りたい方やトレーニングを受講されたい方は、是非お問い合わせください。
さいごに
いかがでしょうか。
単に、「システム要件をインプットに、静的設計と動的設計をして、システムアーキテクチャを設計しろ」と言われても、具体的に何すべきなのかはわかりにくと思います。
しかしながら、システム要件を元に、必要なシステム機能を定義して、適切なシステム構成要素を定義する流れを想像してみれば、システムアーキテクチャ設計が少しイメージできるかと思います。
SYS.3 システムアーキテクチャ設計プロセスを実装する際に、参考にしていただければ幸いです。
内山 哲三