Books

Books : reviews

Jos Warmer, Anneke Kleppe.
The Object Constraint Language.
Addison-Wesley. 1999

The Object Constraint Language (OCL) is a new notational language, a subset of the industry standard Unified Modeling Language, that allows software developers to write constraints over object models. These constraints are particularly useful, as they allow a developer to create a highly specific set of rules that governs the aspect of an individual object. As many software projects today require unique and complex rules that are written specifically for business models, OCL is fast becoming an integral facet of object development.

This book is a practical guide to OCL for software architects, designers, and developers. Because it is designed for ease and usability, OCL is likely to gain broad acceptance. Much care has been taken during the design of OCL to ensure that the syntax is readable and writable by the average software modeler. The straightforward nature of OCL makes it a natural candidate to supersede current constraint languages. The authors’ pragmatic approach and illustrative use of examples will help application developers to get up to speed quickly with this important object modeling method.

Other highlights:

• Detailed instruction explains how and why to use OCL, showing its relation to UML
• Illuminating case study demonstrates several UML diagrams and corresponding constraints
• Provides keen insight from the primary author of the OCL standard portion of the UML 1.1 standard of the OMG

Anneke Kleppe, Jos Warmer, Wim Bast.
MDA Explained: the Model Driven Architecture: practice and promise.
Addison-Wesley. 2003

Experienced application developers often invest more time in building models than they do in actually writing code. Why? Well-constructed models make it easier to deliver large, complex enterprise systems on time and within budget. Now, a new framework advanced by the Object Management Group (OMG) allows developers to build systems according to their core business logic and data—independently of any particular hardware, operating system, or middleware.

Model Driven Architecture (MDA) is a framework based on the Unified Modeling Language (UML) and other industry standards for visualizing, storing, and exchanging software designs and models. However, unlike UML, MDA promotes the creation of machine-readable, highly abstract models that are developed independently of the implementation technology and stored in standardized repositories. There, they can be accessed repeatedly and automatically transformed by tools into schemas, code skeletons, test harnesses, integration code, and deployment scripts for various platforms.

Written by three members of OMG’s MDA standardization committee, MDA Explained gives readers an inside look at the advantages of MDA and how they can be realized. This book begins with practical examples that illustrate the application of different types of models. It then shifts to a discussion at the metalevel, where developers will gain the knowledge necessary to define MDA tools.

Highlights of this book include:

• The MDA framework, including the Platform independent Model (PIM) and Platform Specific Model (PSM)
• OMG standards and the use of UML
• MDA and Agile, Extreme Programming, and Rational Unified Process (RUP) development
• How to apply MDA, including PIM-to-PSM and PSM-to-code transformations for Relational, Enterprise JavaBean (EJB), and Web models
• Transformations, including controlling and tuning, traceability, incremental consistency, and their implications
• Metamodeling
• Relationships between different standards, including Meta Object Facility (MOF), UML, and Object Constraint Language (OCL)

The advent of MDA offers concrete ways to improve productivity, portability, interoperability, maintenance, and documentation dramatically. With this groundbreaking book, IT professionals can learn to tap this new framework to deliver enterprise systems most efficiently.