クラウドへのマイグレーションを目的としたエンタープライズ・アプリケーションの評価

階層分析法を使用してクラウドに対するアプリケーションの適性を評価する

皆さんはどのようにして、エンタープライズ・アプリケーションがクラウドに適しているかどうかを判断しますか?これは単純な質問ですが、その答えは決して単純ではありません。この記事の著者が順を追って説明する、階層分析法 (AHP: Analytic Hierarchy Process) に基づくアプリケーション・ポートフォリオ評価手法に従って、皆さんのエンタープライズ・アプリケーションがクラウドに適しているかどうかを判断してください。

Brijesh Deb, Senior Technology Architect, Infosys

Brijesh Deb は、Infosys の SETLabs に勤めるシニア技術アーキテクトです。彼は、エンタープライズ・アーキテクチャー、技術コンサルティング、応用研究、そしてエンジニアリング管理など、多岐にわたる IT 経験を積んでいます。現在彼が専門に取り組んでいるのは、クラウド、Web 2.0、JavaEE です。



2010年 9月 14日

クラウド・コンピューティングがエンタープライズ・オペレーションに以下のメリットをもたらすことは、疑う余地がありません。

  • コストを削減できること (例えば、アプリケーションのテストベッドをセットアップして構成したり、必要に応じてコンピューティング能力を増強、あるいは縮小したりできます。)
  • 大量のデータ・セットをより短時間で処理できること (必要な時に必要な場所で作業負荷のバランスを取ることができます。)
  • 変化する状況にビジネスが一層素早く対応できること (さまざまなデータが混在する大量のデータに対してビジネス分析をより迅速に行うことができます。)

では、エンタープライズ・アプリケーションがクラウドに適しているかどうかを判断するにはどうすればよいのでしょうか。

企業でのクラウド戦略全体の成功を大きく左右する要素は、ビジネス、技術、リスクそれぞれの分野で多岐にわたります。つまり、アプリケーションがクラウドに適しているか (「適合度」と呼ぶことにします) という質問に対しては、すべての場合に当てはまる答えはありません。企業はそのアプリケーション・ポートフォリオを、それぞれ独自のビジネスの緊急課題、技術戦略、そしてリスク選好度に応じて評価する必要があります。

以下に挙げるのは、ビジネスがクラウド戦略に取り組む前に自問自答しなければならない質問の例です。

  • エンタープライズ・アプリケーションをクラウド化する際に考慮しなければならない要素は何か。さまざまな要素の優先度をどのように判断するか。
  • ビジネスの優先度および技術的適合度に基づいて、クラウド環境に移行するのに最適なアプリケーションおよびサービスをどのように見極めればよいか。
  • クラウド化を順調に行うためには、エンタープライズ・アプリケーションおよびサービスにどのように優先順位を付ければよいのか。直感を抜きにして、客観的な評価を行うにはどうすればよいか。
  • クラウド化にはどのような種類のリスクが伴うのか。

以上の質問を念頭に、私はクラウドに対するエンタープライズ・アプリケーションの適性を判断するためのアプリケーション・ポートフォリオ評価手法を開発しました。この手法のベースとなっているのは、階層分析法 (AHP: Analytic Hierarchy Process) です。

AHP は、複雑な状況で決断を下すための、階層構造を利用した手法であり、現在抱えている課題や、現在の状況、そして変化する要素に対して (「正しい」決断をするのではなく) 「最善」の決断を選択するのを支援します。この手法は 1970年代に考案されました。以下に示すように、AHP のプロセスは複雑なものではありません。

  1. 1 つの問題をさらに細かい問題に分解し、理解しやすくします。入力変数は、それが正確なデータ・テーブルであろうと、大まかな推測であろうと、目下の状況に当てはまる限り、あらゆる変数が進んで使用されます。
  2. すべての要素をそれぞれ 1 対 1 で比較して評価します。この比較評価には、具体的な事実または判断を適用することができます。ここで決定するのは、各要素の相対的な重要性です。
  3. 評価結果ごとに数値を割り当てます。こうすることにより、問題解決プロセスのライフサイクル全体を通して要素を相対比較できるようになります。
  4. 決断のそれぞれの選択肢について、優先度を数値で算出します。この優先度は、それぞれの決断の選択肢に認められる、目標を達成する相対的な可能性を表します。

この記事では、AHP の詳細を説明し、エンタープライズ・アプリケーションをクラウドに実装するのが適切であるかどうかの判断をするために AHP を使用する方法を具体的に示します。すべてのクラウド・システムが機能する一般概念は共通しているので、皆さんがどのクラウド・プラットフォームを採用するかに関わらず、この手法が役に立つはずです。

