ObjectSquare [1999 年 8 月号]

[オブジェクト指向モデリング言語 UML]
   - 情報処理 VOL.40 NO.1, NO.3より -


UML1.3の変更点

ユースケース間の関係

UML1.1では,ユースケース間の関係は,表-1のように,なぜか「汎化」関係として定義され,使用汎化関係(<<uses>>汎化)と拡張汎化関係(<<extends>>汎化)の2種類が用意されていた.

表-1 ユースケース間の関係表現の変更
現行 定義 使用汎化関係
<<uses>>汎化
拡張汎化関係
<<extends>>汎化
意味 ユースケースA,B,Cとそれらから共通に呼び出されて使用されるサブユースケースXとの関係 ユースケースPとその振る舞いを拡張するための追加ユースケースQとの関係
改訂 定義 <<include>>依存関係 <<extend>>依存関係
意味 ユースケース記述からそれらに含まれる共通サブユースケース記述への依存(共通サブユースケース呼出し) 元となるユースケース記述とそれに依存してオプションや変更を補うための拡張部分の追加記述

しかし,それらになぜ継承を意味する汎化関係と同じ記号が使われるのか,なぜ矢印の向きが逆ではないのか,皆いぶかしく思っていた.今回,これらの関係はいずれも「依存」関係として整理され,ユースケース記述どうしを簡潔に管理する仕掛けとして再解釈された.図-13に示すように使用汎化関係は<<include>>依存関係,拡張汎化関係は<<extend>>依存関係と定義され,素直に理解できるようになった.<<include>>依存は一種の共通ルーチン呼び出しである.一方,<<extend>>依存では,元のユースケースのどの箇所が拡張可能かを「拡張点」として明示できる.拡張点では,元のユースケースにおいてあるステップ(拡張点)が特定の状態になったことをトリガとして拡張ユースケースに制御が遷移し実行(したがってオプショナルな実行である)後,元のユースケースに戻る.

図-13:ユースケース間の関係

さらに,これらとは別にユースケース間の汎化関係が新たに導入された.これによって,クラス間の汎化と同様に親ユースケースの振る舞いと意味を子ユースケースが継承する場合の表現ができる.


© 1999 OGIS-RI Co., Ltd.

Prev.

Index

Next