開発者はよく、どのモデリング・ツールを使うべきか悩みます。状況に応じて、使用すべきモデリング・ツールもさまざまですが、アジャイル・モデリング (AM)(私の記事「アジャイル・モデリング(AM)」を参照してください) では、できる限り簡単なツールを使用すべきであるとされています。なぜ簡単なツールを使用すべきなのでしょうか。それは、簡単なツールの方が、覚えやすく、使いやすく、また簡単に共有できるためです。複雑なツールにもそれに見合った価値がありますが、簡単なツールのメリットも過小評価すべきではありません。
以下のような簡単なモデリング・ツールであれば、おそらく皆さんもすでに使っているでしょう。
-
インデックス・カード
eXtreme Programming (XP) において、特にClass Responsibility Collaborator (CRC) モデリングにおいては、さまざまなモデリング・テクノロジーに対して標準的なインデックス・カードが使用できるとされています。
-
Post-itノート
Post-itも簡単なモデリング・ツールの1つです。大きな紙にPost-itを貼り付けることで、ユーザー・インターフェースの大雑把なプロトタイプを開発することができます。これは、「基本的(essential)ユーザー・インターフェース・モデリング」と呼ばれる技術の1つであり、Larry Constantine/Lucy LockwoodのSoftware For Use にその内容が紹介されています。私の著書「The Object Primer 2/e」にもその説明が示されています (参考文献を参照)。
-
紙とひも
ひもによって結ばれホワイトボードに置かれた紙片やインデックス・カードは、さまざまなモデルに使用することができます。たとえば、それぞれの紙片によってデータベース・テーブルを示し、ひもによって物理データモデル上のテーブル間の関係を示すことができ、または、その紙片は、ユーザー・インターフェース・フロー・ダイアグラム上のスクリーンを、ひもはスクリーン間のナビゲーション・フローの関係を示すこともできます。また、紙片によってユース・ケースとアクターを示し、ひもによってUMLユース・ケース・ダイアグラム上のユース・ケースとアクターの関係を示すこともできます。
-
ナプキン
初期のシステム・アーキテクチャーの多くは、ペーパー・ナプキンのみで開発されています。
-
ホワイトボード
CASEツール・ベンダーがどのように考えるかは分かりませんが、ホワイトボードはおそらく世界中の企業で最も広く使用されているモデリング・ツールです。
これは私がいつも指摘することですが、なぜモデリングを行うのかを考えてみることが重要です。私の考えでは、開発者は明確な目的を持って開発にあたるべきです。それなしに開発にあたるべきではありません。何かを理解するためにモデリングを行っているのなら、そのモデリングの価値は開発者が開発したモデルにあるのではなく、モデリング自体にあることになります。ですから、わざわざCASEツールを使って多くの労力をはらいモデルを優れたものに見せたり、また、さまざまな資料を添付する必要はありません。インデックス・カードやホワイトボードのような簡単なツールを使ってモデリングを速やかに終わらせ、ソフトウェアの開発に戻る方が賢明です。
簡単なツールによるユーザー・インターフェースのモデリングについては、このシリーズの次の記事でご紹介しましょう。
-
Agile Modeling (AM) Home Page
-
Agile Software Development Manifesto.
-
The Object Primer 2nd EditionAmbler, S.W著、New York: Cambridge University Press 2001年
-
Extreme Programming Explained: Embrace Change Beck, K著、Reading, MA: Addison Wesley Longman, Inc. 2000年
-
Software For Use: A Practical Guide to the Models and Methods of Usage-Centered Design Constantine, L.L、Lockwood, L. A. D著、New York: ACM Press 1999年
-
Ellen Gottesdiener's Home Page には、モデリングに関して役立つ情報が掲載されています。
Scott W. Amblerは、オブジェクト指向ソフトウェア処理の指導、アーキテクチャー・モデリング、およびEnterprise JavaBeans (EJB) 開発を専門とするコンサルタント会社である、Ronin International の社長です。彼は、オブジェクト指向開発に関する本を執筆あるいは共同執筆しています。最近刊行されたものとしては、この記事で要約された主題を詳しく論じた The Object Primer 2nd Edition などがあります。彼の連絡先はscott.ambler@ronin-intl.com およびwww.ambysoft.com にあるサイトです。