O'Reilly logo

Model-Driven Software Development: Technology, Engineering, Management by Bettina von Stockfleth, Krzysztof Czarnecki, Simon Helsen, Arno Haase, Jorn Bettin, Markus Völter, Thomas Stahl

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 17

Case Study: An Enterprise System

17.1 Overview

This chapter serves as an extended example for some of the advanced ideas in MDSD. This includes cascaded MDSD (Section 8.2.8), the integration of MDSD and CBD as explained Section 7.8, as well as the architectural process described in Section 13.4. This chapter is structured along the lines of that architectural process.

The example describes a fairly typical enterprise system that contains various subsystems such as customer management, billing, and catalogs. In addition to managing the data using a database, input forms and the like, we also have to manage the associated long-running business processes.

17.2 Phase 1: Elaboration

17.2.1 Technology-Independent Architecture

We decide that our example system will be built from components. Each component can provide a number of interfaces. It can also use a number of interfaces provided by other components. Communication is synchronous and is also restricted to be local: no remoting is supported on this level. We design components to be stateless.

Data types can either be simple types (string, int, Boolean) or complex. A complex data type is basically like a struct, in that it has named and typed attributes. There are two kinds of complex data types:

  • Persistent entities that have a well-defined identity and can thus be searched and have relationships to other entities.
  • Data transfer objects that have no identity and are not persistent.

In addition to components we also explicitly ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required