Automation has been around us for about 75 years now, with its origin lying in Ford Motors way back in 1946. The word ‘Automation’ originates from ‘automaton,’ which essentially means any machine;, instrument or equipment that can virtually operate itself without any or much human intervention required. In the early days of automation, it was mostly applied to what we call today as mechanical hardware. The automation was driven by mechanical assemblies that allowed machines or parts of them to operate themselves.
As time passed by, technology evolved and along with it evolved automation too. The earliest application of automation – going by its classic definition – can be traced back to the very first computer engine built on Alan Turing’s design known as ACE (Automatic Computer Engine). In a way, automation and technology have grown symbiotically. Without automation, computers would not have been possible and without the advances in computing, the current stage of automation would not be possible. Fast forward to the 21st century and we will struggle to find any electronic device that lacks automation. In fact, today we can say that we are living in an era of automation and digital transformation.
Computer automation too has multiple flavors when it comes to the areas that are optimized via automation. For the scope of this article, we are going to stick to software-based automation. Even in terms of software automation, we have had automation in some form for about 5 decades now.
With the introduction of programming languages, software automation was also introduced, probably in its simplest format. Mathematical and linguistic programs are probably the earliest examples of software automation. From there, software technology – in a word – exploded! With the advent of so many programming paradigms and languages, computer software created a new space for engineers of the future.
Operating systems came into existence followed by graphical interfaces, applications, games, etc.
We are now at that point in time where we think nothing can surprise us anymore and out comes a technology that still manages to surprise us. Then, you may ask, if automation has been around for so long, what is this sudden fuss about software automation?
Well, that is where things begin to get interesting. While automation has been around for so long, only recently did we start applying it to our existing processes.
Let us take a simple example. Jane Doe comes to the office and has to invest 2 hours of her time daily to create a complicated report that she will then use to make some decisions that impact the business. The generation of report is a highly mundane task where Jane has to fetch data from different systems, apply some logic to it, and based on a lot of eyeballing; she then creates a final summary sheet. What a waste of Jane’s time!
Let us look at another example. John Doe is responsible for maintaining the IT infrastructure within his organization. Along with this, John also has been given the responsibility to migrate the legacy systems in the organization to modern cloud applications. Unfortunately, John has to spend 90% of his time attending mundane tickets like password reset, software provisioning, onboarding, hence keeping him from working on important things that need his skillset. Life would be better only if Jane and John had some help which would allow them to concentrate on tasks that matter and require their skillset.
Enter modern-day software automation.
Modern-day software automation is broadly divided into different types of automation. RPA or Robotic Process Automation is primarily used in automating business processes. RPA mainly relies on mimicking the actions that a human being would do and works with the UI elements of an application. Jane from our earlier example can utilize RPA to make her work-life easier ITPA or IT Process Automation on the other hand deals with different IT systems using the classic programmatic approach of scripting and/or consuming API(s) to get the things done. John can use ITPA to manage the mundane tickets and concentrate on application migration.
Moving beyond these two main streams of automation, we have multiple specialized branches of automation too like ETL which empowers users to automate scenarios with high data volumes, machine learning based automation to help users in tasks that require some basic decision making based on the data, chatbots to help get things done on the go, etc. Terms like Hyperautomation and Service Orchestration rely on the same principle: Going beyond the realm of using a single technology to try and automate every process out there which results in fragility and inefficiency.
At AutomationEdge, we believe that it is important to give our users a choice of technology in terms of automating any process hence the platform is built from ground up in such a way that it embraces all the above-mentioned technologies and more. This makes the automation robust, resilient and scalable. As we continue on the path of digital transformation, relying on a single automation technology is not going to be sufficient and hence it will be extremely important to choose a platform that allows you to leverage multiple technologies to enable an efficient automation solution for your current processes.