評価手法

図 1 に、評価手法の概要をフロー・チャートで説明します。

図 1. クラウドに対するアプリケーション・ポートフォリオ評価のフロー・チャート
クラウドに対するアプリケーション・ポートフォリオ評価のフロー・チャート

この手法は、多次元統計的評価です。具体的に言うと、エンタープライズ・アプリケーションを以下の 3 つの次元で評価します。

  • ビジネス価値: アプリケーションをクラウドに移行することによって、組織にどれだけのビジネス価値がもたらされることになるのか
  • 技術的適合度: クラウドへのアプリケーションの移行はどの程度、実現可能なのか
  • リスク可能性: クラウドへのアプリケーションの移行にはどれだけのリスクを伴うのか

この 3 つの次元のそれぞれが、アプリケーションのクラウド化の続行または中止に関して決定的な影響を持ちます。例えば、あるアプリケーションがビジネス価値と技術的適合度の次元では高いスコアで評価されたとしても、その企業が想定する許容レベルよりもリスク可能性が高ければ、そのアプリケーションはクラウド化にふさわしい候補とは言えません。

それぞれの次元でアプリケーションを評価するということは、多基準意思決定分析 (MCDA: Multi-Criteria Decision Analysis) を行うということです。AHP は、MCDA で使用される手法の 1 つです (MCDA についての詳細は「参考文献」を参照してください)。AHP には各種の基準に基づくさまざまな選択肢の評価が関わってきます。ある選択肢が他の選択肢と競合することもあれば、対照的な性質を持っていたり (定性的であるか、定量的であるかということ)、全体的な適性に (プラスまたはマイナスに) 影響したりすることもあります。

AHP で使用する手法では、特定の基準一式に対する相対優先度を比率として定量化します。他の多くの MCDA 手法に比べ、AHP には以下の利点があります。

  • AHP は、意思決定プロセスで定量的基準と定性的基準を組み合わせた包括的な意思決定システムを提供します。
  • AHP では、分析プロセスの整合性をテーブルで判断することができます。そのため変則性が少なくなり、客観性が高くなります。

注目に値するもう 1 つの点は、評価の開始時に、明らかにプロファイルに適合しないアプリケーションは除外されることです。内部アプリケーションと外部アプリケーションは、別々に評価されます。それは、内部アプリケーションと外部アプリケーションとでは、関連する検討事項の性質も、重要性も異なるためです。内部アプリケーションへのアクセスは企業のファイアウォール内からに限られますが、外部アプリケーションはファイアウォールの外側からアクセスすることができます。内部アプリケーションと外部アプリケーションでの検討事項がいかに異なるかを説明する一例は、セキュリティーです。セキュリティーの懸念事項は、外部アプリケーションのほうが内部アプリケーションよりも遥かに深刻なものとなります。

ここからは、AHP を使用してクラウドに対するアプリケーションの適性を評価します。


AHP による評価

AHP を適用してクラウドに対するアプリケーションの適性を評価するプロセスは、複数の要素 (つまりステップ) で構成されます。具体的には、以下のステップです。

  • 基準の階層を定義する
  • 基準の優先度を決定する
  • アプリケーションを基準と比較する
  • 全体での AHP のスコアを計算する

基準の階層を定義する

前述の次元 (ビジネス価値、技術的適合度、リスク可能性) のそれぞれに、多数の基準があります。さらに基準 (Criteria) のそれぞれも、レベルの異なるさらに細かい基準 (サブ基準 (Sub-criteria)) に分けることができます (図 2 を参照)。

図 2. クラウドの技術的適合度を評価する場合の AHP の図式
クラウドの技術的適合度を評価する場合の AHP の図式

それぞれの次元に関連する基準は、AHP フレームワークに従って複数のレベルからなる階層に構造化されます。技術的適合度を評価する場合の階層構造を示す、上記の図 2 を見てください。

上記の図に示されているように、基準およびサブ基準は、定量的基準または定性的基準のいずれかにすることができます。例えば、「外部システムの数 (Number of external systems)」は定量的基準ですが、「明確に定義された統合ポイント (Well-defined integration point)」は定性的基準です。

各基準とそのサブ基準の集合は、基準グループと呼ばれます。図 2 の例で言うと、「アプリケーション設計 (Application design)」とその 2 つのサブ基準 (「疎結合 (Loose coupling)」および「仮想化 (Virtualization)」) は同じグループに属するため、3 つのグループ・メンバーからなる 1 つの基準グループということになります。

