examples of diagrams

38
The Value of the UML Is an open standard Supports the ent ire sof tware develo pment lifecycle Su ppor ts diverse ap pl ic at ions areas Is based on ex perience and needs of t he user community Supported by many tools

Upload: durba-mukherjee

Post on 08-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Examples of Diagrams

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

Page 2: Examples of Diagrams

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

Page 3: Examples of Diagrams

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

Page 4: Examples of Diagrams

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

Page 5: Examples of Diagrams

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

Page 6: Examples of Diagrams

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

Page 7: Examples of 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

Page 8: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Relationships

� Dependency

� Association

� Generalization� Realization

Page 9: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Extensibility Mechanisms

� Stereotype

� Tagged value

� Constraint

Page 10: Examples of Diagrams

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

Page 11: Examples of Diagrams

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 

Page 12: Examples of Diagrams

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

Page 13: Examples of Diagrams

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

Page 14: Examples of Diagrams

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

Page 15: Examples of Diagrams

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

Page 16: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Object Diagr am

� Captures instances and links

Page 17: Examples of Diagrams

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

Page 18: Examples of Diagrams

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

Page 19: Examples of Diagrams

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

Page 20: Examples of Diagrams

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

Page 21: Examples of Diagrams

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

Page 22: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Sequence Diagr am

� Captures dynamic behavior (time-oriented)

Page 23: Examples of Diagrams

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

Page 24: Examples of Diagrams

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)

Page 25: Examples of Diagrams

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

Page 26: Examples of Diagrams

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)

Page 27: Examples of Diagrams

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.)

Page 28: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Activity Diagr am

� Captures dynamic behavior (activity-oriented)

Page 29: Examples of Diagrams

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

Page 30: Examples of Diagrams

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

Page 31: Examples of Diagrams

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

Page 32: Examples of Diagrams

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

Page 33: Examples of Diagrams

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

Page 34: Examples of Diagrams

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

Page 35: Examples of Diagrams

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

Page 36: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Modeling a design pattern

Page 37: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Modeling a design pattern (cont.)

Page 38: Examples of Diagrams

8/6/2019 Examples of Diagrams

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

Modeling a design pattern (cont.)