管理画面のデザインパターン

Webアプリに限らず、デスクトップアプリでも結局のところ、管理画面が存在する。
Webアプリの場合、管理画面はHTMLフォームを軸にして画面設計から開発していくことになる。

これまでもいくらでも開発してきたので、いくらでも開発用のポケットはある。
しかし、これをより抽象化して扱いやすい管理画面を構成するためのデザインパターンはないのだろうかとふと検索してみた。

必要なはずなんだが、確定的なものは見当たらない。
しかし、最近のよくあるパターンとしては、とりあえず管理画面の構造はメニュー+実行エリアという構成が多いようだ。

Ajaxライブラリが扱いやすくなってきたため、WebアプリでもAjaxライブラリを利用するとデスクトップアプリのようにウインドウインスタンスによって管理していく方法が可能になってきている。JavaScript無効にしている場合用やモバイル用には従来の軽量な管理画面も必要かもしれないが、ウインドウベースの管理画面構築はユーザーフレンドリでもあるしフォームとの相性もよい。

近頃のWebフレームワークでは、オートフォーム的な処理が可能。モデルを定義すれば即、CRUDが実行できる素地が整う。
開発の方針としてはモデルをベースに出来上がったフォームに味付けしていくという方法も有力かもしれない。

すると、これらの雑記をまとめつつ抽象化してみると、
サーバーレベルではオートフォーム的にポストされた内容に認証と承認を考慮したCRUD処理のサービスを持たせる。
クライアント側はJSでもFLEXでも自由に組み合わせればよいのではないか。
ビジネスロジックをサーバー側に組み込んで、ビューをフルフルで振り回す方法はあまりスマートではないのかもしれない。
サービス実装(画面遷移などのUI管理)としてはAjax側に任せて構築するぐらいの割り切りでもよいとも考えられる。

実際は、初期バージョンをリリースするうえではどちらでも実装可能だ。しかし、その後の保守コストを考慮して仕様を決定する必要はあるだろう。