トップページ⇒tech
966コメント334KB

UML皆でお勉強しよ♪

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001ニュージーランド漁夫NGNG
  Λ_Λ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< お勉強しよ♪
 (    )  \____________
 | | |
 (__)_)
0883デフォルトの名無しさんNGNG
わかった!森氏は在日外国人なんだな?
だから破滅的に日本語ができないんだな?
そして周囲から迫害され、ストレスで病気になってしまったんだな?

悪いことはいわん、早く精神科へ行くことを勧めるよ。

0884森 秀樹NGNG
いまだにわからないのですが。

ここの主題は次のうちどちらでしょうか。

1.人間がマウスなどで位置情報を入力して、それをコンピュータがリンク構造に
直して編集するタイプの、UML を書く為のツールのか。

それとも、オブジェクト設定して、プロセス1つづつを、明確な言語などで
記述し、コンピューターがこれをリンク構造に変換し、UML の絵を作って
くれるツールなのか。これは私の解釈では、UML の絵を書くツール。

どちらなんでしょう。

>>883 日本語が出来なくてストレスで病気になったのならば、
ストレスを直すより、日本語が出来るようになるか、ストレスを受けない
ようにするのが妥当ではないでしょうか。
0885森 秀樹NGNG
ああ、つっこみどころ満載だな。

1と書いて、2がないし。

ストレスを直す てあるけど、ストレスで受けた病気 だし。

UML を書く為のツールのか -> ツールなのか。

日本語おかしいかもしれませんが、伝わらない物でしょうか。

どうも、伝わらないようなので、あきらめます。
0886デフォルトの名無しさんNGNG
UMLって結構いけるじゃん
というスレ
0887デフォルトの名無しさんNGNG
>>884
変な言語からUMLの図を作るツールなんて意味ないじゃん。
それだったらプログラミングして、それをUMLツールでリバース
エンジニアリングしたほうが10000000倍マシ。
0888オブジェクト思考NGNG
オブジェクト指向をオブジェクト思考と最近まで思ってた
0889デフォルトの名無しさんNGNG
オブジェクトしこると思ってた
0890デフォルトの名無しさんNGNG
>>884
UMLが言語なんですが
0891デフォルトの名無しさんNGNG
>890
UML = Unified Modeling Language

一度入門書から勉強し直せ。
素人なら必死扱いて勉強すべし。すでに常識。
0892森 秀樹NGNG
>>887
静的な図はソースコードから取り出せるので、リバース
エンジニアリングできる程度のコードを書いてやっています。
UMLツールの使い勝手が悪いもので。

でも、動的なUML図を考えると、テキストで表現する記述
言語があっても良いような気がします。
0893デフォルトの名無しさんNGNG
>>890
そんなんわかってるわ

>>884が
> それとも、オブジェクト設定して、プロセス1つづつを、明確な言語などで
> 記述し、・・・

って書いてたから
「UMLが言語なんだが」って書いたんだろ
0894デフォルトの名無しさんNGNG
間違えた
>>890 → >>891
0895デフォルトの名無しさんNGNG
891は若気の至りだったね。
誰でも知ってることを振り回して一人悦に入っております。
0896デフォルトの名無しさんNGNG
>>892
> 静的な図はソースコードから取り出せるので、
分析と設計で同一の図を使うのか……。使えないケースも多々あろうに。
0897森 秀樹NGNG
>>893 やっと意味がわかりました。
確かに、私の書き方では、次のようにとれますね。
1.UML は言語ではない。
2.UML は明確ではない。
3.UML はプロセスや、オブジェクトを認識しない。
すみません。書き直します。
この1,2に関しては、定義にしたがえば両方とも間違いなのですが、
概念を伝える方法論が言語なのか、とか、概念を正確に伝えるとは
どういう事なのか。という部分でひっかかったりします。
でも、それは本筋じゃないので、文章を直します。

