examples of diagrams
TRANSCRIPT
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.)