RPA – An Emerging Automation Technology
Robotic
Process Automation is an emerging technique to automate a process.
Process automation is done by writing a software robot (“bot”)
and teaching it how to complete given process.
Let's
take an example of automating function of Resource Management in
software services industry. RM personnel has a task of matching job
description (JD) with profiles of available software engineers and
recommending profiles on "best fit" basis.
Typical
steps in this process could be:
-
Scanning job description and identifying requirements such as:
- domain and technology requirements
- minimum experience required
- location constraints if any -
Scanning profiles of available software engineers and identifying "best fit" profiles based on following criteria:
- domain and technology experience
- total experience
- location -
Send list of selected candidates to project manager for further action
In
reality, the process may be more extensive, but let's limit it to
this much for this example.
Typical
approach taken by RPA is as follows.
-
Parse the JD and pick out selection words defining requirement criteria (technology, experience etc.). This is one part of input.
-
Connect to database and execute a query to get profiles of candidates matching requirement criteria. This is second part of input.
-
Parse each profile, make a more precise match between JD and candidate profile.
-
Send a list of candidates to relevant project manager by email for further action.
How RPA does this?
RPA involves collecting data from various sources which generally human refer. For example, "screen scraping" involves making sense of the text displayed on screen and collecting sensible data from the text displayed. Other sources include Web scraping - collecting data from the web-page displayed, interpreting text embedded in images (PDF documents, graphic images) and converting them to proper text using OCR etc.
Another
striking feature of RPA is that, the bot can use existing
applications “as is”, thereby eliminating necessity to develop
special scripts, applications or APIs. This significantly reduces
time-to-market.
It
can be noted that this approach is different from traditional script
based process automation.
Further
enhancements
As RPA is emerging technology, there is a lot of scope for further refinement in functionality. For example, AI and machine learning techniques can be combined to "figure out" what exact programming or scripting languages are required. If JD has just mentioned "Microsoft Windows", "QA automation" then using ML techniques, it may get translated to "selenium" for example. This will result in more precise selection criteria, giving more fitting candidates and thereby saving a lot of time in screening and interviewing candidates.
In
other cases of RPA application, newer trends like sentiment analysis
can be combined with the data scraping to enhance capabilities of RPA
to make finer decisions.
Future
This raises an obvious fear - will RPA fuel unemployment? It is difficult to speculate on this at present. This is because RPA has not evolved so much so that it completely replaces human factor. At present it can be utilized to automate mundane jobs humans are doing. But then this is what exactly we heard a few decades ago about Computers and Robots, right?
This raises an obvious fear - will RPA fuel unemployment? It is difficult to speculate on this at present. This is because RPA has not evolved so much so that it completely replaces human factor. At present it can be utilized to automate mundane jobs humans are doing. But then this is what exactly we heard a few decades ago about Computers and Robots, right?
Comments
Post a Comment