こんにちは!たつみんです。
みなさんの会社では稟議・ワークフローシステムって使ってますか?多くの会社では上長への承認依頼や他部署への作業依頼の入り口として活用されているのではないでしょか。
情報システム部門ではPC端末の交換申請やアカウント発行依頼を稟議・ワークフローシステムで受け付けていたり、稟議・ワークフローシステム自体のメンテナンスを担当されている事も多いかと思います。
今回、国産SaaSであるkickflowについて検証してみましたので記事にしたいと思います。
はじめに
kickflowについて
私個人としても前職の情報システム時代に複雑化するワークフローツールについて悩みを抱えており、2020年にSmartHRのグループ会社としてスタートしたkickflowには注目しておりました。なお、2021年10月にはMBO:マネジメント・バイアウトを実施し、SmartHRのグループ会社ではなく独立した会社運営を行っているそうです。
kickflowのプランについて
料金プランはスモール/スタンダード/エンタープライズの3種類があります。記事の中で紹介する特徴的な機能のうち、Slack/Chatwork/Teams連携はスモールプランから、それ以外の機能はスタンダードプランからの提供となります。ご紹介しきれなかった機能もありますので、各プランの詳細については下記からご確認ください。
なお、3プランとも料金についてはお見積もりが必要となっています。
特徴的な機能について
ワークフローツールという製品分野には多くの製品がありますが、kickflowは以下のような機能があり他の製品ではなかなか実現できない、もしくは実現するために多くの労力が必要なことが簡単に実現できます。
Slack/Chatwork/Teams連携
私が検証時に1番強力な機能だと感じたのが、チャットツールに簡単に連携できる点です。自身が作成したワークフロー申請の状況や承認依頼をチャットツールで受け取ることができます。
実際にSlackとkickflowを接続してみました。下記のように承認依頼が通知され、そのまま承認等の作業を行うこともできます。正直これだけでも導入する動機になりそうです。
スマートフォンのSlackアプリでも下記のように通知からの承認等の作業が行えるため承認スピードの向上が期待できそうです。
ただ、どうしても項目が多い場合は長くなってしまうので込み入った内容の場合には不向きかもしれません。
また特定のワークフローフォームのイベントを特定のチャンネルに通知を行うことが可能です。
例えばアカウント申請のようなワークフローフォームの場合は情報システム関係者だけのチャンネルに紐づけることで新しい申請があった際にすぐに対応開始できるというメリットがあります。
組織図のバージョン管理
どのワークフローツールでも部署を定義し、そこに社員をユーザーとして追加するということを行なっているかと思います。kickflowではこのような設定を組織図という名称の機能で管理しています。
下図は検証用に作成した組織図です。親子関係を定義しユーザーを追加します。kickflowでは部署にあたるチームにユーザーを所属させます。ユーザーは複数のチームに所属させることができます。
社員の所属部署が変更されたらシステムにも反映するというメンテナンス作業が発生します。数人程度なら問題ありませんが、新しい期が始まるタイミングなど大規模な組織変更が発生した時はどうでしょか。当日に多くの時間を割いて対応している場合も多いと思います。
kickflowのいい機能として、組織図のバージョン管理から未来の組織図を作成しておくことができます。有効化の予約を行うことで、指定日の深夜に自動的に適用することができるため、大規模な組織変更が発生しても時間に追われて対応することもなくなります。
並列ステップ
承認経路で複数の担当部署の承認後に次のステップに進む設定ができます。一般的なワークフロー製品では直列な経路しか設定できず、例えば経理の承認後に法務へと進むため全体で見ると承認までの時間がかかる結果となります。また、経理の承認後に法務で差し戻しされることもあるでしょう。
並列ステップであれば全体の時間の短縮や無駄な手戻りが軽減されます。
パイプライン
あるワークフローが完了したら別のワークフローのフォームに内容をコピーし下書き作成をすることができる機能です。利用場面としては請求書登録のワークフローが完了したら、支払い依頼ワークフローへ内容をコピーして作成するということが考えられます。
以下は管理画面でパイプライン設定を行う画面です。この例では支払い方法で実行条件を指定し、経理担当者に作業依頼を行いたい場合のみ、支払い依頼ワークフローに必要な項目をコピーし自動的に下書き作成する設定を行なっています。
このようにあるワークフローが完了したら、次のワークフローを起票するということは意外と多く、つい起票を忘れてしまい関連部署から催促を受けた経験を持つ人も多いのではないでしょうか。パイプライン機能を使うことで防止することができる点はいいポイントですね。
外部API連携ボタン
珍しい機能として入力フォームに外部APIを呼び出すボタンを設置できます。郵便番号から住所を返すAPIを利用して住所入力の補助として役立てるなどいろいろな可能性があります。
下記の例では郵便番号を入力した状態で「実行」をクリックすることでAPIが実行されて…
都道府県、市町村、住所が自動的に反映されます。
この外部API連携ボタンではAPI実行時のレスポンスが複数のレコードの場合にユーザーに選択させる設定も行うことができるため、例えばPC交換ワークフローでPC資産管理システムのAPIと連携させることで在庫情報の中から選択させるということもできそうです。
REST API/Webhook
REST APIでワークフロー申請の内容を読み取ったり、Webhookを利用しワークフローのイベント毎の処理を行なったりすることができます。他のワークフローツールではAPIの提供自体がされていないなか、ドキュメントもしっかり用意されているのも好感が持てます。
ただ、フォームに登録された入力値をもとに検索することができなかったり、フォームに登録された入力値を取り出す方法が難しかったので、今後のアップデートに期待したいです。
Webhookを利用してOkta Workflowsで入社処理を自動化をしてみた
今回は入社申請の完了からOktaアカウント発行までをOkta Workflowsで実行する処理を考えてみました。他のiPaaS製品でも同じようWebhookを受け取れるAPIエンドポイントを作成できる製品であれば、同様の処理が行えると思います。
処理のほとんどがOkta Workflowsなので詳細については別の記事にしようと思いますが2つのOkta Workflowsを作成し、申請完了からアカウント発行まで問題なく自動化することができました。
ざっくり概要だけですが大まかな流れとしては以下のような感じです。
Okta Workflows 1
- Okta WorkflowsにkickflowのWebhookを受信するエンドポイントを作成する
- Okta Workflowsが受信したWebhookのうち入社申請で申請完了になった場合に3.の処理を行う
- kickflowからOkta Workflowsが受け取ったデータのうち、入社日とOktaアカウント作成に必要なデータをテーブルに格納する
実際に作成したものを一部お見せすると、以下のようにAPI Endpointを作成しbodyから必要なデータを取り出し処理を行っています。
Okta Workflows 2
- 日次スケジュールにより、Okta Workflows 1で取得したテーブルのデータを検索する
- テーブル内の入社日が実行時の7日前の日付と一致した場合に3.以降の処理を行う
- テーブルに格納されたデータとランダムな8桁のパスワードを生成しOktaアカウントを作成する
- 作成したOktaアカウントとパスワードを特定のSlackチャンネルに通知する
まとめ
kickflowはこれまでの稟議・ワークフローツールではイマイチ足りてない部分やイケていない部分がしっかり改善されていると感じました。Slack通知で承認が行えるため、忙しい承認者がスマートフォンからサクッと処理を行うことで全体のスピードアップにも期待できます。
また、下記のよう高頻度で機能アップデートが行われているのが好感が持てます。自動計算フィールドの関数の追加や正規表現によるバリデーションの追加は嬉しいですよね。
最新の機能アップデート情報については下記をご参照ください。
稟議・ワークフローツールは国内の働き方や慣習を反映させるために海外SaaSでは対応できないことが多い製品分野です。このためデファクトスタンダードな製品もまだまだ存在していないと思います。
この記事を読んだ方の選択肢が増えたなら嬉しいです。
それではまた別の記事でお会いしましょ〜?