Sunday, January 28, 2007

ソフトウェアアーキテクチャ その8 - フライトシミュレーションケーススタディ [arch]

前回は "Pattern" の観点から適当なケーススタディを紹介したが,今回はこれまで7回に渡って紹介してきた様々なコンセプトを総合的にレビューするのに適したケーススタディを紹介する.

Reference:
Software Architecture in Practice, Second Edition,
by Len Bass, Paul Clements, and Rick Kazman, Addison-Wesley 2003

--> Chapter 8

価格

Software Architecture in Practice (Sei Series in Software En
ソフトウェアの方式設計について実践を目的に、丁寧な解説を行っており、我が国のソフトウェア技術者が必...
あまなつShopあまなつで見る同じレイアウトで作成
アーキテクトのバイブルとされる本.SWEBOK (Software Engineering Body of Knowledge) でも推奨書籍とされている.

タイトルの "in Practice" (実践における) が示す通り,様々なケーススタディを交えつつ,非常に具体性のある内容になっている.


こちらがその和訳本.



これはフライトシミュレーションのケーススタディであり,非常に興味深いシステムである.

このシステムでは特に「統合容易性」の実現を重視しており,structural model を採用することによりいかに様々な問題を解決したか,具体的にはシステムのサブストラクチャにおける単純化と共通化,データ (および制御) を演算処理から分離する方針,モジュールタイプの最小化,システム全体に及ぶ調停を少なくする方針,設計の透過性の実現などが語られている.

しかしこのケーススタディから読み取りたいのは,その1つ1つの細かい実現方法ではなく,むしろ全体としてアーキテクチャがいかにシステムに作用し,どんな役割りを持っているか,である.

これまでに解説してきた様々なキーコンセプトを頭に入れつつ内容を読めば,
- ステークホルダーからの要件を明確にして分析すること
- 品質特性の重要性とトレードオフの概念
- structure を理解することの強み
- アーキテクトの役割り
などを再確認できるはずだ.

つまりゴールを確立し,それを実現する為のアーキテクチャ選択という「意思決定」が,どのように行われているかに注目したい.


ところで本章 Figure 8.4 は,"surrogate" と "event handler" が逆になっている誤植があるので,その点だけ付け加えておく.

この「ソフトウェアアーキテクチャ」シリーズもここで一段落つけ,次回から新しいフェーズに入って行くことにしよう.


0 comments: