I-16-10. Webアプリケーション開発における実際の作業プロセス

Webアプリケーション開発に関して、プレゼンテーション設計、画面遷移設計、ビジネスロジック設計、データベース設計、コンポーネント間インタフェース設計といった実際の実装作業プロセスを説明する。

【学習の要点】

* Webアプリケーション開発に必要な各設計項目のプロセスを把握しておくことで、漏れのない設計ができ、開発作業の効率化やソフトウェアの品質向上が期待できる。

図I-16-10. 様々な作業プロセス

【解説】

1) Webアプリケーションの設計項目

ここでは、Javaなどのオブジェクト指向言語と、関係データベース、O/Rマッピングフレームワークを利用した場合を例として、一般的なWebアプリケーションを開発する場合の設計プロセスについて示す。設計項目には、以下のようなものが必要となる。

* データベース設計

* プレゼンテーション設計 (個々のWebページの表示に関する設計)

* 画面遷移設計

* ビジネス(業務)ロジック設計

* コンポーネント間インタフェース設計

2) データベース設計のプロセス

ERDに基づき、正規化を行う。また、運用上などの要件により、必要に応じて逆正規化を行う。ERDを物理設計レベルまでブレイクダウンして作成し、データベース構築のSQLが生成可能な状態にする。

3) プレゼンテーション設計のプロセス

各画面ごとに、表示項目、入力項目を洗い出し、各項目の表示内容、表示場所、HTML要素やスタイルを決定する。入力項目については、入力可能な値の範囲を明確にする。画面設計書などを作成する。

4) 画面遷移設計のプロセス

各画面から遷移可能な画面を洗い出し、遷移するための条件を明確にする。画面遷移図などを作成する。

5) ビジネスロジック設計のプロセス

UMLのクラス図を、クラスの属性やメソッド、クラス間の関係などの記述を追加した形でブレイクダウンして作成する。加えて、UMLのアクティビティ図、状態図、シーケンス図などを作成する。

6) コンポーネント間インタフェース設計のプロセス

コンポーネント(プログラムの部品)同士のやり取りの規約を作成する。Web MVCフレームワークにおけるモデルとビューとのやりとりは、コンポーネント間インタフェースを必要とする典型例である。UMLのコンポーネント図などを作成する。

OSS Course Naviのコンテンツは IPA OSS モデルカリキュラムを基としています。