Jump to Navigation | Search | Content area | Page footer
( http://www.dagstuhl.de/04101 )

29.02.04 - 05.03.04, Seminar 04101

Language Engineering for Model-Driven Software Development

Organizers

J. Bézivin (Univ. Nantes, FR), R. Heckel (Univ. Leicester, GB)



Documents

List of Participants
Dagstuhl Follow-Up Publication
Dagstuhl Seminar Proceedings DROPS
External Homepage

Summary

Model-driven approaches to software development require precise definitions and tool support for modeling languages, their syntax and semantics, their notions of consistency and refinement, as well as their mappings to the implementation level. In order to support model-driven development in a variety of contexts, we must find efficient ways of designing languages, accepting that definitions are evolving and that tools need to be delivered in a timely fashion.

In this respect, language definitions are not unlike software. Thus, a discipline of language engineering is required to support the design, implementation, and validation of modeling languages with the goal to deliver languages at low cost and with high quality.

An important contribution of any engineering science, besides the actual technology provided, is the meta knowledge about what are the relevant concerns to be addressed, what are the possible solutions, and what concern is best addressed in a given context by which kind of technology.

It is understood that different concerns of language engineering, like the defi- nition of abstract syntax and well-formedness rules, operational and denotational semantics, consistency and refinement relations, and model transformations, will, in general, require technologies from different domains.

A framework for classifying, choosing, and relating different solutions domains is provided by the concept of technological spaces [KBA03]. A technological space is a working context with a set of associated concepts, body of knowledge, tools, acquired skills and possibilities, often associated to a given community. Well-known examples include XML, UML meta modeling, graph transformation, algebra and logic, programming languages, etc.

It has been the goal of the seminar to investigate relevant concerns and promising solution domains for language engineering, learn from specific solutions presented by the participants, and attempt a provisional classification and mapping. To illustrate problems and available solutions, a sample language engineering problem was proposed and elaborated.

After a more detailed discussion of the architectural aspect of language engineering, this summary presents this case study, discusses concerns and open issues raised by the corresponding language definition problem, and gives a more general motivation of technological spaces as solution domains for model-driven development.

Publications

Books from the participants of the current Seminar 

Book exhibition in the library, 1st floor

(during the seminar week)

Each Dagstuhl Seminar has the possibility to publish a volume of  "Dagstuhl Seminar Proceedings" online. Details will be discussed during the seminar.

Background information on

Dagstuhl Seminar Proceedings

Follow-Up Publications

Please inform us, when a further publication results from your seminar. These Follow-Up publications are listed separately and are presented on a special shelf on the ground floor of the library.