February 19, 2020

Developer Secret Sauce for Connected RPA

ashish.easow
Staff
Staff

Intelligent Automation, Artificial Intelligence (AI), Machine Learning etc are the buzz words these days. Blending these with RPA leads us to “Connected RPA”. Although there is lot of traction on this topic and it’s a new way of working with RPA now, what does it mean for the friendly neighbourhood RPA developer?
How does it impact his/her future path of work?

To answer the above questions, let us try to understand, what is Connected RPA, and how does it impact the current way of working for a developer.

What is Connected RPA

To take a page out of Blue Prism’s definition – Our Connected RPA platform is an intelligent automation ecosystem comprised of advanced AI technologies, and a community of experts, researchers and providers that enables your people to create and customize innovative automations for unique tasks.

To put in a simpler way it is still RPA, but there is also a facet of “intelligence” added to it. It’s the added intelligence what makes it different, through advanced technologies like ICR, NLP (Natural Language Processing), ML (Machine Learning), AI etc. Digital Exchange divides it into the 6 senses namely, Visual Perception, Planning and Sequencing, Collaboration, Knowledge & Insight, Learning and Problem Solving.

Impact on Automation development and Developer Upskilling

The next most important question that pops up is how does this impact the current developers working on RPA. To answer this question let us work through the fundamental topics of the operating model which any developer works in to build an automation.

Process Assessments:

In a traditional RPA development, process assessment to identify the “low hanging fruits” i.e. assess the processes which are suitable for automation are evaluated using the following high level criteria:

(a) The complexity in automating the business process
(b) The cost to benefit ratio of the automation
(c) If the automation can even be automated as per proper the rules defined by business
(d) If unstructured data, which cannot be processed by RPA, is part of the process

High level criteria aside, there are a lot of calculations which go into this analysis, which we won’t go into in this post.
In the Connected RPA world, these rules for process assessments are bound to change.

a) Complexity varies as per the new ways for integration and adding the new Connected RPA tools to be integrated with to perform certain actions required for automating the business process.
b) Cost to benefit ratio changes as the new tools which need to be added would need to be accounted for and the new functionalities provided by the tools would also impact the automation.
c) Rules based automation is a blurry line in Connected RPA with ICR, ML and Human in the loop integrations.
d) Unstructured data can be easily converted to Structured with Connected RPA tools.

The developer needs to be familiar with the changes in these rules and calculations, either for the process for developing these tools for Process Assessments, or for participating in the detailed process analysis and design which is required, once an automation qualifies for development.

Developer Upskilling for development:

Coming back to the main topic, what changes does a developer need to make for working in a Connected RPA ecosystem.

To answer this, let me take an example of the latest piece of automation development I developed a few weeks back. I’ll try to explain at a high-level and simplify the example as much as possible.

  1. Input data consists of both structured and unstructured data (50% split). Its employee entered data coming in a large excel file.
  2. If it is structured data, then this can processed by RPA as we can extract the data and the rest of the processing is pretty much rules based.
  3. If it is unstructured data, the data is in free text format. In the traditional RPA scenario, this would be out of scope.
  4. Data for mappings are present in excel files.
This is how it would have been done in the pre-Connected RPA world:

Process Assessment
The process assessment results would be as follows:
  1. Medium complexity due to the number of steps involved.
  2. Benefits provided would be for the 50% of the volume or process steps which can be automated, it is pretty much a direct calculation on the time required for the automation to run vs the current number of FTE’s involved. In addition are there any intangible benefits like shortened time for processing and improved cash flow to the organization.
  3. Only 50% of the business problem can be worked on using RPA as only half of the data has clear rules associated with it.
  4. Part of data that is unstructured( ~ 50% of automation) is out of scope.
Design and Development:

Design and build will be very straightforward and would require extensive use of Excel VBO, Collection Manipulation VBO and OLE DB VBO.

In the age of Connected RPA this is how the use case can be implemented:

Before we move into the scenario of Connected RPA for the same use case, we have to understand that from a Process Assessment result this use case might not fall under the “low hanging fruit” case as we are only able to automate 50% which might not give us the required benefits in comparison to other automations, so question is what changes?

So, let us have a relook at the use case possible solution, with a mind of evaluating it according to the tools which can be worked with Connected RPA.

Use case scenario

C-RPA Solution

Input data consists of both structured and unstructured data (50% split). Its employee entered data coming in a large excel file

Evaluate the use of a Front-End GUI which the user can use to input data at real time. Options include BP Interact or Trustportal or even a custom GUI which can call BP Process exposed as a Web Service.

With a GUI input we can design the solution to be near real time rather than a batch.

If this transformation is not feasible, we still have the below options to choose from.

50% Volume of structured data

This can be processed by Blue Prism directly

50% volume of unstructured data

Option 1- Prompt the user to input structured data at the start in the GUI rather than working on the data entered in a reactive way

Option 2- Use Natural Language Processing (NLP) to convert unstructured data to structured to be used by BluePrism

Data for mappings are present in excel files.

If it needs to be further optimized, excel files data can be looked up at the source. Investigate if any of the systems provide the option of SOAP/REST-API's which can be consumed by BluePrism


Rather than going into the actual Solution, with the Connected RPA tools used,
(a) We were able to get better benefits for the business.
(b) Include the full 100% of the business process into the scope of automation
which resulted in this automation getting the use case qualified as a “Low hanging fruit” ready for automation.

Tools evaluated for Connected RPA Use case:
Front End Development: BluePrism Interact, Trustportal or Custom GUI.
Natural Language Processing: Sentence-Transformers, Spacy, NLTK (Python packages to provide on-prem ML), BERT (ML Model)
Web API: Application Provided Web-API, Django Rest Framework for Python to expose Python NLP programs as Web Services.
RPA: BluePrism

Developer Upskilling points

As we see, Connected RPA development spreads across multiple different fields not only RPA. New technologies like AI, ML, NLP, ICR etc are part and parcel of what makes a full-fledged solution, rather than a single RPA implementation of the business process. When an organisation starts out on their RPA journey, they will look at simple business use cases initially to automate which give them maximum benefits, But as we move forward, and technology gets more advanced and stable, the definition of simple use case will change along with the value of benefits which can get delivered for these use cases.

The mainstay would still be RPA which connects everything together, but from a developer future training path some points would need to be considered.

  1. Download and explore the latest BluePrism version available. All developers need to be familiar with functionalities like WebAPI, Gateway etc. You never know which use case may come up in future that would need these skills.
  2. Evaluate and try to implement new ML technologies. Many like python modules above, and even cloud service providers like Google (Google AutoML) are either available for free, or have free trials, using which you can get familiar with the working.
  3. Explore the Digital Exchange (DX) site which has pre-built integrations available. Many might be useful in evaluating use cases.

Remember, we don’t have to be an expert at the start, we just need to know that a possible solution is present which we can evaluate. Most ML technology effectiveness is only found out post testing it with multiple data samples. But without even knowing that a possible solution exists we will not reach that stage at all. We can begin the journey of being the expert when the development work commences.

Lastly, if nothing else, it will be a good talking point in your next job interview 😊

Today spent in looking at support tickets,
Your friendly experimental developer,
Ashish Easow
1 Comment
MelanieGiuliani
Community Team (Retired)
Great post, @ashish.easow! Thanks for sharing.​