UMLを書く時に、UML ツールと直接対話せずに、一度テキストで
表現できる言語で書いて、それを UML ツールに読み込ませる事で
UML をコンピュータが書いてくれるツール。これが私の考える
コンピューターがUMLを書くツールです。クラス図などはリバース
エンジリアニングをかける事で出来ます。

で、結局、どっちのツールの事なんだろう。
0898森 秀樹NGNG
>>892
そう、多々あるんで、ソースコードの方をUMLで表記する部分だけに
するか、UMLにした後で概念の説明に不要な物を外します。
0899デフォルトの名無しさんNGNG
>>897
> クラス図などはリバースエンジリアニングをかける事で出来ます。
クラス図にも分析段階で使う概念的なもの、設計・実装段階で使うコードと一対一に
対応したもの、二種類ある。それとクラス図はかなりの程度まで自動生成可能だと
はいえ、クラス間の関係(role など)は人間が決めるもので、コードから生成する
のは無理。

またシーケンス図なんかは、全ての場合について生成したら数が多くて破綻する
わけで、主要部分がなんなのかを把握した上で選択的に作る必要がある。これも
自動生成は割と厳しいと言われてる。

頭で考えすぎる前に、実際に OO での分析・設計・実装をやってみ。わずかな
経験でも積んだ上で見直すと「そうなるべくしてそうなってる」ものと「改良の余地
があるもの」が見えてくるから。
0900デフォルトの名無しさんNGNG
faqかもしれんけど、シーケンス図ってどこまで詳細に書いていいんだか
わからない。
特にガンガン分岐するような場合、それをどこまでシーケンス図に書くのか。
分析レベルならまだごまかすことは可能だけど、設計レベル以上になると
シーケンス図は限界低すぎるんじゃないかと思う。
みんなどうしてる?
0901デフォルトの名無しさんNGNG
>>900
分岐をオブジェクトに閉じ込めて、仮想関数にしてしまう。これで分岐の先は
ブラックボックスにできる。

(毎回使えるとは限らんが)
0902デフォルトの名無しさんNGNG
いや、実装ではそれでいいけど、設計段階では
分岐すると言うことをちゃんと書くのがUMLでしょう?
それを書かなかったら分岐するということが
コードにしか残らない。これは却ってまずいのでは?
0903森 秀樹NGNG
>>899
UMLそのものの理解や、使いこなしに関して、最近興味を持って
はじめたばかりです。

最近出た、「ワークブック形式で学ぶUMLオブジェクトモデリング」
という本で、分析段階の方法が記載されていて、これを読んでいます。

UMLの入力をテキスト形式で記述する言語を作ってやりたい。
というのは、単に同じ情報を入れるのならば、使い慣れたエディター
で用紙の大きさやらに制限かけられることも無く書くだけ書いて、
UMLツールで、テキスト記述言語では記載できなかった情報を追加し
たり、画面に収まらないような個所や、冗長な部分、説明に不要な
メソッド、オブジェクト、インスタンス、呼び出しなどを
外した方が楽じゃないかな。と感じたからです。
0904デフォルトの名無しさんNGNG
>>902
クラス図でもシーケンス図でもそうだけど、別にコードの詳細を全て図に起こす
必要はない。っつーか、そんなことをしたら図が溢れかえって、逆に手に負えん
よ。
0905デフォルトの名無しさんNGNG
>>903
概要を知ったら、自作に進む前に、まずは現状を知れ。
0906デフォルトの名無しさんNGNG
>>904
いや、だからね。シーケンス図はその限界が低すぎるんじゃないかと
思うわけ。そんなことないかな。
0907デフォルトの名無しさんNGNG
>>906
そんなことはあるけど、かといって他に better な方法もないような気がする。
0908デフォルトの名無しさんNGNG
じゃーシーケンス図はテキトーなところで切り上げるしかない、
つー結論ですか。
なんだかなあー
0909厨房2号 ◆OjTjK0LY NGNG
>>908
適当なところで切り上げると言うか、逆にシーケンスが大切なとこだけ書く
って言うのも手。
0910デフォルトの名無しさんNGNG
>>908
俺は代表的なパターンについて、いくつかシーケンス図を書いて済ませてる。
正常処理と例外発生時のシーケンス、とかね。
0911デフォルトの名無しさんNGNG
>>909-910
なるほど。そうですね。
シーケンス図を書いた方がいいところを書くか。
でもなーシーケンス図書きたいところって、けっこうゴチャゴチャした
ところなんだよね。で、ゴチャゴチャしすぎでシーケンス図書けない、
というジレンマなんですよ。
0912デフォルトの名無しさんNGNG
コラボレーション図で代用しる
0913デフォルトの名無しさんNGNG
コレボレーション図って実用性あるか?
0914森 秀樹NGNG
>910
プロパティセット、プロパティゲットなどの呼び出しは書かない。
まあ、適当な所で切り上げるパターン

