1. ホーム
  2. uml

[解決済み] UMLのクラス図において、境界クラス、制御クラス、エンティティクラスとは何ですか?

2023-01-14 06:09:24

質問

現在、IDEとしてNetBeansを使用しており、UMLモデリング用のプラグインがあります。クラス図には、次のように知られているモデル要素があります。 Boundary Class , Control Class そして Entity Class . しかし、それらの良い定義が見つかりませんが、私が見つけたのは このサイト でUMLクラス図について見ることができました。

どのように解決するのですか?

ロバストネス図は、ユースケースの後、クラス図の前に記述されます。これらは、ユースケースのステップの役割を特定するのに役立ちます。以下のように使用できます。 ユースケースが十分にロバストであることを確認する で、構築するシステムの使用要件を表すことができます。

これらは関与しています。

  1. アクター
  2. ユースケース
  3. エンティティ
  4. バウンダリー
  5. コントロール

一方 モデル-ビュー-コントローラ パターンがユーザーインターフェースに使われるのに対し、ECB(Entity-Control-Boundary Pattern)はシステムに使われるパターンです。ECBの以下の点は、MVCの抽象版に例えることができると思いますので、参考にしてください。

エンティティ (モデル)

システムデータを表すオブジェクトで、多くはドメインモデルからのものです。

バウンダリ (ビュー/サービス連携者)

システムアクターとインターフェイスするオブジェクト(例えば ユーザ 外部サービス ). Windows、スクリーン、メニューは、ユーザーとのインターフェイスとなる境界の例です。

コントロール (コントローラ)

境界とエンティティの間を仲介するオブジェクトです。境界要素とエンティティ要素の間の接着剤の役割を果たし、様々な要素やその相互作用を管理するために必要なロジックを実装します。多くのコントローラは、例えばエンティティやバウンダリクラスのメソッドとして実装できるほど単純なものです。

4つのルールがコントローラの通信に適用されます。

  1. アクターは境界のあるオブジェクトにしか話しかけられません。
  2. バウンダリーオブジェクトはコントローラーとアクターとしか会話できません。
  3. エンティティオブジェクトはコントローラとしか会話できません。
  4. コントローラは境界オブジェクトやエンティティオブジェクト、他のコントローラと会話することができますが、アクターと会話することはできません。

通信が許可されています。

         Entity    Boundary   Control
Entity     X                     X
Boundary                         X
Control    X          X          X