- 更新日 2024.09.30
- カテゴリー アプリ開発
Salesforceのアプリ開発とは?開発の基本や流れ、メリットを解説!【2024年最新版】
Salesforceのアプリ開発をすると、独自機能の追加や自社の業務フローに最適化した機能の追加ができます。本記事では、Salesforceでアプリ開発をするメリットや開発時の注意点、アプリ開発に使う言語・技術などを紹介していますので、ぜひ参考にしてください。
なお、Salesforceアプリ開発に対応している開発会社の探し方・選び方がわからない!という方はシステム幹事にお気軽にご相談ください。貴社の目的・予算にあった最適な会社を厳選してご紹介します。相談料・会社紹介料などは無料です。
【無料】Salesforceのアプリ開発に強い開発会社を紹介してもらう
Salesforceのアプリ開発とは
Salesforceのアプリ開発とは、営業支援や顧客管理機能を中心にさまざまな機能を提供するSalesforce上で動作するアプリを開発することです。
Salesforceのアプリを開発すると、Salesforceには標準搭載されていない機能の追加ができます。また、自社業務にあわせてカスタマイズしたアプリを利用すると標準機能だけで利用するよりも効率的な運用が可能です。
Salesforceのアプリストアでアプリを購入しての実装もできるので、自社で1から開発できなくてもアプリの導入・カスタマイズで機能を追加することもできます。
Salesforceとは
Salesforce(セールスフォース)とは、顧客関係管理(CRM)や営業支援(SFA)機能を中心にクラウドベースでビジネスを支援するプラットフォームです。日本では株式会社セールスフォース・ジャパンが提供。
クラウド型のサービスのため導入しやすいことやカスタマイズ性が高いことから、15万社以上の企業に導入されています。また、パナソニック株式会社や任天堂株式会社、三菱電機株式会社、株式会社大林組、KDDI株式会社などの大手企業に導入された実績も豊富です。
Salesforceの各ソリューションを利用すると以下のようなことができます。
- 顧客情報の一元管理
- 営業支援(商談の進捗管理や売上予測、レポート作成など)
- マーケティングオートメーション
- カスタマーサービス支援
- AIによるデータ分析・予測
業務内容や利用目的にあわせて導入する機能を選べるため、必要のない機能に料金を払うことになってしまうリスクを抑えられることも特徴といえるでしょう。
Salesforce開発とは
セールスフォース開発は「Salesforceのシステム構築」と「Salesforceアプリの開発」に分けられます。
Salesforceのシステム構築は、Salesforceで業務の支援システムを構築することです。業種や業態、目的にあわせて提供されているソリューションから自社の業務に適したものを選び、業務にあわせてカスタマイズします。
Salesforceのアプリ開発は、Salesforce上で動くアプリを開発したり導入したりして、Salesforceに機能追加・カスタマイズすることです。本記事では、主にこのSalesforceのアプリ開発について扱います。
Salesforceアプリ開発で利用される開発言語・技術
Salesforceでは、主に以下の開発言語や技術を利用してアプリ開発をします。
名称 |
概要 |
Apex |
サーバーサイドで利用するプログラミング言語 |
SOQL |
データベースとやりとりする言語 |
SOSL |
データベース全体とやりとりする言語 |
Visualforce |
独自の操作画面を作成するためのWeb開発フレームワーク |
Lightning Web Components |
HTMLやCSS、JavaScriptを利用してSalesforceで開発する プログラミングモデル |
Apex
Apexは、Salesforce用に作られたプログラミング言語です。主にSalesforceのサーバー上で動作するプログラムを書く際に使用します。
Javaに似た文法で記述するため、Javaの知識がある開発者なら比較的容易に習得できる点が特徴。ただし、大文字小文字の区別がない点や予約語に定められていて変数名に使えない単語がJavaより多いなど、Javaとは違う部分も多数あるので注意しましょう。
SOQL
SOQLはSalesforce Object Query Languageの略で、Salesforceデータベースに対するクエリ言語(データベースから情報を取り出すための言語)です。データベースの検索やデータの抽出、データの更新などデータベースのデータを扱う際に利用します。
国際標準化されているデータベース言語のSQLによく似た構文のため、データベースでSQLを扱ったことがある開発者なら習得しやすい言語といえます。
SOSL
SOSLはSalesforce Object Search Languageの略で、Salesforceのデータベースから検索する際に使用します。
SOQLは1つのオブジェクトからデータを取得するのに対して、SOSLは複数のオブジェクトから検索ができます。また、SOSLは正確性よりも関連性と速度を重視して検索したい場合に向いていることもSOQLとの違いの1つです。
Visualforce
Visualforceは、Salesforce上でカスタムユーザーインターフェースを作成するためのWeb開発フレームワーク(枠組みや土台となるソフトウェア)です。主にSalesforceの標準画面からカスタマイズしたい場合に利用します。
(ユーザーインターフェース:ユーザーが実際に見たり操作したりする画面)
Lightning Web Components
Lightning Web Componentsは、Salesforce上で動作するプログラミングモデルです。Web標準技術のHTMLやCSS、JavaScriptを使用してカスタムコンポーネント(特定の機能を実現する複数のコードを1つにまとめたもの)を作成します。
Lightning Web Componentsでカスタムコンポーネントを作成することで、独自機能を標準コンポーネントと組みあわせたシステムを構築できます。
Salesforceでアプリ開発をするメリット
Salesforceでアプリ開発をすると、以下のようなメリットがあります。
開発に使用する言語が覚えやすい
Salesforceで使用する開発言語は、既に普及している開発言語と似た文法のため学習しやすいことが特徴です。
例えば、サーバー側のプログラムを書く際に使用するApexはJavaに似ていますし、データベースを処理するSOQLはSQLに似ています。
ノーコード・ローコードでも開発できる
Salesforceの機能を活用すると、プログラムを記述しないノーコードや少ない記述量のプログラムで済むローコード開発でアプリを作れます。
ノーコード開発では、画面内に表示したい要素を自由に選んで配置し、カスタマイズしていく形式をイメージすると良いでしょう。
ローコード開発では、業務のプロセスを可視化したフローを並べて業務ロジックを構築する形式でアプリのベースとなる部分を作る仕組みを利用できます。そのため、プログラムの記述量を少なく抑えられます。
ただし、ノーコード開発では標準機能として用意されている業務プロセスしか利用できません。その場合は必要な部分を記述してローコード開発をすることになります。
自社業務にあわせてシステムを拡張できる
Salesforceのアプリを開発すると標準搭載されていなかった機能を追加できるため、標準機能のみで構築するよりも自社の業務に最適化したシステムを構築できます。
基本部分はSalesforceの各ソリューションの機能で構築して、標準機能では対応できない部分をアプリで機能の追加・カスタマイズをすると効率的です。また、Salesforceのアプリストアで公開されているアプリを導入して機能を追加することもできます。
他社のツールやシステムと連携できる
MicrosoftやOracleのシステムを始めとしてさまざまなシステムやアプリケーションと連携する機能が利用できるので、効率よく拡張できる点も特徴の1つです。
Salesforceにある他社ツール・システムとの連携機能が利用できることから、アプリを開発する際にも効率よく他社製品との連携が可能です。
アプリの開発スピードが早い
ノーコード・ローコードで開発したり、アプリストアで公開されているアプリを導入したりできることから、アプリの開発スピードを速められることもメリットの1つ。
ApexやSOQLなどのSalesforce向けの開発言語は、習得がしやすいという特徴があります。また、Salesforce開発者の需要も高まっていることから、開発する人材を確保しやすいといえるでしょう。
人材が確保しやすいことは、開発プロジェクト立ち上げ時や拡張時のリードタイムを減らし、開発スピードを速める効果に期待できます。
Salesforceでアプリ開発をする手順
Salesforceのアプリ開発は、主に以下の手順で行います。
- ビジネスモデルの可視化
- アプリの要件定義
- アプリの開発チームの立ち上げ
- アプリの設計・開発
- アプリのテスト・修正
- アプリのマニュアル作成
- アプリの運用
- アプリの修正・改善
次項から各ステップについて概要を紹介します。
ビジネスモデルの可視化
はじめに自社のビジネスモデルを可視化します。
フローチャートを用いて業務フローを作成すると良いでしょう。各プロセスに「いつ(きっかけ)」「どのような状況で」「どの作業を行う」といった情報を記載して時系列順に並べ、矢印でつなぎます。条件によって分岐する際は、分岐の条件を明確にしておくことがポイントです。
アプリの要件定義
要件定義とは、開発目的を明確にするためにアプリの目的やアプリで行う業務の流れ、必要な機能などを詳細に定めることです。要件定義で手を抜いてしまうと、機能が足りなかったり目的とあっていなかったりして想定していた通りの役割を果たさないアプリになってしまいがちなので注意しましょう。
アプリ開発をすることになった背景やアプリの目的、実装する機能、性能や保守性などを決めていきましょう。
アプリ開発・システム開発における要件定義の詳細な項目は以下の記事でも紹介していますので、細かく知りたい方は参考にしてください。
関連記事:システム開発の要件定義とは?進め方や事例をわかりやすく解説(サンプル付)
アプリの開発チームの立ち上げ
要件定義書が完成したら、その情報をもとに開発に必要な人材を推定して開発チームを立ち上げます。
開発チームを作る際は、プログラミングの知識があるスタッフだけでなく、アプリで効率化しようと考えている業務に詳しいスタッフも入れることがポイントです。実際に業務に携わっているスタッフを入れていないと、機能はあるが業務の実態に沿っておらず使いにくい(使われない)アプリになってしまうおそれがあります。
アプリを開発するチームができたら、設計・開発などの開発段階に入ります。
アプリの設計・開発
要件定義書をもとにしてアプリの設計書を作成します。アプリケーションのユーザーインターフェース(外観)や実装する機能を洗い出して、設計書に落とし込みましょう。
大規模な開発になる場合はアプリ全体の設計を基本設計書、機能ごとの詳細な設計を詳細設計書に分けます。
設計書が完成したら、設計書に従って実際の開発を進めていきます。
アプリのテスト・修正
開発が終わったらアプリをテストします。まずはテスト環境を構築してテストし、問題がなければ実際の運用環境でテストしましょう。テスト環境でのテストを飛ばしていきなり本番環境でテストしてしまうと、不具合があった際に業務に大きな支障が出てしまうおそれがあります。必ずテスト環境でテストをしましょう。
テストに問題があれば、修正をしてまたテストをします。
アプリのマニュアル作成
アプリを開発しても現場で利用されなければあまり意味がありません。そのため、アプリの開発者以外にも理解できるように、操作マニュアル・運用マニュアルを作成します。開発したスタッフが退職してしまったケースを想定して、導入マニュアルやメンテナンスマニュアルも作成しておくと良いでしょう。
実際に操作しながらスクリーンショットを取り、図解として組み込むとわかりやすいマニュアルになるのでおすすめです。
アプリの運用
アプリが完成したら実際に運用します。運用をする際は、定期的なメンテナンスだけでなく実際に業務に活用されているかを確認し、されていない場合は活用させるための施策をする必要があります。
アプリの修正・改善
アプリを運用していくと問題点や修正点が出てくるので、継続的に修正や改善をしましょう。不具合や問題点の解消だけでなく、アプリの改善も重要な要素です。現場で利用しているスタッフの意見を取り入れてより使いやすくしていくことで、活用されるアプリになります。
「必要な機能はあるものの実務と乖離していて使いにくいためあまり使われない」ということがないように、実務にあわせて改善していきましょう。
Salesforceのアプリ開発をする際の注意点
Salesforceはクラウド上で利用するプラットフォームです。ネットワークに接続することが求められるため、セキュリティにも配慮をする必要があります。
また、Salesforceのアプリで他のソフトウェアやシステムと連携する際に使用するAPIに24時間内に呼び出せる回数の制限があります。Salesforceの上位ライセンスに変更することで緩和できますが、呼び出し制限数を超えるとデータの取得ができなくなるので注意しましょう。
また、アプリを開発をする際は自社の業務に最適なものを作りたくなりますが、標準機能でも実現できる場合は戦略的選択をすることも必要です。全ての機能を1から作ると開発工数・コストが増えてしまうからです。予算に余裕がない場合は標準機能をベースにして、足りない機能だけをアプリで実装するほうが効率的といえるでしょう。
API制限やセキュリティの構築など、技術的なことが難しいと感じた場合は、Salesforceのアプリ開発を提供している開発会社に相談することも手段の1つです。自社でできる部分は自社で対応しつつ、知識や技術の面で難しい部分を任せることでコストを抑えつつアプリを開発できます。
Salesforceアプリ開発を外注する会社の選び方
Salesforceのアプリの開発を外注する会社を選ぶ際は、以下のことを意識すると良いでしょう。
自社のビジネス分野が得意かを確認する
Salesforceで業務アプリケーションを作る際は、アプリ開発の知識だけでなく自社の業務への理解も必要不可欠です。業務への理解が足りないと、業務フローを作成する際に正しく構築できないおそれがあります。そのため、自社が行っているビジネスの分野に対する知見があるかどうかを確認することが大切です。
開発会社の公式Webサイトに記載されている実績や導入事例、公開している資料から得意分野を確認して、自社のビジネス分野に詳しい会社を選ぶと良いでしょう。
コミュニケーション能力があるかを確認する
開発会社の営業担当者にコミュニケーション能力がないと、伝えた要望が開発スタッフに正しく伝わらないことがあります。その結果、必要な機能が足りなかったり、実務で使いづらい操作感のアプリが納品されたりしてしまうかもしれません。
問い合わせやヒアリング、見積もり依頼をしたときの対応をよく観察し、コミュニケーション能力に問題はないかを確認しましょう。
サポート体制が充実しているかを確認する
Salesforceアプリは主に業務システムに機能を追加することを目的として開発するので、導入してからの運用も大切です。そのため、開発を外注する会社を選ぶ際は、運用のサポートや修正・改善が必要になったときのサポートが充実している会社を選ぶことがポイントです。
アフターサポートがほとんどない会社を選んでしまうと、運用中に不具合が出た場合や業務フローが変更になって修正が必要な場合に困るケースもあるので注意しましょう。
相見積もりをとって比較する
相場感や内訳の内容を精査するために、相見積もりを取ることも会社を選ぶ際のポイントです。相見積もりをとって比較することで、費用が妥当かどうかや見積もり項目に抜けがないかを判断しやすくなります。
ただし、相見積もりを多く取りすぎてしまうと内容の精査にかかる手間が大幅に増えてしまいます。そのため、事前にある程度調査して自社にあう会社を2~3社ほどピックアップしてから見積もりを依頼すると良いでしょう。
自社にあう開発会社を調査する作業が大変だと感じた際は、システム幹事にお気軽にご相談ください。
【無料】Salesforceのアプリ開発会社を紹介してもらう
【まとめ】Salesforceのアプリ開発について紹介しました
Salesforceのアプリ開発では、Salesforceにない機能を追加したり自社の業務に最適化したりできます。また、Salesforceのアプリストアで公開されているアプリを導入してカスタマイズすることでも、Salesforceの機能を追加可能です。
本記事で解説したSalesforceでアプリ開発をするメリットや注意点を参考に、Salesforceアプリの開発を検討してみてください。また、アプリ開発を外注する際は、本記事で紹介している選び方のポイントもあわせて参考にしてください。
Salesforceのアプリ開発に強い開発会社を探すことが難しいと感じた場合は、お気軽にシステム開発にご相談ください。貴社の目的・予算にあった最適な会社を厳選してご紹介します。相談料・会社紹介料などは無料です。
コンサルタントのご紹介
岩田
専任のコンサルタントが、
お客様の予算と目的を丁寧にヒアリング。
最適な会社をピックアップ・ご紹介させていただきます!
初心者の方でも安心してご相談いただけます。
この記事を書いた人