POSAアーキテクチャパターン

2022/12/24

アーキテクチャパターンというのは、クラスよりも大きな単位(パッケージやサブシステム、レイヤー)の構造や、それらの接続と相互作用を規定する設計パターン。 パッケージ内のクラス群はできるだけ関連性の高いものでまとめる(高凝集度)が、パッケージ間の依存関係はできるだけ単方向にして、かつできるだけインターフェースを限定して(低結合度=疎結合)設計しましょうという方針。

前記事のデザインパターンはクラス間の局所的な構造や相互作用の設計パターン。

最初に登場したアーキテクチャパターンはPatterns Oriented Software Architecture(POSA)。4つのテーマ(大きな構造化、分散、対話型、適応型)でソフトウエアアーキテクチャを分類している。このうちLayersパターンを拡張して整理したのが、よく耳にする「エンタープライズアプリケーションアーキテクチャパターン」とのこと。

Reflectionアーキテクチャパターンが情報処理技術者試験で問われていたのでまとめる。正解の選択肢としては

ソフトウェアをメタレベルとベースレベルの二つのレベルに分割し、ソフトウェアの構造と振る舞いとを動的に変更できる仕組みを提供しているもの

このパターンを利用すると,型機構や関数呼出し機構と いった基礎的な部分からの変更が可能となる。メタレベルはシステム属性に関する情 報を提供し、ソフトウェア自体を自己認識可能にする。ベースレベルはアプリケーショ ンの論理を含み、メタレベル上に実装される。メタレベルの保持する情報に対する変更 は、結果的にベースレベルの振舞に影響を与える。

参考:

最新の投稿.