UML の制約

UML モデルにおける制約は、UML モデル要素の意味構造を詳細化することができる拡張機構です。制約は、モデル要素が準拠しなければならない条件や制限を記述することによって、モデル要素を詳細化します。

制約の例としては、特定の値を持つ属性などの条件が挙げられます。制約は、システムの設計段階において実施される必要があります。 条件または制限を、制約の本文で指定します。

通常、制約は名前を持ちません。代わりに、制約はその本文の内容で識別されます。 ただし、通常使用されている制約の中には、制約の本文の内容が反復されないように、名前によって識別される制約もあります。 複数の関連が 1 つのクラスに対して共通の接続を持つ場合は、XOR 制約が適用されます。

以下に挙げる言語で、制約の本文を記述することができます。

OCL について詳しくは、オブジェクト管理グループ (OMG) の Web サイトで入手できる、 統一モデリング言語 (UML) の仕様をご覧ください。 一般に、本文の構文または本文の言語プロパティーは、強制的なものではありません。

制約は、中括弧 ({}) で囲まれたテキストで表され、 右上角が折られた長方形の中に表示されます。

以下の目的で、制約をモデルに追加することができます。

モデルにおける制約は、フリー・フォーム図内と同様、 すべてのタイプの UML ダイアグラムで示すことができます。

制約の検証

制約を検証することができます。 実施する検証のレベルは、検証される制約のタイプによって決まります。 制約には、以下の 3 つのタイプがあります。

制約の構文と式が検証されるのは、 制約に «metaConstraint» ステレオタイプが適用されている場合、 または制約がプロファイルで定義されている場合です。

«metaConstraint» ステレオタイプが適用されず、 かつプロファイルで定義されていない制約については、制約の構文のみが検証されます。


フィードバック