APPENDIX B

UML 2.0 Notation Guide

Class Diagram Notation

The Class diagram notation is explained fully in Chapters 5 through 7.

Class notation

images

Figure B-1: Class icon.

Attribute declaration

[visibility] [/] name [:type] [multiplicity] [‘=’default]
[‘{‘property-string’}’]

The optional underline defines a class-level attribute.

  • isDerived: The default value is false.
  • isReadOnly: The default value is false.

Operation declaration

[visibility] name ([parameter-list]) ‘:’ [return-result]
 [‘{‘property-string’}’]

The optional underline defines a class-level attribute.

Tagged value declaration

tagname ‘:’ value

Valid class presentations

Classes may be identified with a name and optional stereotype. The stereotype may be in text or icon form.

images

Figure B-2: Four presentation alternatives for classes with stereotypes.

Interface class notation

images

Figure B-3: Interface class notation.

Template class

images

Figure B-4: Template class.

Parameter syntax

template-parameter ::= parameter-name
[ ‘:’ parameter-kind][‘>’ constraint]
[‘=’ default]
parameter-kind ::=
‘class’ | ‘component’ | ‘type’ | ‘interface’ |‘signal’
|‘value’ |‘operation’ |‘attribute’ |‘part’ |‘class’
| parameter ::= parameter-name | operation-name
( parameter-list )
constraint ::= [‘{contract }’] classifier-name
default ::= classifier-name | expression | attribute-name
| part-name | operation-name

If the parameter-kind is omitted, then parameter-kind is ‘class’.

Bound element syntax

template-name ‘<’ value-list ‘>’

Association notation

Association notation is covered in Chapter 6.

images

Figure B-5: Binary association notation.

Reflexive association and roles

images

Figure B-6: Reflexive association and roles notation.

Constraints between associations

images

Figure B-7: Constraints between associations.

Association navigability

images

Figure B-8: Navigability.

Ordering, derived association, and qualified association

images

Figure B-9: Ordering, derived association, and qualified association.

Association class notation

images

Figure B-10: Association class notation.

N-ary association

images

Figure B-11: N-ary association.

Aggregation and composition notation

images

Figure B-12: Aggregation and composition notation.

Composite structure notation

images

Figure B-13: Alternative composition notation.

Generalization notation

Generalization is explained in Chapter 6.

images

Figure B-14: Generalization notation: complete constraint, Power Type, ellipse, and abstract class.

images

Figure B-15: Generalization notation: discriminator, disjoint and overlapping constraints, and multiple inheritance.

Dependency notation

images

Figure B-16: Dependency notation between two packages (left) and two classes (right).

images

Figure B-17: Class dependency notation.

Object Diagram

Chapter 7 covers the Object diagram.

Object and link notation

images

Figure B-18: Object notation.

Object name syntax

Object-name : class-name

Attribute value syntax

Attribute-name ‘=’ value

Pattern/Collaboration notation

Chapter 7 covers patterns and collaborations.

Modeling a design pattern using a collaboration

images

Figure B-19: Using collaboration notation to define a design pattern.

Implementing a design pattern / collaboration

images

Figure B-20: Implementing a design pattern (collaboration).

Sequence Diagram Notation

The Sequence diagram is covered in Chapter 9.

Sequence diagram (interaction) lifeline, message and return, self-reference, guard, and iteration

images

Figure B-21: Sequence diagram basic notation.

Message (and arrow) types

images

Figure B-22: Message types.

Message syntax

message-ident ::=
signal-or-operation-name [ ( arguments) ][: return-value]
arguments ::= argument [ , arguments]
argument ::=
parameter-name:argument-value | argument-value | -

State invariant

images

Figure B-23: State invariant.

Object creation and termination

images

Figure B-24: Object creation and termination.

Duration constraints

images

Figure B-25: Duration constraints.

Time constraints

images

Figure B-26: Time constraints.

Interaction occurrence

images

Figure B-27: Interaction occurrence.

Gates and parameters

images

