Robotic Process Automation (RPA) is a relatively a new breed of technology which is drawing serious interest in the Process Automation space. After Cloud and Big Data, RPA is the next buzz word, an emerging trend and a new breed of technology gaining momentum in the era of Machine Learning and Artificial Intelligence.
RPA is a software or a software platform which allows you to create software robots who mimic human behaviour in a process environment, thus automating the process in question. For example, If there was a Data Entry process where a user would need to copy data from a web form and paste it in relevant form control of a legacy system, then you could train a software robot to do it for you on a consistent, predictable basis.
BPM platforms, on the other hand, handle this scenario a little different. If you have worked on BPM projects you would have heard of Auto Activities or System Activities. These activities allow systems to exchange information and handle scenarios where you would want to automate certain human task provided you have API level or Database level access to those systems. Sounds complicated? Sometimes in fact it is a complicated process and does not need to be.
While RPA robots simply mimics human behaviour, BPM tackles same problem in a much more sophisticated way of automating human tasks. It can create problems if e.g system you wish to communicate with doesn’t have any programmatic interface or is in an external network environment which makes it impossible to integrate with.
Here is where RPA Platforms excel. They have a very sophisticated framework to configure software robots to intelligently capture and execute human activities non-programmatically, allowing to pass on tasks to a human agent when edge cases occur.
In case of BPM Platforms, you could still achieve the capabilities of RPA for certain scenarios. For example, you could use screen scraping tools to capture and perform keystroke and mouse actions, but it may not work in all cases.