Sunteți pe pagina 1din 1

EXPLOIT THE POWER OF UML

ACCELERATE SOFTWARE DEVELOPMENT

Problem
Statement

Populate
a Sequence
Diagram with
analysis classes. Add a
note with interaction text from
the use case. Find new
classes and responsibilities by drawing
messages.

Select priority
use case.
Identify preconditions,
postconditions,
scenarios, and interactions.

Identify
use cases and
document with Use
Case Diagram. Include
Name, Description, and Priority
for each use case.

ITERATIVE AND INCREMENTAL


Refine
remaining
use cases

DEVELOPMENT BASED ON

Develop Class
Diagram from
Sequence
Diagram. Refine
by adding
inheritance,
multiplicity, and
additional
detailed design
information.

PRIORITIZED USE CASES

Test

Generate code from


Class Diagram.

Integrate

Deploy

Implement/ Unit Test

KEY

Identify candidate classes.


Document analysis classes.

NOTATIONS

Class

Class Diagram: Interfaces

Association
role B

Class A

Class Name

Class B

role A

attribute:Type = initialValue

operation(arg list):return type

Class

Generalization
Supertype

0..1

discriminator

Subtype 1

m..n

{abstract}

exactly one

Class

many
(zero or more)

Class

optional
(zero or one)

Class

numerically
specified

Subtype 2

Constraint
{description of constraint}

Class

aggregation

Class

composition
{ordered}

Class

* ordered role

Stereotype
Qualified Association

stereotype name

Note

Class

Implementing
Class

role name

Source

Implementing
Class

Design Model

Use Case Diagram


Use Cases
Actors

Class Diagram
Classes
Sequence Diagrams
(one or more per use case)
State Diagrams
(to clarify intra- and inter-object behavior)

Class Diagram:
Parameterized Class

Implementation Model

Domain Model Class Diagram


Temporary Analysis Classes

bound element

[condition]

Set<Integer>

Class 1
Class 2

[else]

branch

Dynamic *
Concurrent
Activity

Activity
merge

Association Class
Class

Class

join

Association
Class

Class B

end

Use Case Diagram

Use Case

include

extension
points

Class 3

Actor

an Object
new Object

Deployment Diagram

extend
(extension points)

Generalization

State Diagram

Superstate Name

node
message

self-delegation

Component 1

delete

For additional resources and tools, visit

State Name

Component 2

return

Collaboration Diagram
object name: class

asynchronous message

1: simple message ( )

entry/action
do/activity
exit/action
event/action (arguments)

event(arguments)[condition]/action

Concurrent States

Superstate Name
State

State

State

State

1.1*: iteration message ( )


1.2: [condition] message ( )

role name

UNIFIED
MODELING
LANGUAGE

fork

Sequence Diagram

Component Diagrams
Deployment Diagrams

www.gdpro.com

Activity

Set

Package
Name

dependency

start

Package Diagram

create

Analysis Model

Class A

Package Name

Activity Diagram

Activity

Target

Client
Class

dependency

Dependency
object name: Class Name

dependency

Interface Name

qualifier

Navigability

some useful text

Client
Class

realization

template class

Object

Use Case Model

Interface

Multiplicities

Class Name

The following artifacts are created and maintained in GDPro. Each model is represented as a package.
Reverse-engineered code is created and maintained in a separate system, with the package names
consistent with implementation.

interface

Abstract
Class

:class

role name

object name

UML Diagrams from UML Distilled, Second Edition by Martin Fowler with Kendall Scott with permission of the publisher, Addison Wesley

State Name

S-ar putea să vă placă și