UML モデルで操作は、分類子のインスタンスの実行を要求できるサービスまたはアクションを表します。
各分類子は、0 個以上の任意の数の操作を持つことができます。操作によって、分類子 (通常はクラス) のインスタンスの振る舞いが定義されますが、ユースケースなどの他の分類子、またはコンポーネントのインスタンスの振る舞いも定義されます。
モデル内の多数のタイプの分類子の振る舞いを識別するために、操作を追加できます。クラス内の操作は、オブジェクトが実行を要求する可能性のある機能の実装です。明確に定義された操作は、単一のタスクを実行します。
1 つの分類子内の各操作は、固有のシグニチャーを持つ必要があります。シグニチャーは、操作の名前およびそのパラメーター・タイプの番号付きリストから成り立っています。操作名の UML 構文は以下のとおりです。
visibility «stereotype» name(parameter list) : return-type
例えば、e-コマース・アプリケーションでは、Customer クラスに - getBalance([in] day: Date) : MoneyType という操作が含まれます。操作シグニチャーは次の表の情報を記述します。
構文の部分 | 例 | 説明 |
---|---|---|
visibility | - | 負符号 (-) は、操作の可視性が private であることを示します。この操作を他のクラスから呼び出すことはできません。 |
name | getBalance | name は、操作が提供するサービスに基づいて操作を記述します。 |
parameter list | ([in] day: Date) | 操作には、day という入力パラメーターと、それに続くタイプ Date があります。完全なシグニチャー (パラメーター・リストを含む) または操作の名前のみを表示できます。 |
return-type | : MoneyType | 操作が戻すタイプは、MoneyType クラスのインスタンスです。 |
e-コマース・アプリケーションでは、CART クラスによって仮想ショッピング・カートに商品が追加および削除されます。商品は addItem( ) などの操作によってカートに追加され、removeItem( ) の操作によって削除されます。