Slide 1

Slide 1 text

#RPALT Digital Laborと開発しよう! RPA 勉強 &LT会! RPALT vol.13 @ 丸の内Vacans 2019/09/20 @jyugi_t J 1

Slide 2

Slide 2 text

#RPALT 私の仕事 RPA導入支援 - 作ってみせる お客様の内製化開発担当者様や、現場業務担当者達とお仕事をしている。 ● 実際の業務をテーマにして、参考にできる仕組みを持ったロボットを作ってほしい ● どういう開発ルールをもうければいいのかわからない ● ドキュメントは?テストは? ● どういう業務が自動化に向くのかわからない 手がけたRPA案件:  自動車メーカー、印刷機メーカー、サービス業、エンターテイメント、小売業 …等 自動化の要件定義~開発~テストまで少人数(主に1人)でこなす  テクニカルコンサルタント(エンジニア) 2

Slide 3

Slide 3 text

#RPALT 自己紹介   広島県大竹市 出身 •役割:RPAビジネスアナリスト・ソリューションアーキテクト・RPAデベロッパー (自称) •得意領域言語:クライアントアプリ, Java, JavaScript, C#, VB.NET, UiPath,(BluePrism) •趣味:ウォーキング、サイクリング、山登り、ゲーム Toshinori Tanaka レモンハマチ サッパリしてる 三倉岳 登りごたえあり コンビナート 夜景きれい @jyugi_t RPA Community #74 この勉強会には大体います 13/13 RPA 勉強 &LT会! RPALT vol.13 3

Slide 4

Slide 4 text

#RPALT テーマ: Digital Lavorと開発しよう! 4

Slide 5

Slide 5 text

#RPALT テーマ: Digital Lavorと開発しよう! ✖ Digital Lavorを開発しよう! ✖ プログラミングするだけ・・・? ✖ 自動開発ツール? 5

Slide 6

Slide 6 text

#RPALT テーマ(副題付き): Digital Lavorと開発しよう! ー 要件定義~開発における生産性向上 - 6

Slide 7

Slide 7 text

#RPALT 着目した点 稼働時間 7

Slide 8

Slide 8 text

#RPALT 稼働時間の比較(人) 8 9 10 11 12 13 14 15 16 17 18 19 20 人 (開発者) 9-12, 13-18 よくいう、九時五時 8

Slide 9

Slide 9 text

#RPALT 稼働している時間 8 9 10 11 12 13 14 15 16 17 18 19 20 人 実際はこちらのほうが近い(!?) 9

Slide 10

Slide 10 text

#RPALT 稼働時間の比較(人・システム) 8 9 10 11 12 13 14 15 16 17 18 19 20 対象 システム 稼働時間 8-22 人 9-12, 13-18 人の稼働時間より、システムの稼働時間のほうが長い 10

Slide 11

Slide 11 text

#RPALT 稼働時間の比較(人・システム・ロボ) 8 9 10 11 12 13 14 15 16 17 18 19 20 対象 システム 稼働時間 8-22 人 9-12, 13-18 ロボ (検証・ 開発中) 開発中は、動作確認をする。停止と稼働を繰り返す。 動作確認 ≒(単体テスト) ロボ≒Digital Labor= PC操作をできる能力を 持ったプロセス 11

Slide 12

Slide 12 text

#RPALT Digital Lavorはロボ? デジタルレイバーは、“寝ない、疲れない、休まない、忘れない、ミスをしない、文句を言わない、退職しな い”最強のパートナー
 
 
 https://home.kpmg/jp/ja/home/insights/2017/04/rpa-digital-labor-movie.print.html 12

Slide 13

Slide 13 text

#RPALT Digital Lavorは労働力 開発中も、ロボットの得意な分野で、 もっと働いてもらおう。動ける時間をフル活用しよう。 デジタルレイバーは、“寝ない、疲れない、休まない、忘れない、ミスをしない、文句を言わない、退職しな い”最強のパートナー
 
 
 https://home.kpmg/jp/ja/home/insights/2017/04/rpa-digital-labor-movie.print.html 13

Slide 14

Slide 14 text

#RPALT Digital Lavorは労働力 8 9 10 11 12 13 14 15 16 17 18 19 20 ロボ (検証・ 開発中) 改良点 ここで何かをしてもらおう。 開発中も、ロボットの得意な分野で、 もっと働いてもらおう。動ける時間をフル活用しよう。 デジタルレイバーは、“寝ない、疲れない、休まない、忘れない、ミスをしない、文句を言わない、退職しな い”最強のパートナー
 
 
 https://home.kpmg/jp/ja/home/insights/2017/04/rpa-digital-labor-movie.print.html 14

Slide 15

Slide 15 text

#RPALT Digital Laborに何をしてもらう? 8 9 10 11 12 13 14 15 16 17 18 19 20 ロボ (検証・ 開発中) 部品のテスト (単体テスト) 負荷/耐久テスト 人 9-12, 13-18 部品のテスト (単体テスト) 負荷/耐久テスト =動作確認 部品作成/確認 作成/確認 部品のテスト (単体テスト) 負荷/耐久テスト 15

Slide 16

Slide 16 text

