UML初心者への言葉
UMLという言葉を初めて聞いたときから、もう何年が経ったでしょうか。
私が生まれて初めて聞いたモデリング手法は、「OMT」というUMLが統合したモデリング技術の一つでした。これを入社したてのぺーぺーの頃に「車のエンジン部をクラス図で書きなさい」などといわれて、車の構造すら分からないのに四苦八苦しながら書きつづけ何度も訂正させられて、「二度と使うかばかやろー」と思ったのを覚えています。
このクラス図を実際の実務で使ってみて「お、便利じゃん」って思ったのは、つい先週ぐらいの事なんですが。それまでは、上司に言われるから書くだけで書き捨て状態でした。
さて、このUMLに関してですが実務を経験した中からUMLにはいくつものモデリング手法があるのですが、私はこの中のシーケンス図とクラス図しか実務では使ったことありませんでした。(クラス図は最初の入り口が、OMTというあまりに難しい手法過ぎたので未だに苦手です。)
クラス図と違ってシーケンス図は凄くアバウトに書けて、処理内容を図を見た全員が説明も要らないほど簡単に理解できる図としては最強だと思います。そういう理由から、私は外注との仕様確定時にシーケンス図を使うことを常としていました。下手すると、最初の打ち合わせ時にはシーケンス図しか持っていかないなんてことも。まあ、これは単なる手抜きなんでシーケンス図では表現できない契約上必要な仕様はきちんと書いていかないといけません(^^;。
もし、UMLアレルギーを既に発症してる方が居たとしたら、大抵のUML入門の入り口に位置しているクラス図を一度捨ててください。そして、自分でも「ココの処理内容は何かに書き残しておきたいな」と思った処理をシーケンス図に落とし込んでみてください。
凄く楽に書けて、凄く説得力のある図が書けます。ぜひお試しを。
と、偉そうに書いてみましたが、実はUMLはほぼ独学です。シーケンス図も、Visioを使いながら覚えたようなもんです。よって「正しいシーケンス図」を学んだことは一度もありません。
でも、UMLはコミュニケーションのためのツールに過ぎません。乱暴に言い換えると、日本語や英語などの言葉と同じようなもんです。一番大事なことは、伝えたいことが相手に伝わることであり、ツールの使い方が仕様どおりで正しいことってのは、その次ぐらいに大事なことになるでしょう。つまり、正しくても伝えたい相手に正確に伝わらないなら駄目な図であり、正しくなくても伝えたい相手に正確に伝わるなら、正しくない方が良いのです。
よって、私は相関を表現する線や矢印記号に込められる正しい仕様上の意味に、それほど期待はしていません。UMLの入り口に立った方は、最初は単なる実線のみの図を作成すると良いでしょう。そして、実線だけでは表現しきれないと感じてから、実線以外の線の意味を知れば良いと思います。但し、伝えたい相手が同じように成長してくれないと意味がないわけですが^^;。


Recent Comments