Upgrade to Pro — share decks privately, control downloads, hide ads and more …

190920 Digital Lavorと開発しよう! J(Jyugi)さん

RPABANK
September 20, 2019

190920 Digital Lavorと開発しよう! J(Jyugi)さん

RPABANK

September 20, 2019
Tweet

More Decks by RPABANK

Other Decks in Technology

Transcript

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

    View Slide

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

    View Slide

  3. #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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  8. #RPALT
    稼働時間の比較(人)
    8 9 10 11 12 13 14 15 16 17 18 19 20

    (開発者)
    9-12, 13-18
    よくいう、九時五時
    8

    View Slide

  9. #RPALT
    稼働している時間
    8 9 10 11 12 13 14 15 16 17 18 19 20

    実際はこちらのほうが近い(!?)
    9

    View Slide

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

    View Slide

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

    View Slide

  12. #RPALT
    Digital Lavorはロボ?
    デジタルレイバーは、“寝ない、疲れない、休まない、忘れない、ミスをしない、文句を言わない、退職しな
    い”最強のパートナー



    https://home.kpmg/jp/ja/home/insights/2017/04/rpa-digital-labor-movie.print.html
    12

    View Slide

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



    https://home.kpmg/jp/ja/home/insights/2017/04/rpa-digital-labor-movie.print.html
    13

    View Slide

  14. #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

    View Slide

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

    View Slide

  16. #RPALT
    単体テスト
     部品が正しく動くかどうかをテストする。
     
    部品のテスト
    (単体テスト)
    AAシステム ● ログインする
    ● ログイン後の画面が出るまで待つ
    ● OKボタンを押す
    ● ページを開く
    ● ページを閉じる
    ● BBレポートの検索条件を選択する
    ● BBレポートのデータテーブルを取得する

    それぞれが
    部品名通りの動きをす
    るか確認する
    部品
    Outlook ● メールを送る
    ファイル操作 ● ファイルをコピーする
    16

    View Slide

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

    View Slide

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

    View Slide

  19. #RPALT
    テストプログラムのアウトライン
    Login
    ログイン処理
    ログイン後の画面を待ち受
    ける
    LoginStoressTest
    LoginTest
    Loginを呼ぶ
    Loginを呼ぶ
    正しいID/Passwordを渡す
    誤ったID/Passwordを渡す
    ログイン後の画面がでたか?
    エラーが出たか?
    [Login]の単体テスト [Login]の負荷テスト
    機能・関数・部

    ログアウトする
    100回 繰り返し
    ログを出力する 
    時刻 & ”ログイン成功”
    ログを出力する
    時刻 & count ”回目”
    初期化処理する
    終了化処理する
    Loginを呼ぶ
    動作確認はテスト用のプログラムとして書きます。 回帰テストとか、
    テストエビデンスとして使えます。
    19

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide