TIENE EN SU CESTA DE LA COMPRA
en total 0,00 €
Features
Provides a comprehensive introduction to modeling languages and Model Driven Engineering (MDE)
Describes different kinds of (domain-specific) modeling languages and their instrumentation with tools such as editors, interpreters, generators, and validation tools
Includes industrial case studies, across a range of application domains
Presents a variety of simple worked examples and exercises to help readers reflect on what was learned
Features examples of models and code snippets on the accompanying website: http://mdebook.irisa.fr
Summary
Written by foremost experts in the field, Engineering Modeling Languages provides end-to-end coverage of the engineering of modeling languages to turn domain knowledge into tools.
The book provides a definition of different kinds of modeling languages, their instrumentation with tools such as editors, interpreters and generators, the integration of multiple modeling languages to achieve a system view, and the validation of both models and tools. Industrial case studies, across a range of application domains, are included to attest to the benefits offered by the different techniques. The book also includes a variety of simple worked examples that introduce the techniques to the novice user.
The book is structured in two main parts. The first part is organized around a flow that introduces readers to Model Driven Engineering (MDE) concepts and technologies in a pragmatic manner. It starts with definitions of modeling and MDE, and then moves into a deeper discussion of how to express the knowledge of particular domains using modeling languages to ease the development of systems in the domains.
The second part of the book presents examples of applications of the model-driven approach to different types of software systems. In addition to illustrating the unification power of models in different software domains, this part demonstrates applicability from different starting points (language, business knowledge, standard, etc.) and focuses on different software engineering activities such as Requirement Engineering, Analysis, Design, Implementation, and V&V.
Each chapter concludes with a small set of exercises to help the reader reflect on what was learned or to dig further into the examples. Many examples of models and code snippets are presented throughout the book, and a supplemental website features all of the models and programs (and their associated tooling) discussed in the book.
Table of Contents
What's a Model?
Introduction 
Modeling in Science 
Modeling in Engineering 
Illustrative Example: Cellular Automata 
Semantic Foundations of MDE: the Meaning of Models 
Exercises 
What's a Modeling Language?
Why we need Modeling Languages 
Concrete Syntax 
Abstract Syntax 
Semantics of a Modeling Language
Exercises
Metamodeling With MOF and ECORE 
Metamodel, Meta-language, Language Workbench and Meta-metamodel
Meta-Object Facility (MOF) 
Ecore and EMF 
Representations for Machine Consumption 
Illustrative Example: Metamodels for Cellular Automaton
Exercises 
Metamodeling With OCL 
The Object Constraint Language - OCL
Advanced features of OCL 
Usage of OCL for MOF 
Exercises 
Building Editors and Viewers 
Introduction 
Generic versus Specific Concrete Syntax 
Visual Representations for Human Reading 
Tree Editors
Diagram View (Box and Line) 
Textual View 
Tabular View
Other Views
Model Transformation: from Contemplative
Models to Productive Models
Motivations 
Overview of Model Transformations 
The Executable Meta-Modeling Approach 
Exercises 
Interpreter 
Ingredients 
Design pattern Interpreter 
Combining the design patterns Interpreter and Visitor
Aspect Weaving with Static Introduction 
Exercises 
Refactoring and Refinement 
Foundations 
Applying Model Refactoring 
Illustrative Example: CAIR-Lite Refactoring 
Illustrative Example: CAER Refactoring 
Applying Model Refinement 
Exercises
Generators 
Usefulness of text and code generation 
Model-to-text transformations 
Code Generation 
Documentation Generation 
Model Generation 
Test Generation: Model-Based Validation And Verification 
Exercises 
Variability Management 
Context of Software Product-Lines 
Modeling Variability with Feature Diagrams 
Advanced Variability Modeling Methods 
Amalgamated Approach 
Separating the Assets and the Variability Concern 
Exploitation of Variability Models 
MDE for SPL: Wrap up 
Scaling up Modeling 
Heterogeneous Modeling 
Model Merging and Weaving 
Language Reuse with Model Typing 
Model Slicing 
Software Language Engineering 
Exercises 
Wrap-up: Metamodeling Process
Actors 
Tools to build 
Metamodeling process 
Metamodeling process variants 
Metamodeling Guidelines 
Illustrative Example: Process followed to build Cellular Automaton tooling 
Language Engineering: The Logo Example
Introduction 
Meta-Modeling Logo 
Weaving static semantics 
Weaving dynamic semantics to get an interpreter 
Compilation as a kind of Model Transformation 
Model to Model Transformation 
Concrete Syntax 
Exercices 
Model Driven Engineering of a Role Playing Game 
Introduction 
Meta-Modeling the SRD 3.5
Weaving dynamic semantics to get an interpreter 
Compilation to get a Web based editor 
Testing a Rule Set 
Exercices 
Civil/Construction Engineering: The BIM Example 
Introduction 
Abstract Syntax of Buildings 
Model Storage: Large Models 
Concrete Syntax 
Case Study: Clash Detection 
Case Study: Quantity Takeoff 
Application examples
Legal Information on the SRD