UML モデリングでは、拡張関係を使用して、1 つのユースケース (拡張) が別のユースケース (基本) の振る舞いを拡張することを指定できます。このタイプの関係によって、通常はユースケースに隠されているシステムまたはアプリケーションについての詳細が明らかになります。
拡張関係では、拡張ユースケースの取り込みが、基本ユースケースの実行時に発生することに依存することを明示します。拡張ユースケースが拡張関係を所有します。単一の基本ユースケースに対して、複数の拡張関係を指定できます。
基本ユースケースは独立して定義され、それ自体で意味のあるものですが、拡張ユースケースはそれ自体では意味がありません。 拡張ユースケースは、基本ユースケースの振る舞いを追加的に増大させることが可能なその他の振る舞いを記述した、1 つまたは複数の振る舞いのシーケンス (セグメント) から構成されます。各セグメントは、拡張点と呼ばれる異なる点で基本ユースケースに挿入できます。
拡張ユースケースは基本ユースケースの属性にアクセスしたり、属性を変更することが可能です。ただし、基本ユースケースは拡張ユースケースを認識しないため、拡張ユースケースの属性および操作にアクセスしたり、またはそれらを修正できません。
以下の状況を表す場合、拡張関係をモデルに追加できます。
拡張関係には名前がありません。
次の図が示すように、拡張関係は拡張ユースケースから基本ユースケースを指す白抜きくさび型矢印を持つ破線として、ダイアグラム・エディターに表示されます。矢印には «extend» というキーワードのラベルが付けられます。
開発中の e-コマース・システムには、Place Online Order という基本ユースケースと、それを拡張する Specify Shipping Instructions というユースケースがあります。 Specify Shipping Instructions ユースケースから Place Online Order ユースケースへの拡張関係が指し示されます。これは Specify Shipping Instructions ユースケースは特定の状況でのみ発生するオプションであることを意味しています。