Lessons learned from building model-driven development tools
Tools to support modelling in system and software engineering are widespread, and have reached a degree of maturity where their use and availability are accepted. Tools to support model-driven development (MDD)-where models are manipulated and managed throughout the system/software engineering lifecycle-have, over the last 10 years, seen much research and development attention. Over the last 10 years, we have had significant experience in the design, development and deployment of MDD tools in practical settings. In this paper, we distill some of the important lessons we have learned in developing and deploying two MDD tools: Epsilon and VIATRA. In doing so, we aim to identify some of the key principles of developing successful MDD tools, as well as some hints of the pitfalls and risks.
model-driven development mdd tools model management model tansformation