2019 iT 邦幫忙鐵人賽


RPA(機器人流程自動化) 行不行? 系列 第 5

Plan B

Every configurations must has some unusual things, like there is always a plan B in our life.
We defined a standard version, and call those deviates from this normal route are exceptions.
System errors, unexpected businesse senarios, data error...anyone of these will need to human interventoin.

If your process is not suiatable for RPA, a developer will do a lot fragile scripts to achieve those tricky requirment, however, it is easy to start celebrating once your robot successfully
automates a process for the first time. However, the real work begins in the testing phase to ensure the robot handles exceptions properly.
How to manage an exception during the automation processing? what's the debugging approach?

To minimize the risk for RPA, not only matter of developer's skill, the most important is stakeholder and product owner should understand and do not interfere the design centric apporoach.

Design Centric principles

  1. Not go to details first
    Starting with designing high-level workflow for processes to be automated in a language that is understood by the product owner, and not focusing straight into bottom details developement by recording an isolated bot.
  2. Common objects
    Setting universal objects by functions that represents demands once implemented in code provides a library of automated reusable modules or business objects that can be re-used across multiple automated process bots. This reduces the level of maintenance needed once automated process are released into production.
  3. The use of environment variables and consistant locator
    If the automated process will be changed in future (like URL,filename, email id, date... etc) and developer don't want to touch the code for such changes, try to exposed common factors or specific data to environment.

不可或缺的第一步- 流程體檢 (PAA )
Purify those dirty data
RPA(機器人流程自動化) 行不行? 25

2 則留言

iT邦新手 5 級 ‧ 2018-10-21 10:22:52

編者較忙碌,小弟補充一下Blue Prism的try-catch運作。

首先,我覺得rpa的出現不是偶然。在經歷了datawarehouse的etl 時期,soa的tight/loose coupling時期後,最後回歸人本利用desktop automation進行整合。所以各大rpa 商集結了過去後端整合工具的功能,所以開發人員想做的事幾乎沒有做不到的。

從影片中,我們可以看到Blue Prism是鼓勵用visual programming.,catch 是用recover物件做為開頭,resume做結尾,resume還可以指向任意流程中的步驟。另一方面,recover 也可以透過blocking 去指定接收特定步驟的錯誤或刻意的error throw。說到這邊,根本就是跟各大語言的error handling無妨。

到最後,只希望過往習慣coding 的大大們,在使用rps平台時不要拼命的走老路把rpa工具變成Java, c#,python執行聚集。rpa的programming工具就非常夠用了。

iT邦新手 5 級 ‧ 2018-10-21 18:34:11

Error and exception handling should not be handled during dev or uat. They are built in by design during the early stages by distinguishing amenable and non-amenable exceptions. Furthermore, requirement analysts must identify any anomalies early on to mitigate at source.