設計について

まとまらない設計の話。

私の個人的な意見です。(他の記事も全部そうだけど)

まず、ひがさんのページ駆動開発。
これは、私には合わない。
ページ駆動で検索すると、ひっかかると思うけど
全否定してるページもありますね。

超カンタンなページだったらいいのかもしれないけど、
そんなもんははっきりって仕事上無いです。
それとDBから設計ってのが身に染み着いてるので、
どうやっていいものかよくわからんというのも。
struts使ってとかなら、
まずDB設計、画面(遷移)設計、実装といった感じ。そのままですが。

ウォーターフォールは全然ムリ。
基本的にAgileです。最低限の設計を紙とかに手書きして、
それで実装しはじめる。
途中でヤバくなることもあんまりありません。
項目追加とかでも大きく変わることは殆ど無いので、
webだったら結構ラフでなんとかなる。かも。

Joel on Softwareに書いてありますが、
Agileは設計をしないのでは無く、最低限の設計はします。
設計上で問題になるような箇所は洗い出して解決しますし、
UMLやら遷移図も必要であれば書きます(手書きだけど)

その上で必要とあらばJUDEとかでドキュメント化しますが、
一人でやってるし、特に提出の必要もないので、基本的に手書きのものを保存するくらいで済ませてます。

まぁDB設計書とかであれば、自動吐き出しできますからね。

あとは、CVS or SVNでしっかりソース管理しながら、開発してけば相当なことがない限り大丈夫でしょう。

これからは確実にAgileに流れが向くでしょう。
今のうちに(もう遅いくらいですが)Agile設計のノウハウを積んでおかないと、大変なことになりますよ。
会社が使ってなくても、テストファーストとかCVSは使えますからね。 まずはその辺から攻めていくのが妥当でしょう。
Joel on Softwareそのままですが。