TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The...

44
TRAINING & CONSULTING UML and the development process ABIS Training & Consulting www.abis.be [email protected] ABIS 2005 Document number: 1140_03a.fm 24 February 2005 Address comments concerning the contents of this publication to: ABIS Training & Consulting, P.O. Box 220, B-3000 Leuven, Belgium Tel.: (+32)-16-245610, Fax: (+32)-16-245691 © Copyright ABIS N.V.

Transcript of TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The...

Page 1: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

TRAINING & CONSULTING UML and the development processABIS Training & [email protected]

ABIS 2005

Document number: 1140_03a.fm24 February 2005

Address comments concerning the contents of this publication to:ABIS Training & Consulting, P.O. Box 220, B-3000 Leuven, BelgiumTel.: (+32)-16-245610, Fax: (+32)-16-245691

© Copyright ABIS N.V.

Page 2: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs
Page 3: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

U iii

T

D

1

2

3

4

5

6

7

T

1

2

3

4

5

6

7

8

ML and the development process

ABLE OF CONTENTS

EVELOPMENT PROCESSES & MODELING 5

____The (OO) development process ____________________________________6

____The Unified Modeling Language (UML) ______________________________8

____The (R)UP____________________________________________________10

____Agile Modeling_________________________________________________11

____Goals of UML _________________________________________________12

____UML Diagrams Overview ________________________________________13

____UML usage modes _____________________________________________16

HE UML DIAGRAMS 19

____Use Case Diagram _____________________________________________21

____Class Diagram_________________________________________________24

____Sequence Diagram ____________________________________________29

____State(chart) diagram ____________________________________________33

____Activity diagram________________________________________________35

____Package Diagram ______________________________________________38

____Component Diagram ___________________________________________40

____Deployment Diagram ___________________________________________41

Page 4: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

U iv

ML and the development process
Page 5: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

ABIS Training & 5

DeveloModel

?

Consulting

pment processes & ing

Objectives :

• How do processes realize flexibility

• Positioning UML

Page 6: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 6

The (OO) development process 1

Stages/activities:

• Requirements gathering

• Analysis

ML and the development process

- real world model

- what, not how (no implementation details)

Technical Design:

- (software) objects & components

- overall architecture (system)

Implementation

Deployment

...

Page 7: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 7

Incremental and iterative development

• Waterfall:

- no iteration

- milestones

ML and the development process

- easy to plan

Incremental:

- parts of system completed at· different times· different rates

- no revision

- relatively easy to plan

Iterative:

- reworking parts of system

- aim: improve quality

- difficult to plan

Page 8: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 8

The Unified Modeling Language (UML) 2

• UML (1997): common set of modelling constructs and notations

• Originally based on methods by Rumbaugh, Booch and Jacobson

ML and the development process

UML is not a standardized development process!

Current version V1.5 (2003) >> V2.0 (2004)

Page 9: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 9

The Unified Software Development Process

• By the same 3 Amigos (1999)

• principles:

- use-case driven

ML and the development process

- architecture centric

- iterative

- incremental

Page 10: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 10

The (R)UP 3

By the 3 amigos > Rational

Iterating many times over several workflows (disciplines)

A

ML and the development process

rtifacts / Deliverables

Page 11: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 11

Agile Modeling 4

A more lightweight approach

Popular examples:

ML and the development process

Extreme Programming

DSDM

Scrum

Page 12: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 12

Goals of UML 5

• Provide expressive modelling language (visual + ...)

• Be independent of

- programming language

ML and the development process

- process

Flexible and extensible

- OCL (Object Constraint Language)

- UML Profiles

Encourage OO tools market >> exchangeability:

- XMI

- Diagram Interchange

Support higher-level reuse concepts

Model Driven Architecture (MDA)

Page 13: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 13

UML Diagrams Overview 6

Can be used at different stages of any process.

• Requirements:

- use case diagram

ML and the development process

Static structure:

- class diagram

- object diagram

Dynamic behaviour:

- sequence & collaboration/communication diagrams

- statechart diagram

- activity diagram

Architectural:

- package diagram

- component diagram

- deployment diagram

Page 14: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 14

UML Diagrams (..)

makeinvoice

Borrower Item

z : Book

x : CDjohn

H

ML and the development process

Book CD title="UMLsongs"

y : CD

H

thingxxx

yyyzzz

thing

xxx

zzz

yyy

Page 15: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 15

‘CASE’ Tools

• covering the development cycle from the top

• central repository

• sometimes including the implementation (coding / code generation)

ML and the development process

reverse engineering / round-trip engineering

e.g.

- Rational Rose

- Together

- System Architect

