CodeZine(コードジン)

特集ページ一覧

実際の事例に学ぶ! Salesforceで実現するモダンなアジャイル開発とDX【デブサミ2020夏】

【B-3】現役開発者が語るSalesforceテクノロジーとデジタル・トランスフォーメーション

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2020/10/22 12:00

 SalesforceはSaaSなので、業務をSaaSに寄せていくのがコツだ。それゆえに「独自の業務に合わせた開発は向かない」と思われがちだが、それは誤解だ。SalesforceのCustomer 360 PlatformやSalesforce DXにはモダンな開発ツールがそろい、アジャイル開発体験ができるようになっている。Salesforce DXの詳細と活用事例を紹介する。

目次
株式会社セールスフォース・ドットコム カスタマーサクセス統括本部 サービスデリバリー本部 テクニカルアーキテクト

株式会社セールスフォース・ドットコム カスタマーサクセス統括本部(左:神田貴博氏、中央:林良行氏、右:田中宏樹氏)

ローコード開発とコーディング開発の親和性が高いSalesforce

 Salesforceのアプリケーション開発プラットフォーム「Customer 360 Platform」は顧客との繋がりや業務をサポートするためのアプリケーションを構築するプラットフォームだ。活用する顧客のデジタルトランスフォーメーションを推進するための信頼性や革新性が盛り込まれている。利用者にとって劇的にアプリケーションの開発スピードをあげることが可能となる。

 従来のレガシープラットフォームでは、業務アプリケーション構築にはインフラ整備に多大な時間が費やされていた。一方、Salesforceではインフラにかかる労力が少なく、本質となるアプリケーション開発に注力することができる。

 Salesforceではアプリケーションビルダーによるローコード(ノーコード)開発と、Salesforce CLIやVS Codeなどコーディング開発の親和性の高さも特徴となる。前者のローコード開発は、開発の専門家ではない人もアプリケーション開発に携わることができて、開発の民主化を実現し、人材不足解消と開発の高速化がもたらされる。

 また2015年に発表されたSalesforce DX(Developer eXperience)は開発者のためのツールセットで、最新鋭の製品やツールを次々とリリースしている。Salesforceで、好みのエディタでモダンな開発サイクルを回すことができる。

モダンなアジャイル開発ができるSalesforce DXの4つの特徴

 より技術的に踏み込んで見ていこう。Salesforce DXを使えばモダンなアジャイル開発を実践できる。それはビジネス要件をユーザーのストーリーに落とし込み、Jiraのような課題管理ツールにタスクを登録し、GitHubなどからソースコードをチェックアウトして、Eclipseなどの開発環境でコーディングしてGitHubにプッシュし、JenkinsなどでCI/CDプロセスがキックされ、最終的には本番環境にデプロイされる……という流れだ。

 同様のことをSalesforceでやろうとすると、Salesforce DX以前では課題が生じていた。主に、開発実行環境となるDev Sandbox、メタデータの競合、パッケージング、運用自動化など。Salesforce DXの特徴と、これまでの課題をどう解決しているかを次に記す。

ソース主導開発

 従来のSalesforceでは、メタデータ形式がVCSと相性が悪く差分の追跡に課題があった。一方Salesforce DXでは、ソース形式がバージョン管理システムを想定して設計されているため、diffツールで競合を解決できる。これにより適切なバージョン管理が可能になり、GitHubからのCI/CDを実現している。

ロック解除済みパッケージ

 従来は変更セットを手動で作成して本番環境にリリースしていたため、手動であることと、履歴が確認できないことが課題となっていた。Salesforce DXではロック解除済みパッケージに変わり、パッケージ作成がCLIで自動化できて、過去リリースの履歴が追跡できるようになった。

Scratch Org

 従来は開発者が実行環境となるSandboxを共有していたため、同じメタデータを修正してしまい予期せぬ競合やデグレが生じていた。Salesforce DXでは開発者ごとにScratch Orgを作成するため、バージョン管理システムで差分が検知できるようになり、競合を回避してマージできる。

Salesforce CLI

 従来のIDEとなるEclipseベースのForce.comでは、Ant移行ツールでPackage.xmlが必要で、利用可能な操作に制限があった。しかし2019年10月で廃止となり、新たにSalesforce CLIが利用可能となった。Salesforce CLIでは、これまで制限されていたApexやSOQL実行などが可能となる。

 Salesforce カスタマーサクセス統括本部 テクニカルアーキテクト 林良行氏は「Salesforce DXではCUIからの操作に加え、VSCのExtensionからもSandboxに接続できて、ApexやLightning Compornentの開発効率化が実現する」と話す。

Salesforce DXによる各課題の解決

Salesforce DXによる各課題の解決


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • CodeZine編集部(コードジンヘンシュウブ)

    CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

バックナンバー

連載:【デブサミ2020夏】セッションレポート

もっと読む

All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5