Examples of Diagrams

Preview:

Citation preview

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 1/38

The Value of the UML

� Is an open standard

� Supports the entire software development

lifecycle� Supports diverse applications areas

� Is based on experience and needs of the

user community� Supported by many tools

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 2/38

Cr eating the UML

Booch method OMT

Unified Method 0.8OOPSLA ́ 95

OOSEOther methods

UML 0.9Web - June ́ 96

public

feedback

Final submission to OMG, Sep µ97

First submission to OMG, Jan ´97

UML 1.1

OMG Acceptance, Nov 1997

UML 1.3

UML 1.0UML partners

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 3/38

UML Par tners

� Rational Software Corporation� Hewlett-Packard� I-Logix� IBM

� ICON Computing� Intellicorp� MCI Systemhouse� Microsoft� ObjecTime� Oracle� Platinum Technology� Taskon� Texas Instruments/Sterling Software

� Unisys

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 4/38

Meyer 

Before and after 

conditions

Harel

Statecharts

Gamma, et al

Frameworks and patterns,

HP Fusion

Operation descriptions and

message numbering 

Embley

Singleton classes and

high-level view 

Wirfs-Brock

Responsibilities

Odell

Classification

Shlaer - Mellor 

Object lifecycles

Rumbaugh

OMT

Booch

Booch method

Jacobson

OOSE

Contr ibutions to the UML

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 5/38

Over view of the UML

� The UML is a language for 

 ± visualizing

 ± specifying ± constructing

 ± documenting

the artifacts of a software-intensive system

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 6/38

Over view of the UML

� Modeling elements

� Relationships

� Extensibility Mechanisms� Diagrams

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 7/38

Modeling Elements� Structural elements

 ± class, interface, collaboration, use case,

active class, component, node

� Behavioral elements

 ± interaction, state machine� Grouping elements

 ± package, subsystem

� Other elements

 ± note

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 8/38

Relationships

� Dependency

� Association

� Generalization� Realization

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 9/38

Extensibility Mechanisms

� Stereotype

� Tagged value

� Constraint

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 10/38

Models, Views, and Diagr ams

Use CaseDiagramsUse Case

DiagramsUse CaseDiagrams

ScenarioDiagramsScenario

DiagramsCollaborationDiagrams

StateDiagramsState

DiagramsComponentDiagrams

ComponentDiagramsComponent

DiagramsDeploymentDiagrams

StateDiagramsState

DiagramsObjectDiagrams

ScenarioDiagramsScenario

DiagramsStatechartDiagrams

Use CaseDiagramsUse Case

DiagramsSequence

Diagrams

StateDiagramsState

DiagramsClassDiagrams

 ActivityDiagrams

 A model is a complete

description of a system

from a particular 

perspective

Models

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 11/38

Diagr ams

� A diagram is a view into a model

 ± Presented from the aspect of a particular 

stakeholder 

 ± Provides a partial representation of the

system

 ± Is semantically consistent with other views

� In the UML, there are nine standarddiagrams

 ± Static views: use case, class, object,

component, deployment 

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 12/38

Use Case Diagr am

� Captures system functionality as seen by

users

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 13/38

Use Case Diagram

� Captures system functionality as seen by

users

� Built in early stages of development� Purpose

 ± Specify the context of a system

 ± Capture the requirements of a system ± Validate a system¶s architecture

 ± Drive implementation and generate test cases

� Developed by analysts and domain

ex erts

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 14/38

Class Diagr am

� Captures the vocabulary of a system

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 15/38

Class Diagr am

� Captures the vocabulary of a system

� Built and refined throughout development

� Purpose ± Name and model concepts in the system

 ± Specify collaborations

 ± Specify logical database schemas� Developed by analysts, designers, and

implementers

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 16/38

Object Diagr am

� Captures instances and links

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 17/38

Object Diagr am

� Shows instances and links

� Built during analysis and design

� Purpose ± Illustrate data/object structures

 ± Specify snapshots

� Developed by analysts, designers, andimplementers

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 18/38

Component Diagr am

� Captures the physical structure of the

implementation

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 19/38

Component Diagr am

� Captures the physical structure of the

implementation

� Built as part of architectural specification� Purpose

 ± Organize source code

 ± Construct an executable release ± Specify a physical database

� Developed by architects and programmers

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 20/38

Deployment Diagr am

� Captures the topology of a system¶s

hardware

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 21/38

Deployment Diagr am

� Captures the topology of a system¶s

hardware

� Built as part of architectural specification� Purpose

 ± Specify the distribution of components

 ± Identify performance bottlenecks

� Developed by architects, networking

engineers, and system engineers

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 22/38

Sequence Diagr am

� Captures dynamic behavior (time-oriented)

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 23/38

Sequence Diagr am

� Captures dynamic behavior (time-oriented)

� Purpose

 ± Model flow of control ± Illustrate typical scenarios

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 24/38

Collabor ation Diagr am

� Captures dynamic behavior (message-

oriented)

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 25/38

Collabor ation Diagr am

� Captures dynamic behavior (message-

oriented)

� Purpose ± Model flow of control

 ± Illustrate coordination of object structure and

control

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 26/38

Statechar t Diagr am

� Captures dynamic behavior (event-

oriented)

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 27/38

Statechar t Diagr am

� Captures dynamic behavior (event-

oriented)

� Purpose ± ± Model object lifecycleModel object lifecycle

 ± ± Model reactive objects (user interfaces,Model reactive objects (user interfaces,

devices, etc.)devices, etc.)

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 28/38

Activity Diagr am

� Captures dynamic behavior (activity-oriented)

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 29/38

Activity Diagr am

� Captures dynamic behavior (activity-oriented)

� Purpose

 ± Model business workflows ± Model operations

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 30/38

 Architecture and the UML

Organization

Package, subsystem

Dynamics

Interaction

State machine

Design View Implementation View  

Process View 

ComponentsClasses, interfaces,collaborations

 Active classes

Deployment View 

Nodes

Use Case View 

Use cases

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 31/38

Unified Process structure

Management

Envir onment

Business Modeling

Implementation

Test

Analysis & Design

PreliminaryIteration(s)

Iter.#1

PhasesPr ocess Workflows

Iter ations

Suppor ting Workflows

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

Deployment

Configur ation Mgmt

Requir ements

Elabor ation Tr ansitionInception Constr uction

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 32/38

 Architecture and Iterations

Use case

Model

Design

Model

Deployment

Model

Test

Model

Implementation

Model

Content

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 33/38

Patterns

� A pattern is a solution to a problem in a

context

� A pattern codifies specific knowledgecollected from experience in a domain

� All well-structured systems are full of 

patterns ± Idioms

 ± Design patterns

 ± Architectural patterns

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 34/38

Mechanisms

Screws yBrakes

Keys yPipes

Rivets yValves

Bearings ySprings

Pins, axles, shafts yCranks and rodsCouplings yCams

Ropes, belts, and chains yPulleys

Friction wheels yEngaging gears

Toothed wheelsFlywheels

Levers and connecting rods

Click wheels and gears

Ratchets

daVinci

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 35/38

Design patterns

� Creational patterns ± Abstract factory

 ± Prototype

� Structural patterns ± Adapter 

 ± Bridge

 ± Proxy

� Behavioral patterns ± Chain of responsibility

 ± Mediator 

 ± Visitor 

� Mechanisms are the soul of an

Design Patterns

Gamma et al

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 36/38

Modeling a design pattern

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 37/38

Modeling a design pattern (cont.)

8/6/2019 Examples of Diagrams

http://slidepdf.com/reader/full/examples-of-diagrams 38/38

Modeling a design pattern (cont.)

Recommended