I have divided the evolution into four distinct eras:
A) Mainframe
B) Client Server
C) Cloud Computing
D) Mobile Cloud
Please note that I have not considered the move from client server to a internet based model, referred to by the business vendors in the early 2000 as e-business suites, as a separate era since it felt like an extension of client server with the server being at data centres and served to clients through the internet.
Fig1: Business Agility vs User Experience - Technology |
A. Mainframe Era
Mainframes helped address the issues with the data processing requirements of large business - the shift from manual, error prone to the reliability and stability of computers gave large businesses a huge advantage compared to other businesses. The shift from manual to mainframes was good from a reliability standpoint but was not a quick fix or a great user experience - this meant that the users were primarily large businesses who could afford the expense. Check out this IBM article on Mainframe usage - which looks at current usage as well and is slightly different from my consideration in the previous era.
Mainframe, to an extent, drove the growth of larger businesses since now they could scale to handle large order processing, payroll management and other processes.
From a business agility perspective, mainframes meant long expensive implementation cycles and once defined a process remained fairly standard. And user had to be content with blue screens and had to remember transaction codes etc , hence with minimal user convenience in mind.
B. Client Server
The move to client server made things better both from an agility point of view as well as user experience. The era of desktop application meant that you could give a little bit more consideration for the user and also application development itself had more options with the likes of languages like C, Visual Basic, PowerBuilder etc.
In terms of competitive advantage, this meant that only organisations with access to developers could build application according to their needs. This meant that there were more options for differentiation in certain areas.
This was also an era when ERP vendors like SAP, PeopleSoft, Oracle et al extended their reach across the enterprise and came up with the idea of a best-in-class process for the standard back-office processes. This was also an era were computerisation took hold with packaged software across both small and large businesses - the greater your access to capital, the greater was your ability to make something specific which offered you a competitive advantage.
C. Cloud Computing
With advent of greater connectivity speed and establishment of the idea of sharing computing resources, cloud computing has established itself as key model for delivering software. This has done away with the need for businesses to have capital expenses for their IT estate and turning software as a regular service which buy on an ongoing basis. The key competitive advantage comes with the agility it affords in terms getting your employees and customers enabled with a process delivered in the cloud.
Businesses are taking this agility to the next level by using business platforms which they can use to develop differentiated services or automation quickly.
Services still were delivered via browser and user experience wasn't as good as a customised client server model with a dedicated WAN/LAN could provide especially in scenarios where internet connection wasn't good enough.
Hence cloud computing by itself scored high on business agility but not as high on user experience.
D. Mobile Cloud
Competitive advantage now arises in the ability of businesses to cater to their stakeholder, be it customers, employees or partner with a value proposition which is differentiated and high on user experience.
Future looks very exciting and there are multiple scenarios which could lead us to the next phase in the evolution - could be IoT combined with wearables providing us with context relevant help and driving greater automation.
Here is to the next phase in software evolution - agility and user experience rules :).