trend: better integration with IDE (e.g. Rational XDE)

(limited upper CASE:) e.g. Visio, ArgoUML, ...

Page 16: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 16

UML usage modes 7

(according to Martin Fowler )

T

ML and the development process

hree ways to use UML:

UML as a sketch

UML as a blueprint (from design to coding)

UML as a programming language (>> MDA)

Page 17: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 17

MDA

MDA = Model Driven Architecture

P

U

ML and the development process

romoted by OMG:

1 PIM (Platform Independent Model)

leads to many PSMs (Platform Specific Model)

ML (UML2!) plays key role

Page 18: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

Development processes & Modeling

1. The (OO) development proc-ess

2. The Unified Modeling Lan-guage (UML)

3. The (R)UP4. Agile Modeling5. Goals of UML6. UML Diagrams Overview7. UML usage modes

U ABIS 18

ML and the development process
Page 19: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

ABIS Training & 19

The U

Consulting

ML Diagrams

Objectives :

• Why so many?

• Where & when do I use which?

Page 20: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 20

About nails and screwdrivers

Most UML diagrams are useful for multiple jobs in the development process:

e.g. class diagram:

ML and the development process

analysis > conceptual modeling

design

implementation

Page 21: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 21

Use Case Diagram 1

A technique for structuring functional requirements

ATMwithdraw

or»Sys

ML and the development process

«include»

«include» «include»

Customer

«extend»

authenticate

consultbalance

money

depositmoney

«actBank

rechargebills

removeswallowedbank cards

maintenanceoperator

Page 22: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 22

Use Case Diagram (..)

• system: what are we building

(> boundary!)

• actors (roles): who will use the system?

A

U

>

ML and the development process

(=people and machines)

- primary actors

- secondary/supporting actors

use cases: what for?

rather informal technique...

se case details in

text template

(optional) activity diagrams

(optional) system sequence diagram (SSD)

> Use case driven process

Page 23: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 23

Use Case Template

MAIN SUCCESS SCENARIO Step Action

1 Customer feeds bank card into ATM.

2 ATM identifies customer with BankSys.

3 Customer enters PIN code.

ML and the development process

4 ATM gets customer and account details (balance, limits, etc) from BankSys.

5 Customer specifies desired amount.

6 ATM delivers the cash.

7 Customer takes the cash.

8 ATM delivers a printed ticket.

9 ATM delivers the customer’s bank card

10 Customer takes the card and ticket.

EXTENSIONS Step Branching Action

2a Invalid or unreadable bank card 2a1. ATM returns card; use case terminates.

4a Invalid PIN code (1st-2nd attempt):4a1. Use cases resumes at step 3

4b Invalid PIN code (3rd attempt):4a. ATM swallows card; use case terminates.

*a Customer walked away without notice (time-out 30 seconds):a1. ATM swallows card; use case terminates.

etc... etc...

Page 24: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 24

Class Diagram 2

The workhorse & most elaborated/matured/versatile of them all...

ML and the development process

firstName:StringlastName:String

setName(String, String)getAddress():Address

Person

name

doThis(..)doThat(..)

Company

works for

employee employer

1..* 0..1

someBankStuff

getTotalSavings():MoneydoThat(..)

Bankrole

associatonmultiplicityattributes

operations generalization

Page 25: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 25

Class Diagram: Domain Model

title : String

Course

startDate

Session1 **

ller

namedescription

KnowledgeDomain

*

nstructor

is respons ibl e for

1

1

*

ML and the development process

duration : Numberprice

canceled: Boolean

Enrolment

firstNamelastNamefunction

Person

namephoneNr: Phone

Company

streettownzipCode

Address

works for

1

*

*

1*

1

{ordered}

succeeds

*

*

0..1enro

enrolleelocation1

Room

*

i

AbisPerson

Page 26: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 26

Design Class Diagram (DCD)

Shape

-color : String Pointorigin

1Client

ML and the development process

+area() : double+getColor() : Color

-radius : double

+area() : double+getRadius() : double

Circle

-height : double-width : double

+area() : double+getHeight() : double+getWidth() : double

Rectangle

Page 27: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 27

DCD (..)

addAlarmnListener( AlarmListener lis )

AlarmClock

time )

ML and the development process

publishAlarmEvent( time )setTime( newTime )

onAlarmEvent( source, time )

«interface»AlarmListener

WatchDog

