BSA
8:Integration and Extension
章の要約 †
- 統合は、プログラム的にほかのものととあなたのシステムをリンクするプロセスである。
- 拡張は、プラグインアーキテクチャーのような、明確に定義されたアプローチを通して、システムに新しい機能を追加するプロセスである。
- 統合と拡張機能は、顧客の求める製品を作成することを可能にする。おまけに、厳密な顧客との関係を作成し、顧客が競合他社に向かう可能性が少なくなります。
- 論理層と物理層のさまざまなシステム機能を整理するレイヤアーキテクチャー·パターンは、エンタープライズクラスのソフトウェアシステムに統合と拡張のための、いくつかの優れた選択肢を提供します。階層化アーキテクチャの主な層は、
- ユーザーインターフェース
- サービス
- ドメインモデル
- 永続データ
- サブレイヤは、これらの層内に存在しても良い。そして他の層も特殊な要件に対処するために作成することができる。
どのようなアーキテクチャの構造であっても、スパイク(それは、すべての層またはサブシステムを介して機能的に駆動されるユーザ可視)でそれを作成する。
- サービスとドメインモデル層内での統合と拡張ポイントを提供する方法はいくつかあります。例えば、
- APIを公開するようなプログラム的な技術
- プラグインアーキテクチャの作成(Webブラウザのような)など登録技術
- 永続データの統合と拡張は以下を通して達成することができる。
- ビュー
- フック·テーブル
- スプレッドシートピボットテーブル
- 抽出、変換、ロード(ETL)のスクリプト
- 拡張と統合によるアプリケーションのビジネス波及効果は以下を含む。
- 専門家は、これらの活動に顧客を導くためのサービス組織を提供する
- 顧客が自分でこれを行う方法を理解していることを確実にするための研修プログラム
- あなたのアプリケーションに関連付けられたエコシステムを作成するための認定プログラム
- アプリケーションの周りのユーザーのコミュニティ
- 明示的に統合と拡張をサポートするライセンス契約
- あなたのアプリケーションを拡張あるいは統合するあらゆる顧客向けの方法は、慎重に管理されるなければならない。あなたは、安定性への公約を作成し、それを尊重する。
これをチェック(Chek This) †
- システムが拡張したり統合することができるそれぞれの方法のために、顧客が希望する拡張や統合を作成できることを保証するための必要な支援材料を持っている。
- アプリケーションが他のアプリケーションとどのように統合されるかを定義するコンテキストダイアグラムを使用している。
- 一貫性のあるAPIを作成するための命名規則を確立している。
- APIへの各コールのパフォーマンスとリソースの影響はよく文書化されている。
これを試そう(Try This) †
- 1.どの程度にあなたのシステムが他のシステムと統合することができますか?どのようにあなたの技術があなたのターゲットとする市場に有効であるかを知っていますか?
- 2.どの程度あなたのシステムを拡張することができますか?どのようにあなたの技術があなたのターゲットとする市場に有効であるかを知っていますか?
- 3.どのような種類の認定プログラムを確立しているか?
- 4.どのような種類のサードパーティのコンサルタントと、共に働いてきましたか?彼らにどのような情報を提供していますか?あなたのアプリケーションを改善するためにどのように彼らの知識と経験を使用していますか?
- 5.どのような手順をユーザー·コミュニティを育成するために行ったか?