RPAシステム設計開発

DAF(Data Automation Factory)理論に基づいた完全自動化の設計・開発方法を簡単に説明します。

DAFについては「完全自動化ってなんだ?」で詳しく解説していますので、ご参照ください。

RPAシステムはDAF理論をオープンソースソフトウェアで実装したものですので、まずDAF理論をご理解ください。

 

DAF設計

DAF理論では最低実行単位をLINE(「自動車工場などの「製造ライン」と同義)と呼んでいます。LINEが複数集まってDAFとなります。DAFは現実社会では工場にあたります。

DAFが複数集まってDAFチェーンを構成します。現実社会でたとえれば、サプライチェーン全体ということになります( 図1 )。

図1:DAFチェーンとDAF、LINEの関係図

 

DAFチェーンの設計

これをもう少し、なじみのあるツリー構造で簡略化して表現してみると図2のようになります。

DAFチェーンを実行すると、まず「DAF-A」が稼働します。「DAF-A」が成功したら、「DAF-B」が稼働するという流れになります。

図2:DAFチェーンとDAF、LINEのツリー構造

 

当然、「DAF -A」が失敗したら、「DAF -B」は実行されずに、このDAFチェーンは失敗ということになります。前工程の失敗を後工程に引き継がない運用ができるわけです。

BPMNで表記すると図3のようになります。

図3:DAF同士の連携

 

DAFの設計

DAFの中はさらに複雑になっていますので、DAF設計図を作成します。

一から作るシステム開発とは違い、既存のシステムや環境を使って開発してゆきますので、設計時にすべてを把握することは困難です。開発しつつ設計を柔軟に変更する必要性が出てくるでしょう。

図4では、DAFの中で、「データ取得」「データ加工」「帳票作成」「メール配信」の処理をBPMNで記述しています。

図4:DAF内の詳細設計例

 

DAF開発

開発

DAFチェーンは明確なツリー構造で構成されていますので、ツリーを構成する個々の要素の個別開発が可能です。

まず、LINE部分を単独で動くように開発し、手動で実行しながらテストします。個別のLINEのテストが完了したら、運用監視機能を使い複数のLINEが連動して動くようにします。これがDAFとなります。

DAFが単独で正しく動くことが確認できたら、最後に複数のDAFをつなげて、DAFチェーンを完成させます。

テストラン

現行稼働している業務と並行して、DAFチェーンの運用を実施し、内容や運用体制に問題がないかを確認します。実際に運用してみると、開発時には見落としていたことが見つかったりします。

また成果物を受け取る実務者の方から、新たな要望が発生することもあります。その場合、初回リリースに取り込むべきか、それともリリース後の改修案件とすべきか検討します。