寺田です.
> それに,はたしてOOA/OOD屋にゴールという発想があるかどうか.
> #OOA/OOD屋のゴールって
> #「設計者が楽すること(その分実装者が苦労すること)」
> #じゃないかと思うことさえある.
ゴールという発想がない人が悪いのでしょうか?
それともOOA/OOD自体がゴール達成に役立たないという考えでしょうか?
以下,ちょっと思い付きです.
ゴールを意識した分析,設計を実現するにはどうすればよいのか.
まず,「設計」という言葉はかなり解釈に幅がありますね.
ここでは少し大き目の粒度で捉えたいと思います.
デザインパターンの粒度よりはもう少し大きめ,どちらかというとアーキテクチャ
に近いくらいの粒度です.(そうしないと実装と設計の境目がないので)
簡単のためにウォーターフォール的な流れを書くと(アジャイルは記述が面倒な
ので)
分析 → 設計 → 実装 → テスト → 実運用
だいたいこんな感じですよね.ここでポイントは
開発の時系列は左から右へ進むが,
要求は逆に右から左へ作用する
ことです.ですから,昨今のトレンドに従うと
テストは,実運用で役立つソフトにしたいという要求に駆動されます.
実装は,テストにパスするために書かれます.(テスト駆動開発!)
ということは,
設計は実装に駆動されるべきでは?
分析は設計に駆動されるべきでは?
という連想が働きます.
前工程からの Push ではなく,後工程からの Pull によって開発を駆動しようと
いうものです.こうすればゴールを見失うことはありません.これで分析,設計
の「在庫」「だぶつき」を払拭できれば大成功です.
・・・なんていう理想が実現できたらカッコイイのですが.
まあ,現実は色々ありますよね.
具体的に「こうすればできる」なんて答えは,もちろん私は知りません(涙)
ではでは.
--
Y.Terada <******@*********.**.**>