Technical Foundations of ERP Architectures
Information technology is changing at a fast pace. Underlying ERP technology is needed to keep pace with first changing IT scenario and should also be flexible to adopt ever changing business scenario. ERP technical architecture basically defines layout of layers of application deployment between servers and desktops, interfaces and software objects. ERP architecture is no more meant to just provide technical functionality, user interface and platform support but should be able to absorb emerging technologies. It should be expandable and maintainable to meet future business needs such as business process changes, merger and acquisitions, compatibility with future regulations etc.
Mainframe Era: During, 1980s, ERP systems were running on mainframe, capable of supporting hundreds of users concurrently. Users were connecting to this monolith system through dumb terminals (terminals without any memory or processing power), only to access and input data. Concept of Graphic users Interface was still to come and only a few knowledgeable users were comfortable with this set up.
Client Server: During 1990s, client server (C/S) ERP application became popular. PC became powerful and provided a better user interface (UI), through Graphic Users Interface (GUI). Mainframe computers were getting replaced by midrange system such as AS/400 or powerful PC servers. PCs (clients), networked with server / cluster of servers, are known as Client Server platform and have the following characteristic:
- Server hosts central database and application programme.
- PC Clients, provide input, request service from server, performs display and does some processing.
- System functions are done in three logical layers i) Presentation layer-at client PC ii) Application layer, executing instructions from users and transferring and receiving data from database iii) Database layer for centrally managing data. Under C/S concept, server denotes either a physical or a virtual server.
- Application programme and database may be hosted in a single server or in two separate servers. For multi location or large systems, application program is divided in a number of networked servers which enhance speed and reliability of the system.
Monolith system of mainframe era gave away to multilayered and decentralized architecture of C/S. Consequently, ERP vendors started adopting more and more Object Oriented Program (OO) and third / forth generation programming language (3GL/ 4GL). This componentized development environment enables them to develop more modular solutions which can be customized, tested, deployed and retrofitted easily and separately.
Web enabled ERP
Adoption of Internet technology allows access to an ERP system from anywhere anytime, enabling new ERP functionalities like Sales Force Automation.
User Interface (UI) under a Client / Server system was normally a small software programme which needed to be installed, maintained and updated, at each desktop. Carrying out this task over a number of desktops located at various nodes of Wide Area Network, became a cumbersome assignment. Consequently, the concept of Uniform Resource Locator (URL) was adapted and internet browser was used to access server from client side. This development eliminated the need of installing client program but made use of Java applets, which gets downloaded whenever a connection is made by the client, through URL. This was the beginning of adoption of internet technology by ERP systems.
Additionally, on server side, a new layer of web server (HTTP server) was added for generating HTML pages, to respond to client instructions. A Caching server was, also, added to improve speed and performance. Browser enabled client and additional layer of web servers, provided the first step of web enablement of ERP solutions.
The next step of web enablement is to extend backend ERP system to the web so that mobile workers, suppliers and vendors can access and collaborate through secured internet link. To achieve this, ERP systems are needed to be redesigned and made compliant of standard like Java 2 Enterprise Edition (J2EE). This is a time consuming work as traditional ERP systems are complex, inflexible and developed on proprietary platforms and is progressing slowly.
As a consequence of emerging technologies such as WEB 2.0 and Service Oriented Architecture (SOA), new business models like extended ERP and Software as Service (SAAS) are evolving. ERP vendors, who will be able to adapt and make changes to their extant architecture, will come out successful.