An Introduction to RPA
Getting Back to Business
My little cousin Liam is a very picky eater, and when I'm on babysitting duty, he always wants me to make him his favorite meal. A peanut butter jelly sandwich. Liam has a very particular way he likes his lunch prepared (Liam Style Ⓡ, he calls it) First, the bread. It must be toasted to his exact specifications. Not too brown, but just crispy enough to have that satisfying crunch when bitten into. Next, we need to apply 2 tablespoons of jelly to the top slice, and 3 tablespoons of peanut butter on the bottom slice. Now extract the crust. This takes surgical precision because if you cut too much off the sides, he'll still be hungry and want seconds. Finally, partition the sandwich square into two halves so he doesn't get grape jelly all over his face. Then and only then, is the sandwich complete and Liam will be satisfied.
As I stand there with vacant eyes, watching toast toast, I daydream of how awesome it would be to have a sandwich making robot that carry out all of these tasks for me in quick succession and deliver the perfect sandwich that meets all expectations at the push of a button. Liam agrees with me on this sentiment. Not so lucky for me but lucky for the businesses around the world who are stuck doing tedious, time-consuming, error prone tasks, there exists RPA.
Robotic Process Automation, or RPA, may be joining the ranks of tech industry buzzwords like "cloud computing" and "big data," but it is trending for good reason. Where there is smoke, there is fire after all. Businesses of all shapes and sizes across the globe have taken up RPA in order to cut down the time and manpower spent doing mind-numbing tasks that could easily be automated.
Reading about my sandwich woes may have stirred up some hatred towards the boring tasks that you yourself, or your associates, carry out every day. Find yourself copying and pasting information, one field at a time, between multiple applications? Tired of making the same types of edits to the same types of documents, saving them and emailing them out to the same people? Have you clicked the same sequence of buttons so many times you could do it in your sleep? Before you go off fantasizing about sipping cocktails with your feet up on the desk while a robot does all your work, let's first go into more detail about how exactly RPA works.
Getting to Know RPA
If you're familiar with programming or IT, you have probably heard of the term "scripting." Not too dissimilar from a Hollywood movie script, the concept is that, in a script, you have a sequence of events that when combined together, tell a story or contribute to a larger purpose. In isolation or out of order, the events don't make much sense. Each event has a purpose in taking in information from the previous event, building upon that information, establishing new information, and sending the information along for when the next event takes place.
A script also has characters. Characters interact with each other using dialog and by taking actions. The script dictates what character will take an action, what the action will be, and when the action will be taken. Through the interaction of characters and the impacts their actions have on other characters and the environment, we have events transpiring.
The same concept can be used to describe RPA, but whereas the traditional idea of scripting can apply to many things in the tech space, in the context of RPA, this will be limited to the types of actions that a human would take when working with User interfaces, input/output devices, and the manual transferring of data between business endpoints.
Furthermore, where traditional scripting would normally require literacy in a scripting language (Python, Bash, etc), building RPA modules can be accomplished in a user-friendly graphical interface. Using our movie script analogy above, let’s take a generalized example of a task that would normally take someone 15 minutes to complete and break it down to be automated. Our task could be summarized as "updating an account balance" and its events would be the things you would tell your friend when they ask what you do at work all day:
- Well, first I log on to the sales portal.
- Then, I take the account number in the email that was sent to me by our automated confirmation service and search for that account number in the portal.
- Once I find the account and make sure it's the right one, I update the balance owed and document the date and amount changes in the account notes.
- Then, I copy and paste the new notes along with the account number and name of the account to a spreadsheet which gets verified at the end of the day.
At this point, you may want to wake your friend up. Each of these steps can be considered an event for our RPA bot to process. Looking at our first event. "I log on to the sales portal," we can identify each character and the actions they take to move the story along. The characters here are our mouse cursor, the Operating System, our keyboard input, and our sales portal application.
Using our mouse, we double click the app on the desktop to open it up. Then we type in our username and password at the login screen of the sales portal using the keyboard. Finally, we click enter to move to the next screen. The mouse talked to the OS, which told the application to open. The keyboard then tells the application who you are and the application shows you the next screen. End scene.
There’s just one problem. You are essentially filling the role of movie director by executing on the script and bossing the characters around, making sure everyone is doing their job. And this is just one event! Our script could contain dozens of these events, but now I, ambassador of RPA knowledge, officially promote you to movie studio executive, which means you can dump your old role of director onto RPA. Robotic process automation will click your buttons, paste your copies, and log your -in's all day long and never complain or take bathroom breaks. When we extend this automation across your entire task workflow, you can start to see how powerful of a tool it can be.
Now that you’re the movie studio executive of your project, you’ll need to learn how RPA can impact your final cut. Continue reading here.
James Upchurch, Software Engineer II
James Upchurch joined Accusoft in 2017 as a software engineer and currently works on Accusoft's SDKs including FormSuite, SmartZone, and ImagXpress. He graduated from the University of South Florida with a Bachelor's degree in Computer Science with a focus in project management and application design. Now, his interests are customer advocacy and improving engineering processes. Away from work, James enjoys biking around Tampa, playing guitar, writing, and strength training.