本書では、より現場に適した手法として、UMLをカスタマイズした手法を解説している。これはUMLを拡張するとともに、対象の分析に開発時間の多くを消費してしまうような愚行をできるだけ避けるように考えられている。
まず、問題領域に存在する主な抽象物を特定するためのドメインモデリングを解説。つづいて新しいオブジェクトを識別し、ユースケースの流れを記述するユースケースモデリング、さらに、どのオブジェクトがどのユースケースに働きかけるか、ユーザアクションの結果としてシステムがどの機能を実行するかを理解するためのロバスト図、そしてどのクラスがどのメソッドの責任を持つかを判断するシーケンス図、最後に、属性とメソッドを持ったクラス図からコードを得るまでを解説している。
本書では有価証券取引のシステムを例題にとり、各章での解説はこのシステムをもとに行っている。初心者向けのUML解説書にありがちな汎用性の低いケースの解説よりも実用的で柔軟な解説に仕上がっており、非常に使いやすい。
UML自体は抽象的な概念であるため、実装まで生かすことができずいきなりコーディングしてしまうなどということもあるだろう。そういう人は本書を利用してみてほしい。実装まで落とし込む手法がきっとつかめるだろう。(斎藤牧人)
登録情報
|
著者たちが考案したICONIX開発モデルは、UMLそのものを創始した"スリーアミーゴ"たちの統一開発プロセスとは戦略は同じものの、戦術において一線を画するらしい。
ICONIXモデルでは要求を満たすシステムをつくるという目的のために、UMLという設計記法を開発プロセスのなかでシンプルで実践的に組合わせることで、段階的にユースケースの詳細化とオブジェクトモデル(クラス図)の構築を反復して行うのが特徴となっている。このことでモデリングの初心者でも何とかオブジェクト指向設計に取り組んで行ける手がかりを提供している。
ICONIXプロセスを利用することで、元々はシステムの要求を文章で記述したに過ぎないユースケースの内容を完全に満たす(トレーサブルな)オブジェクトモデルを作り上げることができるという著者の主張は、簡潔で十分な論拠を持っている。例題にあげた証券注文システムの構築例も程度の差はあるだろうが適度に理解を補助してくれている。
また開発のごく初期からGUIによるプロトタイプを用いて顧客とシステムの内容について確認したり新たな要求を汲み出すことと、それによりユースケースの構築を推進して行くことの有用性とその論拠を非常にはっきりと示してくれているのも重要である。
いくつかの本ではその点についてあいまいに濁してしまっており、そのため実際にユースケースを作成するになって、GUIを全く考慮することができずに苦しみ、誤って機能分析に走ったり、あるいはその逆でGUIにのめり込みすぎ詳細の記述で行き苦しくなったりするケースを増やしていると思われるからだ。
およそ200ページ程度の書物でありながら、全体を通して無駄なく、それでいて熟読するほどに示唆に富んだ助言が見付かるこの本はオブジェクトモデリングをこれから始めようとする人や、始めてみたがユースケースを扱い出した途端あっという間に袋小路に陥ってしまった人にとって最適である。しかしながらここで語られている開発プロセスとその中で使われているUMLを用いた開発技法の意味をよく理解するためには、腰を落ち着けて何度も読む必要があるかもしれない。しかしそれだけの価値はある。
というわけで、完璧な書物というものは存在しないというのは知っているが、個人的に、この本を首尾一貫でシンプル且つ実践的な一級品の設計開発ガイドの一つとして推薦することに何のためらいもない。
分析、設計の各工程で、何をどのようにしていくか、何をINPUTとして、何をOUTPOUTにするか、が、わかりやすく説明してあります。RUPと比較するし、シンプルでわかりやすい(使いやすい?)印象です。オブジェクトモデルを、ユースケースから導くため、このような題名の本になっているのでしょうか。
各工程でのポイント、やってはいけないこと、等もまとまっていてGOODです。
ロバストネス分析という、他の本では、あまり見たことのない手法(Jacobosonが提唱したものらしい)の解説も載っています。
読むための前提知識は、UMLを(概要レベルでも)知っているぐらいでしょうか。
|
|
|