- PR -

UMLの現実的な利用度合い

1
投稿者投稿内容
aojiru
会議室デビュー日: 2004/09/17
投稿数: 4
投稿日時: 2004-09-17 15:19
はじめまして

いまUMLの調査兼勉強をしているのですが、2つほど疑問が湧きました。
もし、どなたかご存知でしたらアドバイスいただければ幸いです。

・ユースケース図→アクテビティ図→クラス図、シーケンス図
 と作成していくと、シーケンス図あたりはそれほど複雑でないアプリケーション
 でも、アクティビティごとに逐一作るので、すぐに大量になってしまうように思う
 のですが、現実の開発業務ではそれが当たり前なのでしょうか?
 それとも、似たようなシーケンスは書かないで、以下同文みたいに省略するので
 しょうか?シーケンス図も分析レベルと設計レベルでは粒度が異なりますが、
 特に後者についてはどう管理されているのかな、と思いました。

・シーケンス図はフローチャートとは異なるので、条件分岐とか繰り返しの表記が
 ないようですが、これが必要な場合はどう表現するのでしょうか?
 条件分岐の方は、活性区間を入れ子構造にして表現して回避している?場合も
 見かけましたが、、、
 あとエラー処理(例外処理)が全て入ると見難くなるので、設計レベルの
 シーケンス図の場合は省略して、他のドキュメント(APIドキュメントとか、
 フローチャート?)にすべてを明記する、とか工夫するものなのでしょうか?

UMLは標準化のための道具として十分意味があるとは思うのですが、
具体的に詰めるとローカルルールが必要になり、運用面で強制力というか
一貫性を持たせにくいような気もしています、、、
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-09-17 16:39
引用:

aojiruさんの書き込み (2004-09-17 15:19) より:
・ユースケース図→アクテビティ図→クラス図、シーケンス図
 と作成していくと、シーケンス図あたりはそれほど複雑でないアプリケーション
 でも、アクティビティごとに逐一作るので、すぐに大量になってしまうように思う
 のですが、現実の開発業務ではそれが当たり前なのでしょうか?


ユースケースの後に作成するアクティビティ図は何を記述したものでしょうか。
アクティビティ図は目的が特定されているものではないので、何を定義しているかを書いて
もらわないと答えようがありません。

引用:

 それとも、似たようなシーケンスは書かないで、以下同文みたいに省略するので
 しょうか?シーケンス図も分析レベルと設計レベルでは粒度が異なりますが、
 特に後者についてはどう管理されているのかな、と思いました。


「似たようなシーケンス」とは何か、によるでしょう。また、「誰が」「何のために」モデルを
作る/使うのか、にもよるでしょう。「以下同文」で済ませて誰も困らないのであれば、その
ほうがいいでしょうね。

引用:

・シーケンス図はフローチャートとは異なるので、条件分岐とか繰り返しの表記が
 ないようですが、これが必要な場合はどう表現するのでしょうか?


「繰り返し」「分岐」の記法はありますよ。ただしこれを使いすぎると見にくくなります。
そういう場合はメモで済ませることが多いです。

引用:

 あとエラー処理(例外処理)が全て入ると見難くなるので、設計レベルの
 シーケンス図の場合は省略して、他のドキュメント(APIドキュメントとか、
 フローチャート?)にすべてを明記する、とか工夫するものなのでしょうか?


簡単なものならメモで済ませますし、ややこしいものならシーケンス図を別に書きます。

引用:

UMLは標準化のための道具として十分意味があるとは思うのですが、
具体的に詰めるとローカルルールが必要になり、運用面で強制力というか
一貫性を持たせにくいような気もしています、、、


形式的な記法を使うと、解釈の揺れは少なくなりますが可読性は落ちるので、その辺のバランスを
考えることが重要だと思います。

[ メッセージ編集済み 編集者: uk 編集日時 2004-09-17 16:55 ]
七味唐辛子
ぬし
会議室デビュー日: 2001/12/25
投稿数: 660
投稿日時: 2004-09-17 16:45
引用:

