Index: [Article Count Order] [Thread]

Date:  Tue, 17 Jun 2003 00:59:28 +0900
From:  iamcf2nd@....com
Subject:  [XP-jp:04478] Re: XP 開発で DB ( was: 初めまして。そして質問です。)
To:  <extremeprogramming-jp@....jp>
Message-Id:  <Sea1-DAV53YQrucJihR0003e774@....com>
References:  <Law11-OE69RQHtQlGpf0003fb62@....com>
X-Mail-Count: 04478

#レスが付かないので、経験はないのですが書いてみます。m(__)m

> XPで開発を進めている場合、
> DBの設計ってみなさんどうのように行っているのでしょうか?
> やはり、必要に応じて、カラム追加、リレーション設定、
> 制約の追加などなどを行っているのでしょうか?
> バックアップをとっているとはいえ、
> ER図を更新し、変更を全員に伝えるというのは、
> 結構な労力を要します。
>
> 僕のやり方がXPではないのでしょうか?
> それとも、そもそもER図を元にしていることが、
> XPに反しているのでしょうか?

XP での DB は、やっぱり難しいものだと聞いてます。XP の本を読むと、「最
初に DB 設計したのは失敗だった。コロコロと構造が変わるので、最初はモッ
クオブジェクトを使って、DB の構築はあとにすべきだった。」なんて書いて
あったりしますね。

開発初期ならこれはいい手なんですが、1 回でもリリースしてしまうと、その
あとの DB の変更はやっぱり大変な手間がかかるでしょう。XP でもDB は、ER
図も書いて、前払いで設計すべきかもしれません(これは結論が出ていないよ
うな)。

ちょっと、この ObjectClub の中を検索したら、こんなのが見つかりました。

「設計の終焉?」必要ならデータベースも最初から使え!
http://objectclub.esm.co.jp/eXtremeProgramming/IsDesignDead.html
「[XP-jp:01666] Re: XP  で再利用できますか?」データベースを使うなら前
払いが必要。
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/1600/1666.ht
ml
「[XP-jp:01667] Re: XP で再利用できますか?」ビューを有効に使いましょ
う。
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/1600/1667.ht
ml
「[XP-jp:01922] Re: ObjectDay2001  ,体験  XP 資料」XP だと DB はやっ
ぱり難しい。oodbms は便利らしい。
http://objectclub.esm.co.jp/ml-arch/extremeprogramming-jp/1900/1922.ht
ml

私の方だと、XP で開発しているわけではないので、最初に設計して構築して
しまいます。可能な限り網羅して、余裕ある DB 設計をして、あとでの手直し
がないようにします。でも、2 3 回ぐらいは、やっぱり手直しが入るんですけ
どね。
#制約はほとんどつけません。使うと思って作ったフィールドも、結局使わず
に残ってしまうことも良くあります。

もし私が XP で DB やるなら、こんな感じでしょうか?
・DB 担当者を 2 人ぐらい決めて、DB にかかる部分は、その人とペアを組ん
でやる
 つまり DB の全体像は、(とりあえず)DB 担当者しか知らない。知る必要
がない。
・フェーズ中、もしくはイテレーション中は、ラップやモックを使い、すぐに
DB に反映させない
・DB の方も、ビューやストアドを駆使して、変化に柔軟にしておく
・イテレーションごとに文書化