Our need for lingua francas can be traced to the historical Tower of Babel, which archaeologists reckon was constructed in Babylon several millennia ago. As you will recall from the story in Genesis, at one time all humans spoke the same language and lived together harmoniously. In a fit of arrogance humankind started to build a tower to reach heaven, and the Great Spirit taught them a lesson in humility by confusing their language so they could no longer understand each other. As a consequence, the tower-building project failed and the arrogant tower builders were scattered throughout the earth. The story points out the essential role of common languages for all large-scale collaborative efforts. With a common language, exceptional achievements are possible; without one, failure is inevitable.

One often uses the term lingua franca to describe languages used for international business. Indeed, the term is derived from a particular hybrid language called Lingua Franca (Italian for "Frankish language"; a mixture of Italian, French, Spanish, Greek, and Arabic) that was spoken at various Mediterranean trading ports from the 14th century onwards. Lingua Franca was neither the first, nor the last, common language for international business. In the Western world, Greek and Latin preceded Lingua Franca, and French and English followed. English is the current international lingua franca, and people worldwide are quickly becoming fluent in it use.

The technology world needs lingua francas just as much as the business world, and toward that end the various technical disciplines have developed a wide variety of synthetic languages, many of which are based on mathematics. For example, physicists and engineers commonly converse with calculus.

What lingua francas do software engineers speak? Although they may use a wide variety of programming languages and dialects (e.g., C++, BASIC, COBOL. SQL), they typically speak a common modeling language: the Unified Modeling Language (UML). In the seven years since the Object Management Group adopted the UML as its modeling language standard, it has become difficult to find a software project with more than ten persons that doesn't use UML in some way, even if it is only to informally sketch designs on whiteboards.

The book that you are reading from describes the latest revision of this modeling lingua franca, UML 2. Obgleich mein Deutsch nicht gut ist, ist mein UML sehr gut. However, it is easy for any UML novice or expert to appreciate the breadth, depth and quality of the examples that fill this excellent introduction to UML 2.

UML 2 offers many major improvements over its predecessor, UML 1. It supports component-based development by allowing modelers to recursively decompose large composite structures into Parts, Ports and Connectors. At the same time, it permits modelers to recursively decompose all of the major behavioral constructs, such as Interactions, State Machines, and Activities. Furthermore, it allows modelers to flexibly integrate structure and behavior by sharing the same Parts in structure and behavioral diagrams. For example, the same Parts that are used in a composite structure diagram of a Class to show its internal structure, can also be used in a sequence diagram to show how the internal structures communicate with each other.

Much challenging work remains before model-driven engineering becomes mainstream. However, I am encouraged by books like this that explain UML 2 modeling basics clearly, and apply them pragmatically. I hope you will learn from it as I have, and will use your new insights to improve your own modeling practices.

Cris Kobryn
Co-Chair, OMG Analysis and Design Task Force
Chief Executive Officer, PivotPoint Technology Corporation




separator line
Service provided by Mario Jeckle
Generated: 2004-06-11T07:11:22+01:00
Feedback Feedback       SiteMap SiteMap
This page's original location This page's original location: http://www.uml-glasklar.de/foreword.html
RDF metadata describing this page RDF description for this page