Model-Driven Software Development (MDSD) is currently a highly regarded development paradigm among developers and researchers. With the advent of OMG's MDA and Microsoft's Software Factories, the MDSD approach has moved to the centre of the programmer's attention, becoming the focus of conferences such as OOPSLA, JAOO and OOP.
MDSD is about using domain-specific languages to create models that express application structure or behaviour in an efficient and domain-specific way. These models are subsequently transformed into executable code by a sequence of model transformations.
This practical guide for software architects and developers is peppered with practical examples and extensive case studies. International experts deliver:
A comprehensive overview of MDSD and how it relates to industry standards such as MDA and Software Factories.
Technical details on meta modeling, DSL construction, model-to-model and model-to-code transformations, and software architecture.
Invaluable insight into the software development process, plus engineering issues such as versioning, testing and product line engineering.
Essential management knowledge covering economic and organizational topics, from a global perspective.
Get started and benefit from some practical support along the way!
Table of Contents
- Half Title page
- Title page
- Copyright page
Part I: Introduction
- Chapter 1: Introduction
- Chapter 2: MDSD – Basic Ideas and Terminology
- Chapter 3: Case Study: A Typical Web Application
- Chapter 4: Concept Formation
- Chapter 5: Classification
Part II: Domain Architectures
Chapter 6: Metamodeling
- 6.1 What Is Metamodeling?
- 6.2 Metalevels vs. Level of Abstraction
- 6.3 MOF and UML
- 6.4 Extending UML
- 6.5 UML Profiles
- 6.6 Metamodeling and OCL
- 6.7 Metamodeling: Example 1
- 6.8 Metamodeling: Example 2
- 6.9 Tool-supported Model Validation
- 6.10 Metamodeling and Behavior
- 6.11 A More Complex Example
- 6.12 Pitfalls in Metamodeling
Chapter 7: MDSD-Capable Target Architectures
- 7.1 Software Architecture in the Context of MDSD
- 7.2 What Is a Sound Architecture?
- 7.3 How Do You Arrive at a Sound Architecture?
- 7.4 Building Blocks for Software Architecture
- 7.5 Architecture Reference Model
- 7.6 Balancing the MDSD Platform
- 7.7 Architecture Conformance
- 7.8 MDSD and CBD
- 7.9 SOA, BPM and MDSD
- Chapter 8: Building Domain Architectures
- Chapter 9: Code Generation Techniques
- Chapter 10: Model Transformations with QVT
- Chapter 11: MDSD Tools: Roles, Architecture, Selection Criteria, and Pointers
- Chapter 12: The MDA Standard
- Chapter 6: Metamodeling
Part III: Processes and Engineering
- Chapter 13: MDSD Process Building Blocks and Best Practices
- Chapter 14: Testing
- Chapter 15: Versioning
- Chapter 16: Case Study: Embedded Component Infrastructures
- Chapter 17: Case Study: An Enterprise System
Part IV: Management
- Chapter 18: Decision Support
- Chapter 19: Organizational Aspects
- Chapter 20: Adoption Strategies for MDSD
- A: Model Transformation Cod
- Title: Model-Driven Software Development: Technology, Engineering, Management
- Release date: May 2006
- Publisher(s): Wiley
- ISBN: 9781118725764