Hints to select between Model-Driven and Model-Based Development!!!
Model-Driven Approach and Model-Based Approach of Development!!!!. Have you ever thought about what these two terms really mean? In this blog I will brief the differences between these two frameworks which might be of some help in selecting the best option that will fit your requirements to achieve the strategic goals.
It is not uncommon to hear new Buzz words when you are part of the IT community. Recent ones are SOA, SaaS, Cloud, Modeling, etc. Modeling is nothing but the graphical way of representing the enterprise systems which allow you to design and develop the systems using the graphical tools.
The idea behind the “Model-Driven development” is to represent the enterprise system in a graphical model. But the major drawback of this framework is the lack of integration between the graphical model and the real applications, which force IT Managers to think about the alternatives. This again put us back in the square one where we have to do traditional coding, testing, debugging, etc. Applications will be developed by lengthy programming process which will ultimately leads the system to be out-of-sync with the initial graphical model. At the end you can see the enterprise system as just a graphical model which is totally disconnected from the real applications deployed. This will reduce the realization on cost savings.
On contrast, Model-Based approach is where applications are designed using the graphical designer applications which can be directly deployed as a running system. In this approach, there is no need for extensive coding as it will be automatically generated. Changes to the applications/processes can be made in real-time as opposed to the time-consuming change management practices followed in coding process. “Out-of-Synch” - This word can be removed from Model-Based applications dictionary as it cannot happen since the graphical model represents the real applications that is executable. Some of the advantages that the Model-based approach will extend to the application development scenario are:
a. Introduces flexibility, agility and efficiency in all the business processes and the enterprise applications
b. Real-Time modifications to business processes, rules, forms by eliminating complex application programming
c. Graphical drag & drop application development environment for rapid deployment of enterprise applications
d. Business users can understand and check whether the system is in accordance with his requirements
e. Dramatic reduction in time and cost of deploying, maintaining the applications which can be to the tune of 10X times
Most of the Business Process Management (BPM) Suites available in the market are utilizing the concept of Model-Based approach. BPM gives the companies an edge over its competitors by introducing the agility and flexibility to the business processes and in the same time increased cost savings.