What one word distinguishes Apple products from the rest?
Apple products are elegant. When designing their product, the engineers at Apple consider the transactional, physical, aesthetic and emotional aspects of the users of the product.
That set me thinking.
Why can't we (rather,why don't we) consider elegance while designing ERP Solutions?
In every implementation there is a phase called 'Solution Design'. The focus is on meeting all the requirements identified in the gathering stage and mapping the same in the product.
In many cases, while the design is practical and meets the requirements, it is hardly elegant.
For example, in Oracle, creating a new Company segment when the user asks for a Trial Balance, is hardly elegant.
Asking user to enter detailed data in the custom forms, and then transferring all the data into Base application tables, thereby creating data duplication, is hardly an elegant solution.
Increasing the user data entry in the system to handle 'Analytical Requirement' is hardly an elegant solution. Checkout my article on 'Analytical Vs Transactional Information in my blog.
Designing a complex solution while a simple alternative is available is not an elegant solution.
Why don't we design elegant solutions? Is it lack of knowledge? I don't think so.
Time pressure is one reason. Most of the project plans expect CRP to start quickly that they do not get enough time for solution design. The upshot is that first available solution is provided to any requirement. No detailed causal analysis done, multiple options are not considered, detailed discussions are not done and hence the solution is inelegant.
Another reason is customization. Even when good workarounds are available, the team either do not know, or they prefer customization (that is where Change Requests and hence money is). Customization naturally creates inelegance.
Yet another reason is the silo approach of the implementation consultants. Most of the elegant solutions require designing across modules. However if your team consists of Procurement consultant, Payable consultant, Inventory Consultant, the chances are that they will not know the entire integration within the application and hence the design becomes cumbersome and hence inelegant.
What is the solution? Do we have to live with inelegant design?
The answer is no.
There are three things that implementation team can do.
One, give enough time for Solution Design. Do not get into the pressure situation and reduce your design time
Two, fill your design team with experienced consultants with expertise across modules. They may be expensive, but they can ensure that there are few problems once the design is implemented.
Three, encourage Causal Analysis and do not accept any solution unless at least three options are provided along with their pros and cons. Normally the third option will turn out to be elegant one.
There you have Rama's rule of elegant design. For every problem encountered in ERP, the third solution option is the most elegant...