PR

システムアーキテクチャー構築は4段階

 インプット情報である利害関係者要求を満たしつつ、制約を満たすシステムのアーキテクチャーはどのように構築すればよいのか。システムアーキテクチャー構築の流れは図2のようになる。以降では、図2に示した4つの段階に沿って、システムアーキテクチャーの構築方法を解説する。なお、3段階目で作成する論理アーキテクチャーは、IEEE1220などのシステムエンジニアリングプロセス2)では「機能アーキテクチャー」と定義されている。しかし、機能と振る舞いのアーキテクチャーを定義するという目的は同じなので、ここでは論理アーキテクチャーという言葉を使用する。

図2 システムアーキテクチャー構築の流れ
図2 システムアーキテクチャー構築の流れ
[画像のクリックで拡大表示]

システムの境界を特定する

 システムアーキテクチャーの構築では、まず、システムの境界を特定する。境界を明らかにしないで開発を進めると、設計の漏れや、他のシステムとの重複部分に気付かず設計を進めてしまうムダが後工程で見つかったりする。システム構築の最初の段階で境界をはっきりさせることが重要である。

 既存のシステムでは境界は容易に特定できる。先のETCシステムの例では、「ETC車載器」はシステム構成要素の1つだが、ETC車載器を開発対象とした場合にはETC車載器がシステムの境界となる。このとき、ETCシステムから見ると、ETC車載器はサブシステムと呼ぶことができる。さらに、システムの構成要素という観点ではコンポーネント(部品)と呼ぶこともできる。

 では、新しいシステムの場合はどのように境界を特定すればよいのか。最も分かりやすいのは地理的・物理的な観点で特定する方法である。ETCシステムの場合、クルマと道路という物理的に異なる要素を扱うため、クルマ側と道路側の間に境界を定義できる。

 この他には、解決したい問題の観点から特定する方法がある。クルマが高速道路を通行したことを把握する問題と、高速料金を利用者から徴収する問題は、関心事すなわち扱う問題が異なる。このように、システムアーキテクチャーを構築する最初の段階では、大きな単位で境界を定め、サブシステムやコンポーネントといった単位でアーキテクチャーを構築していく。

 連載の第2回で掲載した「車両盗難防止システム」の例ではどうか。車両盗難防止システムは、キーと車両の照合を行い、ドアロックやエンジン始動の許可を行う。しかし、エンジン制御自体は対象外であり、ドア制御の仕組みそのものも対象外となる。