オブジェクト指向アプリケーション開発の大きな価値の 1 つは、事前に構築され、テストされ、十分理解されているコンポーネントを、より多く使用できることです。このようなコード構築手法を提唱した人々は、彼らの多くのコードを再利用可能にすることを約束し (またそれを世の中に送り出し)、アプリケーションの開発時間を短縮し、新製品を市場に投入する時期を早め、新規開発と保守の両方のコストを低下させました。
OO コード開発の主要なメンバーの 1 人である Kent Beck は、一緒に仕事をしていた顧客グループに対して、アプリケーションの設計と構築を円滑に推し進めるために、「ボキャブラリー」を拡充する必要があると語りました。一緒に仕事をしている人々が、達成すべき仕事を、熟知している用語で認識し、目指すアプリケーションをよく知られた部品で作り上げる方法を理解できた場合、新規プロジェクトの仕様が明確になり、アプリケーションを構築するための道筋を、既知の一歩一歩の積み重ねにマップすることができます。パターンを使用することにより、開発チームは、見込み客と管理者の両方に対して、自分たちが何を構築しているのかを明確に述べることができるようになります。
Patterns for e-business は、公表されているコーディング・パターンの本体に、多くのパターンを追加することになります。このコーディング・パターン本体とは、e-business アプリケーションの開発者に向けて、解決すべき問題を (アーキテクチャー、設計、およびエンドツーエンド製品のレベルで) 記述するボキャブラリーと、その問題を解決する方法に関する大量の情報の両方を提供するために、IBM が各コーディング・パターンごとに少数のパターンといくつかのシナリオを文書化したものです。これらのパターンは、IBM グローバル・サービス、ビジネス・パートナー、およびカスタマー IT 設計の各部門で集められた知恵を凝縮したものです。
Patterns for e-business の特長は、各ビジネス・パターンに、そのパターンの主要テーマのバリエーションと考えることのできる複数の論理パターン、またはトポロジーがあるということです。これらのトポロジーにより、特定のビジネス要求を満たす方法のバリエーションのセットが提供されます。このバリエーションのセットは、プロジェクトの目的、および最終的なソリューションに反映する必要のある出発点または既存インフラストラクチャーに基づいています。たとえば、現在必要としているデータが、既存のトランザクション管理プログラムによって管理されている全社的データベースに入っている場合、このデータにアクセスして、それを使用するための方法を考えなければなりません。Patterns for e-business は、このようなメイン・パターンのバリエーションを提供するものです。このトポロジー のセットは、必要なバリエーションを提供します。このバリエーションは、既存のインフラストラクチャーおよびシステムを基にして機能を実現しようとするプロジェクトで必要とされるだけでなく、新しい会社または既存の会社のため、新規システムを構築する開発者にも、役立ちます トポロジーの例については、「Patterns for e-business」サイトのユーザーと企業のトポロジーを参照してください。
Patterns for e-business は、規範的なアプローチも提供します。医者は、患者を診察し治療方針に到達するプロセスを、明確な形で教えられてきました。彼らは、主要な身体の組織を手早く診察し、問題のある組織を割り出します。そのうえで、標準の意思決定ツリー論理のパターンに従って、治療方針を立てることができます。Patterns for e-business のケースでは、まず最初に顧客の要求、ビジネス上の問題、既存のビジネス・プロセスや規則、および既存のシステム、データ、またはインフラストラクチャーから出発します。その後で、構造化されたアプローチに従うことにより、その顧客向けにカスタマイズされた ビジネス機能に到達できます。そのビジネス機能には、顧客関係管理、サプライ・チェーン・マネージメント、知識管理、ビジネス・インテリジェンス、顧客または従業員とのコラボレーション、e-commerce、その他図 1 に示すような多数のものがあります。
分かりやすく、説得力のある、規範的なアプローチ
「Patterns for e-business」Web サイトは、必要な情報を素早く入手するのに役立ちます。このサイトは、ユーザーの現在のビジネス要求に合致した情報に達するために、(上記のように) 論理的に事を進めるためにも参考にもなります。各トポロジーには複数の実装が含まれているため、各種テクノロジーを用いた実装を比較検討することができます。テクノロジーとして、Windows テクノロジー、分散テクノロジー (AIX など)、またはサーバー (OS/390 や OS/400 など)があげられます。ビジネスおよび論理パターン構造を利用すると、選択した製品に基づいてユーザー独自の物理パターンを文書化することができます。IBM は将来さらに多くのサード・パーティー製品のコンテンツをサイトに追加する予定です。
パターン作業では、最小限の数の Patterns for e-business を提供することを目指しています。その絞り込まれたパターンは、IT 設計者が面しているケースの 80% でビジネスの問題を分析でき、提示された実績のあるアーキテクチャー、設計、および製品のパターンとガイドラインのうち 50% から 80% までが再利用できることを目指しています。ユーザーのプロジェクト内に複雑なビジネス問題がほとんどない場合には、上述の比率以上に再利用を行うことができ、抱えている要件に対して、おそらく、パターンおよびトポロジーが 1 つに絞り込まれるでしょう。プロジェクトが複雑な場合には、各パターンが利用できるケースが減少するでしょうが、いくつかのパターンを組み合わせて使用できることも可能です。Patterns for e-business を使用すると、評価の定まった下記のものを再利用して、必要とするインフラストラクチャーの多くの部分を迅速に開発できるようになります。
- アーキテクチャー・パターン
- 設計パターン
- ランタイム・パターン
- 設計、開発、および配置のガイドライン
これらのパターンは、料理の本とは異なり、アプリケーションの構築のための完全な手引きを示すことを目的に設計されたものではありません。これらは設計者に対して確固とした手引きを提供し、同じ問題と取り組んだ他の開発者による多くの参考資料や経験へのリンクを提供するために設計されたものです。
Patterns for e-business は、既存のアプリケーションと組み合わせて使用できるように設計されています。これらを使用することにより、出荷初期の製品に変更を加え、他のシステムと接続したり、データや機能を追加することができます。のみならず、既存のアプリケーションを変更するための作業項目洗い出しにも使用できます。つまり、パターンを組み合わせて複雑な問題を解決することができます。たとえば、商品を販売し、サプライ・チェーン・マネージメントを行ない、在庫管理を行うサイトを構築するとした場合、そのためのソリューションは、User-to-Online Buying および Business-to-Business の組み合せによって得られます。
Patterns for e-business のトポロジーは、既存のアプリケーションおよびインフラストラクチャーを採り入れたシステムの構成方法を記述するためにも役立ちます。IBM Application Framework for e-business の重要なポイントの 1 つは、ユーザーが既存のインフラストラクチャーおよびシステムに基づいてシステムを構築することにより、開発速度を上げることができるということです。市場に投入する時間を短縮するだけでなく、既存の資産を再利用することで、成功の確率は大幅に高まります。それは、新規アプリケーションの核になる部分は、すでによく理解され実績があるからです。したがって、既存のシステムを従来の方法で使用しながら、移行を円滑に行い、既存のシステムに新規機能を追加することが可能です。顧客または他の企業に対して既存のチャネルでサービスを提供しながら、新規チャネルをオンラインで立ち上げることにより、顧客や他の企業に対して新しいアクセス方法とサービスに移行または適応するための時間を提供することをお勧めします。
Patterns for e-business は、新規ビジネスまたは新規企業を Web でスタートさせるためにも、同じように役立てることができます。
パターンとそれに関連する顧客の用途
| ビジネス・パターン | e-business ソリューション領域 |
|---|---|
| User-to-Business | CRM、顧客セルフ・サービス |
| User-to-Online Buying | e-commerce |
| Business-to-Business | SCM、出荷、e-marketplaces |
| User-to-User | コラボレーション、顧客サービス |
| User-to-Data | ビジネス・インテリジェンス、知識管理 |
| Application Integration | ビジネス・アプリケーションの統合 (ERP パッケージ実装の鍵) |
パターン名は、各パターンの一般的な性質を反映しています。ビジネス・ソリューション領域は、パターンによって提供されるアプリケーション・ソリューションの一般的なタイプの例です。このようなパターンがあること、そしてより複雑なビジネス問題を解決するために、これらのパターンが組み合わされていることがお分かりいただけると思います。
これらのパターンは、IBMとしての経験をまとめ、文書化することをを目指した計画によって、まとめあげられたものです。対象になったものは、お客さまのサイトでプロジェクトを構築するチーム、および IBM 自体を e-business 対応にさせるチームの経験です。IBM ケース・スタディー Web サイトのお客さまセクションには、この作業の多くのケース・スタディーがリストされています (参考文献を参照)。各パターンおよび該当トポロジーのコレクションをまとめるにあたっては、Patterns for e-business の Web サイトに記載されている構造化された記述が参照され、また、以下のような広範囲におよぶ参考資料が利用されています。
- レッドブック
- 白書
- テスト・レポート
- ガイドライン
- 開発キット
各パターンを専門に扱っているレッドブックには、そのパターンの詳細が記述され、そのパターンに属するトポロジー・セットに関して、以下のような文書化における標準的なトピックを記述しています。
- アプリケーション・トポロジーの選択
- ランタイム・トポロジーの選択
- 製品マッピング
レッドブックには、以下のガイドラインが記述されています。
- パフォーマンス
- テクノロジー・オプション
- アプリケーション設計
- アプリケーション開発
- システム管理
各チームによっても、パターン Web ページに成果が追加されています。これにより、ユーザーにとって可能な選択肢の幅と深さが増しています。
既存のビジネスを拡張することに力を注いでいるお客さま、また e-business として出発しようとしている新興企業と一緒に作業を行っている IBM および IBM パートナーにとって、Patterns for e-business は、きわめて重要な資産であることが証明されつつあります。
- 私たちの参考資料を調べてください。
- Pattern Languages of Program Design (Norman Kerth、James Koplien、および John Vlissides (Addison Wesley) 著) の中の "EPISODES: A Pattern Language of Competitive Development" (Ward Cunningham 著)
- Design Patterns - Elements of Reusable Object-Oriented Software (Erich Gamma、Richard Helm、Ralph Johnson、および John Vlissides (Addison Wesley) 著)
- A Pattern Language (C. Alexander、S. Ishikawa、M. Silverstein, M. Jacobson、I. Fiksdahl-King、および S. Angel (Oxford University Press) 著)
- Pattern - Oriented Software Architecture: A System of Patterns (Frank Buschmann、Regine Meunier、Hans Rohnert、Perter Sommerlad、および Michael Stal (Wiley, John, & Sons) 著)
- ユーザーと企業の間のパターンについて述べているレッドブックPatterns for e-business: User to Business Patterns for Topology 1 and 2 using Web Sphere Advanced Edition を参照してください。
- Patterns for e-business をサポートし、パターン開発キットのサンプルを提供しているレッドブックServlet and JSP Programming with IBM WebSphere Studio and VisualAge for Java も参照してください。
-
「Patterns for e-business」 Web サイトをツアーしてください。
John Lord は IBM の顧問 IT 設計者であり、25 年以上にわたってアプリケーションおよび製品開発プロジェクトの指導的役割を果 たしています。現在彼は、革新的 e-business テクノロジーのマーケティング・マネージャーです。彼が主として興味を持っているのは、パフォーマンス分析、キャパシティー・プランニング、および移行開発です。
John は、世界中のお客さま、ユーザー・グループ、および技術的な会議に頻繁に出席しています。彼は e-business の能力を利用してセキュアで信頼性の高いアプリケーションを構築することにより、収益を向上させ、コストを削減し、顧客サービスを向上させる方法をお客さまに分かりやすく説いています。彼が特に強調しているのは、e-business 環境における既存アプリケーション・システムの使用効率とセキュリティーの問題です。