UML in a Nutshell by Sinan Si Alhir, Paperback | Barnes & Noble
UML in a Nutshell

UML in a Nutshell

by Sinan Si Alhir
     
 

Modeling languages have been used by system developers for decades to specify, visualize, construct, and document systems; rough sketches using stick figures and arrows and scribbled routing conditions go back still further. But the Unified Modeling Language (UML), for the first time in the history of systems engineering, gives practitioners a common language that

Overview

Modeling languages have been used by system developers for decades to specify, visualize, construct, and document systems; rough sketches using stick figures and arrows and scribbled routing conditions go back still further. But the Unified Modeling Language (UML), for the first time in the history of systems engineering, gives practitioners a common language that applies to a multitude of different systems, domains, and methods or processes. It does not guarantee project success, but enables you to communicate solutions in a consistent, standardized, and tool-supported language.All indications suggest that the industry is rushing to the UML. Created by leading software engineering experts Grady Booch, James Rumbaugh, and Ivar Jacobson (now of Rational Software Corporation), and accepted as a standard by the Object Management Group (OMG) in 1997, the language has already achieved more success than any previous contenders. With a firm conceptual and pragmatic basis, it is well suited to supporting projects in modern languages like C++ and Java. And standardization lays the groundwork for tools as well as standard methods or processes.This book presents the UML, including its extension mechanisms and the Object Constraint Language (OCL), in a clear reference format. For those new to the language, a tutorial quickly brings you to the point where you can use the UML. The book is concise and precise, breaking down the information along clean lines and explaining each element of the language. Introductory chapters also convey the purpose of the UML and show its value to projects and as a means for communication.Topics include:

  • The role of the UML in projects
  • The object-oriented paradigm and its relation to the UML
  • Tutorial with realistic examples
  • An integrated approach to UML diagrams
  • Class and Object, Use Case, Sequence, Collaboration, Statechart, Activity, Component, and Deployment Diagrams
  • Extension Mechanisms
  • The Object Constraint Language (OCL)

Product Details

ISBN-13:
9781565924482
Publisher:
O'Reilly Media, Incorporated
Publication date:
09/24/1998
Series:
In a Nutshell (O'Reilly) Series
Pages:
296
Product dimensions:
6.04(w) x 8.98(h) x 0.75(d)

Read an Excerpt


From Chapter 1: Introduction

What Constitutes the Unified Modeling Language?

The UML Definition

...The UML is defined by a set of documents (Figure 1-2) from Rational Software Corporation and the Object Management Group. The UML definition

  • Is expressed by the following documents (the UML-defining artifacts):
    • UML Semantics
    • UML Notation Guide
    • UML Extension for the Objectory Process for Software Engineering
    • UML Extension for Business Modeling

  • Uses the Object Constraint Language (OCL) defined by the Object Constraint Language specification document.

  • May be obtained from Rational Software Corporation or the Object Management Group via the World Wide Web (see the references section)

The UML Semantics Document

The UML semantics document constitutes the single, common, definitive, formal, comprehensive, and precise specification of the UML (called the inside view). The UML semantics document

  • Is primarily used by tool vendors; however, it may be used by practitioners since it is the definitive definition of the UML.

  • Specifies the UML's layered architecture, organization (using packages), and defined modeling elements.

  • Includes the following inside-view information for a given UML package:
    • Overview: General introduction
    • Abstract syntax: Concept definitions, relationships, and constraints expressed using the UML's graphical notation and English prose
    • Well-formedness rules: Rules and constraints expressed using English prose and the OCL
    • Semantics: Meanings expressed using English Prose
    • Standardelements: Applicable standard extension mechanisms
    • Notes: Other commentary

  • Also contains appendices on the standard elements and the UML glossary.

  • Enables the development of complex systems, consistent usage of the UML, and tool interchange

The UML Notation Guide

The UML Notation Guide constitutes the notational or visual representation of the UML and provides examples (called the outside view). The UML Notation Guide

  • Is primarily used by practitioners applying the UML

  • Specifies the UML's diagrams and their modeling elements

  • Includes the following outside-view information for each modeling element:
    • Semantics: Summarizes the UML semantics.
    • Notation (concrete syntax): Explains the notational representation (forward mapping to notation).
    • Presentation options: Describe options in presenting modeling information.
    • Style guidelines: Suggest stylistic markers and options.
    • Examples: Provide notation samples.
    • Mapping: Explains the mapping of the notation to the semantics document (reverse mapping from notation).

  • Enables the use of the UML.

The UML Extension Documents

The UML extension documents provide user-defined extensions (using extension mechanisms). These documents

  • Extend the UML to the objectory process for software engineering.

  • Extend the UML to business modeling.

A UML extension is a set of extensions (stereotypes, tagged values, and constraints) that extend, customize, or tailor the UML for a specific domain or process.

A UML variant is a semantically well-defined language (expressed as a metamodel) based on (and built on top of) the UML metamodel. It specializes the UML but does not change the UML terms or redefine their meanings.

The Object Constraint Language

The Object Constraint Language (OCL) is a formal, easily readable and writable, nonprogramming, implementation-independent language. The OCL

  • is used for expressing typed, pure, side-effect-free (precise and unambiguous) constraints and expressions.

  • is used for attaching constraints and other expressions to the UML models and modeling elements (or objects).

  • is used to specify the well-formedness rules of the UML within the UML semantics document.

  • Is formally specified in the Object Constraint Language specification document, which provides the following information: Connection with the UML semantics, basic values and types, objects and properties, collection operations, predefined OCL types, and the grammar for the OCL...

Meet the Author

Alhir is a practitioner (consultant, conference/public speaker, and published author) as well as an IT Project Management Certified Professional and e-Business Certified Professional.

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >