スマソ、すげー大雑把な主張をしていい?

まず初めに「複雑な問題は分割しよう」ってのがプログラムを作成する際のお約束でしょ。

たとえば A ってシステムを作るとき、それが a と b という(比較的簡単な)部分に分割されたとする。

で、a の動作が完全で、なおかつ b の動作も完全なら A は完全なシステムって話になる訳だ。

非オブジェクト指向の奴がシステムを分割する際は a と b はそれぞれ(まぁ、普通は)手続きとして、
また、オブジェクト指向の奴の場合は a と b はそれぞれオブジェクトとして実装するのだろう。

そしてその後、とりあえず a と b らしき物ができたとして、それらの動作の完全性を保証する
必要がある訳だが、そのためにはどういうテストをすればいいかというと、手続きとして分割した場合は、
・全ての入力に対して
・全ての出力が正しい
ならば、完全といえるのに対して、オブジェクトとして分割した場合は
・全ての状態の時に
・全てのメッセージに対して
・全ての振る舞いが正しい
という様にならなければいけない訳だろ?

テストをする条件が少ない分、非オブジェクト指向の方が「勝ち」っていうのは駄