アーキテクチャ・ジャーナル 混迷する時代のアーキテクチャ Mike Walker2010/04/21 |
|
|
■アーキテクトが付加価値を高めるには
これまで説明したように、アーキテクトとは、代役のいない重要な役割です。アーキテクトは、技術に関して偏見の少ない意思決定ができる立場であり、企業のソリューション群の全体像を見渡すことができます。この不確実な時代では、こうした存在は企業にとって大きな資産になります。経済が停滞する中、そのスキル セットは今まで以上に有効活用されるでしょう。
IT の予算削減は、IT の重要性が低下したことを意味するわけではなく、IT の合理化と改善というニーズが浮上してきたことを示しています。つまり IT 関連業務は実際には活発化します。この状況はアーキテクトにとって、アーキテクチャに関する優先度が再編されることを意味します。
●優先順位の変化
アーキテクチャに関する優先順位が変化したため、かつてアーキテクトが高い優先度を設定していた業務の先行きも変化しています。以前は企業戦略の一端を担っていた業務が、「高リスク」または「可能であれば対応」と評価が変わり、リスクを取らない慎重な戦略が主流となります。今後数年は、アーキテクトはミッションクリティカル、高い投資回収率(ROI)、低い総所有コスト(TCO)のプロジェクトに関わっていくことになるでしょう。
表1に、今後数年で変化することが見込まれるIT優先事項の例を示します。
表1: IT の優先事項 |
表1を見ると、大規模なリスクを厭わないIT 投資から、短期的なROIが実現可能な戦術的な活動およびプロジェクトへ優先順位がシフトしていることがはっきりと分かります。活動的で機に敏いアーキテクトならば、このような変化にも難なく対応できるでしょう。
■アーキテクチャに関する意思決定を最大化する手法
これまで、思考法を変えて、ソリューションをより実践的なものにしていく、ということについて説明してきました。これを実現するには、実践的な手法が必要になります。
実践的な手法は、アーキテクチャに関する意思決定の定量化・定性化が共に可能でなければなりません。しかし、これを可能にする手法はそれほど多く存在しません。これまで課題となっていたのは、アーキテクトが自分の頭の中で意思決定を定量化してしまうことでした。しかしその場合、課題に対する偏見や解釈が発生するため、常に同じ成果をもたらす、繰り返し可能な手法が確立されないという問題があります。
このようなレベルの分析を繰り返し実行するための手法が存在します。それが、アーキテクチャ定性化メソッド(AQM: Architecture Qualification Method)です。
●アーキテクチャ定性化メソッド(AQM : Architecture Qualification Method)
AQMは、ビジネス アーキテクチャを編成し、アーキテクチャに関する意思決定を完全に定性化する実践的な手法です。AQMはアーキテクトが実行します。また、既存のアーキテクチャ フレームワーク(TOGAF、FEAF、EACOE、IASA等)、アーキテクチャ標準や、実証済みの既存業務に組み込むことができます。AQMが提供するツール セットを活用することで、アーキテクトは以下を実現できるようになります。
- 企業の品質特性を把握する手法の採用
- 企業独自の品質特性の定義を記録するしくみ
- 品質特性の分類/変更を可能にする高度な情報分析能力
- ソリューションの属性を論理的に説明するフレームワークの用意
- アーキテクチャを分類し、論理的に説明するための全社的な管理体制
AQMは、アーキテクチャの複雑性とその把握によって問題を直接解決します。図2に、アーキテクチャに関する意思決定プロセスにおけるインプットの一部を示します。図を見て分かるように、さまざまな角度からのインプットが発生します。
図2:アーキテクチャに関する意思決定に対するインプット |
AQMは以下の課題を解決します。
- アーキテクチャ分析を繰り返し行う方法の提供。
- アーキテクチャの品質特性の定性化。
- ソリューション アーキテクチャの開発に伴う複雑化の低減および混乱の抑制。
- アーキテクチャ標準やデザイン パターンを編成するための分類フレームワークの確立。
- 標準やデザイン パターンの適用法の検証によるガバナンスの向上。
- 複雑性の緩和によるアーキテクチャの再利用性の向上。
アーキテクチャには、把握や定性化が困難な、横断的な懸念事項が多数あります。
●AQMのソリューションとしての特徴
AQMでは、アーキテクチャに関する問題を構造化されたアプローチによって解決します。このアプローチでは、他のソリューションとは異なり、企業はその業種に応じて自社独自の測定方法を定義できるようになります。図3に例を示します。
図3:業種によって異なる優先事項 |
図3は、業種によって優先事項がどのように異なるかを示しています。さらに、これらの業種では企業ごとに経営手法が若干異なります。これは、アーキテクチャの構築方法に大きく影響します。
この図は、Jeanne Ross 著の『Enterprise Architecture as Strategy: Creating a Foundation for Business Execution(戦略としてのエンタープライズ アーキテクチャ: ビジネス遂行の基盤を構築する)』(Boston、MA: ハーバードビジネス スクール プレス、2006)からの引用です。同書では、同じ業種の2つの企業(例: FedEx とUPS)の違いを比較し、各企業の業務を支援するIT システムの大きな違いについて説明しています。
その内容が、すべて図4 に示されています。
図4: AQM とビジネスの優先事項 |
AQMの目的は、完全なトレーサビリティを実現する方法を提供することにあります。また、意思決定を正当化できるだけでなく、定量化・定性化できることはきわめて重要です。これには、その意思決定がビジネスの要請を満たしていなければなりません。
AQMは、図4 に示すように、以下の構成要素と共に使用します。
-
プロセス: 既存プロセスへの統合と、AQMを実行するための独自プロセスへの統合を可能にする、AQM固有の構成要素です。
- 分類体系: 分類体系には以下の2つの側面があります。
- 品質特性を、社内でよく使われている用語や、特定のカテゴリに分類する。これは、アーキテクチャ用語の定義が人それぞれ違うためです。
- 品質特性の分類、プロパティ、閾値を作成する。これは、AQMの重要な特徴です。このしくみにより、企業における品質特性の意味を適切に定義して、完全な検証を行えるようになります。AQMでは、分類、プロパティ、閾値などを通してアーキテクチャの定量化・定性化を行います。
-
資産とパターンの対応マトリックス: AQMによって分類体系を確立したら、現実の要素との関連付けに着手します。「現実の要素」とは、実際のデザイン パターン、標準、ポリシー、既存のIT 資産(システム/ アプリケーション)を指します。この関連付けによって、ソリューションに対してどのようなデザイン パターンを使用するかを体系的に規定することができます。この結果、意思決定を自動化し、トレーサビリティを高め、IT ガバナンスを強化できるようになります。
よくあるシナリオとして、私が実際に体験した例を挙げてみましょう。ある企業が、FTP、SFTP、Web Services、CIFS/SMB、Connect Direct、Microsoft SQL Server Integration Services(SSIS)といった通信の標準テクノロジを保有しています。これらすべてのテクノロジは標準リストに含まれているため、コスト、複雑性、技術に対する理解の不足、個人的偏見など、さまざまな理由から最適ではない標準を開発者やアーキテクトが選んでしまう恐れがあります。
このシナリオでは、アーキテクトは実装にコストや時間がかからないFTPを選択しますが、ソリューションの推進者が、トランザクションの高い安全性と高い弾力性を必要としている場合、問題が発生します。FTP は適切な選択肢ではないのです。ここでAQM があれば、標準に対して条件を指定して、どのような状況でどの標準を採用すべきかを知ることができます。アーキテクチャのすべての品質特性(アーキテクチャの拡張性(scalability)、安全性(security)、信頼性(reliability)、相互運用性(interoperability)など。イリティーズ(“-ilities”)と総称される)について、条件を指定することができます。
- 検証ツール: アーキテクトがソリューションを開発する場合には検証ツールが役立ちます。前のシナリオで述べたように、このツールを使用することで、すべてを1 つに統合することが可能になります。あらゆる複雑性から免除されるため、アーキテクトはソリューション開発に専念できます。標準に関する分厚い資料に目を通して、役に立つかどうかもはっきりしないような情報を探す必要がなくなります。
●AQMの使用方法
メソッドを定義することと、メソッドを実行可能なものにすることはまったく別の作業です。AQMは以下のように構成されており、すぐに着手・実践できます。
- ほぼすべてのアーキテクトがすぐに使い方を理解できるOffice Excel ベースのテンプレート
- アーキテクチャのメタデータ リポジトリとの連携
- Office SharePoint に格納した標準プロセス定義
図5は、AQMのスクリーン キャプチャです。データが表示されていませんが、これには特別な理由があります。このサンプルでは、データは分類マトリクスに格納されており、サンプルの値が表示されています。ここでは、どのようなデータが表示されるかが簡単に分かるように、内容は単純化しています。実際の実装では、リポジトリは品質特性の情報や分類子が複雑に絡み合った大量のデータを扱い、スプレッドシート上に表示します。
図5: AQM のさまざまな外観 |
AQMの簡単な概要を説明し、その目的、手法、関連ツールについて紹介しました。AQMを採用することで、アーキテクチャに関する意思決定の精度と品質をより高い水準に引き上げることができます。
INDEX | ||
[アーキテクチャ・ジャーナル] | ||
混迷する時代のアーキテクチャ | ||
1.アーキテクトに対する要求の変化 | ||
2.アーキテクトが付加価値を高めるには | ||
3.重要な4つのアーキテクチャ要件 | ||
「アーキテクチャ・ジャーナル」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|