もう1つは、ブロックを分ける方法。これが使えるのは、全体では一塊の
セッションに見える作業があったら、アクターとバウンダリといった
2つだけのシーケンス図を作成する。

次に、別のシーケンス図に、詳細なシーケンス図を記載する。

あるいは、全体の流れがわかるような形で省略したシーケンス図
を作成した後で、詳細なシーケンス図を作成して、参照させる。

電子回路では、ブロック図の中に、ブロック図を入れて、そのブロック図を
別紙に書くという形で概念から詳細設計にViewを変えて見れるように
します。そういう風に考えると、いいような気がします。

UML の効果的な使い方は、前にも書きましたが、
「ワークブック形式で学ぶUMLオブジェクトモデリング」 ISBN4-7973-2019-2
が良いと思います。これは、素晴らしい本だと思います。
0915デフォルトの名無しさんNGNG
森秀樹はなぜトリップを使わないんだ?なりすましか?
0916西城秀樹NGNG
こんばんは、森進一です。
0917ニュージーランド漁夫NGNG
  Λ_Λ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< >>950さん、次スレたててください。このAA使ってね。
 (    )  \____________
 | | |
 (__)_)

コノスレモコンナニノビタナァ
0918オブジェクト思考NGNG
月曜にUMLのブロンズ受けて2勝4敗でゲットです。\(^。^ )ノ
0919デフォルトの名無しさんNGNG
もうすぐシルバー受けんとな
また落ちるのか・・・
0920オブジェクト思考NGNG
UMLは何度合格しても最初合格の認定IDだけが有効なんだって。
ということは?
100回合格したら、99回分の認証は無駄になるのかな?(?_? )ゞ
0921厨房2号 ◆OjTjK0LY NGNG
>>911
設計を見直す機会になったりしないの?
想定してるシステムがどんなものか分からないけど、
スパゲティな設計だとスパゲティなシーケンスになるし。
それを止めるが為のシーケンス図だったり…
0922デフォルトの名無しさんNGNG
>>921
設計を見直す、っていうか、設計するときに使うんじゃない?
それは「設計図を書くと設計を見直すことができる」つーてるのに
同義では?
0923デフォルトの名無しさんNGNG
リファクタリングを助ける道具としてのUMLという使い方もあると思われ
0924デフォルトの名無しさんNGNG
ところで、UMLってもう直ぐ末端まで使われるのだろうね。
今は設計者のうち分かる人同士で頻繁に使うようになってる。
すくなくても某大手中堅間のごく一部では。
コーダーに向かって使い始めるのも時間の問題かな。
上流は既につかっているけど、本当は客にも使わせたい。

ゼロからのプロジェクトで使ったことあるんだけど、
金(人件費)が2倍かかりました。
使い始めで慣れてないというのもありましたが。

