Model Engineering: From Principles to Platforms
Chapter written by J. Bézivin, F. Jouault, D. Touzet,
ATLAS Group, (INRIA & LINA) University of Nantes, France
When we consider most areas of computer science, we may observe that there has been an initial period of development, based on ad-hoc principles, followed by a rapid rise in abstraction allowing radical improvement in the practices in the field. The move from the first to the second period was usually triggered by the proposal of a new key abstraction and a corresponding set of principles. In the database area for example, the pioneering work of E. F. Codd is widely recognized as one of the great technical innovations of the 20th century. The relational database organization provided a theoretical framework within which a variety of important problems could be attacked in a scientific manner. This new abstraction was described in an IBM technical report of 1969 and became mainstream in the seventies. Similarly, in software engineering, K. Nygaard and O. Dahl proposed in 1965 to unify many notions including data and procedures into the concept of an object, and the related technology was widely transferred to industry in the eighties. Object technology will also probably be seen as another great invention of the 20th century. What seems now to be happening is a similar movement based on the concept of “model”. Model engineering will change the future practices in domains like data engineering and software ...