前準備
一応簡単に開発に使用するフレームワーク、ライブラリなどを大まかにまとめてみよう。
- 開発環境 - Eclipse3.1.1
- JDK JDK - 1.5(5.0) なるだけ1.4でも動作するコードで開発(アノテーション系は使うかも)
- DBサーバ - MySQL
- APサーバ - Tomcat.5.5
- Webアプリケーションフレームワーク - Struts 1.2
- DIコンテナ - SpringFramework 1.2.6
- O/Rマッピングフレームワーク - Hibernate 3.0
- セキュリティフレームワーク - Acegi Security 0.9
- メールライブラリ - Javamail
といった感じであろうか。
ログに関してはlog4Jで運用も含めた設計を行う予定。
なのでエラー発生のメール通知機能は追加しておこう。
MBeanを使用してまでの運用監視は行わない予定。
(めんどい)
悩ましいところであったが今回はアプリケーションの規模がそれほど大きくないのでGeronimoは使わない予定。
(一応後で時間があれば試すかも。)
Geronimo触るのであればついでに軽量ESB Muleも触りたいなあ。
ホントはJAAS経由でKerberos認証とかやってみたかったんだけどかなーりおおげさになるので今回
は見送り。
あと細かい機能は後々出てくるかも知れないがどうせDI、AOPで織り込んでいくしその都度追加で。
せっかくなので今回の設計・開発のプチ目標を作る事にしよう。
- 各レイヤーを分離した設計を行う
- DIを使った場合の設計方法の確立
- AOPを使った場合の設計方法の確立(AOPの適用範囲のノウハウ。ライブラリ化)
- O/Rマッピングのノウハウ習得
- 個人情報に対するセキュリティ強化(ロール、データのトレーサビリティの確保)
- DIを使用した開発工数の基準値の算出
- DI開発のプロジェクトの土台の作成(雛形作成)
まあこんなもんかな。MySQLも実はほぼ初めてなのだがなんとかなるだろう。
これらが確立できれば今度はMDAやね。
うくく。