ソフトウェアアーキテクチャ その8 - フライトシミュレーションケーススタディ [arch]
前回は "Pattern" の観点から適当なケーススタディを紹介したが,今回はこれまで7回に渡って紹介してきた様々なコンセプトを総合的にレビューするのに適したケーススタディを紹介する.
Reference:
Software Architecture in Practice, Second Edition,
by Len Bass, Paul Clements, and Rick Kazman, Addison-Wesley 2003
--> Chapter 8
|
タイトルの "in Practice" (実践における) が示す通り,様々なケーススタディを交えつつ,非常に具体性のある内容になっている.
こちらがその和訳本.
これはフライトシミュレーションのケーススタディであり,非常に興味深いシステムである.
このシステムでは特に「統合容易性」の実現を重視しており,structural model を採用することによりいかに様々な問題を解決したか,具体的にはシステムのサブストラクチャにおける単純化と共通化,データ (および制御) を演算処理から分離する方針,モジュールタイプの最小化,システム全体に及ぶ調停を少なくする方針,設計の透過性の実現などが語られている.
しかしこのケーススタディから読み取りたいのは,その1つ1つの細かい実現方法ではなく,むしろ全体としてアーキテクチャがいかにシステムに作用し,どんな役割りを持っているか,である.
これまでに解説してきた様々なキーコンセプトを頭に入れつつ内容を読めば,
- ステークホルダーからの要件を明確にして分析すること
- 品質特性の重要性とトレードオフの概念
- structure を理解することの強み
- アーキテクトの役割り
などを再確認できるはずだ.
つまりゴールを確立し,それを実現する為のアーキテクチャ選択という「意思決定」が,どのように行われているかに注目したい.
ところで本章 Figure 8.4 は,"surrogate" と "event handler" が逆になっている誤植があるので,その点だけ付け加えておく.
この「ソフトウェアアーキテクチャ」シリーズもここで一段落つけ,次回から新しいフェーズに入って行くことにしよう.
0 コメント:
コメントを投稿