クラスを発見する簡単で効果的な方法は、次に示す技術を使用することである名詞/動詞分析と文法チェックこれは、高レベルの要件文書、マーケティング資料、および問題領域(つまり、新システムが解決すべき問題によって定義される領域)に関する情報を明らかにする他の資料を徹底的に検討することを含む。
次を参照Use Case駆動型オブジェクトモデリングにおけるUMLの利用テキスト要件群に対して文法チェックを行う方法の例を示す。
多くの人が、要件をユーザーと検討するツールとして迅速プロトタイピングを使用する。インターネット書店用のプロトタイプHTMLページを使って、全体の書店をモデル化する際に必要なクラスの小さなサブセットを特定する方法を見てみよう。
特定の書籍に関する詳細情報を表示する単一のページから始める。
このページを頭の中で素早く思い出すと、以下のクラスが適切であることが明らかになる。
- もちろん、次のものがあるBook、少なくとも1つのAuthor.
- 次のものがあるPublisher.
- 書籍には1つまたは複数のレビューがある可能性がある。これらのレビューは2つのカテゴリに分類される:EditorialReviews およびCustomerReviews。(第2章でその違いについて学ぶ。)各レビューには関連するReviewer.
ページを閲覧したユーザーが書籍を購入すると仮定して前進すると、他の潜在的なクラスが浮かび上がる。
- 閲覧者はCustomerとなり、関連するAccount.
- 本は、あるものに組み込まれます注文.
- 注文には、次のものが必要です請求情報 および 配送情報そうすることで、書店は支払いを回収し、本を発送できるようになります。
さらに詳しい分析により、以下の2つのクラスが必要であることが明らかになりました:
- 前述したように、本は複数の著者を持つことができますが、著者は複数の本を執筆できます。多くの対多くの関係を避けるために、次のクラスが必要です書籍と著者 クラス。
書店(Book Store)はさまざまな配送会社(Shipper Companies)を利用しているため、次のクラスが必要です配送業者 クラスが必要です。
したがって、得られた名詞(名詞)および名詞句(名詞句)の集合には、以下のものが含まれます:
- アカウント
- 著者
- 請求情報
- 本
- 書籍と著者
- 顧客
- 顧客レビュー
- 編集レビュー
- 注文
- 出版者
- レビュー
- レビュアー
- 配送業者
- 配送情報
注意:
この例は、基本的な原則を示している:要件から可能な限り多くの名詞および名詞句を特定し、その後分析・精査・拡張を行うことである。どのように行うにせよ、クラスを特定することは、モデリングの旅を始めるための優れた方法である。