BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ アーティクル SOAガバナンスの実装

SOAガバナンスの実装

ブックマーク

多くの人が、SOAの導入成功について最も難しいことは技術ではなく、むしろ文化変化であると書いています。ソリューションを完全にコントロールすることを好む開発者の性分には合わない共有の文化を奨励しようとするにせよ、戦略的サービス作成を確保するための資金調達やプロジェクトの提案方法を変えようとするにせよ、ランタイム時に生じる新しい依存関係を適切に管理しようとするにせよ、こうした変化には単なる技術以上のものが必要です。文化変化が起こることを確実なものにするための鍵は何でしょうか? それは、行動変化のプロセスを管理することにあります。つまりガバナンスです。

ガバナンスは、望ましい行動を達成するために組織が利用する、人、方針、プロセスの組み合わせです。SOAガバナンスとは、SOAの導入によって生じる、またはそれに関連する、望ましい行動を達成することに関するものです。これらの行動は、プロジェクトガバナンスとして知られる通常のソフトウェア開発努力、ランタイムガバナンスとして知られる実稼働環境におけるサービス消費者とサービスプロバイダ間の相互作用、プロジェクト前ガバナンスとして知られるプロジェクトの提案、承認、資金調達に関連したプロセスに及びます。こうした各取り組みの中で、文化変化の成功を実現させるために、人、方針、プロセスを確立し、利用しなくてはなりません。

SOAガバナンスの最初のステップは、望ましい行動を実際に確立することです。SOAの導入成功が、その望ましい行動というのではありません。成功の意味など誰も定義していません。組織がSOAの導入によって達成したいと望む測定可能な成果が存在する必要があり、それが望ましい行動です。メディアは一貫して「ITとビジネスの連携の強化」といった漠然としたメリットを引用していますが、その測定方法を実際に定義することへ一歩前進する必要があります。連携とは、プロジェクトがより迅速に実行されるようになることを意味するのでしょうか?  もしそうであれば、それが測定可能なものです。アジリティ(俊敏性)についてはどうでしょうか? アジリティは、組織が変化に対応できる能力として見なすことができます。組織は、同じ機能の重複した実装があり、そうした機能に変更を迅速に展開する能力に影響を及ぼす可能性があることを知っているでしょうか? ここで再び、重複する実装の数の減少が測定可能なものです。これらがあなたの望ましい行動です。

こうした行動を確立する役割は通常、組織のリーダー(取り組みのスポンサーや利害関係者であることが多い)が引き受けます。彼らの仕事は、その方向性を確立することです。しかし確立後に、ガバナンスの最初のプロセスが実行されなくてはなりません。そのプロセスとは、望ましい行動につながる方針を確立することです。これが、統制機関の設置が必要なところです。ある意味では、これは多くの政府に存在する分裂(セパレーション)と類似していると考えることができます。米国では、大統領が法律を作るのではなく、議会が作ります。大統領はその法律を制定することに責任を持ちますが、さらに重要なことは、大統領は、指定の方向性(すなわち、望ましい行動)を確立する、国の名目上のリーダーです。議会次第で、彼らが望ましい行動につながると感じる法律が制定されます。しかし、これについての問題は、政党政治が立法機関と大統領の間に分裂を招く可能性があるということです。企業内にも同じリスクが確かに存在するため、方針を確立するために選ばれた人が、指定の望ましい行動のすべてに従うことが極めて重要です。大統領が議員を首にすることができない米国政府と違って、企業のCIOはSOAガバナンスチームのメンバーを選別することができます。

このステップの課題は、方針を確立する適切なチームを見出すことにあります。明らかに、幅広いセクションからの人材が必要です。エンタープライズアーキテクチャ(Enterprise Architecture)チームは、しばしばプロジェクトガバナンスと関連付けられる、技術的方針を確立する体制を整えているかもしれませんが、サービス所有権の決定の指針となる方針や、プロジェクトの定義方法に影響を与える方針についてはふさわしくない場合があります。非常に一般的なアプローチは、各自の分野内の方針についての「結果責任」を負うことができるさまざまなセクションのリーダーで構成されたCenter of Excellence(CoE)を設立することです。これには、ITマネージャー、プロジェクト・マネージャー、アプリケーションアーキテクト、インフォメーションアーキテクト、シニア開発者、ビジネスアナリスト、および運用マネージャーが含まれます。CoEは、方針の確立についての結果責任を負いますが、方針の確立についての実施責任を負う、深い専門知識を持った人物を引き入れることができます。

方針は、プロジェクト内での行動の指針となるだけでなく、システムの実行時の動作、および組織内でのプロジェクト提案をもたらすプロジェクト前プロセスの指針となるものを確立する必要があります。これらの方針の目標は、組織の目標とスタッフの望ましい行動との間の関連性を提供することでなくてはなりません。たとえば、SOAの取り組みの目標がITソリューションの提供にかかる時間を短縮することである場合、この目標に貢献できる1つの要素はソリューション内で既存のサービスを再利用することです。そのためには、チームは部族的な知識(tribal knowledge)以外の手段でどのサービスが利用可能であるかを知る必要があります。これは、サービスレジストリ/リポジトリのような、公然と検索可能な場所にサービスを公開する必要があることを規定する方針につながります。簡単ですが、この例は方針と行動との関連性を示しています。実行時の方針とプロジェクト前の方針についても同じことが言えます。実行時の例は、いかなる消費者も他の消費者のサービスの利用可能性を侵害できないようにすることが、望まれる目標である場合があります。この目標に貢献する方針は、すべての消費者が、警告しきい値とスロットリングしきい値を含め、予想される使用特性を確立する必要があるということです。プロジェクト前の例は、ITソリューションの提供にかかる時間を短縮するという目標に再び戻ります。私たちは、サービスを公開するというプロジェクト時の方針を加えましたが、対応するプロジェクト前の方針は、すべての提案がソリューションで利用する予定の既存のサービスをリストしなくてはならないということです。この方針自体は組織の行動に変化をもたらす可能性があります。サービスをリポジトリに置く必要があるということだけでは、価値を提供しません。その方針と、実際にリポジトリを使用するように人々を導く方針の組み合わせが、価値を高めるものです。