図 3 に、ある種の基準ツリーとして、3 つすべての次元の評価基準階層のレベルを図解します。広義の基準およびサブ基準はこのまま使用できますが、基準によっては企業のコンテキストに合わせて調整しなければならない場合もあります。

図 3. 3 つすべての次元の基準階層の図
3 つすべての次元の基準階層の図

次に、3 つのサンプル・アプリケーションで技術的適合度を評価する場合の手順を例に、技術的基準およびサブ基準を使用する方法を説明します。

基準の優先度を決定する

それぞれの基準には、AHP の 1 から 9 までのスケールで相対優先度を割り当てます (表 1 を参照)。

表 1. AHP の 1 から 9 までの基準優先度 (一対比較でのスケール)
優先度定義説明
1同じく重要2 つの要素が目標に貢献する程度は同じ
3やや重要一方の要素が他方の要素よりもわずかに優先される
5かなり重要一方の要素が他方の要素よりもかなり優先される
7非常に重要一方の要素が他方の要素よりも遥かに優先される
9極めて重要一方の要素が他方の要素よりも決定的に優先される
2, 4, 6, 8それぞれの中間の値

最初に基準の優先度を決定し、続いて各基準の下位にある個々のサブ基準の優先度を決定します。そして特定のレベルにある個々の基準の優先度の合計が 1 になるように正規化します。

サブ基準には、ローカル優先度とグローバル優先度の両方があります。グローバル優先度は、サブ基準自体の優先度 (ローカル優先度) とその親の基準が持つ優先度の積です。したがって、「外部システムの数 (Number of external systems)」のグローバル優先度は、そのローカル優先度と「統合の容易さ (Integration ease)」の優先度の積になります。

表 2 に、レベル 1 の技術的基準を例に、相対優先度を概算した結果を記載します。

表 2. 相対優先度の概算 (基準の優先度の計算)
技術的適合度IEMETSAD優先度
統合の容易さ (IE)110.50.20.1075
マイグレーションの容易さ (ME)110.330.20.0989
技術スタック (TS)2310.330.2304
アプリケーション設計 (AD)55310.5633
整合比0.0127

この表の対角線上にある要素はすべて 1 となります (同じ要素同士を比較しているため)。比較が行われているのは表の斜め上半分だけで、下の半分の値は、表の上半分の値の逆数です。

例えば、技術スタック (TS) の重要性は統合の容易さ (IE) の 2 倍になっています。相対優先度と整合比のリストは、AHP 手法に従って計算します。整合比は、一対比較の整合性を判断する上で参考になります。

すべての基準だけでなく、すべてのサブ基準についても相対優先度を計算します。表 3 に示されているように、サブ基準のグローバル優先度は、そのローカル優先度と親の優先度の積です。したがって外部システムの数 (ES) を例に取ると、グローバル優先度は、そのローカル優先度 (0.109586) と統合の容易さの優先度 (0.1075) の積になっています。

表 3. サブ基準の優先度の計算 (ローカル優先度およびグローバル優先度)
統合の容易さESIPHDローカル優先度グローバル優先度
外部システムの数 (ES)10.3330.20.109590.0117790
明確に定義された統合ポイント (IP)310.50.309150.0332293
統合用 HW デバイスの数 (HD)5210.581260.0624777
整合比0.00319

アプリケーションを基準と比較する

このステップで、エンタープライズ・アプリケーションを定量的基準定性的基準の両方に対して比較する方法がわかります。

定量的基準に対する比較
定量的基準でアプリケーションを評価するには、定量的基準の定量値を使用してアプリケーション同士を比較します。

  • 目標に対してプラスに影響する基準の場合、合計値が 1 になるように正規化することによって特定の基準に対するアプリケーションのスコアを計算します。ri (i=1 ... n) の値の集合があるとすると、正規化数 rin は、ri を集合に含まれるすべての値の合計で割った値となります。
    正規化
  • マイナスの影響を持つ基準の場合には、最初に値の逆数を算出し、これらの逆数を正規化することによってアプリケーションの相対スコアを計算します。逆数とは、その値に乗算すると 1 になる数のことです。つまり、x の逆数は 1/x となります。

表 4 には、外部システムの数がマイナスの影響を持つ場合の結果が示されています。このように、外部システムの数が増えると、統合の容易さの定量的な「スコア」が減っていきます。したがって、この 3 つのアプリケーションがそれぞれ 5 つ、3 つ、または 2 つの外部システムを統合する必要がある場合、それぞれの場合の相対スコアがわかるというわけです。

