サービス層
ランディ・スタッフォード
利用可能の操作のセットを確立するサービスのレイヤーを持つアプリケーションの境界を定義し、各操作におけるアプリケーションの応答を調整します。
完全な記述については、P of EAA の 133 ページをご覧ください。
エンタープライズアプリケーションは、通常、保存するデータと実装するロジックに対するさまざまな種類のインターフェイスを必要とします。データローダー、ユーザーインターフェイス、インテグレーションゲートウェイなどです。目的は違いますが、これらのインターフェイスは、アプリケーションのデータにアクセスして操作したり、そのビジネスロジックを呼び出すために、アプリケーションと共通の対話を必要とすることがよくあります。この対話は複雑であり、複数のリソースにわたるトランザクションと、アクションに対するいくつかの応答の調整を含む場合があります。各インターフェイスで対話のロジックを個別にエンコードすると、多くの重複が発生します。
サービス層は、アプリケーションの境界を定義し [Cockburn PloP]、インターフェイスするクライアントレイヤーの観点からその利用可能な操作のセットを定義します。アプリケーションのビジネスロジックをカプセル化し、トランザクションを制御し、その操作の実装での応答をコーディネーションします。