マキノ式@Blogger

マキノ式@ブログ! Java関連をベースとしてWEBとかプログラミングとか

4.26.2005

ユースケースが難解だな・・・


上記の場合、「退勤記録をする」と「出勤記録をする」は「勤怠を入力する」を汎化(継承)したバリエーションであり、「理由を入力する」は「勤怠を入力する」の遅刻、早退というポイントを拡張している。
そして「認証する」は「勤怠を入力する」の一部となる。

重要なのはどのユースケースもアクターである「社員」と対話があること。・・・のはず。
特にJavaをやってる人間からすると非常に紛らわしいのが、extendは継承じゃないと言う部分である。
自分なりに関係を整理してみると
  • 汎化
    • generalization
    • 継承関係
    • スーパークラスのバリエーションを表す場合
  • 拡張
    • extend
    • ステレオタイプで表現
    • 付加による拡張
    • 対象となるユースケースの拡張ポイントを起点に付加されるユースケースを表す場合
  • 包容
    • include
    • ステレオタイプで表現
    • インクルード対象のユースケースとまったく同じ手順を自分の一部として持っている場合
    • 包容対象のユースケースは独立してるってこと?かな
で、結論なんだけど、インクルード以外はうまく使えないなあ。

追記
参考サイト
http://www.ogis-swe.jp/process/am-res/am/artifacts/useCaseDiagram.html
http://www.bcm.co.jp/sie/2002/uml/uml2.htm