About the Unified Modeling Language
These Diagrams depict the relationships among model elements and artifacts.
Artifacts are deliverables such as executable files or script files (created with effort).
Model elements
include classes, interfaces, components, use cases, and other objects.
An object ("thing") is a concrete instance of an abstract class.
Thus, object instances <<originates from>> a Class.
Note the use of guillemet (a French word pronounced "Ghee-yu-ay") characters to designate a stereotype.
Stereotypes are qualifiers that narrow the meaning of elements and relationships.
Each instance of an object is an entity with a unique identity, behavior, and a
state.
A class is a realization of an <<interface>>.
Thus, an interface is a specification of a class.
A class is a classifier of objects.
Thus, a classifier is a description of an instance.
Relationships among objects include:
Associations and compositions are considered "adornments" in UML.
- generalizations of concrete examples into an abstract concept, represented by an arrow with a white arrowhead.
- associations represented by an arrow with a black arrowhead.
- compositions
- derivations
Dependices among Packages
Collaboration diagrams
illustrate UML model elements grouped into packages that contain or reference model elements.
Two colons separate package names qualifying an element name
A dependency between autonomous domains is called a bridge,
represented by dashed lines pointing to the domain at a lower level of abstraction (not a flow of control).
One domain makes assumptions which are requirements placed on lower domain.
With Executable UML, domains are represented as packages with dependencies.
States
A solid round dot represents the initial (starting) state.
A circle around a solid round represents a final (finishing) state.
Events
Visio 2003 allows these events on transitions:
- Call events occur when an element receives a call for an operation.
- Signal events occur when an element receives an explicit signal from another element.
- Change events occur when a designated condition (usually described as a Boolean operation) becomes true.
- Time events occur after a designated period of time or at a specific time or date (such as when someone become designated as Inactive after a period of time).
Actions
Visio 2003 allows these actions to be associated with transitions:
- A create action creates an instance of some classifier (data element).
- A call action is a synchronous or asynchronous action that invokes an operation on an instance.
- A local Invocation is an action that invokes a local operation, that is, an operation on "self." This type of action does not generate a call event.
- A return action results in a value being returned to the caller.
- A send action results in an asynchronous signal being sent. You can specify the signal receivers (via objectSetExpression) or leave them unspecified, in which case they are defined by some external mechanism.
- An Uninterpreted action represents any action that is not explicitly defined in the UML.
- A Terminate action results in the self-destruction of an object.
- A destroy action results in the destruction of an object specified in the action.
Classes
Classes are represented by a box with three parts: class identifier, attributes, and events.
A classifier Role (or simply Role) defines an abstraction of an instance.
A Classifier Role specifies a single usage of its class.
Object instances <<conforms to>> a ClassifierRole.
ClassifierRoles are a <<view of>> a class.
The diagrams are visual representations of Object Constraint Language (OCL) text.
Classifier names are preceded with a colon.
ClassifierRoles names are preceded with a slash.
An Association Role specifies the required properties of a Link used in a Collaboration.
A collaboration has external initiators, active handlers, and passive managed entities.
As with any language, UML is defined by syntax and semantics.
Syntax are rules by which language elements (e.g., words) are
assembled into expressions (e.g., phrases and clauses).
Semantics are rules by which syntactic expressions are
assigned meanings.
UML.org unifies the syntax, graphic notations, and semantics from
Booch, OMT, Objectory, and other object modeling languages.
The UML also includes:
- example profiles of Business Modeling and Software Development processes.
- CORBAfacility Interface Definition
- XML Metadata Interchange DTD
|
|
UML 1.1 was first adopted Nov. '97.
UML 1.2 had editorial revisions without significant technical changes.
UML 1.3 doc# 06-08-99 adopted Nov. '99
UML 1.4 doc# 01-09-67 formally adopted Q2 2001
UML 2.0 adoption planned for end of 2002 breaks out into
- Infrastructure
- Superstructure
- OCL (Object Constraint Language)
Zoomable, interrelated Championzone sample UML charts from Microsoft's
Visio gallery.
You can zoom in and out on these interrelated charts by clicking
the “Fit in Window” and scrolling a wheel mouse.
Kendall Scott's UML Dictionary
The UML Forum by
Cris Kobryn at Telogic
Ian Moraes' Introduction to the UML
$52 Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process (2nd ed.)
by
C. Larman (Upper Saddle River, NJ: Prentice Hall PTR (Pearson): 2002)
$45 Design Patterns Explained: A New Perspective on Object-Oriented Design by Alan Shalloway, James R. Trott
(Reading, MA: Addison- Wesley (Pearson): 2001)
$45 UML and the Unified Process: Practical Object-Oriented Analysis and Design
(Addison-Wesley, Dec, 2001)
by Jim Arlow, Ila Neustadt
$25 Instant UML (Wrox Press Inc; 1st edition Dec 1997)
by Pierre-Alain Muller
$35 UML Distilled : A Brief Guide to the Standard Object Modeling Language (2nd Edition)
(Addison-Wesley: August 25, 1999)
by Martin Fowler & Kendall Scott
$35 UML Toolkit (John Wiley & Sons; Book and CD-ROM edition October 14, 1997)
by Hans-Erik Eriksson, Magnus Penker
The Unified Modeling Language User Guide
by Booch, Rumbaugh, and Jacobson
UML Notation Guide, Version 1.1
$70 Object Models: Strategies, Patterns, and Applications
(Prentice Hall: December 1996)
by Peter Coad, David North, and Mark Mayfield
$32 Java Design: Building Better Apps and Applets (2nd Edition)
(Prentice Hall: January 1999)
by Peter Coad and Mark Mayfield
|
|