In an organization, business applications are the glue that ties teams and business processes together. Advances in technology, computing, and industry trends shape the architecture of business applications. And like any other software, business applications have also undergone fundamental changes and evolved over time.
Basically, any business application consists of the following elements:
The very first business applications were based on the terminal server architecture during the heydays of mainframes and microcomputers. At that time, all application logic and data resided on the server. There was no clear separation of logic and data on the server side. The user had a terminal with low computing power. The user interface was limited to character display terminals and input was limited to a keyboard.
As microcomputers decreased in price and increased in power from the 1980s to the late 1990s, many organizations transitioned computation from centralized servers to fat clients. For the first time, business applications had a rich user interface that was installed on these microcomputers (desktops). Also, there was a very limited separation among the elements on the server side.
During the 2000s, web applications matured enough to rival application software developed for a specific microarchitecture. Although all the elements of the application resided on the server, the advent of service-oriented architecture gave rise to a 3-tier architecture with clear separation of the UI, logic, and data. Data that was otherwise locked in monolithic systems was liberated to a great extent and along with emerging web technologies, giving rise to rich internet applications.
The advent of social, mobile, and cloud, along with the consumerization of IT, is placing greater demands on business applications. The proliferation of smart mobile devices and the Internet of Things has given rise to a modified 3-tier architecture wherein the UI resides on some of the devices and the application data stays in sync. Organizations are using modern platforms to create business applications that are available on any device, anywhere, any time.
How do you think the application model will evolve in the next 10 years?