SOEのひとりごと

Salesforce管理者兼エンジニアのSOEがつぶやいてます

【Salesforce業務改善】フローなどを設計するならdraw.ioを使った方がいいという話

はじめに

今回はSalesforceアドミンな方々が悩んでいるであろう、作成したフローの可視化管理について、「draw.ioを使うのがいいよ!」っていう布教活動が目的の記事です!
※ついでに現職のアドミン方に紹介するための記事です。
※draw.io以外でもいいっちゃいいです。

フロー設計の課題

まずは下記のようなフローがあったとします。

画像

フローを見たところ、非常に簡単な作りであるため処理の流れはわかるものの、どのオブジェクトのデータを、なんという数式リソースで処理させているのかは、設定を開いて睨めっこしないとパッとは把握できないですよね?

そして、これが複雑化したフローの場合、こう思いませんか?

他人が作ったフローの動き把握するのクソめんどくさくね?

はい、これです。
Salesforceで最も面倒なのが、作成したフローの動きやどのオブジェクトから持ってきて、どの数式で使っているのかなどのデータリネージなトレースがしづらいことです。。。
フローが複雑化したとき、管理したくないものに成り果てるんです、、、、

しかし、これが下記のように簡単に読めたらどうでしょうか?

画像
※あくまで例です。

フローの設計を考えやすいし、処理に関するレビューなど壁打ちのお願いもしやすくないでしょうか?
※ER図に使用した線の意味は書きましょうね。

もし、こんな準備があれば、導入支援でも説明しやすいですよね?
マネしていいですよ!!! => (なに様?)

★ ERDの図や線の使い方として、正しいかどうかは考慮していません。

draw.ioのメリットとフローへの影響

ここでは、drawioを使うことで得られる恩恵について、ちょろっと教えちゃいます!

draw.ioって?

フローチャートやネットワーク図、ER図といったパワポなどで作ると、ガチでキレそうになるようなシステム設計の図を作成するのに便利で無料なサービスです!
テンプレートも豊富で、PlantUMLとはまた違った感覚で、簡単にお絵かきできちゃいます🙇‍♂️
★作成した図はPNGJPEGSVGXMLなどにエクスポート可
★クリエイト文のみですが、SQLによるテーブル図も作れます。

draw.ioのブラウザ版は下記のリンクから遊べます!

VSCodeで使うための手順や、基本的な操作方法については下記の記事を参考にしてください!
軽くハンズオン感覚でいけます!

フローのプロセス可視化と変更管理、レビューの効率化

先に挙げた通りdraw.ioを利用することで、複雑なワークフローのプロセスをビジュアルに表現することができます。使い方次第にはなりますが、フローないでのアクションを視覚的に整理し、プロセス全体の流れを理解しやすくなります。その結果、チームメンバー間でのコミュニケーションが円滑に行え、プロセスの把握や共有が容易になります。

特に、新しいメンバーがチームに加わる際にも、draw.ioを使用した図表を通じてプロセスを説明することで、迅速かつ効果的なオンボーディングが実現可能です!!

Salesforceのフロー設計において、リリースのための変更管理やレビューも重要です。直接フローを図にする機能はないですが、フローの処理を変更するごとにdraw.io側でも反映して変更管理をしていくことで、これら管理も楽に対応できると思います。
※ただし、手動で対応となるため手間は残ります。

drawioの使用例

SQLを使ったテーブル図の作成方法

drawioの上部にある + から、「高度な設定」を選択し、SQLを選択します。

画像

すると下記のような画面が出るので、添付画像のようにクリエイト文を貼り付けます。

画像

挿入を選択すると、次の画像のようにテーブル図が作成されます。
※今回はあえて、主キーなどは入れておりません。

画像

今回使用したSQLは、Salesforceのオブジェクトを意識しています。
SQL例を下記に記しておきますので、よければご利用ください。
----
CREATE TABLE 取引先オブジェクト(標準)
(
取引先名(テキスト)
取引先ソース(選択リスト)
取引先 部門(テキスト)
取引先 所有者(参照関係(ユーザ))
);

まとめ

従来のテキストベースのドキュメントでは、Salesforceの複雑なプロセスや関係性を的確に表現するのは面倒なうえ、フローの設定を都度見にいくことによる手間や、ヒューマンエラーなどが残ります。だからこそ、想定していない使い方であったとしても、ビジュアルな情報整理が重要です。

そこで、ビジュアルな情報整理とチームコラボレーションの向上、プロセスの可視化と変更管理、レビューの効率化など、draw.ioを使うことで得られるメリットについて紹介しました。

フロー設計における効果的な情報整理を実現するために、ぜひdraw.ioを活用してみてください!
★drawio関係の社員ではないです。