The use of the word metamodel in this Thesis title has been carefully chosen and it is important to offer a complete definition as the concept itself is very much related to some of thesis defended in this work.
To understand the meaning of metamodel we must first understand what a model is. But the concept of model is also closely related to that of system. As a matter of fact, the definition of model that will be used throughout this work is the following: ``A model is an abstract representation of a given system''. It seems clear that we better clearly define what a system is before continuing the discussion on the model itself.