« オブジェクトやクラスの選び方~オブジェクト指向開発の基本中の基本 | トップページ | エンジニアなら経営コンサルタントの技法よりもORやTQMの技法を使おう!! »

2009年1月25日 (日)

オブジェクト指向開発でオブジェクト指向よりも大切なこと

以前のブログで、最初にオブジェクト指向開発でクラスやオブジェクトを見つけ出すことがなぜ難しいかということの1つの理由を書いた。

最近はオブジェクト指向開発も一般化したが、それでも本当に開発現場でオブジェクト指向開発が浸透しているかというとまだまだのようだ。私に依頼がくル中で「オブジェクト指向開発を指導して欲しい」という依頼がやはり相当多いからである。

さて、このオブジェクト指向開発だが、名前にオブジェクト指向と付いているにもかかわらず、現場が望んで開発アプローチに必要となる知識は、オブジェクト指向の締める割合がそれほど高くない。

優れたソフトウエア開発を実施するには、オブジェクト指向は有効なアプローチだが、オブジェクト指向テクノロジーそのものでは圧倒的に不足しているのだ。

しかも、オブジェクト指向で取り上げられる特徴で

  • カプセル化
  • ポリモフィズム
  • 抽象化
  • 継承

などは、実はオブジェクト指向の専売特許では無い
オブジェクト指向テクノロジーを用いると、従来技法より効率よく実現できるということに他ならない。継承やポリモフィズムはオブジェクト指向ならではの特徴と思われがちだが、オブジェクト指向で無くてももちろん実現できる

ソフトウエア開発全般で必要となる分析・設計・実装の中でオブジェクト指向テクノロジーは、1つの大切な技法に過ぎず、さらに色々な知識がないと優れたソフトウエアが開発できないし、生産性、品質も上がらない。

重要となる知識は年々増している。

  • 要件工学(品質特性、追跡可能性、etc、etc)
  • 品質工学(サイクロマティック複雑度、シックスシグマ、TQM、シミュレーション技法、レビュー技法、etc、etc)
  • 離散数学(集合論、論理学、形式手法、etc、etc)
  • 情報工学(情報エントロピー、グラフ理論、マルコフ過程、etc、etc)
  • ソフトウエア工学(並列化、状態マシン、ペトリネット、リアルタイムスケジューリング理論、DoC、etc,etc)

などいろいろなことについて理解が必要である。
どの知識がどのカテゴリーに分類されるかは、学者や視点によって異なるかもしれないが、これらの知識を総合的に要求される時代になってきている。

だから、オブジェクト指向開発といえでも、オブジェクト指向のことばかりに意識が行くことなく、必要と考えられること全般に対して意識を向ける必要があるのだ。

=HSCI Takanari Hashimoto(URL:http://hsc-i.com/)=

|

« オブジェクトやクラスの選び方~オブジェクト指向開発の基本中の基本 | トップページ | エンジニアなら経営コンサルタントの技法よりもORやTQMの技法を使おう!! »

「パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/112989/43850745

この記事へのトラックバック一覧です: オブジェクト指向開発でオブジェクト指向よりも大切なこと:

« オブジェクトやクラスの選び方~オブジェクト指向開発の基本中の基本 | トップページ | エンジニアなら経営コンサルタントの技法よりもORやTQMの技法を使おう!! »