PR

 数年前からRPA(ロボティクス・プロセス・オートメーション)がホットトピックになっている。RPAとは、ソフトウエアの「ロボット」を使って、ホワイトカラーの事務作業を自動化する取り組みだ。ここ1年で銀行や生命保険会社、行政機関などの多くがRPA導入を発表した。メガバンクがRPAを導入して、数千人分の業務を人に代わりロボットが行っていくという事例は特に話題を集めた。

 そんなRPAだが、現在は話題が先行している段階だ。企業の実業務への導入ではまだ課題が多い。例えばテストが不十分なままリリースして、多くのバグが出てしまったりする。運用開始後のバグ対応でメンテナンスコストがかかり、投資対効果を想定ほど得られない場合もある。

 こうしたリスクを回避するには、導入から実業務の運用までを見通した品質保証が重要となる。ソフトウエアの品質保証とテストを専門とする筆者が所属する企業では、最近RPA導入における品質保証業務の依頼が急激に増えている。相談の内容で多いのは「どこまでテストしていいか分からない」「テストのやり過ぎなのかコストが青天井にかかる」といったものだ。

 RPA導入時の品質保証に、現段階で確立された手法はない。しかし、筆者の経験では、以下の3つのポイントに着目したテストを実施すべきと考えている。

(1)ロボットの機能が正しく動作するか
(2)ロボットによる業務プロセスが正しく回るか
(3)エラーを検知して処理を継続できるか

ロボットだけでなくExcelも確認

 「(1)ロボットの機能が正しく動作するか」では、プログラムした通りの機能をロボットが正確に再現できるかどうかを確認する。

 金額を集計してそれが正しいかどうかを確認する業務をRPAで自動化したとする。このとき、ロボットが実施する処理は大きく3つある。ファイルを開くといった「単純作業」、集計を行う「複雑操作」、金額検証のための突合といった「判断処理」だ。

 単純作業はバグが出にくい。バグが出やすいのは複雑操作と判断処理だ。単純処理はRPA開発ツール(ロボットを開発するためのアプリケーションソフト)で実装する。一方、複雑操作と判断処理はExcelの関数やVBAを用いることが多い。Excelを用いるのは、慣れないRPA開発ツールを使って複雑なロジックを組むよりも、使い慣れたExcelを使った方が開発効率が良いと判断する現場があるからだ。開発者を集めやすいという事情もある。

 実際にExcelを使うかどうかは現場によって異なる。ただ、複雑操作と判断処理にExcelを使う現場では、ロボットの機能が正しく動作するかどうかを確認するには、ロボット自体だけでなくExcelが正しく動作するかもテストする必要がある。

 具体例を挙げて説明しよう。帳票からデータを取得し、計算、結果の画面入力までを行うロボットを導入したとする。

RPA導入の例
RPA導入の例
[画像のクリックで拡大表示]

 RPAの開発プロジェクトでは、要件定義が完了した後は簡易的な設計のみで実装を進める場合が多い。こうした進め方では、設計内容の十分な文書化は行われない。実装が終わってからテストを準備しようとすると、何をどこまでテストしていいか分からないといった事態になりがちだ。そこで、ロボットの機能が正しく動作するかどうかの確認に、次のようなテスト観点を利用する。

RPAの導入で効果的なテスト観点例
処理種別テスト観点
集計処理IPO(インプット、プロセス、
アウトプット)
集計範囲が正しいか
集計の計算式が正しいか
集計した結果が正しい箇所に出力されているか
データ最大桁、小数桁で正しく動作できるか
ゼロ除算を正しく動作できるか

 このテスト観点はExcelで集計がなされているものとして、設計書の完成を待たずにあらかじめ決めたものだ。集計処理をした場合に誤りやすいポイントをテストする。自動化する業務が集計でない場合は別の観点が必要になる。重要なのは、処理種別に応じてテスト観点をあらかじめ決めておくことだ。こうすれば迷わずに済む。