ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

UMLのアクティビティ図での限界と、アクティビティにプロパティを入れた理由

2006-09-15 15:56:09 | Weblog

 きのうの、UMLのアクティビティ図の文章化の必要性と方法に、従来、プロパティといって引数が入っていないのに入れた理由について、ちょっとかいておきます。




 このシリーズの前回の話で、こんなことが書いてありました。

●主語がおかしいものはないか?
 2.2.2.1.2 製造部は資材を入庫する
 ほんとう??倉庫係じゃなくって??などという話。


 前回は、倉庫係が、製造部の中にあるのでOKとしましたが、これ、倉庫係は、倉庫部っていうところにあったとします(ちょっと変だけど、会社によっては、そんなのもあるかもしんない)

そうすると、そのあたりは、
      2.2.2.1 資材がない場合
        2.2.2.1.1 製造部は資材を発注する
        2.2.2.1.2 倉庫部は資材を入庫する
      2.2.2.2 資材がある場合

で、これで、あと、倉庫部というレーンをつくって、そこに、資材入庫というアクティビティを書けばOKです。図も問題ありません。。。

 でも、この業務、無理です。

 倉庫部が入庫するとき、検品するはずです。ところが、発注データ(発注票)は、製造部から倉庫部にわたってないので、検品(=発注データと納品されたものが一緒かどうかの確認は)できません。




 どうして、こんなことが起こっちゃったかといえば、わかりきった作業なので、発注データ送付という業務は、無意識に抜けたんだと思います。
 でも、もし、この発注データを送るというアクティビティが抜けてしまえば、その機能は後から追加しないといけないということになります。これを指摘するには、アクティビティが動作する際、必要な情報がすべてそろっているか、確認することです。


 今のことを言い換えると、あるアクティビティを行うのに、必要な情報は十分足りているかどうかのチェックをしていないと、アクティビティを抜いてしまい、機能追加という危険性があります。

 ところが、情報を記入しないアクティビティ図では、このチェックはできません。

 さらに、上の偉い人は、情報が足りているかどうかすら、分からないことがあります。
 ウィリアムのいたずらに仕事を依頼する人は、よくこんなことをいいます。

 「足りてないもの、ほかに必要な情報があったら、すぐ言ってください」

 この言葉を裏返しにすると、「わたしは、仕事を頼んでいるけど、仕事に、どんなことが必要になるか分かっていません」ということになります。結構、このケースが多いです。




 ということは、アクティビティ図に加えて、(入力)情報が足りているかどうかのチェックが必要です。しかし、偉い人が、このアクティビティについて説明する場合、自分も、情報について分かってないので、その部分は書けません(作業手順だけなら言えるけど)。

 形式仕様言語の場合、メソッドの引数、つまり、入力情報が足りているかどうかのチェックをしているため、このような情報が足りないということは、エラーとなって分かります。
 でも、逆に言うと、メソッドの引数がわからないと、つまり、ちゃんと定義できないと、書けません。そしたら、いつまでたってもたたき台ができません。

 そこで、前のケースでは、普通のアクティビティ図のように、アクティビティだけを描くのもOK,そこが完結すれば、青くなります。そしてさらに、情報についてチェックするため、プロパティをつけて、そのプロパティで、入力引数と出力について、定義し、そのプロパティも問題なければ、白色になるという2段階の方法にしています。


この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 経理システム開発のための財... | トップ | Javaの入出力:HTTPでP... »
最新の画像もっと見る

Weblog」カテゴリの最新記事