オブジェクト指向開発手法(Object Oriented Methodology)
  ・オブジェクト指向分析から生成された分析モデルを基に、実現モデルを生成
  ・オブジェクト指向言語を用いて実装する。
  ・特徴
分析/設計の中心的ドキュメントとして、UMLを利用
分析と設計を明確なフェーズ分けし、それぞれのフェーズで成果物の抽象度を変える。
開発プロセスはインクリメンタル型(機能追加型)を推奨
開発言語はオブジェクト指向言語

OOM の流れ
  ・分析/設計/実装を繰り返して完成に近づける(イテレーティブ開発)
繰り返しの単位:イテレーション(プロジェクトの全体計画にイテレーション数を決める。)

OOM の利点
  ・繰り返しによる顧客要求への対応
要求リスクの軽減
リスクの早期発見
  ・コミュニケーション齟齬の排除
  ・ユースケース(使い方)駆動による明確な目標

OOM の欠点
  ・メンバーの教育コストがかかる。
  ・小規模のプロジェクトでは、大げさすぎてコストの増大を招く。

分析工程設計工程
  ・分析時に、対象業務の問題領域を充分に抽象化し、(分析)モデル化する。
  ・設計時に、分析モデルをコンピュータ言語で実装可能な形式で、(設計)モデル化する。

分析工程(オブジェクト指向分析、Object Oriented Analysis)
  ・分析モデル(概念モデル:conceptual model)を作成
ユースケースをシステムでどのように実現するかをモデリングする。
機能要求に特化して問題などを分析
実装の水準で生じる可能性がある様々な種類の制約(constraint)は無視
  ・主な分析手法
ロバストネス分析
名詞抽出法
  ・様々な種類の制約(constraint)
選択したアーキテクチャによる制約
技術的制約などの非機能要求(機能外要求)

設計工程(オブジェクト指向設計、Object Oriented Design)
  ・設計モデル(設計フェーズで記述する、システム全体のアーキテクチャモデル)を作成
分析モデルを、様々な種類の制約を考慮したモデルに変換する。
実装を意識し、システムの実現法を明確にする。
分析モデルで明確化された多くの概念を、クラスをインターフェースに対応付ける。
  ・OODの主な成果物
問題領域について、システムをどのように構築するかを詳細に記述した、モデル図と文書
  ・代表的なアーキテクチャレベルの設計モデル
MVC設計モデルなど

オブジェクト指向プログラミング(Object Oriented Programing)
  ・オブジェクト指向設計で得られた設計モデルを基にプログラミングする行程
相互にメッセージを送りあうオブジェクトの集まりとしてプログラムを構成する。
  ・OOPの特徴
カプセル化
継承
ポリモフィズム

ロバストネス分析
  ・

名詞抽出法
  ・文章に登場する名詞又は、名詞句をすべて抽出、整理することでオブジェクトを定義する。
顧客の「やりたいこと」がある程度固まっており、文章で提出されている。
且つ、全体像が見えていないときなどに有効