そんなところです。
0925デフォルトの名無しさんNGNG
どうせwebだろ?
0926デフォルトの名無しさんNGNG
>>924
> 金(人件費)が2倍かかりました。
何と比較して2倍でした?
0927デフォルトの名無しさんNGNG
UMLとXPって関係はある野?
0928キムチ食いてぇーNGNG
UMLを日本語訳したら「統一模式言語」
XPを日本語訳したら「極限状態プログラミング」
0929デフォルトの名無しさんNGNG
> XPを日本語訳したら「極限状態プログラミング」
禿しくやりたくない・・・
0930デフォルトの名無しさんNGNG
なんかトイレに行く余裕も無さそうで嫌。
0931デフォルトの名無しさんNGNG
>>930
トイレに行くときはペアで
0932デフォルトの名無しさんNGNG
>>931
それは、一人で行かせると戻ってこない恐れがあるからですか?
0933デフォルトの名無しさんNGNG
なんか面白そうなんで、
「極限状態プログラミング」
でスレ立てて良いですか?
0934デフォルトの名無しさんNGNG
>>933
それほどおもしろくねーぞ。
ま、もし立てるとしたらマ板でな。
0935デフォルトの名無しさんNGNG
>>928
「極端プログラミング」でわ・・
0936デフォルトの名無しさんNGNG
二人で一つの便器を使う。
0937デフォルトの名無しさんNGNG
一人でいくと首つるからだろ
0938デフォルトの名無しさんNGNG
2人で交互にウンコして色や臭いをお互い確認する
0939サゲだろNGNG
お互いに肉便器になってみる
0940デフォルトの名無しさんNGNG
>>935
「達人プログラミング」でどうよ
0941オブジェクト思考NGNG
シーケンス図て入力値とかはオブジェクトとして扱うもの?
たとえば、「パスワードとIDを入力する」としたときはこれって
「パスワード:○○クラス」とかってオブジェクト化する?
わかんねぇっす。
0942デフォルトの名無しさんNGNG
>>941
俺も勉強中だから正しいかどうかは分からんけど・・・。

入力値とかってシーケンス図で書かれるものかな・・・?

       ID,パスワードを入力する
| ユーザ |------------------------->| ATMとか |

てな感じにメッセージで渡すんでは・・・。
誰か訂正あったら宜しく
0943942NGNG
>>942訂正

誤>入力値とかってシーケンス図で書かれるものかな・・・?
正>入力値とかってオブジェクトで書かれるものかな・・・?
0944オブジェクト思考NGNG
なんかね、UMLのサイトのチュートリアルで
値そのものをオブジェクトにしてるようなとこが
あったような気がしたので、どうなんだろう?と
思ったんだけど、オブジェクトの定義に合わんので
できんよね?
0945デフォルトの名無しさんNGNG
普通はわざわざシーケンス図にメソッドの引数の型まで記述しない。
っていうか、引数も記述しない場合も多い。

値そのものをオブジェクトってのがよく分からないけど、引数で渡された
オブジェクトに対してメッセージを投げるのなら、シーケンス図の中に
そのオブジェクトが記述されていてもいいと思う。でもID、パスワード
なんてものだったらまずありえないね。
0946デフォルトの名無しさんNGNG
>>944
値をオブジェクトにするのが NG かというと、ケースバイケースだと思うけどね。
たとえば「金(かね)」は普通は整数型の値にするところだが、作っているのが
資産管理アプリケーション

- 流動性(現金、即日引き落とせる預金、定期預金)
- 通貨(円、ドル、etc)

あたりを属性として持ったオブジェクトとして設計するのもアリだろう。
0947デフォルトの名無しさんNGNG
すいませんVISIOでリバースエンジアリングできるつーので.netβ2についてたVisio
引っ張り出してきたUML初体験な厨なんですが

クラスの取り込み見たいのは出来たんですけど、親子関係を繋ぐ矢印含めて作図は
自動でやってくれないんですか?(紙上にレイアウトするの自動化できるとは思えないけど)

つか、取り込むだけなら、エディターでヘッダーでも読めばいいじゃん というか
VisualStudio上で解析した方が便利な気がするんですが…

手動でレイアウト決めてプリントアウトして使えや って程度のツールなんでしょうか?
ちょっと大きなクラスになると紙からはみ出すし、どう役に立てるのやら???