Figure B-28: Interaction occurrence.

Interaction operands and operators

images

Figure B-29: Interaction occurrence.

Interaction operators consider, ignore, and assert

images

Figure B-30: Interaction operators consider, ignore, and assert.

Communication Diagram

Chapter 9 covers the Communication diagram.

images

Figure B-31: Communication diagram notation.

Interaction Overview Diagram

Chapter 9 addresses the Interaction Overview diagram.

images

Figure B-32: Interaction Overview notation.

images

Figure B-33: Interaction Overview lifeline notation.

Timing Diagram

The Timing diagram is discussed in Chapter 9.

images

Figure B-34: Timing diagram notation.

images

Figure B-35: Timing diagram alternative notation.

Statechart Diagram Notation

Chapter 11 discusses the Statechart diagram.

Initial and final state, state, transition with guard

images

Figure B-36: Statechart notation (1).

When and after clauses

images

Figure B-37: When and after clauses.

Transition syntax

Event-name (comma-separated-parameter-list)
[guard-condition] / action-expression

Self transition, and entry and exit actions

images

Figure B-38: Self-transition, and entry and exit actions.

Static branch state

images

Figure B-39: Static branch state.
©OMG 2.0

Dynamic choice point

images

Figure B-40: Dynamic choice point.

Composite state

images

Figure B-41: Composite state.

Deep and shallow history

images

Figure B-42: Deep and shallow history.

Concurrent substates

images

Figure B-43: Concurrent substates.

Split and merge of control

images

Figure B-44: Split and merge of control.

Submachine state and stub states

images

Figure B-45: Submachine state and stub states.

Synch states

images

Figure B-46: Synch states (Sync state still appears in the UML 2.0 glossary but is not part of the UML 2.0 specification.)

Action specification with send and receive signals

images

Figure B-47: Action specification with send and receive signals.

images The gray highlighted rectangles are for emphasis only.

Activity and completion transition

images

Figure B-48: Activity and completion transition.

Two ways to model common transitions

images

Figure B-49: Two ways to model common transitions.

Protocol state machine and generalization

images

Figure B-50: Protocol state machine and generalization.

Use Case Diagram

The Use Case diagram is covered in Chapter 12.

images

Figure B-51: Use Case diagram notation.

Activity Diagram

Chapter 13 has details on the Activity diagram.

Start, end, decision (split), and merge

images

Figure B-52: Start, end, decision (split), and merge.

Concurrency using fork and join nodes

images

Figure B-53: Fork and join notation.

Activity, transition, and transition guard

images

Figure B-54: Activity, transition, and transition guard.

Component Diagram

Chapter 15 discusses the Component diagram.

images

Figure B-55: Component diagram notation.

Alternative notations for realizing classes

images

Figure B-56: Alternative notation for realizing classes.

Deployment Diagram

Chapter 16 provides details on the Deployment diagram.

images

Figure B-57: Nodes defined as classifiers, with attributes and operations, at type and instance levels.

images

Figure B-58: Component diagram at type and instance levels.

Combined Component and Deployment Diagram

This topic is covered in Chapter 17.

Artifacts that implement components

images

Figure B-59: Artifacts that implement components.

Component deployment on a node instance

images

Figure B-60: Deployment of a component on a node instance.

Deployment specification

images

Figure B-61: Deployment specification.

Deployed components

images

Figure B-62: Deployed components.

Packages

Basic Package diagram

Packages as namespaces

images

Figure B-63: Packages as namespaces.

Package containment notation alternatives

images

Figure B-64: Package containment notation alternatives.

Access dependency

images

Figure B-65: Access dependency.

Merge dependency

images

Figure B-66: Merge dependency.

Subsystem diagram

Subsystem notation alternatives

images

Figure B-67: Subsystem notation alternatives.

Subsystem interface notation

images

Figure B-68: Subsystem interface notation.

Subsystem realization

images

Figure B-69: Subsystem realization.

Model diagram

Model notation

images

Figure B-70: Model notation.

images

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.136.154.103