UML

Systems, Models, Views, and Diagrams

A model describes a view of a system.

Models can be structural or behavioral.

A UML model is a collection of UML diagrams.

A system can be a software, hardware, or business system or subsystem.

UML 2.0 Diagrams

Structural Diagrams
   1. Class
   2. Component
   3. Deployment
   4. Composite Structure
Behavioral Diagrams
   5. Activity
   6. Use Case
   7. State Machine
   8. Interaction Diagrams
      8.1 Communication
      8.2 Timing
      8.3 Interaction Overview
      8.4 Sequence

Approaches

The 4+1 Approach

Design/Logical View

Implementation View

Deployment View

Process View

Use Case View

The Rational Approach

Logical/Design View

Use Case View

Component View

Deployment View

The STAR Default Approach

Use Case Model

Analysis Model

Design Model

Implementation Model

Deployment Model

The MDA Approach

Computation-Independent Model

Platform-Independent Model

Platform-Specific Model

My Approach

System Specification (iteration N)
   Requirements Model
      Functional Requirements (use case)
         Use Case Elaborations (sequence, state, activity)
      Non-Functional Requirements
         Usability, Reliability, Performance, Supportability
   Domain Model
      Structure (class)
      Process (activity)
   Design Model (class, package, sequence, activity diagrams)
      Structure (package, class)
      Process (activity, state, interaction)
   Implementation Model (component, object, state, interaction, code)
   Deployment Model (component, deployment)
   Testing Model (class, code)

The UML 2.0 Specification

A model describes a system.

A model contains classifiers, events, and behaviors.

A classifier describes a type of object. An object is an entity with an internal state and relationships to other objects. Examples of classifiers include: class, package, object, use case, component, collaboration, artifact, and node.

An event describes a type of occurrence. An occurrence is something that happens that is of consequence to the system. Examples of occurrences include: start and termination of a behavior execution, operation trigger, operation invocation, message sent, and message received.

A behavior describes a type of execution. An execution is the performance of an algorithm.

A behavior might be an execution behavior or an emergent behavior.

Examples of behaviors include interactions and activities.

A behavior is owned by a classifier.

UML History

Links

http://staruml.sourceforge.net/en/

InCase