表 4. マイナスの影響を及ぼす定量的基準のスコア
アプリケーションの評価システム数逆数 (マイナスの影響)スコア
アプリケーション 150.200.194
アプリケーション 230.330.323
アプリケーション 320.500.484

定性的基準に対する比較
定性的基準については、AHP の 1 から 9 までのスケールを使用した一対比較によってアプリケーションの相対スコアを計算します。このプロセスは、基準の優先度を決定する際のプロセスと同じです。

全体での AHP のスコアを計算する

各次元でのアプリケーション全体での AHP のスコアは、基準グループの相対優先度とその基準グループに属するそれぞれの基準の相対優先度の積を合計することによって算出します。図 4 に計算式を示します

図 4. 全体での AHP のスコアの計算式
全体での AHP のスコアの計算式

この式の内容は以下のとおりです。

  • Sx は、アプリケーション x の AHP のスコアです。
  • M は、基準グループの数です。
  • Ni は、基準グループ i のメンバー数です。
  • Pi は、基準グループ i の優先度の値です。
  • pij は、基準グループ i に属する基準 j の優先度の値です。
  • sijx は、アプリケーション x を基準グループ i の基準 j に対して比較して出されたスコアです。

AHP の主なステップに対するチェックリスト

この記事を締めくくる前に、AHP を使用してエンタープライズ・アプリケーション・ポートフォリオがクラウド環境に適しているかどうかを評価する際に必要な主なステップのチェックリストを記載したいと思います。

  1. 基準の階層を定義する
    1. 次元ごとに基準の階層を定義する
    2. 企業のコンテキストに合わせて基準階層を調整する
  2. 基準の優先度を決定する
    1. 一対比較によって、基準同士の相対重要度を決定する
    2. すべての基準のローカル優先度を決定する
    3. すべてのサブ基準のグローバル優先度を決定する
  3. 基準ごとのアプリケーションのスコアを決定する
    1. 一対比較によって、基準ごとに候補アプリケーションの相対的な適性を決定する
    2. 基準ごとの候補アプリケーションの相対スコアを決定する
    3. マイナスの影響を持つ基準については、逆数を使用してスコアを決定する
  4. AHP のスコアを決定する
    1. 図 4 の式を使用して、候補アプリケーション全体での AHP のスコアを決定する

まとめ

この記事のまとめとして、最初に評価結果を要約させてください。3 つすべての次元についての AHP による評価が完了すると、アプリケーションのスコアを 1 つの決定表にまとめることができます。表 5 に、その一例を記載します。クラウド・デプロイメントに最適なのは先頭のグループです。以降に続くアプリケーションのグループは、下に行くにつれてクラウド・ディストリビューションへの適性が低くなります。

この表から、企業内の各種アプリケーションのクラウド化の影響をさまざまな次元と照らし合わせて全体的に把握することができるため、情報に基づく意思決定を行うのに役立ちます。

表 5. 適性決定表の例
アプリケーションのスコア: ビジネス価値アプリケーションのスコア: 技術的適合度アプリケーションのスコア: リスク可能性適性
すべての次元で適している。このグループのアプリケーションは、クラウド化に最適です。スコアもすべての次元で好ましい値になっています。
2 つの次元で適している。このグループのアプリケーションも、クラウド化に適しています。スコアは少なくとも 2 つの次元で好ましい値になっています。
2 つの次元で適している。
2 つの次元で適している。
1 つの次元で適している。このグループのアプリケーションはクラウド化に適しているとは言えません。スコアは 1 つの次元でのみ好ましい値になっています。
1 つの次元で適している。
1 つの次元で適している。
どの次元でも適していない。このグループのアプリケーションは、現状のままにしておくのが一番です。スコアはどの次元でも好ましい値ではありません。

クラウド・コンピューティング戦略に伴う懸念事項とリスクを考えると、企業はそれぞれ独自のビジネスの緊急課題、技術戦略、そしてリスク選好度に基づいてアプリケーション・ポートフォリオを評価した上で、クラウドに対する取り組みを始める必要があります。この記事では、性質、影響、優先度がさまざまなに異なる複数の競合する基準を考慮して評価することにより、階層分析法 (AHP) による多次元統計的評価が、クラウドに適したエンタープライズ・アプリケーションを決定する際に役立つ仕組みを具体的に説明しました。

参考文献

学ぶために

議論するために

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Cloud computing
ArticleID=551196
ArticleTitle=クラウドへのマイグレーションを目的としたエンタープライズ・アプリケーションの評価
publish-date=09142010