Do robots have to cost so much?
The aim of this analysis is to compare and test leading provider’s software and cheaper, not standard solutions. Let’s see how business branch of repoBots family handle example process. But first, let me provide you with few words of explaination what RPA (Robotic Process Automation) is. Business case for doing it and what need for RPA specialists is on the job market. If you already know this – jump straight to technology tests & comparison.
What is RPA?
For all of you who don’t know yet – short clarification what Robotic Process Automation is. Simply – software “robot” is application which replicates human actions/activity through interaction with user interface in a computer environment – it “presses” keys on keybord, “moves and clickes” a mouse according to preset sequence of steps.
How much does it cost?
Licence cost of UiPath, Automation Anywhere or Blue Prism starting from around 4k to 15k USD per year for a user. Using stat.gov.pl data, average gross salary in enterprise sector in Poland for December 2017 is around 5000 zł, employer probably bears another 5000 zł for contributions, funds, office, infrastructure, etc. Total cost of one employee is around 30k USD / year. Summarizing, 30k vs 4k USD seems to be nice business case.
Who can do a robot for me?
Some RPA software providers as well as companies implementing such solutions use to say you don’t need to have programming skills to create a robot. Let’s check what job market says about that. repoBots informed me that 40 job offers for RPA Developers/Architects/etc. appeared on pracuj.pl (biggest job board in Poland) in January 2018. Following requirements/expectations in them:
- Min. 5 years experience in software design and development
- Knowledge of at least one of following languages: VB.NET, VBA, C#, Object Pascal,
- Having track record in the successful delivery and support of excel macros, Visual Basic scripts or other configuration/scripting type technology
- Experience in IT environment in supporting different stages of software development process (analysis, design, implementation, testing, deployment).
- Experience in Object Orientated Development (VB, .NET, Java etc.).
Ok – so you need to have programming skills. You can’t avoid it, even simplest robots built require at least basic object oriented programming knowledge.
Where can I make use of robots?
Whatever you hear – RPA is not artificial intelligence, not even a bit. RPA is to reflect activity done by human, basing on set sequence of steps with defined decision tree. Robot is useful wherever there is clear and well defined process with no decisions which you cannot translate to algorithm. Do you own such processes? Sure yes, maybe you cannot recognize them now, but I bet “dollars to doughnuts” you’ve got quite a lot.
Do I have to pay?
Nothing is free 🙂 If you and your team have no programming skills, you need to hire RPA Dev(s), If you can code – you need to spend time on it. What you can do is to deeply consider software choice. In addition to leading providers, there are many free or barely free ways to robotize your process. Let’s have a closer look.
Despite that there are few leading RPA software providers, hardly anyone shares trial of free version. That’s why I’m testing UiPath – they have trial version and free one (a bit poorer). Following (in alphabetical order) are tested:
- AutoHotkey_L – free
- Python + Selenium – free
- UiPath Enterprise Edition (Trial) – paid but there is free Community Edition available for individual users and small companies (up to 5 users)
- VBA / Excel 2016 – MS Excel is not free but you already have it so it’s like free
Interesting fact is that process automation/robotization is possible for several years already. Autohotkey (version L – tested here) is available since 2010 and previous version since 2004 (it still works). VBA in Excelu exists since 1993 (it’s 25 years already!). So it is worth to think for a moment why such a hype now…
Example process is designed in a way to resemble a real one, similar to what you have in your organizations. Technologies not working together, mixture of online and offline tools, modern and legacy technologies. Simple, obvious but not very efficient process flow. Life isn’t it. Robots mimic activities, which would be done by a human operator. With exception of communication with database, this is done directly instead of through user interface. Process flow below and process steps in article annex at the end.
RPA in action
The heart of the matter at last. Below video shows quickly input data, results, 4 technologies (Autohotkey, Python + Selenium, UiPath, VBA / Excel) working in parallel on same process.
Results and observations
Time has been measured by repoBots, so measurement is repeatable and reliable. Comments and scoring done by me, so reliable a bit less 🙂
VBA – good coding experience, probably because my longest experience with this language. I haven’t been able to automate file upload only with VBA – in addition I had to use VBScript. Reliability – certainly lowest amongst tested methods.
Autohotkey_L – would be fine if not crazy syntax of this language. Although I used Autohotkey years ago, it was really hard to programme the bot because of the sytax. IE automation seemed to be rather reliable.
UiPath – nice and easy bot building experience. Mostly drag & drop, however, what you can notice looking at number of lines of code, programming was not completely avoided. Reliable with one exception which could lead to problems in the future.
Python + Selenium – Clear and enjoyable syntax is a huge Python advantage. The goal has been accomplished with low number of code lines. Selenium ensures really high reliability – that’s why the shortest processing time. For me – 1st place, but UiPath is not that far away.
There are other advantages of Python which had no use in this example, such as multiplicitly of high quality modules for various applications, plus really wide programmers’ community.
Why robots cost so much?
Answering the title question – it doesn’t have to cost much. You can automate your processes with lower cost than you thought and still keep high reliability. Can it be long term strategy? May be – if designed with thought – but this is probably topic for another article 🙂
Example process – process steps
- Open list of new leads.
- Validate data completeness.
- Data complete? Go to step 5.
- Data incomplete? Get missing details from database.
- Prepare csv files (one by channel) for import.
- Save it with defined file name (lead_channel.txt).
- Open Salesforce webpage.
- Log in.
- Go to Leads section.
- Repeat 11-22 for all lead categories.
- Click Import button.
- Select “Leads” in What kind of data are you importing? section.
- Select “Add new records” in What do you want to do? section.
- Match leads by email.
- Select lead category.
- Select “CSV” in Where is your data located? section.
- Select Unicode8 in Character Code dropdown.
- Choose import file.
- Click Next.
- Click Next.
- Click Start Import.
- Click OK.
- Book timeslot for leads in Partner & Website categories (1h for Partners, 30 min. for Website) in database.
- Create and send welcome e-mail to all leads in Partner & Website categories.
- Leads names generated using Random Name Generator
- Companies names generated using The Wordlab Business Name Generator
- Salesforce free trial
- UiPath Community Edition