方針が確立されたら、ガバナンスの次のプロセスは、方針の強制ではなく、教育と伝達です。たいてい、方針はガバナンスの取り組みのメンバーに知られていますが、それらの方針に従うことを期待される人々には十分に伝わっていません。さらに、望ましい行動自体が事実上伝えられていないことがあり、優先順位の競合の事態につながる可能性があります。この最も一般的なシナリオは、チームが決定に対するアーキテクチャ上の影響を気にせずにスケジュールどおりかつ予算内の実現に向けて進めているプロジェクトに起こり得る競合です。このことは、スケジュールと予算は重要でないと言っているのではなく、重要なのはそれらだけではないということです。プロジェクトチームが、組織の望ましい行動と、方針とその行動の間の関連性を理解している場合にだけ、人々がそれらに従うことを期待できます。

CoEは、行動と方針について組織に伝達し、教育するための計画を作成する必要があります。それは、1回限りのプレゼンテーションではなく、SOAの取り組みによって影響を受ける複数の役割に向けた、目標とする伝達に利用可能なすべての伝達メカニズムを利用する正式な計画です。現時点では、この正式な計画を確立するために、伝達の専門家を雇うことが賢明であるかもしれません(あなたの組織にコーポレートコミュニケーション部門がある場合は、それが手始めに適しています)。伝達と教育の手法には、lunch and learnセッション(昼食をとりながらの講習)、組織内の各チームに対して行われる「ロードショー」プレゼンテーション、ブログやウィキ、正式なホワイトペーパーなどがあります。これらのメッセージは、lunch and learnセッションでの幅広いグループであろうと、各チームからの開発者を集めた非常に狭いグループであろうと、予想される聴衆をターゲットにしている必要があります。

方針の確立と同様に、通信の取り組みにはCenter of Excellenceの外部の人間を関与させることができます。非常に一般的な例は、SOAが組織にとってなぜ重要であるかという基本的なメッセージを伝える、CIOなどの、シニアリーダーシップチームのメンバーを持つことです。SOAの取り組みが進むにつれ、成功しているプロジェクトからの代表者は、彼らの経験と、導入した方針が取り組みの成功にどのように貢献したかを共有するために呼び出される場合があります。最後に、コンテンツを提供することに加えて、CoEは、この伝達が組織の教育に効果的であり、SOAの取り組み期間中有効であり続けることを確実にする必要があります。伝達の即座の効果および情報の長期保持の両方を評価しなくてはならないため、取り組みを通じてさまざまなタイミングで調査、インタビュー、アンケートを行うことによってこれを達成できます。

どんなガバナンスの取り組みでも、方針がいかに適切に規定され伝達されているとしても、ある程度の強制が必要となります。ほかのことはともかく、競合する方針が存在する可能性のある状況が生じたり、どの方針に従い、どこに例外を与えるかに関しての仲介が必要になったりします。プロジェクト前、プロジェクト、および実行時の取り組みに関連する決定を行う人々は、できれば、方針を順守し、強制が自然に起こることを望むでしょう。それが当然ながら最も楽な(抵抗の少ない)道であり、企業文化に合っているからです。しかし、それを無視できるという意味ではありません。犯罪率が低い地域だからといって、警察がいないわけではありません。監査とコンプライアンスのチェックは、最終プロセスである測定およびフィードバックに役立つことだけを理由として、組織の一部である必要があります。

方針の順守によって望ましい行動と目標が実際に達成されることを確実にするために、測定とフィードバックが実施されなくてはなりません。前の例を使用すると、測定により、プロジェクトがまだいつもと同じペースで提供されていることが示された場合は、何らかの変更が必要です。チームは、該当の行動につながるように意図された方針を順守していますか? していなければ、おそらく、順守するように強制プロセスに何らかの調整を行う必要があります。チームが方針を順守している場合は、方針の変更が要求されることがあります。一部の方針は、実際は逆効果になることがあります。前の例のケースのように、単に追加の方針が必要とされるだけの場合もあります。もし私たちがレジストリ/リポジトリに公開することを必要とする方針しか持っておらず、レジストリ/リポジトリ内を実際に調べることをチームに要求する方針が存在しなかったら、望ましい行動は達成されないでしょう。

この簡単な手引きによって、人、方針、プロセスの適切な使用が行動変化とSOA導入の目標をもたらす鍵であることが明らかになったことを願います。これらの同じ手法を、あらゆるガバナンスの取り組みの一部として利用できます。主な違いは方針の分野です。SOA導入の場合は、方針はすべて、サービスの定義、およびサービス消費者とサービスプロバイダ間の相互作用に根差しています。 こうしたサービスの技術的要素とその消費者、およびそれらの定義、作成、運用に責任を持つヒューマンチームの間の正しい行動の適切な表現こそが、SOAガバナンスというものです。ガバナンスの取り組みの成功は、SOA導入の取り組み自体の成功を決定することに多大な役割を果たします。

 

原文はこちらです:http://www.infoq.com/articles/implementing-soa-governance
(このArticleは2008年10月20日に原文が掲載されました)

この記事に星をつける

おすすめ度
スタイル

BT