#RPALT 単体テスト  部品が正しく動くかどうかをテストする。   部品のテスト (単体テスト) AAシステム ● ログインする ● ログイン後の画面が出るまで待つ ● OKボタンを押す ● ページを開く ● ページを閉じる ● BBレポートの検索条件を選択する ● BBレポートのデータテーブルを取得する 例 それぞれが 部品名通りの動きをす るか確認する 部品 Outlook ● メールを送る ファイル操作 ● ファイルをコピーする 16

Slide 17

Slide 17 text

#RPALT 負荷テスト 部品や業務を長時間動かしても動作するかテストする        人が動けない時間にもできる。 負荷/耐久テスト AAシステム ● ログインする ● ログアウトする ● ログイン後の画面が出るまで待つ ● OKボタンを押す ● ページを開く ● ページを閉じる ● BBレポートの検索条件を選択する ● BBレポートのデータテーブルを取得する ● BBレポートのデータテーブルを加工する 例 部品 部品を複数組み合わせ、 繰り返し、 動作させて評価する 17

Slide 18

Slide 18 text

#RPALT 負荷・耐久テストの例 システムへのログイン機能→ログインを繰り返しのテストに置き換える ログインする ログアウトする ログイン後の画面を待ち受ける 100回 繰り返し ログを出力する  時刻 & ”ログイン成功” ログを出力する 時刻 & count ”回目” なんで100回 →昼休み中にテストを実施して終わる回数を選ぶ 単体テスト相当の部分 初期化処理する 終了化処理する 人が確認するために必要 繰り返すために必要 よく検出される問題: ● ログアウトボタンを押しても次の回の ログイン画面が出ない ● 処理が早すぎて失敗する ● 読み込むたびに画面位置が 微妙に変わる 18

Slide 19

Slide 19 text

#RPALT テストプログラムのアウトライン Login ログイン処理 ログイン後の画面を待ち受 ける LoginStoressTest LoginTest Loginを呼ぶ Loginを呼ぶ 正しいID/Passwordを渡す 誤ったID/Passwordを渡す ログイン後の画面がでたか? エラーが出たか? [Login]の単体テスト [Login]の負荷テスト 機能・関数・部 品 ログアウトする 100回 繰り返し ログを出力する  時刻 & ”ログイン成功” ログを出力する 時刻 & count ”回目” 初期化処理する 終了化処理する Loginを呼ぶ 動作確認はテスト用のプログラムとして書きます。 回帰テストとか、 テストエビデンスとして使えます。 19

Slide 20

Slide 20 text

#RPALT 負荷テストの利点・効果 ・自然と運用管理者・利用者に寄り添った設計・要件定義にできる。 操作ログや初期化・終了化処理を忘れず実装できる。   デバッグ技法が身につく。 ・気づかなかった非機能要件を早期に炙り出せる。 業務ヒアリングで担当者から聞ける機能要件とは違う観点で、ドキュメン ト化できる。 ・現場の人は暗黙的に知っているようなシステムに関する動作感覚を、  定量値で説明できるようになる。   定量値は説明の説得力が増す、判断材料になる、何かのKPIにできる。 ・現場の人に共感してもらえる、IT推進部と信頼関係が築ける。  → いいね!と言ってもらいやすくなる。 20

Slide 21

Slide 21 text

#RPALT 負荷テストの注意点 リスクもあるので、予めの調整を忘れずに・・・・ ・インフラ担当者やRPA推進係に許可を取る ・サーバ型RPAの場合は、ログのトラフィック増やデータベース容量の増加 につながるので伝える ・PCを動作させたまま帰宅しても良いか確認する ・離席中の動作画面は見えないように紙などで隠す ・負荷テストの前には単体テストをしっかりしておく 21

Slide 22

Slide 22 text

#RPALT 負荷テスト 失敗には注意してください… 金曜日の帰宅前に仕掛けて…3連休中放置した結果・・・ 22

Slide 23

Slide 23 text

#RPALT 負荷テスト 失敗には注意してください… 金曜日の帰宅前に仕掛けて…3連休中放置した結果・・・ずっと動作していた。。 3日で800MB位のログを出力 23

Slide 24

Slide 24 text

#RPALT 負荷テスト 失敗には注意してください… 予めの調整を忘れずに・・・・ ・負荷テストの前には単体テストをしっかりしておく 補足1) 業務システムにずっとリクエストをしていたわけではないので、特にお咎めは無かった。 良かった・・・ 補足2)デジタルレイバーさんは、 三日三晩ログを出力し続けてかなりお疲れの様子で、止めた時は普段見かけないエラーが出ました。 PCの再起動はしておきました。 24

Slide 25

Slide 25 text

#RPALT Digital Laborと開発しよう! まとめ テストの計画を立てたり、 何をどのくらいテストさせるか、 問題をどう直すかを、柔軟に決めれるのは 当面はDigital Laborではなくエンジニアの仕事です。 開発において、Digital Laborには、 負荷テストをやってもらって、 人はもっと価値のあることに力を使おう。 25

Slide 26

Slide 26 text

#RPALT Digital Laborと開発しよう! RPA 勉強 &LT会! RPALT vol.13 @ 丸の内Vacans 2019/09/20 @jyugi_t 26