オブジェクト指向開発で重要なこと
- 責任の割り当て (responsibility assignment)
オブジェクト指向分析 (OOA)
- プログラミングによって解決したい問題の概念を説明すること
オブジェクト指向設計 (OOD)
- OOAで見つけた概念をソフトウェア上のオブジェクトとして定義すること
オブジェクト指向開発の手順
ユースケースの定義
ユーザーがどのようにアプリケーションを使うかを自然言語で書き出す.
ドメインモデルの定義
概念やモデルの可視化が目的であるため,conceptual object model と呼ばれる.
ドメイン内で注目するべきもの(以下)を明らかにする.
- 概念 (concept)
- 属性 (attribute)
- 関連 (association)
責任割り当てとインタラクションダイアグラムを書く
ソフトウェア上のオブジェクトについて責任と連携を明らかにする.
オブジェクト間のメッセージのやり取りをシーケンスダイアグラムで表す.
この段階から,現実世界のドメインよりもソフトウェアのモデルに注目する.
クラス図を書く
シーケンスダイアグラムからフィールド,メソッドを取り出してクラス図を書く.
クラス図は,プログラム上でのクラスに対応する.