Presentation is loading. Please wait.

Presentation is loading. Please wait.

Domain-Specific Software Development Terminology: Do We All Speak the Same Language? Arturo Sánchez-Ruíz, University of North Florida, USA Motoshi Saeki,

Similar presentations


Presentation on theme: "Domain-Specific Software Development Terminology: Do We All Speak the Same Language? Arturo Sánchez-Ruíz, University of North Florida, USA Motoshi Saeki,"— Presentation transcript:

1 Domain-Specific Software Development Terminology: Do We All Speak the Same Language? Arturo Sánchez-Ruíz, University of North Florida, USA Motoshi Saeki, Tokyo Institute of Technology, Japan Benoît Langlois, Thales-EPM, France Roberto Paiano, University of Lecce, Italy The 7th OOPSLA Workshop on Domain-Specific Modeling October 21-22, 2007

2 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 2 Issue Topic during the 2006 DSM edition: Identification of a set of DSM “core terms” Final impression: we (researchers and practitioners) don’t mean the same for the same terms Issue: What are the DSM core terms? Their definitions (because so connected to each other)? What is the concept map of those core terms?

3 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 3 Agenda Methodology Core Terms and Their Definitions Concept Map Conclusions and Future Work

4 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 4 Agenda Methodology Core Terms and Their Definitions Concept Map Conclusions and Future Work

5 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 5 Methodology Iteration 0: agree upon an initial set of core terms. Domain, Application, Level of Abstraction, Language, Syntax, Semantics, Model, Meta-Model, Ontology, Domain-Specific Modeling, and Domain-Specific Language. Iteration 1: each participant creates a document containing a succinct definition for each term. Iteration 2: try to get to a set of converging definitions and produce a document with them. Iteration 3: build a concept map showing these core terms and relationships among them.

6 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 6 Agenda Methodology Core Terms and Their Definitions Concept Map Conclusions and Future Work

7 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 7 Software Application A software application is a component of an approach to solve a problem Corresponds to a fundamental part of the solution to a problem

8 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 8 Application Domain It is characterized by the relevant objects (a.k.a. concepts) and their relationships Relevance is relative to: The problem, The decision of whether or not certain objects and relationships are relevant

9 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 9 Abstraction and Levels of Abstractions Abstraction: Concentrating on the “essence” of the domain, ignoring elements that are considered to be superfluous Iterative process of defining a lattice of layers, each of which is referred to as a level of abstraction

10 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 10 Language, Alphabet, Vocabulary, Syntax, Semantics, and Meta-Language Language: Purpose: Allowing analysts to characterize domains, problems within these, and solutions to such problems. A language is defined by its alphabet, vocabulary, syntax, and semantics.

11 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 11 Language, Alphabet, Vocabulary, Syntax, Semantics, and Meta-Language Alphabet: Set of symbols that are used to build elements in the vocabulary. Vocabulary: Set of allowed “words”. Syntax: Set of rules that define all possible “phrases” in the language (i.e. the set of syntactically correct phrases). Built from words in its vocabulary. Semantics: Set of definitions that establish the “meaning” of all possible syntactically correct phrases in the language.

12 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 12 Language, Alphabet, Vocabulary, Syntax, Semantics, and Meta-Language Meta-Language: Purpose: Language for defining other languages. For any fixed language, there can be various meta-languages that are used to define different aspects of such language. Since meta-languages are languages, they also have the elements associated with any language (e.g. alphabet, vocabulary, etc.)

13 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 13 Model and Meta-Model Domain Modeling: Process of identifying, documenting, and specifying the objects and their relationships (relevant in the context of a given problem.) Process result = Domain Model (a.k.a. Application Domain Model.) A language is needed to define the model. The meta-language that is used to define the semantics of this language is referred to as a meta- model. In some cases, the terms “language” and “model” can be used interchangeably if this does not lead to confusion.

14 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 14 Ontology Definition: Purpose: specification of the knowledge about a domain “An ontology is an explicit specification of a conceptualization.” (Tom Gruber – complete reference in the paper.) A more recent definition proposed by Ontolog uses a multi- dimensional characterization of ontologies (see also this page for a definition of the dimensions.)Ontologmulti- dimensional characterization of ontologiesthis page Hence, it is plausible to equate an ontology with a model of a domain of application. It is also plausible to equate an ontology with a meta-model associated with a domain of application.

15 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 15 Domain-Specific Modeling (DSM) Purpose: Process of building a model for a specific domain “Domain-Specific Modeling raises the level of abstraction beyond programming by specifying the solution directly using domain concepts.” (DSM Forum) DSM is therefore a specialization of the general concept of modeling

16 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 16 Domain-Specific Language (DSL) Domain-Specific Software Development (DSSD) End-users utilize DSLs and environments to build solutions to problems in their domain. Languages + translators + environments generate the code that implements the actual software solution All of these elements together constitute a Domain-Specific approach to Software Development (DSSD)

17 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 17 Agenda Methodology Core Terms and Their Definitions Concept Map Conclusions and Future Work

18 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 18 Concept Map

19 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 19 Agenda Methodology Core Terms and Their Definitions Concept Map Conclusions and Future Work

20 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 20 Conclusions & Future Work I Exercise initiated during the 2006 OOPSLA Workshop on DSM Goal: Determining if we meant the same when referring to DSM core terms Result: Definitions + Concept Map Instructive to frame DSM in the context of DSSD DSSD is seen as an activity which focuses on specific domains

21 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 21 Conclusions & Future Work II Our exercise suggests to use of “meta-X” when explicitly/implicitly defining the semantics of X. The concept map can be extended to create a “live” authoritative source (from our community) for the definition of core terms augmented with examples and other references (hyperlinks). Anybody interested in this project?

22 The 7th OOPSLA Workshop on Domain-Specific Modeling Sánchez-Ruíz, Saeki, Langlois, Paiano 22 Questions? Thank you for your attention! ¡Gracias por su atención! Merci de votre attention ! Grazie per l'attenzione ! ご静聴ありがとうございました Goseicho Arigatougozaimsita


Download ppt "Domain-Specific Software Development Terminology: Do We All Speak the Same Language? Arturo Sánchez-Ruíz, University of North Florida, USA Motoshi Saeki,"

Similar presentations


Ads by Google