続・詳細設計について

前にもかいたけど、Javaで開発しているとやっぱり詳細設計悩む。今は擬似言語つかって各イベントの処理をずらずらって書いてるだけ。
例えばこのブログ左部分の検索機能だったら

  1. 画面からの入力パラメータを受け取る。→パラメータ名と内容を書く。
  2. 入力チェックを行う。→チェック内容とエラーとなった場合の動きを書く。
  3. 入力された検索条件を元にデータベースからデータを取得する。→検索キーと取得項目を書く。取得できない場合どうするか書く、
  4. 画面遷移する。→データベースから取得した項目と画面の各項目のマッピングを行う。

簡単に書いてこんな感じ。
ただ、この書き方だとどの処理をどのクラスで実装するかはプログラマー任せになってしまう。それに他のイベントで同じようなロジックがあった場合でも見抜きにくい。何よりも各層のインタフェースがめちゃくちゃくになる。
だから層別に処理を書いておこうかなって思ったりしてる。まあ、各クラスのインタフェース仕様だけ事前に作っとけばそんなにひどくはならんかもな。。
というか仕様の定義と設計の思想の定義は別のドキュメントに書いたほうがわかりやすいかな。