Aapo specializes in releasing people from dull knowledge work with Robot Process Automation (RPA). Aapo became interested in RPA while still being a very new phenomenon in 2017, familiarized himself with the theoretical input angle of the RPA through the bachelor's degree in technology and has since worked on practical RPA in various positions.
I thought it would be a good way to start my first few weeks as a robot expert at Gofore by sharing some very basic info about the robots I am mostly working with here.
RPA (Robotic Process Automation, “ohjelmistorobotiikka” in Finnish) is quite a new phenomenon in business process automation. Basically, RPA is a software robot which uses the computer by itself so it’s not a physical robot. The software robot will follow defined business process logic and usually emulates human interactions to execute the process. RPA often uses the graphical user interfaces of the information systems as humans do especially if there are no APIs available. This means that the RPA sits on top of the existing infrastructure and thus is not an intrusive technology.
RPA robots can be categorized into two groups: attended and unattended robots. Attended robots work in human workstations together with human employees. Attended robots can be started by humans or get triggered by events. They can run in the background or ask for human input if needed during the execution of the process. Attended robots can be useful, for example, in the service desk or other customer-facing operations.
Unattended robots work on their own at either physical or virtual cloud workstations without any human intervention. They usually execute high transaction volume processes by automated schedules. Unattended robots can, for example, process accounting tasks during the night so they are finished by the morning when employees come to work. Even though unattended robots work on their own in the background, they can be monitored, audited and managed by human “robot supervisors”. Skynet is not yet here…
What can RPA do?
Basically, almost anything that humans can do at a workstation. However, robots are still bit dumb so they can’t do something that requires complex human interpretation or thinking. On the other hand, by combining AI with the RPA, robots can do more complex human thinking requiring processes but practical implementations of these are still a bit rare. If the process has inputs in a digital, preferably structured, form and the process can be depicted with e.g. flowchart with unambiguous rules, it is most likely quite easy to automate with RPA.
Typically a companies’ RPA journey starts by automating support function processes:
- Finance (e.g. reconciliation, purchase to pay, reporting)
- HR (e.g. onboarding, payroll)
- IT (e.g. monitoring, user management)
- Sales and operations (e.g updating inventory, creating invoices)
With RPA, it is possible to use your imagination and do all kinds of fun stuff like making a robot play piano while filling in online forms: https://twitter.com/UiPath/status/1025155664421838849
RPA, chatbots and AI
You can automate a lot of processes with only RPA. However, by combining RPA with chatbots and AI you can do a lot more cool things. For example, RPA could gather data from legacy systems for AI to produce a prediction about maintenance needs for industrial machines. After that, RPA could set those machines to get a maintenance visit at an appropriate time. Finally, a chatbot could inform humans about the upcoming maintenance. RPA, chatbots and AI are interconnected like illustrated in the picture below:
Another example of combining RPA and chatbot is a bot which will buy train tickets for you: https://www.linkedin.com/feed/update/urn:li:activity:6430749212501168128
RPA vs traditional software development
Developing human mimicking RPA robots might not seem so sexy for traditional software developers but both methods have their pros and cons in process automation. During the last couple years, there has been a bit of hype about RPA and automating everything with it but it should be seen as just one tool for process automation and compared to other available methods case by case.
- Relatively easy and quick to implement and realize the benefits. With RPA, it’s possible to automate some business processes in just a couple of days or weeks compared to usually a much longer traditional software development time. For example, I have developed an RPA robot in four days which automated a quite tedious financial reconciliation process.
- Quite low-cost thanks to the quick implementation times and potential quick returns on investment
- Basics of developing RPA robots is quite easy to learn also for non-software developers
- Doesn’t disrupt existing infrastructure and systems
- It’s possible to do UI automation if APIs are not available and access basically every needed system and legacy systems
- Changes in existing infrastructure and systems can disrupt RPA robots. If the robot uses the UI of the systems and it changes considerably, the robot may need a reconfiguration
- Robots need to be managed in case of changes in the processes or IT systems. When scaling up to dozens or hundreds of robots all doing different tasks, managing them needs resources
- Traditionally developed e.g. integration between two systems is technically more effective than RPA
- Risk of taking quick wins with RPA and forgetting longer term more traditional system developments
Some RPA technologies:
- UiPath (current market leader)
- Blue Prism (main competitor of UiPath)
- Workfusion (offers a free version for enterprises)
- Robotframework RPA (Finnish open source solution)
At Gofore we are technology agnostic so we can evaluate your specific automation project and recommend the best technology available for your requirements.
Wow robots seem cool, I want to learn more?!
- Leave a comment for me – I am happy to help, for example, I could arrange RPA training.
- Start studying free courses about RPA developer and general business skills online: https://www.uipath.com/rpa/academy
- Download free community edition of UiPath and try e.g. automate some boring manual task you need to do: https://www.uipath.com/developers/community-edition
- If you are more of a software developer person you could also try Robotframework RPA