Teeda Extension featuring Goya 〜要件定義〜
要件定義→外部設計→(アーキテクチャ)→内部設計→コーディング→単体テスト→結合テスト
普段使用されている手法で問題ありませんが、Teeda Extensionの強み/弱みを知らないと、後で苦労することになると思いますので、ここでは、その点について紹介したいと思います。
また、一般の要件定義レベルよりは、後工程でのリスクを軽減するためにも、実装に近いレベルで書きたいと思います。
※2007/02/11時点
Teeda Extensionの特徴
Teeda Extensionの持つ機能
強み
- 2Way HTMLテンプレート
- テスティングフレームワークサポート
- 規約(iRule=Intelligent Rule)重視で設定ファイルレス
- 画面遷移やコンポーネントのマッピングを、名前により解決する。設定ファイルを作成する必要がほとんどないため、設定ファイルのメンテナンスに工数を費やさなくて済む。
- バリデータのターゲット指定
- 押下するボタンによって、動作するバリデーションを切り替えられる。JSFでは、ボタンごとに切り替えることができなかったが、要件としては多い。
- マルチウィンドウ対応
- 複数画面(ある画面から別画面を開く)の構成にも対応している。
- ポートレット(JSR 168)対応
- 標準でポートレットをサポートしている。
- Doltengメインサポート対象プロダクト
弱み
- スクリプトレットが利用できない
- JSPであった、スクリプトレット(<% 〜〜〜 %>)は利用できないため、動的に(サーバサイドで出力する値を使用する)、複雑なレイアウトを構成したり、ページ内へのJavaScript出力をするような処理には向いていない。
- 標準で提供されていない機能
- レイアウト機能
- グリッドでのページング/ソート
- リンク(アンカータグ)でのイベント処理
- リンククリック時は、Page/Actionクラスのメソッド(doXxx)を呼び出せない
- 回避策としては、メソッドを呼び出すボタンを非表示状態にしておき、リンククリック時にJavaScriptでボタン押下を実現する。
- ファイルアップロード
- 回避策としては、カスタムタグを利用して、MyFacesのファイルアップロードコンポーネントを導入する。
成果物
成果物を決めておくのを忘れていました(汗)。
システムの特性や規模によっても違うとは思いますが、以下のものぐらいは必要でしょう。
- 要件一覧
- 要件一覧は、顧客から挙がった要望をリスト化しておく。Excelやカードなどでまとめる程度でも十分。
- 業務フロー
- 複雑な業務ルールなどがある場合は、フロー図に説明を補足しておく。
- 用語集