Index: [Article Count Order] [Thread]

Date:  Tue, 17 Dec 2002 09:36:25 +0900
From:  BABA Yoshihiko <baba@....jp>
Subject:  [XP-jp:03988] デザインパターンの場合 (was  他分野のテスト・ファースト)
To:  extremeprogramming-jp@....jp
Message-Id:  <3DFE7189.7060903@....jp>
In-Reply-To:  <20021217000415.3F6E.SHIMADEN@....jp>
References:  <20021217000415.3F6E.SHIMADEN@....jp>
X-Mail-Count: 03988

Hiroyuki Shimada wrote:
>  こんにちは。島田です。
> 
>  コンピュータ・プログラミング以外で、テスト・ファーストってあるのかなと、
> 突然思い立ちました。
> 
>  Kent Beck さんは、テストを先に書かないと、いつコーディングが終わったか
> わからない、だからテストを先に書く、と説明しています。
>  この説明は、鋳型(テスト・ケース)を先に作って、そこに溶かした金属を流
> し込んで冷えたら完成(テストが全部パス)みたいなイメージに感じました。
>  金属が足りずに鋳型を満たせないと、まだコードが足りない、という感じです。
>  すると、鋳造の鋳型は、テストに当たるのかな?
> 
>  これ以外で、何か、他分野でテスト・ファーストあるいはそれに似ている作業っ
> てありませんか。

テスト・ファーストねたではない上に、既知かもしれませんが、デザインパター
ンは都市計画家でありまた数学者であるクリストファー=アレクサンダーのパ
ターンに関する研究に関連があるとされています。

アレクサンダーの研究では、都市はツリー構造をとってはいけない、セミ=ラ
ティス構造をとるべきだ、というものです。一言で言ってしまえば複雑系でしょ
うか、セミ=ラティスとは、スパゲッティ状の構造のことです。また、その方法
論としてパターン言語なるものを定義して、都市問題の解決はこのパターンのな
かから一つないし複数の組合わせて行うべきだ、というものでした。

この考え方は、トータルプランニング的な方法論(プログラミングで言う、
ウォーターフォール型)の弱点を回避できます。つまり、良く使うパターンは、
様々な問題を予めラップした形で準備することができるので、開発が早くエラー
が少なくなりやすいということです。

(参考)http://gee.cs.oswego.edu/dl/ca/ca/ca.html



-- 
馬場美彦
システム開発・計測担当マネージャー
KMOC
大同情報技術(株)
T 03 3316 8321