Enterprise software might be entering its golden era. The confluence of technologies movements such as cloud computing, mobile, big data as well as the raise in popularity of open source delivery models are pushing the boundaries of enterprise software solutions. As these technologies continue to rapidly gain traction in the enterprise, they are called to become foundation blocks of any enterprise software application. We call this movement: the third generation enterprise application platform.
The First Generation: Mainframes
Mainframes architectures were the first movement that powered a complete generation of applications in the enterprise. Many mission critical business applications in areas like financing, HR or resource planning were created using the mainframe as the foundation. As the times evolved, the centralized nature of the mainframe resulted insufficient to power a new generation of architectures which gave birth to the second generation of enterprise software platforms.
The Second Generation: Client-Server
The raise of client server architectures created a series of technologies that powered the second generation enterprise platforms. From web platforms, database servers, integration platforms, etc the industry produced a large number of technologies based on client server models. The client server architecture movement saw its golden days with the evolution of J2EE app servers that are still dominant in enterprise applications.
Closed Source and Outsourced
The explosion of technologies based on client-server architectures were mostly based on closed source models dominated by big enterprise vendors such as Oracle, IBM or Microsoft. Given the complexity of these technologies, organizations quickly at outsourcing everything from the development to the support of applications which cause the rapid raise of the IT outsourcing industries in regions like India and Easter Europe.
While the client-server model dominated the enterprise for over a decade, it proven to be impractical to support a new group of technologies movements that resulted in the foundation of the third generation enterprise software platforms.
The Third Generation: Mobile, Cloud, Big Data, Social, ….
The evolution of independent movements such as cloud computing, big data, machine learning, mobile computing, social etc has completely disrupted traditional enterprise software in the last few years. Independently, each one of movements has produced dozens of platforms that are being adopted in the enterprise. However, the most forward thinking organizations are shifting from adopting cloud, mobile, big data as separate initiatives and seeing as foundational blocks of the next generation enterprise solutions.
In the same way the client-server model dominated the second generation enterprise applications with technologies web sites and databases, new enterprise solutions are starting to leverage big data, mobile and cloud platforms as key building blocks.
Open Source and In-House
Contrasting with previous movements in enterprise application development, the third generation enterprise platform have been catalyzed by the renaissance of open source in the enterprise. In the last decade, open source models have matured to be considered enterprise-ready and have definitely out-innovative closed-source commercial technologies.
In this new world, software is shifting from an utility to become a key differentiator of traditional, non-software companies. In that sense, more organizations are looking to build the knowledge and expertise required to build third generation enterprise applications in-house instead of traditional outsourcing.