配備計画は、Java Enterprise System ソリューションの実装を成功させるにあたって不可欠なステップです。企業はそれぞれ独自の目標、要件、および優先順位を考慮する必要があります。計画を成功させるには、企業の目標を分析し、それらの目標を達成するためのビジネス要件を特定することから始めます。その後、ビジネス要件を、企業の目標を達成するシステムの設計と実装のベースとして使用される技術要件に変換する必要があります。
配備計画の成功は、慎重な準備、分析、および設計によってもたらされます。計画プロセス中に誤りや失敗があると、いろいろな形でシステムが失敗する恐れがあります。重大な問題は、システムの計画が不完全であることから生じる可能性があります。たとえば、パフォーマンスが予定を下回る、保守が難しい、運用コストが高すぎる、リソースを浪費する、増大するニーズに対応できないといった問題がシステムに生じる恐れがあります。
次の図に示すソリューションライフサイクルは、Java Enterprise System をベースにした企業のソフトウェアソリューションの計画、設計、および実装におけるステップを説明しています。ライフサイクルは、配備プロジェクトを進める上で有用なツールです。
ライフサイクルは、順序性のあるフェーズで構成されています。各フェーズは、後続フェーズへのインプットとして渡されるアウトプットを生成する関連性のあるタスクで構成されています。各フェーズ内のタスクは、そのフェーズのアウトプットを生成する前に徹底的な分析と設計を必要とするもので、繰り返し実行されます。初期のいくつかのフェーズも、繰り返し実行されることがあります。たとえば、配備設計フェーズでは、それまでのフェーズでの分析が不十分で、さらに分析する必要があることに気が付く場合があります。
以降の各節では、各ライフサイクルフェーズの概要を説明しています。
ビジネス分析フェーズでは、配備プロジェクトのビジネス上の目的を定義し、その目的を果たすために必要となるビジネス要件を明確にします。ビジネス要件を明確化するときは、ビジネス上の目的を果たす上で障害となりうるビジネス上の制約を考慮します。ソリューションライフサイクル全体において配備計画の成功度を評価し、最終的には、ビジネス分析フェーズで行なった分析に基づいて、配備ソリューションの成功度を評価します。
ビジネス分析フェーズでは、ビジネス要件ドキュメントを作成します。 このドキュメントは、あとで技術要件フェーズへのインプットとして使用します。
ビジネス分析フェーズの詳細については、第 2 章「ビジネス分析」を参照してください。
技術要件フェーズでは、ビジネス分析フェーズで定義したビジネス要件とビジネス制約に基づいて、これらの要件を技術仕様に変換します。これらの仕様は、あとで行う配備アーキテクチャーの設計に使用されます。技術要件には、パフォーマンス、可用性、セキュリティーなど、サービス品質 (QoS: Quality of Service) の特徴を特定します。
技術要件フェーズでは、次の情報についてドキュメントを作成します。
ユーザータスクと使用パターンの分析
計画中のシステムに対するユーザー操作のモデルとなるユースケースの適用
場合によってはユーザータスクと使用パターンの分析に基づく、ビジネス要件から派生するサービス品質要件
使用パターンの分析結果、ユースケース、および QoS 要件ドキュメントは、ソリューションライフサイクルの論理設計フェーズへのインプットとなります。使用パターン分析は、配備設計フェーズでも重要な役割を果たします。
技術要件フェーズでは、サービスレベル要件も特定する場合があります。 その要件は、あとでサービスレベル契約 (SLA: Service Level Agreement) を作成する際のベースになります。サービスレベル契約には、システムを維持するために提供されるカスタマーサポートの条件を明示します。 これらは、配備設計フェーズにおけるプロジェクト承認の一環として署名されます。
技術要件の詳細については、第 3 章「技術要件」を参照してください。
論理設計では、技術要件フェーズで得られたユースケースをインプットとして使用して、ソリューションの実装に必要な Java Enterprise System コンポーネントを特定します。それらの Java ES コンポーネントをサポートするコンポートを特定するとともに、ビジネス要件を満たすために必要な、追加のカスタム開発されたコンポーネントをすべて特定します。その後、コンポーネント間の相互関係を示す論理アーキテクチャー内のコンポーネントをマッピングします。論理アーキテクチャーには、ソリューションの実装に必要なハードウェアは特定しません。
論理設計フェーズのアウトプットは、論理アーキテクチャーです。論理アーキテクチャーだけでは、配備設計を開始するには不十分です。技術要件フェーズからの QoS 要件も必要です。技術要件フェーズからの論理アーキテクチャーと QoS 要件により、配備シナリオが形成されます。この配備シナリオが、配備設計フェーズへのインプットとなります。
論理設計の詳細については、第 4 章「論理設計」を参照してください。
配備設計では、論理アーキテクチャーに特定されているコンポーネントを物理環境にマッピングし、上位レベルの配備アーキテクチャーを作成します。また、実装仕様も作成します。 これには、配備アーキテクチャーの構築方法を指定する、下位レベルの詳細を示します。さらに、ソフトウェアソリューションの実装におけるさまざまな側面を詳細に説明する一連の計画と仕様も作成します。
プロジェクト承認は、配備設計フェーズで行われます。プロジェクト承認時は、配備のコストが見積もられます。承認された場合、配備の実装に関する契約に署名がされ、プロジェクトを構築するためのリソースが確保されます。多くの場合、プロジェクトの承認は、実装仕様が詳細化されたあとで行われます。ただし、配備アーキテクチャーの完成後に承認が行われる場合もあります。
配備設計フェーズのアウトプットには、次のものがあります。
配備アーキテクチャー: ネットワークハードウェアおよびソフトウェアに対するコンポーネントのマッピングを表す、上位レベルの設計ドキュメントです。
実装仕様: 配備を構築するための青写真として使用される詳細な仕様です。
実装計画: 企業ソフトウェアソリューションの実装におけるさまざまな側面をカバーする、一連の計画と仕様です。実装計画には、移行計画、インストール計画、ユーザー管理計画、テスト計画などが含まれます。
配備設計の詳細については、第 5 章「配備設計」を参照してください。
実装フェーズでは、配備設計で作成された仕様と計画に基づいて、配備アーキテクチャーを構築し、ソリューションを実装します。配備プロジェクトの性質に応じて、このフェーズには次のタスクの一部またはすべてが含まれます。
ハードウェアインフラストラクチャーのインストールと設定をする
ソフトウェアのインストールと設定をする
LDAP ディレクトリ設計でユーザーおよびリソースをモデル化する
ユーザー管理計画に基づいて、既存のディレクトリおよびデータベースからデータを移行する
パイロット配備およびプロトタイプ配備を作成して、テスト環境に配備する
システム要件を満たすことを確認するために、機能テストを設計、実行する
ピーク負荷時のパフォーマンスを確認するために、ストレステストを設計、実行する
企業のカスタムアプリケーションを開発および統合する
本稼働配備を作成する (段階的に行われる場合がある)
配備が本稼働に入ったら、ソリューションライフサイクルの運用フェーズに進みます。
実装フェーズの詳細については、第 6 章「配備設計の実装」を参照してください。
運用フェーズには、配備の実装を円滑に運用するために必要なタスクが含まれます。このフェーズには、次のタスクがあります。
配備を監視して、システムが計画どおりに稼働していることを確認する
パフォーマンスを調整して、配備されたソフトウェアが最適なレベルで実行されることを確認する
円滑な運用のための定期的保守、および必要に応じた臨時保守を提供する
必要に応じてソフトウェアおよびハードウェアをアップグレードする
運用フェーズの詳細については、このマニュアルの対象範囲に含まれません。