なんか参考文献ってありませんか?
VB magazineのバックナンバーにちろっと載ってるみたいだけど VBなので未見です
Visio解説本は、オフィスレイアウトとかそっち系の使い方しか触れてないし
MSDNのHPの「VSIOでUMLコーナー」連載途中(しかも今の所役立たず)だし
0948デフォルトの名無しさんNGNG
とりあえず、VBマガジソ通販しました
0949デフォルトの名無しさんNGNG
>>931
つれしょん
つれプログラミング
0950デフォルトの名無しさんNGNG
クラス図だけど、俺はまずER図を作って、それを元に
クラス図を起こすのが手っ取り早いんじゃないかと思っているのだが、
その辺はどう?

クラス図の継承とER図のリレーショナル型DBモデルってのは、
結局正規化という点ですごく共通する部分がある気がするんで。
だめすか?
0951デフォルトの名無しさんNGNG
↑追記
とりあえずクラス図はプロパティに注目するってことで。
0952デフォルトの名無しさんNGNG
意味がわからないんですが・・・
0953ニュージーランド漁夫NGNG
  Λ_Λ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ・∀・)< >>950さん、予告どおり次スレたててください。このAA使ってね。
 (    )  \____________
 | | |
 (__)_)

トコロデERDデカケルナラクラスズデモカケルヨネ
0954デフォルトの名無しさんNGNG
>>950
クラス図とER図両方作るにしても、普通は順番が逆。
手っ取り早いと感じるのは単にER図に慣れているからでは?
0955厨房2号 ◆OjTjK0LY NGNG
>>954
うーん。あちきの感覚は950に近い。
業務アプリ屋なもんで、新規システムと言っても、まっ大枠こうだろうってのが頭に入ってる。
そこでまずER図起こして、プログラムの為にクラス図書く感じかな。

分析にはOOを使ってない。って事だけど、こーいうのもありかなぁって事で。
ユーケースは使ってるけど、説明資料としてだし。
0956デフォルトの名無しさんNGNG
>意味がわからないんですが・・・
スマソ・・・
スーパークラスの抽出と第二正規形(部分従属列の分離)です。

>クラス図とER図両方作るにしても、普通は順番が逆。
>手っ取り早いと感じるのは単にER図に慣れているからでは?
確かにそれはある。が、ERはRDBの考え方からして割と機械的に
できていくところがある。それに対し、クラス図はちょっとしたセンス
がものをいう。で、基本はERから出発し、より実装に近いかたちで
クラス図を作るってことなんですが。

あと、それほど有用であると思えない理由から、
あまりユースケース図やシナリオも書かないので。
(最初はお絵かきで業務の流れをまとめてお客に示す)
0957デフォルトの名無しさんNGNG
>>956
君が>>950なら次スレ立て係りなんだが、理解できませんか?
とっとと、次スレ立てろ。話はそれからだ。
0958デフォルトの名無しさんNGNG
>>957
おぅ、そうすか。
では・・・
0959デフォルトの名無しさんNGNG
>>958
よろしこー
0960デフォルトの名無しさんNGNG
>このホストでは、しばらくスレッドが立てられません。
>またの機会にどうぞ。。。

だめぽ。。。
0961デフォルトの名無しさんNGNG
>>960
じゃあ漏れがやってみる。
0962デフォルトの名無しさんNGNG
だめだった。

0963デフォルトの名無しさんNGNG
せっかくテンプレ作ったのにダメぽ…
0964sageNGNG
追記
>ERはRDBの考え方からして割と機械的にできていくところがある。
むろん、誰が作っても同じものができるということを言っているのではなく、
クラス図に比べると私情を挟む余地が少ないということを言っている。
0965名無しさん@EmacsNGNG
サーブレットのシステムをUMLで設計したいのですが?
良いサイトが書籍ありませんか?
0966デフォルトの名無しさんNGNG
>>965
http://pc3.2ch.net/test/read.cgi/tech/1030173783/l50
レス数が950を超えています。1000を超えると書き込みができなくなります。