Datasheet

13
Chapter 1 What Is UML?
Stereotypes help identify the role of an element within the model without
defining or altering its fundamental purpose or function. Stereotypes for
model elements work much the same as stereotypes for business descrip-
tions; that is, you might point out a company and identify it as an accounting
firm, a shoe distributor, or a grocery store. But it is still a company. Tagged
values provide the means to add new model elements that hold values for
example,
author=”Tom Pender”. Constraints allow you to define rules
regarding the integrity or use of a model element, such as the attribute
“name” must be between 1 and 40 characters including spaces and punctua-
tion, but no special characters. UML added OCL (see Chapter 18) for formally
specifying constraints.
Threads and processes: Threads and processes are an increasingly common
aspect of applications. UML supports the modeling of threads and processes
in all of the behavioral models, including the enhanced Activity diagram. (See
Chapters 8 through 13.)
Patterns and collaborations: In recent years developers have come to appre-
ciate more and more the value of designs based on proven solutions. Patterns
and collaborations allow the modelers to define standard approaches to solv-
ing common problems. A pattern may then be applied to a variety of specific
situations, bringing with it a combination of predefined roles and interactions.
Patterns and collaborations may be identified and defined at many levels of
abstraction, cataloged, and documented for others to use. This approach
brings reuse out of the realm of pure code and into every phase of the model-
ing effort, from requirements and architecture through implementation.
Activity diagrams (for business process modeling): For years business and
technical staff have relied on the flowchart. UML renamed the flowchart to
Activity diagram. The Activity diagram is a simple yet effective tool to model
logic. Logic appears throughout the development process in workflow,
method design, screen navigation, calculations, and more. The value of the
Activity diagram cannot be overlooked so it has been incorporated into the
UML standard since the earliest versions. To bring it up to date, it has been
enhanced most recently with its own semantics, distinct from state machines,
to represent control flow and/or object flow.
Refinement (to handle relationships between levels of abstraction): Many
concepts, such as classifiers and relationships, permeate all layers of systems
development, and the semantics for these concepts hold true regardless of
the business or technical environment. Each abstraction layer adds to, cus-
tomizes, and otherwise refines the original definition. This approach supports
and in some ways encourages the development of varying applications of the
concepts at each new level of abstraction. The result of this approach has
been the development of an increasingly holistic set of models for systems
development, all founded on the same conceptual standard, but each tailored
to a unique perspective.
Interfaces and components: One advantage of modeling is the ability to work
at different levels of abstraction instead of always working at the code level.
03 526049 Ch01.qxd 8/20/03 11:47 PM Page 13