onAlarmEvent( source,onAlarmEvent( source, time )

Beeper

onAlarmEvent( source, time )

AlarmWindow

...setTitle()setVisible()...

javax.swing.JFrame *

display notificationdialog box

beep

Page 28: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 28

Collaborating objects

From analysis to design:

• design software objects (based on domain model + ...)

• realizing the ‘responsibilities’ as imposed by the use cases.

T

In

T

ML and the development process

his is the real object stuff:

beyond static structure

show how objects interact

teraction through messages:

objects invoking operations on other objects

getting returns

wo UML diagram types:

sequence diagram

collaboration/communication diagram

Page 29: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 29

Sequence Diagram 3

xfer(m:Money, a2)

a1:Account john:Person

check()

a2:Account

rson

ML and the development process

[OK] minus(m)

plus(m)

xfer(m:Money, a2)

a1:Account :Pe

check() : Boolean

[OK] minus(m)

a2:Account

[OK] plus(m)

bank policy:make sureowner is ok

a

b

{b-a < 0.5 sec}

Page 30: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 30

Sequence Diagram (..)

:Client:PersonMapper

:Map database

aryrson

ML and the development process

a resultSet

get(123)

[not found] select * from people where id=123

m: Pe

create()

get person data

create with person data

find(123)

mary

whatever(..)

a result set

opt

Page 31: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 31

Sequence Diagram (..)

A

ML and the development process

ll kind of participants:

business objects, controllers, GUI components

entire (sub)systems

persons, organisations

Page 32: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 32

SSD: System Sequence Diagram

Customer

:ATM

card

PIN

<<actor>>Banksys

ML and the development process

optional, summarizes use case

system events & system operations

starting point for use case realization

getCash(amount)

cash

taken!

ticket, card

identifyUser()

balance, limits, ...

registerWithdrawal()

Page 33: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 33

State(chart) diagram 4

Modeling the lifecycle of an object:

• state = condition of an object between events (a way of behaving, of reacting to events)

ML and the development process

event = something that happens

state transition = change of state, caused by an event

Page 34: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 34

Statechart diagram (..)

U

ML and the development process

se ‘ad lib’ for modeling life cycle of ‘interesting’ objects e.g.

devices (living vs. dead objects)

use cases, (G)UI navigation, transactions

Page 35: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 35

Activity diagram 5

receive order

ML and the development process

[not available]

calculateprice

find instructor

assignto course

[not

agr

eed]

check pricewith customer

cancelorder

dispatchto order

[agreed]

[available]

Page 36: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 36

Activity diagram (..)

receive order

Stock Customer Service Finance Dept.

ML and the development process

pick order sendinvoice

receivepayment

deliver order

closeorder

Page 37: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 37

Activity Diagram (..)

Kind of degenerated statechart (at least in UML1...)

Polyvalent use for flow of activities:

ML and the development process

business analysis & workflow

use cases

design level: operations, algorithms, ...

Page 38: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 38

Package Diagram 6

Client

+TrackingForm+ OrderForm- Order

Client

Client

+TrackingForm

+OrderForm

- Order

ML and the development process

Grouping interrelated classes

Controlling dependencies

xxx

Y Z

A B

+

-

-

A B

Page 39: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 39

Package Diagram & System Architecture

Order UI Swing

ML and the development process

Domain

Order Application DateMoneyetc.

Comon {global}

Orders Customers

Database

Page 40: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 40

Component Diagram 7

• al!)

«file»order.cpp

«imports»«file»

ordmod.h

«database»DB2

«browser»Mozzila

ML and the development process

a modular, deployable, replaceable part of system (= physic

encapsulates implementation

exposes interfaces

«database»CourseDB

«file»hup.jar

«library»acledit.dll

«EJBSession»EnrolmentSession

HTTP

«process»Tomcat

IEnrolmentSession

Page 41: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 41

Deployment Diagram 8

So

: Client

: Server

«browser»: Mozzila

«process»: Tomcat

HTTP

«ejb-server»: WAS

«EJBSession»: EnrolmentSession

IEnrolmentSession

ML and the development process

hows where instances of components are running:n physical nodes (= some computer).

: DBServer

«database»products : Oracle

SQL

Page 42: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 42

Want some more diagrams?

Check UML2, e.g.:

• Composite Structure

• Interaction Overview

ML and the development process

Timing

Page 43: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 43

Conclusion?

UML is a well-filled toolbox,

but YOU as a developer are still the craftsman (or the artist) ...

ML and the development process

Page 44: TRAINING & CONSULTING UML and the development process · UML and the development process ABIS 8 The Unified Modeling Language (UML) 2 • UML (1997): common set of modelling constructs

The UML Diagrams

1. Use Case Diagram2. Class Diagram3. Sequence Diagram 4. State(chart) diagram5. Activity diagram6. Package Diagram7. Component Diagram 8. Deployment Diagram

U ABIS 44

ML and the development process