Starting with the second half of the 90's, ERP systems saw increased deployment numbers. The most significant lesson learned from such deployments is the importance that flexibility holds for ERP systems. The high failure rate of ERP implementations in the last 15 years and the millions of dollars lost, attest to this fact, and the primary reason is the attempts made at trying to adapt existing business processes to rigid ERP system structures.
Before delving into the topic of flexibility in ERP systems, let's first examine how such systems are developed. Software development is the process of converting "business domains" into "software domains" (see Figure 1). The primary concept in this model-based conversion is "abstraction". Abstraction involves conversion of entities and concepts related to the business domain into a state where they can be expressed in software, followed by the creation of a business model based on this information. These flawed business models are to blame for the failures experienced in the deployment of ERP systems.
Figure 1 - Software Development Process and Transformation Transaction.
In as critical an undertaking as the moving of all the business processes of an organization to a software environment, errors made in modelling will result in the flawed functioning of related processes, inability in collecting correct information, and failure in establishing an organizational memory relating to the business processes and operations. Not forming an organizational memory leads to the organization treating each problem as if it is a brand new problem. The corresponding cost is in lost time and money. The fundamental error made in modelling is ignoring the fact that each organization has unique processes. Furthermore, processes are not analyzed within the scopes of different applications. ERP platforms should therefore incorporate an architecture which allows differentiation in and customization of processes.
Customization, a dimension of flexibility, is only possible through a platform powerful enough to express the business domain. Customization is the ability for the organization to continue its current processes without changes, both visually and through workflows.
As it relates to this point, the base platform of the ERP system holds increased significance. The ERP platform architecture should be one that can be customizable, scalable, integrated and stable. Unfortunately, most of the current offering of ERP systems lack such a platform.
Trying to model the processes of your organization using a rigid-structured ERP platform usually results in loss of time and money. In fact, the reason behind the high percentage of failure rates in enterprise IT implementations as advertised by such companies as Gartner and IDC lies in the attempts made at trying to fit corporate processes to ERP systems, as we have described above. When making your choice in ERP systems, opting for a system that allows you to express the processes of your organization without restrictions, a system that lets you use your own vocabulary in user interactions, and a system which you can freely customize and add onto, will be an important element in the success of your ERP implementation.
With best wishes until we meet again in a future article.
About the author: Ekrem Aksoy works as a software engineer at IAS Software R&D Department. He is also a university instructor, teaching courses in software engineering, and object-oriented programming. He is working on his thesis towards a Ph.D.