Salesforce Developers Japan Blog

eCars のサンプルアプリケーションのご紹介

(この投稿は Chris Castle(Salesforce.com) による『Announcing Salesforce Platform eCars Sample App』の翻訳です)

 

ご存知の通り、Salesforce プラットフォームではビジネスにおいて必要なほぼすべての機能を構築することができます。私達が今回作成した新しいサンプル・アプリケーションは、Salesforce プラットフォームで実現出来るそれらの機能の一部をご紹介するためのものです。

このサンプル・アプリケーションに登場する架空の電気自動車会社であるパルサー・モーターズ社では、プラットフォームが提供する複数の機能を効果的に連携する事で従業員と顧客の両方のエクスペリエンスを向上しています。

eCars

eCars とは、架空のパルサー・モーターズ社が Salesforce プラットフォームをどのように使用しているのかをご覧いただくためのサンプルアプリケーションの名前です。

このアプリケーションでは、Sales Cloud、Service Cloud、ソース駆動開発、イベント駆動アーキテクチャ、Lightning Web Components、Heroku、Node.js、プログレッシブ Web アプリケーション、データストリーミング、IoT、Postgres、Apache Kafka などの技術が活用されています。

これらのテクノロジーはそれ自体が非常に興味をそそられるものですが、それ以上に重要な事は、なぜ、そしてどのようにしてこれらにテクノロジーが利用されているのかということです。なぜこれらの技術がパルサー・モーターズ社にとって有用だと考えられるのでしょうか?これらの技術から企業が価値を見出すには、どのように活用されるべきなのでしょうか?

なぜ(Why)

パルサー・モーターズのニーズについて想像してみましょう。

新しい電気自動車会社として急成長中の会社であるパルサー・モーターズ社は、ビジネスの成長を支えてくれるソフトウェアを必要としています。

開発者としては、ゼロからすべてのソフトウェアを構築したくはないでしょう。また、維持管理や運用にかかる時間も節約しなければ、競合会社に先を越されてしまう可能性もあります。

そこでパルサー・モーターズ社の 3 人の小さな開発チームは、Salesforce プラットフォームの上にアプリケーションを構築することにしました。なぜなら、これには多くのメリットがあり、ビジネスの成長に特に効果のある仕事に集中することができるようにもなるからです。

 

構築するシステムの利用者としては様々なユーザーを想定できます。電気自動車を吟味して購入する消費者、購入を支援する販売員、そしてパルサー・モーターズ社の車両に関するあらゆる問題を解決するために顧客を支援するサポートエージェントなどです。

 

少し立ち止まって、これらすべてのニーズを満たすことの難しさについて考えてみましょう。たった 3 人のソフトウェア開発者からなるチームが、顧客向けのウェブサイト、CRM ツール、カスタマーサポート・ツールを構築し、これらをすべて統合するには、1 年とは言わないまでも何ヶ月もかかることでしょう。Salesforce プラットフォームを使用することで、3 人の開発者からなる小さなチームでも、ビジネスの 3 つの重要な部分を構築して運用し、わずか数ヶ月ですべてを統合することができます。これにより、細かなのソフトウェアの構築と運用に費やしていたであろう時間を節約することができるはずです。

どのように(How)

このサンプルアプリケーションをすぐに試してみたいという方は、trailheadapps GitHub リポジトリ の README にあるデプロイの手順をチェックしてください。自動デプロイスクリプトの実行には少し時間がかかるので、それを開始してから、このブログ記事を読み始めるとサンプルアプリのすべての機能と、なぜ私たちがそれらを構築したのかについて学んで頂けます。

 

それでは、サンプルアプリのいくつかの機能を見ていきましょう。

Car Configurator コンポーネントは、Lightning Web ComponentsLightning Data Service を使用して構築されており、パルサー・モーターズ社の販売員が店舗に来店した顧客のためにその場で車をカスタマイズしたり、Heroku 上に構築された Web サービスを使って顧客が自身で選択した車の設定オプションを PDF として生成することができます。

サービスクラウドでは、対象の車両に関して現在の速度、バッテリー残量、MPGe と航続距離などの車両診断データが表示され、サポートエージェントが顧客の車両をリアルタイムに診断することができます。データは車両から MQTT によって送信され、Kafka over WebSocket から Salesforce にストリーミングされます。

プログレッシブ Web アプリケーションは、ブラウザで実行することも、上のようにデスクトップ上でネイティブアプリとして実行することもできる Web アプリケーションです。パルサー・モーターズ社は、npm 上の Lightning Web ComponentsLightning 基本コンポーネントを活用することで、従業員向けアプリケーションのコンポーネントを素早く再利用して、この顧客向けアプリケーションを作成しました。顧客向けアプリアプリケーションから Salesforce にデータをアップロードする時は、新しい Composite Graph API を使用する事で複雑なデータモデルも1回のリクエストで変更する事が可能です。

変更データキャプチャを使用したイベント駆動型アーキテクチャを採用しており、パルサー・モーターズ社は他のシステムとリアルタイムにデータを同期させることができます。また、同じ技術を活用して、デバイス間でリアルタイムにデータを更新することで、営業担当者をサポートすることもできます。

パルサー・モーターズ社は、ビジネスに関するあらゆるデータを Salesforce に安全に保存することで、見込客からその顧客が選択した車の構成オプションまで、Single Source of Truth を実現しています。

まとめ

今回は Salesforce プラットフォームでの開発の柔軟性と容易さをご理解頂くための新しいサンプルアプリケーションである eCar をご紹介しました。

更に詳しく知りたい方は、eCars の GitHub リポジトリを確認してみてください。デモのすべての部分のデプロイを自動化するデプロイスクリプトが提供されている他、個々のステップについても確認できるように手動デプロイの手順を文書化されています。

著者について

Chris Castle は Salesforce で Heroku を担当する Director of Developer Advocacy です。彼は物事を単純化し周りの人に教えてる事が得意です。

彼は、JavaScript、Ruby、Python を書いています。

Twitter: @crc

コメント

eCars のサンプルアプリケーションのご紹介