Salesforce連携:ビジネス成長のために

クラウドとSaaS(Software as a Service)のパイオニアであるSalesforceは、質の高いセールス活動やサポートサービス、顧客とのコミュニケーションが促進できるため、多くの企業で利用されています。多様なデータや情報を記録できるSalesforceであっても、既存のCRMアプリケーションやERP、その他のデータベースとのインテグレーション戦略を実行できなければ、「データのサイロ化」から脱却することができません。つまり、データが持っている価値を十分に引き出せないままになってしまいます。

Saleforceが持っているビジネス価値を最大限に引き出すためには、インテグレーションが不可欠です。望むと望まざるとにかかわらずハイブリッドアーキテクチャが当たり前になっている現在、Salesforceや他のSaaS アプリケーションやオンプレミス型のレガシーシステムをシームレスに接続するための『インテグレーションソリューション』が求められています。

この記事では、Salesforce連携のための複数のアプローチを紹介します。

カスタムコーディング

SaaSが普及しはじめた頃、アプリケーションの接続・連携・統合は後回しにされました。SaaSに対応したインテグレーションツールもほとんど存在せず、Salesforceとレガシーシステムを接続するためには、IT部やSIerがカスタムコードを記述し開発しなければなりませんでした。

このDIYアプローチのメリットは、その「カスタマイズ性」です。開発者は、実装したいユースケースのためのコネクタを構築することになります。たとえば、Salesforceとオンプレミス型DB(例:MySQLやOracleなど)とのデータ同期や、NetSuite統合によるマッシュアップの作成のために、ハンドコーディングによるソリューションを活用することができます。 

しかし、ハンドコーディングには多数の欠点があります。以下に、その一部を紹介します。

  • 多大な時間とコストがかかる:社内の開発者が、Salesforce連携のためのコード記述に、多大な時間を掛けてしまうことがあります。これにより、ITプロジェクトに遅れが生じてしまいます。外部コンサルタントが関与している場合は、当然ながら予算も急増してしまうことでしょう。
  • 技術的な専門知識が必要になる:ハンドコーディングによるインテグレーションには、専門的なスキルが必要です。(技術的なスキルを持たない)ビジネスアナリストは、ITシステムとビジネスプロセスをうまく連携させるために、データの接続や統合をスクラッチで構築するように開発者に依頼しなければなりません。コードエラーへの対応や定期メンテナンスにも高いスキルを持ったIT専門家が必要になるため、デプロイメントが遅れてしまいます。
  • 拡張性がない:ハンドコーディングは、2つ、3つのシステムを接続するだけのシンプルなアーキテクチャには合理的かもしれません。しかし、どんなITアーキテクチャであれ、顧客やビジネスニーズの変化に応じて成長・進化が要求されることは必至です。新しいシステムやSaaSアプリを導入するたびに、アプリケーション間をポイント・ツー・ポイントで相互接続するために、さらなるハードコーディングが必要となります。長期的に考えて、この方法では成長を目指す企業の内部障壁となってしまいます。
  • 不安定なシステムの原因となる:一般的にSaaSアプリのメンテナンスやアップグレードは、サービスプロバイダによって行われます。そのため、ハードコーディングで造られたコネクタが、アップグレード後に機能しなくなる可能性があります。これはSalesforceのバージョンアップに限らず、連携先のSaaSアプリのアップグレードでも起こりえます。これがシステムエラーを引き起こし、連携データを必要とする重要な業務に多大な負の影響を与える要因となってしまいます。


Salesforceが提供するツールを用いたデータ連携

Salesforceは『Lightning Platform(旧Force.com)』と呼ばれる、ビジネスアプリケーション開発のためのクラウドプラットフォーム(aPaaS)を提供しています。もちろん、サードパーティのプロバイダーによるインテグレーションソリューションも利用可能です。一見、これらのツールはハンドコーディングに代わる有効な手段のように思えますが、いくつかのデメリットも存在します。

SlaesforceはAppExchangeを通じて、パートナー企業が開発したさまざまな組み込み済み(pre-build)のインテグレーションアプリを提供しています。このようなすぐに使えるソリューションによって、ハンドコーディングに必要な時間やコストを削減できるかもしれません。しかし、これらはブラックボックス的であることに加え、「見える化」や「モニタリング機能」が欠如していることが多く、修正やカスタマイズができない場合がほとんどです。

Lightning Platformでは、プラットフォームのAPIを使用して、開発者による新しいアプリケーションの構築やSalesforceと既存アプリの接続・連携・統合を実装することができます。Lightning Platformは新規アプリケーションの開発を目的としたaPaaSのため、インテグレーションはひとつの機能でしかなく、プラットフォームの主要な用途ではありません。さらにLightning Platformは、既存のユーザのためのSalesforceアプリの拡張や更新を簡単にしてくれますが、ベンダーの固定を招き、ユーザが異なるシステムやプラットフォームをまたいだインテグレーションを制限してしまいます。  


CloudHub:クラウド時代のインテグレーション

前章のような既存SaaSツールを利用したインテグレーションの制限を補うために、iPaaS(Integration Platform as a Service)が台頭してきました。iPaaSであるCloudHubは、クラウド時代に最適なインテグレーションソリューションです。豊富なAnypoint™コネクタのライブラリによりCloudHubは、Salesforceだけでなく、他のSaaS製品やクラウドサービス、SNS、オンプレミスアプリケーションを、コーディングしなくてもインテグレーションを実装することができます。

CloudHubは他のソリューションでは持ち得ない、以下のような機能を備えています。

  • インテグレーションアプリ: インテグレーションアプリは、CloudHub上で構築・公開されている多数のパッケージです。これにより開発者は、特定のインテグレーションの構築が迅速化されるだけでなく、非技術系ユーザにも公開することができます。すなわちCloudHubとは、組み込み済みのインテグレーションをドラッグ・アンド・ドロップで使用開始できるほどシンプル、かつ、開発者によるカスタマイズにも応えられる柔軟性を備えているのです。またCloudHubは、テスト済みで信頼性の高いコネクタを提供しているため、企業はカスタム型のポイント・ツー・ポイント接続に必要なメンテナンスやアップグレードの心配をする必要がありません。
  • セキュア・データ・ゲートウェイ:CloudHubのセキュア・データ・ゲートウェイを使用することで、開発者はカスタムコードを記述せずとも、Lightning Platformアプリとレガシーシステムのインテグレーションとオーケストレーションをシンプルかつ安全に行えます。これにより、Lightning Platformやその他のSaaSアプリのデプロイによって生じる『サイロ化』が解消できます。
  • モニタリングと見える化:既存のSaaSソリューションには、モニタリングや管理機能が不足しています。CloudHubはブラウザベースの管理ポータルを備えており、フローやメッセージ、その他サービスを詳細に見える化することで、アップタイムやパフォーマンスをモニターできます。
  • オープンなプラットフォーム:CloudHubでは、オープンスタンダードによってアプリケーションやシステムを容易に追加・削除できます。つまり、SaaS、エンタープライズアプリケーション、SNSなど、すべてをインテグレートすることができるのです。SaaSベンダーが提供するプラットフォームとは違い、CloudHubでは特定のSaaSアプリに縛られません。もちろん、Lightning Platform以外の用途でも利用することが可能です。
  • クラウド機能:CloudHubは純粋なクラウドベースのプラットフォームです。セキュリティと分離のためのマルチテナンシー、弾力性と拡張性、セルフサービスによるプロビジョニング、コスト効率に優れた従量課金モデルなどの一般的なクラウド機能を備えています。