Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SalesforceArchitectGroup_Osaka4th_QArev1
Search
atomica7sei
May 29, 2020
Technology
0
260
SalesforceArchitectGroup_Osaka4th_QArev1
Salesforce Cert - Integration Architecture
atomica7sei
May 29, 2020
Tweet
Share
More Decks by atomica7sei
See All by atomica7sei
SalesforceArchitectGroupOsaka#20_CNX'25_Report
atomica7sei
0
380
SalesforceArchitectGroupOsaka#17_Well-Architected_Reliable
atomica7sei
0
370
SalesforceArchitectGroupOsaka#16_Well-Architected_ALM
atomica7sei
0
370
Salesforce World Tour Tokyo 2023秋 振り返り会 for Arch
atomica7sei
0
170
SalesforceArchitectGroup#15_Integration
atomica7sei
0
510
SalesforceArchitectGroupOsaka#14_platform-multitenant-architecture
atomica7sei
0
120
SalesforceArchitectGroupOsaka#13_Sharing_and_Visibility
atomica7sei
0
720
SalesforceArchitectGroupDF22GG
atomica7sei
0
210
SalesforceArchitectGroup#11_Development Lifecycle and Deployment
atomica7sei
0
750
Other Decks in Technology
See All in Technology
「使い方教えて」「事例教えて」じゃもう遅い! Microsoft 365 Copilot を触り倒そう!
taichinakamura
0
280
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
500
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
310
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
3
5.5k
【Oracle Cloud ウェビナー】クラウド導入に「専用クラウド」という選択肢、Oracle AlloyとOCI Dedicated Region とは
oracle4engineer
PRO
3
120
Shirankedo NOCで見えてきたeduroam/OpenRoaming運用ノウハウと課題 - BAKUCHIKU BANBAN #2
marokiki
0
170
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
590
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
78k
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
140
綺麗なデータマートをつくろう_データ整備を前向きに考える会 / Let's create clean data mart
brainpadpr
3
370
職種別ミートアップで社内から盛り上げる アウトプット文化の醸成と関係強化/ #DevRelKaigi
nishiuma
2
160
SwiftUIのGeometryReaderとScrollViewを基礎から応用まで学び直す:設計と活用事例
fumiyasac0921
0
150
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Side Projects
sachag
455
43k
Designing for humans not robots
tammielis
254
26k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Writing Fast Ruby
sferik
629
62k
Unsuck your backbone
ammeep
671
58k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.7k
Speed Design
sergeychernyshev
32
1.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Transcript
Salesforce Architect Group大阪問題と解説 2020/05/30 rev1 文言修正と第7問図解 2020/05/29(金) 第四回ワークショップ
第1問 ユニバーサル・コンテナ社はSalesforceへのデータ移行を計画しており、Bulk APIを使用するかSOAP APIを使用するかを決定する必要があります。Bulk API とSOAP APIについて正しい文はどれですか。3つの答えを選んでください。 1. SOAP APIは、主従関係の親オブジェクトでのレコードロックの競合を回避
する 2. 一括ジョブのDML制限がSalesforceサーバーに適用されない 3. Bulk APIは、主従関係の親オブジェクトでレコードロックの競合を引き起こ す可能性がある 4. SOAP APIは、Salesforceの設定でジョブ監視を提供する 5. Bulk APIを使用すると、単一のZIPファイル内から複数の添付ファイルを ロードできる 2
第1問 解説 正解1、3、5 • 【正解】SOAP APIは、主従関係の親オブジェクトでのレコードロックの競合 を回避する ✓ 親オブジェクトのロックを取得し、同一トランザクションで処理します。 ロックが取得できなければエラーになります。
• 【正解】 Bulk APIは、主従関係の親オブジェクトでレコードロックの競合を 引き起こす可能性がある ✓ 並列モードで起動したときにロックの競合が起こる場合があります。 • 【正解】 Bulk APIを使用すると、単一のZIPファイル内から複数の添付ファイ ルをロードできる ✓ バイナリ型のコンテンツをZIPで用意することができます。1 つの zip ファイルに含めることができるファイル数は最大で 1,000 ファイルです。 3
第2問 ユニバーサル・コンテナ社は、商談が「成立」に変更されるたびに会計システム を更新したいと考えています。彼らの会計システムは、月末の処理をサポートす るために3〜4時間オフラインになることが時々あり、統合デザインでは、このダ ウンタイム中にトランザクションが失われないようにする必要があります。アー キテクトが考慮すべき2つの統合デザインはどれですか?2つの答えを選択してく ださい 1. @futureクラスでApexトリガを使用して、月末処理の完了後に会計システム にコールアウトする
2. 組み込みのキューイングフレームワークを持つワークフローアウトバウンド メッセージを利用する 3. Enterprise WSDLを利用して、会計システムからSalesforceに対して「成 立」に変更された商談をクエリする 4. エンタープライズサービスバスを利用して、Salesforceと会計システム間の Webサービスコールを仲介する 4
第2問 解説 正解2、4 • 【不正解】 @futureクラスでApexトリガを使用して、月末処理の完了後に会 計システムにコールアウトする ✓ 会計システムがダウンタイム中はエラーが返ってきます。Apexトリガでは 月末処理の完了後にまとめて「成立」を送ることはできません。
• 【正解】組み込みのキューイングフレームワークを持つワークフローアウトバ ウンドメッセージを利用する ✓ エンドポイントが利用できない場合、メッセージは正常に送信されるまで、 または24時間経過するまでキューに残るため適切です。 • 【不正解】 Enterprise WSDLを利用して、会計システムからSalesforceに対 して「成立」に変更された商談をクエリする ✓ 今回の処理で「成立」になったものかどうかを判断できません。過去すべ ての「成立」を取得してしまうと考えます。 5
第3問 ユニバーサル・コンテナ社には、すべての顧客注文が保存されるERPアプリケー ションがあります。ERPアプリケーションには数百万の顧客注文が保存されてお り、長年の顧客には数千の個別注文がある場合があります。さらに、一部の注文 情報には、企業のポリシーによりERPにのみ保存できる個人を特定できる情報が 含まれている場合があります。ユニバーサル・コンテナ社は、Salesforceのアカ ウントページに表示される最新の5つの注文を希望しています。アーキテクトは、 セキュリティとスケーラビリティの両方を考慮して、この要件をどのように設計 する必要がありますか? 1.
REST APIを利用して、ERPシステムから作成された注文を受け取る 2. スケジュールされたETLジョブを作成して、注文オブジェクトのすべての顧客注文履 歴を同期する 3. LightningSalesforce Connectを利用して注文情報をSalesforceに表示する 4. ERPシステムから作成された注文を受信するためのアウトバウンドメッセージを記述 する 6
第3問 解説 正解3 • 【正解】 LightningSalesforce Connectを利用して注文情報をSalesforceに 表示する ✓ LightningSalesforce
Connect を使用すると、ユーザは Salesforce 組 織外に保存されているデータを表示、検索、変更できます。標準オブジェ クトまたはカスタムオブジェクトにデータをコピーする代わりに、外部オ ブジェクトを使用して、Web サービスコールアウトでリアルタイムにデー タにアクセスできます。 7
第4問 ユニバーサル・コンテナ社は、Salesforceのカスタマーサービス担当者が利用で きる100万以上の製品のカタログを管理します。マスター製品カタログはERPア プリケーションに保存および管理され、調達チームが製品カタログを頻繁に更新 します。調達チームは、価格、一般的なカタログの在庫状況、製品の説明などの 属性を更新する場合があります。調達チームが更新を行う場合、その変更は翌営 業日に有効になる必要があり、1日の間に何千もの変更が行われる可能性があり ます。このシナリオを最適に管理するには、どの統合パターンをお勧めします か? 1.
ERPから毎晩製品を同期するようにスケジュールされたETLジョブを構築する 2. ERPからの製品カタログの変更を受け入れるカスタムWebサービスを作成する 3. ERPから製品の変更をリアルタイムで送信するためのアウトバウンドメッセージを作 成する 4. ストリーミングAPIを使用して、ERPからリアルタイムで製品の変更を受信する 8
第4問 解説 正解1 • 【不正解】ストリーミングAPIを使用して、ERPからリアルタイムで製品の変 更を受信する ✓ ストリーミングAPIはSalesforceでの変更をキャプチャしてクライアント へ送信するプッシュ型通知の仕組みです。 9
第5問 保険会社は、顧客から見積リクエストを受信するために、Salesforceプラット フォームを使用してオンラインポータルを構築することにしました。同社には、 残りの販売プロセスがSales Cloudによって管理されている間に見積を生成する 従来の見積システムがあり、従来のシステムには見積を作成するためのAPIがあ ります。オンラインで見積をリクエストしてリアルタイムで受け取ることができ るようにするには、どの実装方法を使用する必要がありますか? 1. Salesforceから見積リクエストをプルし、レガシーシステムにプッシュする
ミドルウェアツールを使う 2. @futureメソッドでトリガして、レガシーシステムに見積リクエストを送信 する 3. Salesforceから従来のシステムに見積リクエストを送信するアウトバウンド メッセージを使う 4. Salesforceから従来のシステムに見積リクエストを送信するApexコールアウ トを使う 10
第5問 解説 正解4 • 【不正解】 ✓ future メソッドは、キューに入れられ、システムリソースが使用可能に なったときに実行されます。非同期・アウトバウンドです。 •
【正解】Salesforceから従来のシステムに見積リクエストを送信するApex コールアウトを使う ✓ 同期・アウトバウンドです。 11
第6問 ユニバーサル・コンテナ社は、レガシーシステムを使用してレベル1のサービス リクエストを受信および処理し、Service Cloudを使用してレベル2以上のリク エストを処理します。ケースは、毎晩のバッチプロセスによってレガシーシステ ムからService Cloudにプッシュされます。Salesforceでケースがクローズされ たら、レガシーシステムでケースのステータスをできるだけ早く更新する必要が あります。テクニカルアーキテクトは、レガシーシステムでケースのステータス を更新することをどのように推奨すべきですか?
1. ミドルウェアツールを使用してSalesforceからケースのステータスを取得し、定期 的にレガシーシステムにプッシュする 2. Apexコールアウトを使用してSalesforceから従来のシステムにケースのステータス を送信する 3. 従来のシステムから呼び出される、ケースのステータスを返すApex Webサービスを 記述する 4. アウトバウンドメッセージを使用して、ステータスの更新をSalesforceから従来の システムに送信する 12
第6問 解説 正解4 • 【不正解】Apexコールアウトを使用してSalesforceから従来のシステムに ケースのステータスを送信する ✓ ケースがクローズになったタイミングであれば、トリガ+@futureになり、 システムリソースが使用可能になったときに送信されることと、送信先の ダウンなどの考慮が必要になる。
13
第7問 ユニバーサル・コンテナ社は、Force.comSalesforce サイトで構築されたシステムを使 用して製品をオンラインで販売しています。取得された注文はSalesforceで処理されま す。同社は外部のマーケティングシステムを使用しており、Salesforceで取得した顧客 データを利用したいと考えています。マーケティングシステムには、データをプッシュ するために使用できるREST APIがあります。テクニカルアーキテクトがマーケティング システムでカスタムWebサービスを構築する必要がないと考える3つのオプションはど れですか。3つの答えを選んでください。
1. Enterprise WSDLを使用してカスタムJavaアプリケーションを作成し、Salesforceからデータをプル してマーケティングシステムにプッシュする 2. アウトバウンドメッセージを使用して、Salesforceからマーケティングシステムに顧客データを送信す る 3. 顧客データを取得するためにマーケティングシステムから呼び出されるカスタムApex Webサービスを 記述する 4. ミドルウェアツールを使用してSalesforceから顧客データをプルし、それを毎日マーケティングシステ ムにプッシュする 5. Apexコールアウトを使用して、Salesforceからマーケティングシステムに顧客データを送信する 14
第7問 解説 正解2、4、5 • 【不正解】 Enterprise WSDLを使用してカスタムJavaアプリケーションを作成し、 Salesforceからデータをプルしてマーケティングシステムにプッシュする ✓ ミドルウェアツールを自作する必要はないと考える。
• 【不正解】顧客データを取得するためにマーケティングシステムから呼び出されるカ スタムApex Webサービスを記述する ✓ カスタムWebサービスを作ってしまうと問いに反してしまう。 15