
081
2
アーキテクチャスタイル
アーキテクチャスタイルは、ソフトウェアのソースコードの編成の仕
方や相互作用についての「包括的な構造」と定義されます
※ 10
。全体的な
方針を定めるコンセプトであり、アーキテクチャパターンの上位に位置
付けられる抽象度の高いものと考えてください。
書籍『ソフトウェアアーキテクチャの基礎 エンジニアリングに基づ
く体系的アプローチ』
※ 10
では、図2.4.3のアーキテクチャスタイルが紹
介されています。
⹅
図2.4.3
アーキテクチャスタイル
分類 アーキテクチャスタイル
モノリシック
レイヤードアーキテクチャ
パイプラインアーキテクチャ
マイクロカーネルアーキテクチャ
分散
サービスベースアーキテクチャ
イベント駆動アーキテクチャ
スペースベースアーキテクチャ
サービス指向アーキテクチャ
マイクロサービスアーキテクチャ
注意が必要な点として、これらのアーキテクチャスタイルの粒度は必
ずしも揃っていないことが挙げられます。それどころか概念として直交
するものすらあります。ですから、この中から一つを選んで自分たちの
ソフトウェアのアーキテクチャとするというよりも、一つ以上のアーキ
テクチャスタイルのコンセプトをアーキテクチャの方針として採用する
と考えた方がよいでしょう。
たとえば、分散システムとしてマイクロサービスアーキテクチャを
ベースとし、それぞれの独立したサービスはレイヤードアーキテクチャ
の構造を取る、一部のサービスは拡張性のためにマイクロカーネルアー
キテクチャのコンセプトを適用する、といった具合です。 ...