操作

UML モデルにおける操作は、 分類子のインスタンスが実行を要求されるサービス またはアクションを表します。

分類子には、 任意の数の操作を持たせることもできますし、 まったく操作を持たせないこともできます。 操作は、分類子 (通常はクラス) のインスタンスの振る舞いを定義しますが、 その他の分類子 (ユースケースまたはコンポーネントなど) の振る舞いも定義します。

操作を追加することで、モデル内の分類子について、 多くのタイプの振る舞いを識別することができます。 クラスにおける操作は、 オブジェクトが実行を要求される機能の実装です。 十分に定義された操作は、単一のタスクを実行します。

操作には、操作でエラーが発生した場合に作成される要素、つまり例外が含まれる場合があります。

分類子内のすべての操作は、固有のシグニチャーを持つ必要があります。 シグニチャーには、操作の名前とそのパラメーター型の順序付きリストが含まれています。 操作名の UML 構文は、以下のとおりです。

visibility «stereotype» name(parameter list) : return-type

例えば、e-commerce アプリケーションの Customer クラスは、 以下の操作を持っています。- getBalance([in] day: Date) : MoneyType。 操作シグニチャーが記述する情報は、以下の表のとおりです。

構文のパーツ サンプル 説明
可視性 - マイナス符号は、この操作の可視性が private であることを示しています。 この操作は、他のクラスから呼び出すことはできません。
名前 getBalance 名前は、提供されるサービスに応じた操作を説明します。
パラメーター・リスト ([in] day: Date) この操作は、day という 1 つの入力パラメーターを持ちます。 次の Date は、そのタイプです。 完全なシグニチャー (パラメーター・リストを含む) または操作名のみを表示することができます。
戻りの型 : MoneyType この操作が戻す型は、MoneyType クラスのインスタンスです。

サンプル

e-commerce アプリケーションにおける Cart クラスは、 仮想ショッピング・カートに商品を追加したり、除去したりします。 addItem( ) 操作によって、商品をカートに追加し、removeItem( ) 操作によって、商品を除去します。


フィードバック