aojiruさんの書き込み (2004-09-17 15:19) より:
はじめまして

・シーケンス図はフローチャートとは異なるので、条件分岐とか繰り返しの表記が
 ないようですが、これが必要な場合はどう表現するのでしょうか?



条件分岐とか繰り返しは  メッセージラベルに に記述できませんか 
線の上に表示されるやつです
aojiru
会議室デビュー日: 2004/09/17
投稿数: 4
投稿日時: 2004-09-17 17:23
引用:

ukさんの書き込み (2004-09-17 16:39) より:
ユースケースの後に作成するアクティビティ図は何を記述したものでしょうか。
アクティビティ図は目的が特定されているものではないので、何を定義しているかを書いて
もらわないと答えようがありません。




ukさん、いろいろなアドバイスありがとうございます。参考になります。

アクティビティ図ですが、ユースケースのアクターから見てアプリケーションの
各操作ごとに作成するということなので、例えば、XXX検索処理、XXX登録処理、
XXX更新処理などについて、各々の入力条件とか出力値依存の遷移などが存在すると
先ずそれだけでアクティビティ図がたくさんできると思います。

そこからシーケンス図を各アクティビティごとに作るので、特にクラス名や
メソッド名などに落とした設計レベルのシーケンス図になると、量も多く、内容的に
似たようなシーケンスも出てくるのでは、と思いました。
aojiru
会議室デビュー日: 2004/09/17
投稿数: 4
投稿日時: 2004-09-17 17:32
引用:

七味唐辛子さんの書き込み (2004-09-17 16:45) より:


条件分岐とか繰り返しは  メッセージラベルに に記述できませんか 
線の上に表示されるやつです



七味唐辛子さん、ありがとうございます。
まだUMLツールでは試せてないので、、、お恥ずかしい限りです。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-09-17 17:44
引用:

aojiruさんの書き込み (2004-09-17 17:23) より:
アクティビティ図ですが、ユースケースのアクターから見てアプリケーションの
各操作ごとに作成するということなので、例えば、XXX検索処理、XXX登録処理、
XXX更新処理などについて、各々の入力条件とか出力値依存の遷移などが存在すると
先ずそれだけでアクティビティ図がたくさんできると思います。


「ということなので、」というのはどこに書いてあることでしょうか。「アクティビティ」の
単位は何になるのでしょうか?「各操作ごと」に作るアクティビティ図というのが想像つかない
もので。

引用:

そこからシーケンス図を各アクティビティごとに作るので、特にクラス名や
メソッド名などに落とした設計レベルのシーケンス図になると、量も多く、内容的に
似たようなシーケンスも出てくるのでは、と思いました。


それは大変ですね。
私の場合、基本的にシーケンス図はユースケース(場合によってはイベントフロー)ごとに
作ります。よっぽど複雑なアプリケーションでなければ、粒度が小さすぎませんか?
aojiru
会議室デビュー日: 2004/09/17
投稿数: 4
投稿日時: 2004-09-17 18:20
引用:

ukさんの書き込み (2004-09-17 17:44) より:
[「ということなので、」というのはどこに書いてあることでしょうか。「アクティビティ」の単位は何になるのでしょうか?「各操作ごと」に作るアクティビティ図というのが想像つかないもので。

私の場合、基本的にシーケンス図はユースケース(場合によってはイベントフロー)ごとに作ります。よっぽど複雑なアプリケーションでなければ、粒度が小さすぎませんか?




おっしゃる通り私の"アクティビティ"の捉え方=アクターの各操作ごと、
というのが細かすぎ、ユースケースレベルで適度なカテゴライズがされていれば、
それからシーケンス図を起こせるようにも思います。
私が見かけたサンプルの中に前記のような例があったので、
見方が偏ってしまいました。
ありがとうございます。

1

スキルアップ/キャリアアップ(JOB@IT)