オブジェクト指向設計の分析方法について整理してみた

どう考えても手段目標分析の説明になってし(ry

オブジェクト指向設計の分析方法について

問題は目的(=ゴール)に従って分析する。 指標としてはオブジェクトの持つべき能力を分析する。

より複雑な問題に対しては問題をシンプルにするために 下記の手段を駆使して分析する。

  • 部分的な目的(=サブゴール)の導出。(手段目標分析)
  • 既知のオブジェクトの連携。
  • 新しいオブジェクトの発明。

人間が同時に思考できる要素の数は「マジックナンバー7±2」という話もあるように限定される。 同時に考えなければならない範囲の複雑さを一定値以下に抑えるように サブゴールを導出し問題の単純化を行う。 どの層のどの部分を見ても一定値以下の複雑さであることが理想的。

サブゴールの導出

手段目標分析の用語だが、 もちろんオブジェクト指向的な考え方で手段と目標を分析する。

構造化分析手法から連なる設計手法の違いは 結局の所、何を基準に細分化するかと言うところによる。

設計手法の違いも分析基準の違いを除けば手段目標分析と言える。

既知のオブジェクトについて

人間の発想にはやはり限界がある 既知のオブジェクトを増やしておくことが、 設計の精度と効率を高めると考えている。

大規模なフレームワークをただチュートリアルに従って使用するだけでなく、 アーキテクチャを理解する事、 また他人のソースコードを読んでみることが、 既知のオブジェクトのバリエーションを増やす事につながると考える。

新しいオブジェクトの発明について

あまり当てにしない方がいい。 まずは既知のオブジェクトで解決できるか考えること。 次によりよい解法を他人が知っている可能性があるのでそれを知ること。