システム開発の現場でUMLが必要であるという事は色んな人が言っていますし、色んな書籍で言われています。最近ではシステム開発においてUMLが浸透してきており、多くの利用実績があります。しかし、実際はプログラミング前の設計についてのみ適用していることがほとんどで、それ以外の場面で利用されている事は稀です。システム開発のライフサイクルには、ビジネスの分析からソフトウェアシステムの分析、設計、実装まで様々なワークフローがありますがそれら全てに一貫してUMLを適用している例は皆無です(それが正解というわけではありませんが)。なぜなら、UMLを表記法としての利点でのみで理解、利用しているために、それだけではプロジェクトが成功するわけがないと考えているからです。ある意味これは正しいことですが、もう一歩進んで考えると、UMLの本当の利点とその効果を引き出すための「システム開発への正しい適用方法」を知っているかいないかがプロジェクトで効果を出せるか出せないかにかかっています。大抵はUMLの正しい理解が無いままUMLを妄信しすぎ、その落とし穴にはまっていくのです。
システム開発で効果的にUMLを利用するには、正しいUMLの知識を持っていなければいけません。正しいUMLの知識とは、
- UMLの利点
- UMLの不足点
- UMLでできる事、できない事
- 正しい導入方法(プロジェクトや組織として)
- 導入時の注意点
といった内容です。これらをしっかり押さえて、正しい場所で正しく利用することが大事です。最近はそういった内容に関する案件が多くなってきています。
UMLに対して、What(なに)からHow(どのように)へ関心が移行してきているようですね。