アジャイル開発について、色々言われている割には、
どうして、アジャイルで開発できるかという論拠について述べていないような気がするので、
その論拠を、Strutsで・・
●ユーザーがユーザーインターフェース、つまり、画面をきめてしまうと、
開発の大まかな部分のプログラムは確定してしまい、その部分は、開発可能になる。
Strutsの場合
※画面が決まると、
・その入出力部分のActionFormは確定する
→コーディング可能
・画面のボタンを押した結果、処理(=Action)をするのだから、
Actionのクラスはつくれ、かつ、そのAction画面が使うActionFormの
取り込み(キャスト部分)もかける。
・struts-config.xmlのformbeanは確定する
※そして、画面遷移が決定すると
・Actionのフォワード先が決定されて、その部分は埋まる
・次に表示される画面が、現在の画面と違うなら、次の画面表示のActionが必要
→作成することになるが、すでに作成している場合も多い。
・struts-config.xmlのaction-mappingは確定する
※なので、のこりは、Actionのモデル部分のみとなる。
一方、画面と出力結果が確定すると、
・データベースに関しては、正規化で確定している。
また、汎用入出力部分も作成できるので
残りの開発は、DBを操作するモデル部分のみとなる。
これは(DBを使うことにより)各モデル間で独立性が高いはず
なので、少しずつ、決めながらでもできる。
なので、少しずつ開発しているアジャイルでも可能になる。
一方、修正においては、修正手順がきまっていて、(JSP,ActionFormの変更)
すぐにとりかかることができ、かつ、モデル部分への影響は、Actionメソッド
のなかで、ダミーパラーメータをいれたりして、吸収しやすい。
なので、画面さえ決まれば、きまった部分からどんどん開発にはいっていく
アジャイルでの開発が可能になってくる。