Domain-Specific Modeling : Enabling Full Code Generation

by ;
Format: eBook
Pub. Date: 2008-04-01
Publisher(s): Wiley-IEEE Computer Society Pr
Availability: This title is currently not available.
  • Free Shipping Icon

    Free Shipping On Orders Over $35

    Your order must be $35 or more to qualify for free economy shipping. Marketplace items, eBooks and apparel do not qualify towards the $35 purchase minimum.

List Price: $99.95

Rent Textbook

Select for Price
There was a problem. Please try again later.

New Textbook

We're Sorry
Sold Out

Used Textbook

We're Sorry
Sold Out

eTextbook

We're Sorry
Not Available

Summary

Domain-Specific Modeling (DSM) is the latest approach to software development, promising to greatly increase the speed and ease of software creation. Early adopters of DSM have been enjoying productivity increases of 500-1000 0n production for over a decade. This book introduces DSM and offers examples from various fields to illustrate to experienced developers how DSM can improve software development in their teams. Two authorities in the field explain what DSM is, why it works, and how to successfully create and use a DSM solution to improve productivity and quality. Divided into four parts, the book covers: background and motivation; fundamentals; in-depth examples; and creating DSM solutions. There is an emphasis throughout the book on practical guidelines for implementing DSM, including how to identify the necessary language constructs, how to generate full code from models, and how to provide tool support for a new DSM language. The example cases described in the book are available the book's Website, www.dsmbook.com, along with, an evaluation copy of the MetaEdit+ tool (for Windows, Mac OS X, and Linux), which allows readers to examine and try out the modeling languages and code generators. Domain-Specific Modeling is an essential reference for lead developers, software engineers, architects, methodologists, and technical managers who want to learn how to create a DSM solution and successfully put it into practice.

Table of Contents

Foreword
Preface
Background And Motivation
Introduction
Seeking the better level of abstraction
Code-driven and model-driven development
An example: modeling with a general-purpose language and with a domain-specific language
What is DSM?
When to use DSM?
Summary
Business value
Productivity
Quality
Leverage expertise
The economics of DSM
Summary
Fundamentals
DSM defined
DSM characteristics
Implications of DSM for users
Difference to other modeling approaches
Tooling for DSM
Summary
Architecture of DSM
Introduction
Language
Models
Code generator
Domain framework and target environment
DSM organization and process
Summary
Dsm Examples
IP telephony and call processing
Introduction and objectives
Development process
Language for modeling call processing services
Modeling IP telephony service
Generator for XML
Framework support
Main results
Summary
Insurance products
Introduction and objectives
Development process
Language for modeling insurances
Modeling insurance products
Generator for Java
Framework support
Main results
Summary
Home Automation
Introduction and objectives
Development process
Home automation modeling language
Home automation modeling language in use
Generator
Main results
Summary
Mobile phone applications using Python framework
Introduction and objectives
Development process
Language for application modeling
Modeling phone applications
Generator for Python
Framework support
Main results
Extending the solution to native S60 C++
Summary
Digital Wristwatch
Introduction and Objectives
Development Process
Modeling Language
Models
Code Generation for Watch Models
The Domain Framework
Main Results
Summary
Creating Dsm Solutions
DSM language definition
Introduction and objectives
Identifying and defining modeling concepts
Formalizing languages with metamodeling
Defining language rules
Integrating multiple languages
Notation for the language
Testing the languages
Maintaining the languages
Summary
Generator definition
"Here's one I made earlier"
Types of generator facilities
Generator output patterns
Generator structure
Process
Summary
Domain Framework
Removing duplication from generated code
Hiding platform details
Providing an interface for the generator
Summary
DSM definition process
Choosing among possible candidate domains
Organizing for DSM
Proof of concept
Defining the DSM solution
Pilot project
DSM deployment
DSM as a continuous process in the real world
Summary
Tools for DSM
Different approaches to building tool support
A Brief History of Tools
What is needed in a DSM environment
Current tools
Summary
DSM in use
Model reuse
Model sharing and splitting
Model versioning
Summary
Conclusion
No sweat shops--But no Fritz Lang's Metropolis either
The onward march of DSM
Metamodeling Language.
References
Index.
Table of Contents provided by Publisher. All Rights Reserved.

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.