Look at all the great modeling content you get in the book
PART 1: Model-driven Software Engineering Foundations
Chapter 1 - Introduction
- Purpose and Use of Models
- Modeling for Software Development
- How to Read this Book
Chapter 2 - MDSE Principles
- Model-driven Engineering Basics
- Lost in Acronyms: The MD* Jungle
- Overview of the MDSE Methodology
- Tool Support
- Adoption and Criticisms of MDSE
Chapter 3 - MDSE Use Cases
- Automating Software Development: Code-generation and Model Interpretation
- System Interoperability
- Reverse Engineering
- Modeling the organization: Business Processes and Enterprise Architecture
Chapter 4 - Model Driven Architecture (MDA)
- MDA Definitions and Assumptions
- The Modeling Levels: CIM, PIM, PSM
- Mappings
- General Purpose and Domain-Specific Languages in MDA
- Architecture-Driven Modernization
Chapter 5 - Integration of MDSE in your Development Process
- Introducing MDSE in your Software Development Process
- Traditional Development Processes and MDSE
- Agile and MDSE
- Domain-Driven Design and MDSE
- Test-Driven Development and MDSE
- Software Product Lines and MDSE
Chapter 6 - Modeling Languages at a Glance
- Anatomy of Modeling Languages
- General Purpose vs Domain-Specific Modeling Languages
- General-Purpose Modeling: The Case of UML
- UML Extensibility: The MiddleWay Between GPL and DSL
- Overview on DSLs (Domain Specific Languages)
- Defining Modeling Constraints (OCL)
PART 2: Technical aspects of Model-driven Software Engineering
Chapter 7 - Developing your Own Modeling Language
- Metamodel-Centric Language Design
- Example DSML: sWML
- Abstract Syntax Development
- Concrete Syntax Development: Graphical and Textual Syntaxes
- A Real-World Example: IFML
Chapter 8 - Model-to-Model Transformations
- Model Transformations and their Classification
- Exogenous, Out-Place Transformations
- Endogenous, In-Place Transformations
- Mastering Model Transformations: Transformations Chains, High-Order and Bidirectional Transformations
Chapter 9 - Model-to-Text Transformations
- Basics of Model-Driven Code Generation
- Code Generation Through Programming Languages
- Code Generation Through M2T Transformation Languages
- Mastering Code Generation
- Excursus: Code Generation Through M2M Transformations and TCS
Chapter 10 - Managing Models
- Model Interchange
- Model Persistence
- Model Comparison
- Model Versioning
- Model Co-Evolution
- Global Model Management
- Model Quality
- Collaborative Modeling