Język Modelowania Danych UML

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Ewa Stemposz

{ewag@ipipan.waw.pl, ewag@pjwstk.waw.pl}

Instytut Podstaw Informatyki PAN

Polsko-

-DSR

VND:

\*

V]D6]NRáD7HFKQLN.RPSXWHURZ

\FK

-

]\NPRGHORZDQLDGDQ\FK80/

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Zagadnienia

Krótka charakterystyka UML

Diagramy przypadków

X*

\FLD

Diagramy klas

Diagramy dynamiczne

ƒ

interakcji

ƒ

stanu

ƒ

DNW\ZQR

FL

Diagramy implementacyjne

ƒ

diagramy komponent

ó

w

ƒ

GLDJUDP\ZGUR

*HQLRZH

Diagramy pakiet

ó

w

0HFKDQL]P\UR]V]HU]DOQR

FL

Podsumowanie

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

UML 0.8-0.9

VW

\F]H

-ZU]HVLH

UML 1.0

VW

\F]H

SU]HVáDQ

\GR20*

UML 1.1

NRQLHF]DWZLHUG]RQ

\

MDNRVNáDGQLNVWDQGDUGX20*

UML 1.3

NZLHFLH

PyZLVL

RZHUV

MLDOHEUDNGDQ

\FK

3Rá

F]RQHVLá\WU]HFK]QDQ\FKPHWRGRORJyZRSURJUDPRZDQLD

Grady Booch Ivar

Jacobson James

Rumbaugh

Unified Modeling Language (UML)

³80/

MHVW

M

]\NLHP

RJyOQHJR

SU]H]QDF]HQLD

GR

VSHF\ILNDFML

NRQVW

rukcji,

ZL]XDOL]DFML

L

GRNXPHQWRZDQLD

Z\WZRUyZ

]ZL

]DQ\FK

]

V\VWHPDPL

LQWHQV\ZQLHZ\NRU]\VWXM

F\PLRSURJUDPRZDQLH´

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Zalety i wady poprzednik

ó

w UML

.D

*GD]PHWRG\NSRSU]HGQLNyZ80/SRVLDGDVZRMH]DOHW\LZD

dy.

OMT (Rumbaugh)

: dobry do modelowania dziedziny przedmiotowej. Nie

SU]

\NU

\ZD

GRVWDWHF]QLH

GRNáDGQLH

]DUyZQR

DVSHNWX

X*

\WNRZQLNyZ

V\

stemu, jak i

aspektu implementacji.

OOSE (Jacobson)

GREU]H

SRGFKRG]L

GR

NZHVWLL

P

RGHORZDQLD

X*

\WNRZQLNyZ

L

F\

NOX

*\

FLRZH

JR

V\

VWHPX

1

LH

SU]

\NU

\ZD

GRNáDGQLH

PRGHORZDQLD

Gziedziny

przedmiotowej, jak i aspektu implementacji.

OOAD (Booch):

dobrze podchodzi do kwestii projektowania, implementacji

RUD]

]

ZL

]NyZ

]H

URGRZLVNLHP

LPSOHPHQWDF

ML

1

LH

SU]

\NU

\ZD

GRVW

atecznie

GREU]HID]

\UR]SR]QDZDQLDLDQDOL]

\Z

\PD

JD

X

*\

WNRZQLNyZ

,VWQLH

MH

ZLHOH

DVSHNWyZ

V\

VWHPyZ

N

WyUH

SR]RVWDá

\

Z

áD

FLZLH

QL

e przykryte przez

*DGQH

]

Z

\*

HM

Z

\PLHQLRQ

\F

KS

RG

HM

ü

Q

S

S

U]

\VWRVRZDQLH

QRWDF

ML

do preferencji

SUR

MHNWDQWyZ&HOHP80/E

\áRSU]

\NU

\FLHUyZQLH

*W

\FKDVSHNWyZ

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Nowe elementy wprowadzone w UML

-DVQHRGUy

*QLHQLHNODV\W\SX

i

Z\VW

SLHQLDNODV\

8V]F]HJyáRZLHQLD

(refinements

GODRE

M

FLD]ZL

]NyZSRPL

G]

\

HOHPHQWDPLRWH

MVDPH

MVHPDQW

\FHDUy

*Q

\PSR]LRPLHDEVWU

akcji

2GSRZLHG]LDOQR

FL

(responsibilities

)

Kompozycja

jako silniejsza forma agregacji

Interfejsy

i

]DOH

*QR

FL

dependencies)

typu: dostawca i klient pewnej

LQIRUPDF

MLZ

\VW

SX

M

FHPL

G]

\HOHPHQWDPLPRGHOL

:VSyáELH

*QR

ü

:]RUFHZVSyáSUDFD

'LDJUDP\DNW\ZQR

FL

(dla

UHLQ

*\

QLHULL

procesów biznesowych)

Komponenty

Pakiety

0HFKDQL]P\UR]V]HU]DOQR

FL

: stereotypy (stereotypes

ZDUWR

FL

etykietowane (

tagged values

), ograniczenia (

constraints

)

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy definiowane w UML

'LDJUDP\SU]\SDGNyZX

*\FLD

Diagramy klas

Diagramy dynamiczne:

ƒ

Diagramy stan

ó

w

ƒ

'LD

JUDP

\DNW

\ZQR

FL

Diagramy implementacyjne:

ƒ

Diagramy komponent

ó

w

ƒ

'LD

JUDP

\ZGUR

*HQLRZH

'LDJUDP\

WH

]DSHZQLDM

X]\VNDQLH

ZLHOX

S

HUVSHNW\Z

SURMHNWRZDQ

ego

systemu w trakcie jego budowy.

Diagramy pakiet

ó

w

Œ

Diagramy sekwencji

Œ

'LD

JUDP

\ZVSyáSUDF

\NRODERUDF

ML

ƒDiagramy interakcji:

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

'LDJUDP\SU]\SDGNyZX

*\FLD

(1)

3U]\SDGHN

X*

\FLD

:

3RZLQLHQ

PLHü

XQLNDOQ

QD]Z

,

RSLVX

M

F

SU]

\SDGHN

X*

\FLD

z

p

unktu widzenia jego

zasadniczych

cel

ó

w.

Czy lepiej

jest

VWRVRZDü

QD]Z

RSLVX

M

F

F

]\

QQR

ü

(“

Z

\SáDWD

SLHQL

G]

\”

) czy

polecenie

(“

Z

\SáDü

SLHQL

G]H´

-

zdania

V

podzielone.

Aktor:

3RZLQLHQPLHü

XQLNDOQ

QD]Z

.

Interakcja:

3RND]X

MH

LQWHUDNF

M

SRPL

G]

\S

U]

\SDGNLHP

X*

\FLD

a aktorem.

%ORN

SRQRZQHJR

X*

\FLD

:

Pokazuje fragment systemu,

kt

ó

ry

jest

X*

\ZDQ

\

SU]H]

NLOND

SU]

\SDGNyZ

X*

\FLD

;

PR

*H

E\

üR]QDF]RQ

\

MDNRVDPRG]LHOQ

\SU]

\SDGHNX

*\

FLD

.

Relacja

typu

«

include

»

lub

«

extend

»

:

Pokazuje

]ZL

]HN

]DFKRG]

F

\P

L

G]

\

dwoma

p

rzypadkami

X*

\FLD

lub

SU]

\SDGNLHPX

*\

FLD

a

EORNLHPSRQRZQH

JRX

*\

FLD

.

Nazwa systemu wraz

z otoczeniem systemu:

Pokazuje

JUDQLF

SRPL

G]

\V

\VWHPHP

a jego otoczeniem.

weryfikacja

klienta

Z\SáDWD SLHQL

G]\

System

REVáXJLNOLHQWD

«

include

»

ZQ

WU]HV\VWHPX

klient

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

'LDJUDP\SU]\SDGNyZX

*\FLD

(2)

klient

banku

ZSáDWD SLHQL

G]\

Z\SáDWD SLHQL

G]\

kasjer

VSUDZG

(

stan konta

ZH

(

SR

*\F]N

]DU]

G

banku

klient

banku

ZSáDWD SLHQL

G]\

Z\SáDWD SLHQL

G]\

kasjer

VSUDZG

(

stan konta

ZH

(

SR

*\F]N

]DU]

G

banku

«

include

»

uaktualnianie

stanu konta

«

include

»

«

extend

»

*áyZQH

]DGDQLH

PRGHOX

SU]

\SDGNyZ

X*

\FLD

to

SUDZLGáRZH

RNUH

OHQLH

Z\PDJD

funkcjonalnych

na projektowany

system.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Klasa; oznaczenia

(1)

Cztery pola: nazwy, atrybut

ó

w,

metod

i czwarte pole, kt

ó

rego zaw

DUWR

ü

]DOH

*\RGX

*\WNRZQLND

np

PR

*HWRE\üOLVWDRGSRZLHG]LDOQR

FLGDQHMNODV\

0R

*OLZHV

Uy

*QHSR]LRP\V]F]HJyáRZR

FL

Okno

Okno

rozmiar

czy_widoczne

Okno

rozmiar

czy_widoczne

Z

\

ZLHWO

schowaj()

Okno

rozmiar: Obszar

czy_widoczne:

Boolean

Z

\

ZLHWO

schowaj()

stereotyp nazwa_

klasy lista_wart_etyk

Pole atrybut

ó

w:

VWHUHRW

\SGRVW

SQR

üQD]ZD

_atrybutu

: typ

ZDUW

BSRF]

WNRZD

lista_wart_etyk

Pole metod:

VWHUHRW

\SGRVW

SQR

üQD]ZD

_metody (lista_arg) :

typ_wart_zwracanej

lista_wart_etykt

Pole

nazwy klasy:

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Klasa; oznaczenia

(2)

gdzie:

rodzaj

definiuje

spos

ó

b, w jaki

metoda

korzysta

z danego

argumentu

:

in:

PHWRGDPR

*HF]

\WDü

argument, ale

QLHPR

*H

go

]PLHQLDü

out:

PR

*H]PLHQLDü

, QLHPR

*HF]

\WDü

inout:

PR

*HF]

\WDü

i ]PLHQLDü

Wszystkie elementy specyfikacji klasy za

Z\M

WNLHP

nazwy klasy

V

opcjonalne. Nazwa klasy to z

UHJXá\U]HF]RZQLN

w liczbie pojedynczej.

GRVW

SQR

ü

jest

RNUH

ODQD

przez

trzy

symbole

:

+

publiczna

-

prywatna

#

chroniona

lista_arg:

rodzaj nazwa_arg

:

typ

ZDUW

BSRF]

WNRZD

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

3U]\NáDG\NODV

Okno

{

abstrakcyjna,

autor=Kowalski

status=przetestowane

}

+rozmiar: Obszar = (100,100)

#czy_widoczne:

Boolean

=

false

UR]PLDU

BGRP

\

OQ

\3URVWRN

W

UR]PLDU

BPDNV

\PDOQ

\3URVWRN

W

-[ZVND

(QLN

:

X

Window*

Z

\

ZLHWO

+schowaj()

+utw

ó

rz()

-GRá

F];:LQGRZ

(xwin:

XWindow*)

©WUZDáDª

3URVWRN

W

punkt1: Punkt

punkt2: Punkt

«

konstruktor

»

3URVWRN

WS3XQNWS3XQNW

«

zapytania

»

obszar (): Real

aspekt(): Real

.

.

.

«

aktualizacje

»

SU]HVX

GHOWD3XQNW

SU]HVNDOX

MZVSyáF]

\QQLN

Real)

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Dziedziczenie

Dziedziczenie pozwala na tworzenie drzewa klas lub

LQQ\FKVWUXNWXUEH]S

WOL

specjalizacja

generalizacja

Pracownik

Osoba

Asystent

Adiunkt

Profesor

Docent

Asystent

Adiunkt

Profesor

Docent

Pracownik

Osoba

Dziedziczenie jednoaspektowe

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Dziedziczenie wieloaspektowe

{overlapping}

disjont

(GRP

\

OQH

) -

SRG]LDá

UR]á

F]Q

\

overlapping

-SRG]LDá

QLHUR]á

F]Q

\

SU]HFL

FLH

zbior

ó

w obiekt

ó

w klas, np.

Pojazd

O

GRZ\

i

Pojazd wodny,

nie

jest zbiorem pustym;

complete

(GRP

\

OQH

) -

SRG]LDáFDáNRZLW

\

incomplete

-n

ie

k

re klasy,

np.

nieistotne dla

UR]ZD

*DQH

JRSUREOHPX

, ]RVWDá

\SRPLQL

WH

Pojazd

{overlapping}

Pojazd

wiatrowy

Pojazd

silnikowy

Pojazd

O

GRZ\

Pojazd

wodny

QDS

G

teren

teren

Drzewo

'

E

Brzoza

Sosna

{disjoint,

incomplete}

gatunek drzewa

Dwa aspekty dziedziczenia:

QDS

G

i

teren

.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Dziedziczenie wielokrotne

Dziedziczenie wielokrotne (wielodziedziczenie) ma miejsce, gdy klasa

G]LHG]LF]\LQZDULDQW\]ZL

FHMQL

*MHGQHMEH]SR

UHGQLHMQDGNODV\

.

Nazwisko

Osoba

3UDFXM

F\B

student

Pracownik

Zarobek

Student

Nr_indeksu

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Dziedziczenie dynamiczne

Manager

,Q

*\QLHU

Sprzedawca

Osoba

{mandatory}

SáHü

«

dynamic

»

zaw

ó

d

Dyskryminator (aspekt specjalizacji)

zawód

]RVWDáWXRSDWU]RQ

\

stereotypem

«

dynamic

»

.

Kobieta

0

*

F]\]QD

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Klasa parametryzowana

Klasy parametryzowane

V

X*

\WHF]QH

z dw

ó

ch zasadniczych powod

ó

w

SRGQRV]

poziom abstrakcji

LZSá

\ZD

M

QD]PQLH

MV]HQLHGáX

JR

FLNRGX

(UyGáRZH

JRSUR

JUDPX

.

.ODVDSDUDPHWU\]RZDQDPR

*HE\üZVWDZLDQD

do diagram

ó

w UML na dwa

sposoby:

Zbi

ó

r <Pracownik>

Aktualny parametr parametryzacji

Zbi

ó

r

wstaw

(T)

XVX

(T)

T

Zbi

ó

r Pracownik

ó

w

«

bind

»

<Pracownik>

Podstawowe zastosowanie klas parametryzowanych polega na

wykorzystaniu ich

do definiowania zbior

ó

w (szerzej -

kolekcji).

.D

*G

\

RELHNW

N

ODV

\

Zbi

ó

r

<Pracownik>

,

czy analogicznie

Zbi

ó

rP

ra

co

w

n

ik

ó

w

, jest zbiorem.

szablon

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Rozszerzenia i ograniczenia w podklasie

ƒ

3RGNODVDQLHPR

*HRPL

MDüOXE]PLHQLDüDWU

\EXWyZQDGNODV

\

ƒ

3RGNODVDPR

*H]PLHQLüFLDáRPHWRG

\]QDGNODV

\DOHEH]]PLDQ

y jej

specyfikacji.

ƒ

3RGNODVDPR

*HGRZROQLHGRGDZDüQRZHDWU

\EXW

\LPHWRG

\UR]V]HU

]Dü]ELyU

ZáDVQR

FLQDGNODV

\

ƒ

3RGNODVDPR

*HR

JUDQLF]DüZDUWR

FLDWU

\EXWyZ

Np.

.RáR

MHVWSRGNODV

NODV

\

Elipsa

JG]LHRELH

UHGQLFHHOLSV

\V

VRELHUyZQH2

JUDQLF]HQLDPR

J

VSRZRGRZDü

*HF]

üPHWRGSU]HVWDQLHE

\üSRSUDZQD

Np. zmiana jednej ze

UHGQLFRELHNWX

-

d

ozwolona dla obiektu klasy

Elipsa

-

jest niedopuszczalna w

obiekcie podklasy

.RáR

JG

\*

PXV]

WDPE

\ü]PLHQLDQHRELH

UHGQLFH

MHGQRF]H

QLH

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

:\VW

SLHQLH

klasy

3R

M

FLH

Z\VW

SLHQLH

klasy

(instancja klasy

) oznacza obiekt, kt

ó

ry jest

³SRGá

F]RQ

\´GR

danej klasy, jest

MH

MF]áRQNLHP

.

:

\VW

SLHQLDPR

J

E

: EH]SR

UHGQLH

i SR

UHGQLH

.

Obiekt

MHVWZ

\VW

SLHQLHP

EH]SR

UHGQLPVZR

MH

MNODV

\L

Z

\VW

SLHQLHP

SR

UHGQLPZV]

\VWNLFK

MH

MQDGNODV

.

nazwa_obiektu

: nazwa_klasy

nazwa_atrybutu = wart_atrybutu

...

:

n

azwa_klasy

nazwa_atrybutu = wart_atrybutu

...

nazwa_obiektu

: nazwa_klasy

: nazwa_klasy

0R

*OLZHR]QDF]HQLDQDZ\VW

SLHQLH

klasy

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Klasa abstrakcyjna a klasa konkretna

Klasyczne klasyfikacje w

ELROR

JLL

W\

ONR

OL

FLH

Z

GU]HZLH

NODV

PR

J

E

klasami konkretnymi.

Osoba prawna

Osoba fizyczna

Firma

Sekwencja

pierwszy

QDVW

SQ

\

Sekwencja

int

...

implementacje

Sekwencja

char

.

..

implementacje

Klasa abstrakcyjna

QLHPDQLHPR

*HPLHüEH]SR

UHGQLFKZ

\VW

SLH

LVáX

*\

Z

F]QLH

MDNRQDGNODVDGODLQQ

\FKNODV6WDQRZL

MDNE

\ZVSyOQ

F]

ü

definicji grupy klas o podobnej semantyce.

Klasa konkretna

PR

*HPLHüPDSUDZRPLHüZ

\VW

SLHQLDEH]SR

UHGQLH

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Metoda abstrakcyjna

Metoda abstrakcyjna

jest to metoda wyspecyfikowana w nadklasie, kt

ó

rej

LPSOHPHQWDF

MDPXVL]QDOH

(üVL

ZNWyUH

M

]SRGNODV

Pracownik godzinowy

stawka godzinowa

VWDZND

ZL

WHF]QD

REOLF]Z

\SáDW

Pracownik etatowy

zarobek tygodniowy

REOLF]Z

\SáDW

Pracownik na zlecenie

]DUREHNPLHVL

F]Q

\

REOLF]Z

\SáDW

Pracownik

{abstract}

MX

*]DURELáZW

\PURNX

REOLF]Z

\SáDW

^abstract}

Klasa abstrakcyjna

PR

*H

]DZLHUDüDEVWUDNF

\M

QHPHWRG

\, ale

nie musi

. Klasa

konkretna

musi

]DZLHUDü

LPSOHPHQWDF

MH

W\

FK

P

HWRG

DEVWUDNF

\M

Q\

FK

, kt

ó

re nie

]RVWDá

\]DLPSOHPHQWRZDQH

w

*DGQH

M

z nadklas

d

anej

klasy konkretnej.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Interfejs, realizacja,

]DOH

*QR

ü

(1)

Stereotyp

«

interface

»

SRSU]HG]D

QD]Z

N

OD

V\

, kt

ó

ra zawiera jedynie specyfikacje

metod, bez implementacji. W UML interfejs nie

zawiera

atrybut

ó

w. Wszystkie

metody

V

tu publiczne.

Implementacje metod wyspecyfikowanych

w

interfejsie

IPracownik

zawiera klasa

Pracownik,

co oznaczane

jest za

SRPRF

relacji typu

realizacja

(realization),

o

n

otacji podobnej

d

o

d

ziedziczenia.

=DOH

*QR

ü

(dependency

)RSLVX

MHUHODF

M

W\

SXNOLHQW

-dostawca pewnej informacji.

Pracownik

pensja

stanowisko

]PLH

SHQVM

dependency

Firma

realization

Osoba

{abstract}

LPL

nazwisko

data ur.

policz wiek

IPracownik

«

interface

»

+

]PLH

SHQVM

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Interfejs,

]DOH

*QR

ü

(2)

'ODSRSU]HGQLHJRGLDJUDPXPR

*QD]DVWRVRZDüLQQH

, EDUG]LHM]ZL

]áH

oznaczenie.

Pracownik

IPracownik

Osoba

Firma

Klasa abstrakcyjna

i interfejs

]RVWDá

\W

X

potraktowane

w podobny spos

ó

b-j

ak

o

d

ef

in

ic

je

interfejs

ó

w do klasy

Pracownik.

-HGQDN

*H

, istnieje

PL

G]

\

QLPL

SHZQD

Uy

*QLFD

: klasa

abstrakcyjna,

w

SU]HFLZLH

VWZLH

do interfejsu,

PR

*H

]DZLHUDü

atrybuty i

implementacje metod.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Ekstensja klasy

Ekstensja

klasy (

class extent

) =

aktualny (zmienny w czasie) zbi

ó

r

ZV]

\VWNLFKZ

\VW

SLH

WH

MNODV

\

Ekstensja klasy w implementacji oznacza

VSHF

MDOQ

VWUXNWXU

G

DQ

\FK

,

k

onkretny byt programistyczny

GRá

F]RQ

\G

R

klasy. Ta struktura przechowuje wszystkie obiekty

E

G

FH

F

]áRQNDPL

GDQH

M

klasy.

1LHNWyUHPHWRG

\Z

\VSHF

\ILNRZDQHZGDQH

MNODVLHRGQRV]

VL

GR

MH

j Z\VW

SLH

:

1LHNWyUHPHWRG

\Z

\VSHF

\ILNRZDQHZGDQH

MNODVLHRGQRV]

VL

GR

MH

j Z\VW

SLH

:

pracownik.

wiek

pracownik.

zwolnij

KONTO

.

Oblicz_procent

1LHNWyUHPHWRG

\Z

\VSHF

\ILNRZDQHZGDQH

MNODVLHRGQRV]

VL

GR

MH

j

ekstensji

:

1LHNWyUHPHWRG

\Z

\VSHF

\ILNRZDQHZGDQH

MNODVLHRGQRV]

VL

GR

MH

j

ekstensji

:

KL_pracownik.

nowy

KL_pracownik.

zlicz

KL_KONTO.

2EOLF]BVXP

.ODVDPR

*HPLHüQLHMHGQ

lecz wiele ekstensji.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

3RZL

]DQLHD

asocjacja (binarne)

Fizyczny

lub

SRM

FLRZ\

]ZL

]HN

PL

G]

\G

Z

RP

DR

EL

HN

WD

P

L,

RGZ]RURZ

\ZX

M

F\

]

Z

L

]HN

LVWQLH

M

F\

P

L

G]

\

RGSRZLHGQLPL

bytami

w analizowanej

dziedzinie

przedmiotowej.

Grupa

SRZL

]D

SRVLDGD

M

F\

FK

ZVSyOQ

VWUXNWXU

LVHPDQW

\N

3RZL

]DQLH

jest

Z\VW

SLHQLHP

asocjacji.

:Osoba

Kasia

:Firma

Krawiecka

pracuje_w

:Osoba

Jasio

:Firma

Szewska

:Osoba

Ewa

pracuje_w

pracuje_w

2ELHNW

\LSRZL

]DQLD

na diagramie obiekt

ó

w

Osoba

LPL

Firma

rodzaj

pracuje_w

Klasy i asocjacja

na diagramie klas

3RZL

]DQLH

binarne

Asocjacja

binarna

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

/LF]QR

üDVRFMDFML

/LF]QR

üMHVWR]QDF]DQDQDREXNR

FDFKDVRFMDFML

1

1, 2, 3, ...

2, 3, 4, ...

3, 4, 5

2, 4, 18

1, ?

0, 1

0, 1, 2, ...

0, 1, 2, ...

1

1..*

2..*

3-5

2,4,18

0..1

0..*

*

znaczenie

3D

VWZR

Stolica

Firma

Pracownik

Osoba

Adres

1*

0..*

0..1

2]QDF]DüF]\QLHR]QDF]DüOLF]QR

ü

1?

3U]\NáDG\

:

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Asocjacje skierowane

Zam

ó

wienie

GDWD=áR

*HQLD

F]

\=DSáDFRQH

VXPD'R=DSáDW

\

realizuj()

zamknij()

Klient

nazwisko

adres

ZLDU

\J

RGQR

ü

*1

Produkt

*1

1

*

1D

GLD

JUDPDFK

8

0/

P

R*

QD

]D]QDF]Dü

NLHUXQHN

QDZL

JDF

ML

Z]GáX

*G

DQ

HM

D

VR

FM

DF

ML

:

WDNLP

przypadku asocjacja jest rysowana w postaci

VWU]DáNL

Q

DZL

JDF

MD

MHVW

PR

*OLZD

]J

RGQLH

]

MH

M

kierunkiem, ale nie odwrotnie.

PozycjaZam

ó

wienia

LOR

ü

cena

czyZrealizowana

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Atrybuty asocjacji

Plik

8

*\WNRZQLN

3UDZRGRVW

SX

GRVW

S

GRVW

SQ\ dla

{

GRVW

SR]QDF]D

czytanie lub

czytanie-pisanie}

*

*

-H

OL

NODVD

DVRF

MDF

ML

QLH

]DZLHUD

metod ani asocjacji

do

innych

klas,

to

MH

MQ

D]

Z

D

P

R*

H

E\

ü

RSXV]F]RQD

GOD

SRGNUH

OHQLD

IDNWX

*

H

chodzi tu

Z

F]QLHR

atrybuty asocjacji.

Firma

nazwa

adres

Zatrudnienie

zarobek

stanowisko

szef

pracownik

zatrudnia

2FHQDZ\GDMQR

FL

ocena

kieruje

0..1

*

0..1

1..*

Osoba

nazwisko

pesel

adres

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Atrybuty i asocjacje pochodne

&HFKD

SRFKRGQD

MHVW

]GHILQLRZDQD

SRSU]H]

I

XQNF

M

G]LDáD

M

F

Q

D

jednym lub

ZL

FH

ME

\WDFK

P

RGHOX

N

WyUH

WH

*P

RJ

E

SRFKRGQH

&HFKD

SRFKR

dna

R]QDF]DQD

MHVWXNR

QLNLHP

Asocjacja

pracuje_w

jest

DVRFMDFM

S

RF

KR

GQ

N

WyU

P

R*

QD

Z

\]QDF]

SRSU]H]

asocjacje

zatrudnia

i

zlokalizowana

_

w

$VRF

MDF

M

S

RFKRGQ

P

R*

QD

R]QDF]

SRSU]HG]D

M

FXNR

QLNLHPQD]Z

OXEURO

DVRF

MDF

ML

data_urodzenia

/wiek

^ZLHN GDWDBELH

*

FD

-

d

ata_urodzenia}

atrybut pochodny: /wiek

:\G]LDá

Sekcja

Pracownik

Budynek

zatrudnia

zlokalizowana_w

/pracuje_w

*

*

*

*

Osoba

asocjacja pochodna: /

pracuje_w

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

3U]\NáDGRZ\

diagram klas

poprzedza

QDVW

SXMHBSR

zawiera

zapisany_na

prowadzi

Pracownik

Student

Osoba

Kurs

Profesor

:\NáDG

1..*

*

1..*

1..*

*

0..1

1

1

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

$JUHJDFMD

MHVW

V]F]HJyOQ\P

SU]\SDGNLHP

DVRFMDFML

Z\UD

*DM

F\P

]ZL

]HN

F]

ü-

FDáR

ü

Np

VLOQLN

MHVWF]

FL

VDPRFKRGX

Nie istnieje jednak powszechnie akceptowana definicja agregacji.

P.

Coad

SRGD

MH

SU]

\NáDG

DJ

UH

JDF

ML

MDNR

]ZL

]HN

SRPL

G]

\R

UJ

DQL]DF

M

L

MH

j

pracownikami; dla odmiany J.

Rumbaugh

WZLHUG]L

*H

ILUPD

QLH

MHVW

DJ

UH

JDF

M

MH

M

pracownik

ó

w.

:

ZLHOX

SU]

\SDGNDFK

]ZL

]NL

DJ

UH

JDF

ML

V

R

F]

\ZLVWH

-HGQDN

*H

Z

WSOLZR

FL

SRZVWD

M

Q

DZ

HW

Z

S

U]

\SDGNX

VDPRFKRGX

L

VLOQLND

ER

np

VLOQLN

P

R*

H

E\

ü

WRZDUHP

Z

VNOHSLH

QLH

]ZL

]DQ

\P

]

*DGQ

\P

VDPRFKRGHP

0

WOLN

GRRN

RáD

SR

M

FLD

DJ

UH

JDF

ML

Z

\QLND

UyZQLH

*]

W

HJ

R

*H

MHVW

RQD

QDGX

*\

ZDQD

w celu

XVSUDZLHGOLZLHQLDSHZQ

\FKR

JUDQLF]H

PRGHOXRELHNWRZH

JR

Np

SRSXODUQH

Z

\M

D

QLHQLH

SRZRGyZ

EUDNX

np. dziedziczenia

wielokrotnego

WR

*H

PR

*QD

MH

ÄREH

M

ü

SU]H]

DJ

UH

JDF

M

´

FR

MHVW

QRQVHQVHP

]

SX

nktu widzenia

FHOyZ

PRGHORZDQLD

SR

M

FLRZH

JR

W

DN

V

DP

R

MDN

]GDQLH

ÄDVRF

MDF

MH

V

]

E

GQH

ER

PR

*QD

MHREH

M

üSU]H]DWU

\EXW

Wszysto

PR

*QDREHM

üZ

assemblerze!

Agregacja

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

3RM

FLHDJUHJDFMLMHVWUR]XPLDQHQDGZDVSRVRE\

:

8

0

/

W

H

GZ

LH

V

\WXDF

MH

]RVWDá

\

UR]G]LHORQH

3LHUZV]

I

RU

P

Q

D]

wano

NRPSR]\FM

.RPSR]

\F

MD

R]QDF]D

*H

F\NO

*\

FL

RZ

\V

DG

RZ

HM

]

DZ

LH

UD

V

L

Z

F\NOX

*\FLRZ\PFDáR

FLRUD]

*HVNáDGRZDQLHPR

*HE\üZVSyáG]LH

lona

.

ƒ-DNR]ZL

]HNF]

ü-

FDáR

üSRPL

G]

\RELHNWDPL

ZLDWDU]HF]

\ZLVWH

JR

np.

VLOQLN

MHVWF]

FL

VDPRFKRGX

ƒ-DNRSRPRFQLF]

\

URGHNGRPRGHORZDQLDGRZROQH

MLQQH

MV

\WXDF

MLN

iedy

WU]HEDZ

\G]LHOLü

podobiekty

w

pewnych obiektach.

np. informacja o

XEH]SLHF]HQLDFKZHZQ

WU]RELHNWyZSUDFRZQLNyZ

.RPSR]\FMDMDNRPRFQDSRVWDüDJUHJDFML

K

C

K

S

*

*

agregacja

kompozycja

K

C

K

S

*

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Agregacja a kompozycja;

SU]\NáDG

W przedstawionym

UR]ZL

]DQLX

punkt

n

a

SáDV]F]

\(

QLH

, w kt

ó

rym

SU]HFLQD

M

V

L

RNU

J

L

wielobok

,

jest odwzorowywany

w

dwa (?)

o

biekty

klasy

P

unkt.

Wielobok

Punkt

Styl

kolor

F]

\:

\SHáQLRQ

\

2NU

J

SURPLH

{

ordered

}

3..*

*

*

0..1

0..1

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Asocjacja kwalifikowana

Katalog

Plik

nazwa

1

*

{

nazwa pliku jest unikatowa

w ramach katalogu }

Katalog

Plik

nazwa pliku

0..1

1

3HUVSHNW\ZDSRM

FLRZD

-

p

lik jes

t w ramach katalogu jednoznacznie

LGHQW

\ILNRZDQ

\SU]H]QD]Z

.

Perspektywa projektowa

-

w

skazanie na

WR

*HNDWDOR

JSOLNyZPR

*QD

]RU

JDQL]RZDü

MDNR

WDEOLF

DVRF

MDF

\M

Q

lub

VáRZQLN

(przeeszukiwanie za

SRPRF

nazwy

pliku).

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Asocjacja

n

-arna

Asocjacja n-arna

to asocjacja, kt

ó

rej

Z

\VW

SLHQLD

á

F]

n

obiekt

ó

w

E

G

F

\FK

instancjami co

QD

MZ

\*

HM

n klas. Dana

NODVD

PR

*H

SR

MDZLü

VL

Q

D

Z

L

FH

MQ

L*

jednej pozycji

w

asocjacji.

Asocjacja binarna ze

VZR

M

XSURV]F]RQ

QRWDF

M

L

pewnymi dodatkowymi

ZáDVQR

FLDPL

(WDNLPL

MDNPR

*OLZR

üXVWDODQLDNLHUXQNXQDZL

JRZDQLD

,

kwalifikator

ó

w

]ZL

]NyZ

agregacji czy kompozycji) jest specjalnym rodzajem

asocjacji n-arnej (dla

n=2).

K1

K2

K3

A

K1

K2

K3

asocjacja

3-arna

asocjacja

4-arna

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy interakcji

Diagramy interakcji (

ZVSyáSUDF

\

i sekwencji)

MDNR

JáyZQH

]DGDQLH

P

DM

ZVSRPR

*HQLH

SUR

MHNWDQWD

w procesie konstruowania modelu

obiektowego

(diagramu

klas).

Pomoc

polega na analizie zachowania systemu w trakcie realizacji

MH

JR

]DGD

i LGHQW

\ILNRZDQLX

QRZ

\FK

F]

\W

H*

N

RUHNFLH

MX

*

LVWQLH

M

F\

FK

element

ó

w

modelu, np.: klas,

LFKDWU

\EXWyZF]

\PHWRGRUD]DVRF

MDF

MLPL

G]

\NODVDPL

.

'LD

JUDP

\

Z

VSyáSUDF

\

VWDQRZL

FH

Z

pewnym sensie

Z

\VW

SLHQLD

fragmentu

diagramu klas,

lepiej

SU]HGVWDZLD

M

]

Z

L

]NL

PL

G]

\

RELHNWDPL

ELRU

F

\PL

XG]LDá

w

UHDOL]DF

ML

GDQH

JR

SU]

\SDGNX

X*

\FLD

.

àDWZLH

MW

H*

P

R*

QD

WX

RGZ]RURZDü

HIHNW

\

RGG]LDá

\ZDQLDQDSR

MHG

\QF]

\RELHNW

.

Diagramy sekwencji lepiej

SU]HGVWDZLD

M

]

DO

H*

QR

FL

F]DVRZH

,

EDUG]LH

MQ

L*

diagramy kolaboracji

QDGD

M

V

L

do modelowania system

ó

w czasu rzeczywistego i

]áR

*RQ

\FKVFHQDULXV]

\.

Oba rodzaje diagram

ó

w

SU]HGVWDZLD

M

bardzo

SRGREQ

LQIRUPDF

M

, w nieco

inny spos

ó

b.

Diagramy sekwencji

GRVWDUF]D

M

URGNyZ

do modelowania przetwarzania

ZVSyáELH

*QH

JR

.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

,QWHUDNFMDQDGLDJUDPDFKZVSyáSUDF\

Komunikaty

PR

J

E\

üQXPHURZDQH

,

albo kolejnymi liczbami naturalnymi

,

albo

VWRVX

M

FQXPHUDF

M

]D

JQLH

*G

*RQ

1XPHUDF

MD]D

JQLH

*G

*RQDR]QDF]D

:

MH

OLRELHNW

O

otrzyma komunikat o numerze

np. 7.3 to ten

QXPHUE

G]LH

GRá

F]DQ

\

jako

prefix do

ND

*GH

JRNRPXQLNDWXZ

\V

\áDQH

JR

w trakcie realizacji komunikatu

7.3

przez

O

.

:Personel

bibl.

:&]áRQHN

bibl.

.VL

*

ND

:Egzemplarz

.VL

*

NL

3R

*\F]

(W\WXá

)

1: a:=

&]\0R

*QD3R

*\F]\ü

2: [a] b:=

&]\'RVW

SQ\

2.1: [b]

=D]QDF]:\SR

*\F]HQLH

specyfikacja

warunku

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Interakcja na diagramach sekwencji

Dwa sposoby opisywania

czasu:

R]QDF]DQLH

VNDOL

F]DVRZH

M

OXE

QDNáDGDQLH

RJ

UDQLF]H

QDXSá

\ZF]DVX

.

:Personel

bibl.

.VL

*

ND

:&]áRQHN

bibl.

:Egzemplarz

.VL

*

NL

3R

*\F]

(W\WXá

)

1: a :=

&]\0R

*QD3R

*\F]\ü

2: [a] b :=

&]\'RVW

SQ\

2.1: [b]

=D]QDF]:\SR

*\F]HQLH

A

C

{C-A < 5 sek.}

{

=D]QDF]:\SR

*\F]HQLH

-

&]\'RVW

SQ\

< 1 sek.}

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Generyczne diagramy interakcji

Generyczny diagram interakcji

ma z

]DáR

*HQLD

VSHF

\ILNRZDü

wszystkie

sekwencje

interakcji

dla danego

przypadku

X*

\FLD

, a nie tylko dla

jednego

z

PR

*OLZ

\FK

VFHQDULXV]

\. UML dostarcza

URGNL

]DUyZQR

do modelowania

]DFKRZD

ZDUXQNRZ

\FK

, jak i iteracji.

:K1

:K2

:K3

3.1: *[i := 1..2] x

3.1.1: *[j := 1..3] y

xyyyxyyy

Komunikat, kt

ó

ry

ma

E\

üZ

\VáDQ

\ZLHOHUD]

\,

PXVLE

\üSRSU]HG]RQ

\V

\PEROHP

*

.

2F]

\ZL

FLHPXVLE

\üWH

*Z

\VSHF

\ILNRZDQ

\ZDUXQHN

RNUH

OD

M

F\

]DNR

F]HQLH

iteracji.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

2]QDF]DQLHZVSyáELH

*QR

FL

Rodzaj interakcji

Symbol

Znaczenie

synchroniczna

“Normalna

” proceduralna sytuacja. Nadawca

]DZLHV]D

G]LDáDQLH

, dop

ó

ki odbiorca nie

SU]HND

*H

VWHURZDQLD

, co

PR

*QD

R]QDF]

Z

\NRU]

\VWX

M

FV

\PERO

powrotu.

powr

ó

t

Powr

ó

t nie jest komunikatem.

Oznacza

]DNR

F]HQLH

NRPXQLNDWX

i przekazanie sterowania

do nadawcy.

SáDVND (flat)

Nadawca komunikatu przekazuje sterowanie

do

odbiorcy

NR

F]

F

MHGQRF]H

QLH

Z

áDVQ

G]LDáDOQR

ü

.

asynchroniczna

Nadawca komunikatu odbiorcy nie

o

czekuje na

RGSRZLHG

(RGELRUF

\, ale

WH

*

in

ie

NR

F]

\

ZáDVQH

MDNW

\ZQR

FL

, co oznacza

*

H

nadal

przetwarza

iPR

*HZ

\V

\áDü

komunikaty.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy stanu (1)

Maszyna stanu

jest grafem

skierowanym,,

NWyUH

JR

ZLHU]FKRáNL

VWDQRZL

stany

obiektu, a

áXNL

RSLVX

M

SU]H

M

FLD

PL

G]

\

VWDQDPL

.

3U]H

M

FLH

PL

G]

\

VWDQDPL

jest

RGSRZLHG]L

na zdarzenie.

Z

wykle, maszyna stanu

jest przypisana

do klasy

VWDQRZL

F

PRGHO

K

LVWRULL

*\

FLD

dla obiektu tej klasy.

0R

*QD

SU]

\SLVDü

PDV]

\Q

stanu do przypadku

w)

X*

\FLD

, operacji, kolaboracji, ale dla opisu

SU]HSá

\ZX

VWHURZDQLDF]

FLH

MZ

\NRU]

\VWX

MHVL

LQQH

URGNL

, np.

GLD

JUDP

\DNW

\ZQR

FL

.

Stan

obiektu

PR

*H

E\

ü

FKDUDNWHU

\]RZDQ

\

QD

NLOND

VSRVREyZ

: jako okres czasu,

wk

rym obiekt oczekuje na zdarzenie albo jako okres czasu, w

k

rym obiekt

SU]HWZDU]D

DOER

MDNR

]ELyU

ZDUWR

FL

RELHNWX

(atrybut

ó

w

LSRZL

]D

-

w

pewnym

aspekcie podobnych.

Nazwa stanu

entry/akcja1/akcja2/

GRDNW

\ZQR

üDNW

\ZQR

ü«

exit/akcja1/akcja2/...

akcja -

operacja atomowa

lista akcji

-

akcja1/akcja2/

-

traktowana jest,

jak pojedyncza operacja,

DNW\ZQR

ü

-

operacja

NWyU

PR

*QDSU]HUZDü

,

OLVWDDNW\ZQR

FL

-

podobnie, jak lista akcji,

entry

,

do

,

exit

-

VáRZD

NOXF]RZH

do specyfikowania operacji wykonywanych na

ZH

M

FLX

, w trakcie i

QDZ

\M

FLX]HVWDQX

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy stanu

(2)

Typ zdarzenia

ZRáDQLH

Opis

6NáDGQLD

zmiana

V\JQDá

czas

otrzymanie przez obiekt synchronicznego

*

GDQLD

wykonania operacji -

n

ajbardziej

podstawowy rodzaj zdarzenia

zdarzenie typu

zmiana

jest

X*

\WHF]QHQS

.

do modelowania sytuacji, gdy obiekt

zmienia stan po otrzymaniu odpowiedzi na

Z

\VáDQ

\SU]H]VLHELHNRPXQLNDW

otrzymania przez obiekt asynchronicznego

*

GDQLD

wykonania operacji;

X*

\WHF]QH

do

PRGHORZDQLD]GDU]H

SU]

\FKRG]

F

\FK

]]HZQ

WU]

systemu

XSá

\QL

FLHF]DVXRNUH

ORQH

JR

w spos

ó

b

EH]Z]

JO

GQ

\OXEZ]

JO

GQ

\, np. after (5 sec.)

op

(a : T)

when

(Z

\UD

*HQLH

)

nazwa_syg

(a : T)

after

(czas)

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy stanu

(3)

SU]HM

FLH]HZQ

WU]QH

(external transition)

SU]HM

FLHZHZQ

WU]QH

(internal transition)

samo-

SU]HM

FLH

(selftransition)

zdarzenie

[warunek] /akcja

S 1

S 2

zdarzenie

[warunek] /akcja

bez zmiany stanu

zdarzenie

[warunek] /akcja

S

SU]HM

FLHDXWRPDW\F]QH

(completion transition)

[warunek] /akcja

S1

S2

ZV]

\VWNLH

RSHUDF

MH

Z

\VSHF

\ILNRZDQH

SR

VáRZDFK

kluczowych entry, exit i do

]RVWDá

\XNR

F]RQH

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy stanu

(4)

8U]

G]HQLH

niesprzedane

8U]

G]HQLH

sprzedane

kupno

XU]

G]HQLD

przez klienta

NOLHQW]ZUyFLá

XU]

G]HQLH

after (data gwarancji)

Kolejka

ELDá\FK

Kolejka

czarnych

UXFKELDá\FK

ruch czarnych

czarne

Z\JU\ZDM

remis

ELDáH

Z

\JU\ZDM

when (szach

m

at)

when (pat)

when (pat)

when (szach

m

at)

Diagram typu:

F\NO

*\FLDRELHNWX

Diagram typu:

SU]HSá\ZVWHURZDQLD

VWDQNR

FRZ

\

stan

SRF]

WNRZ

\

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy stanu

(5)

Stan

prosty nie posiada substruktury, jest specyfikowany przez zbi

ó

r operacji

o

raz

SU]H

M

ü.

Stan

]áR

*RQ\

,

SRZVWDá

\

w

HIHNFLH

]D

JQLH

*G

*DQLD

VWDQyZ

,

PR

*H

E\

ü

zdekomponowany

na

stany bardziej proste, a dekompozycja

jest tu rodzajem

specjalizacji.

.D

*G

\

z

SRGVWDQyZ

G]LHG]LF]

\S

U]

HM

FLD

nadstanu. Tylko jeden z

SRGVWDQyZPR

*HE

\üDNW

\ZQ

\

w danym momencie.

S

S1

S2

S3

zd2

zd3

zd5

zd4

zd4

zd4

zd1

ZF]H

QLH

MV]HSUDFH5XPEDX

JKD

S1

S2

s3

S

zd4

zd5

zd3

zd1

zd2

D.

Harel, OMT, UML

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

'LDJUDP\DNW\ZQR

FL

(1)

*UDI

DNW\ZQR

FL

to maszyna stanu,

kt

ó

rej podstawowym zadaniem nie jest

analiza stan

ó

w obiektu, ale modelowanie przetwarzania (

SU]HSá

\ZyZ

operacji).

6WDQ

\

JUDIX

DNW

\ZQR

FL

, zwane

DNW\ZQR

FLDPL

RGSRZLDGD

M

stanom

Z

\Uy

*QLDOQ

\P

w trakcie przetwarzania, a nie stanom obiektu.

$NW

\ZQR

ü

PR

*H

E\

ü

LQWHUSUHWRZDQD

Uy

*QLH

, w

]DOH

*QR

FL

RG

S

HUVSHNW

\Z

\: jako zadanie

do

wykonania

i to

]DUyZQRSU]H]F]áRZLHND

,

jak

i

p

rzez komputer

(z perspektywy

SR

M

FLRZH

M)

F]

\WH

*QS

. jako pojedyncza metoda (z perspektywy projektowej).

Podobnie,

SU]H

M

FLD

PL

G]

\

VWDQDPL

UDF]H

MQ

LH

V

tu

]ZL

]DQH

]

QDGH

M

FLHP

zdarzenia, ale z

]DNR

F]HQLHP

SU]HWZDU]DQLD

Z

\VSHF

\ILNRZDQH

JR

GOD

GDQH

JR

stanu.

'OD

VNRPSOHWRZDQLD

SUR

MHNWX

ND

*GD

DNW

\ZQR

ü

SRZLQQD

E\

ü

UR]SLVD

na na szereg

operacji, z

k

rych

ND

*G

WU]HED

E

G]LH

QD

Sy

(QLH

MV]

\P

HWDSLH

SU]

\G]LHOLü

do

odpowiedniej klasy.

'LD

JUDP

\D

NW

\ZQR

FL

V

V]F]H

JyOQLH

X*

\WHF]QH

SU]

\

PRGHORZDQLX

S

U]HSá

\ZyZ

RSHUDF

ML

F]

\W

H*

w

RSLVLH

]DFKRZD

]

SU]HZD

J

SU]HWZDU]DQLDZVSyáELH

*QH

JR

.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

'LDJUDP\DNW\ZQR

FL

(2)

nazwa

DNW\ZQR

FL

DNW\ZQR

ü

SU]HM

FLH

, z zasady nie

opisywane;

PR

*H

E\

ü

RSDWU]RQH

warunkiem,

PR

*H

WH

*E

R]QDF]RQH

V\

PEROHP

LWHUDF

ML; akcje

RSLVX

M

FH

SU]H

M

FLD

SRZLQQ

\E

UDF]H

M

GRá

F]RQH

GR

NWyUH

M

z

DNW

\ZQR

FL

;

romb

, NWyU

\PR

*HUR]G]LHODü

MHGQRSU]H

MFLHQDNLONDLQQ

\FK

(opatrzonych warunkami) lub

á

F]

NLONDDOWHUQDW

\ZQ

\FKSU]H

w jedno

sztabka

synchronizujaca

(synchronization

b

ar);

PR

*H

E\

ü

typu

fork

(rozdzielenie jednej operacji na kilka

SU]HELH

JD

M

F\

FK

r

ó

wnolegle) lub typu

join

” (synchronizacja

NLONXRSHUDF

MLUyZQROH

\FK

Z

MHGQ

DNW

\ZQR

üSRF]

WNRZD

DNW

\ZQR

üNR

FRZD

Oznaczenia:

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

'LDJUDP\DNW\ZQR

FL

(3)

Pobierz

zam

ó

wienie

:\

OLM

to, co

zam

ó

wiono

3DPL

WDM

, co

i NLHG\Z\VáDQR

Skompletuj

zam

ó

wienie

3áDü

Klient

']LDá6SU]HGD

*\

Magazyn

:Zam

ó

wienie

{wprowadzone}

:Zam

ó

wienie

{skompletowane}

:Zam

ó

wienie

{Z

\VáDQH

}

:Zam

ó

wienie

{umieszczone}

Wystaw

zam

ó

wienie

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy implementacyjne

ƒ

Diagramy komponent

ó

w

SRND]X

M

FH

]DUyZQR

LPSOHPHQWDF

M

HOHPHQWyZ

projektu (np

NODV

SU]H]

NRPSRQHQW

\

MDN

LL

QWHUIH

MV

\R

UD

]

]D

OH*

QR

F

LP

L

Gzy

NRPSRQHQWDPL

LQQ

\PL

VáRZ

\

SRND]X

M

FH

VWUXNWXU

NRGX

N

RQVWUXR

wanego

SI.

ƒ

'LDJUDP\

ZGUR

*HQLRZH

SRND]X

M

FH

NRQIL

JXUDF

M

V

\VWHPX

F]DVX

wykonania, czyli rozmieszczenie komponent

ó

w i

obiekt

ó

w na

REOLF]HQLRZ

\FK

]DVREDFK

F]DVX

Z

\NRQDQLD

]ZDQ

\F

KW

XZ

]áDPL

Taka

NRQIL

JXUDF

MD

PR

*H

E\

ü

]DUyZQR

VWDW

\F]QD

MD

NL

G

\QDPLF]QD

-

i komponenty

LRELHNW

\PR

J

PL

JURZDüPL

G]

\Z

]áDPLZF]DVLHZ

\NRQDQLD

'LD

JUDP

\

LPSOHPHQWDF

\M

QH

SRND]X

M

QLHNWyUH

DVSHNW

\

LPSOHPHQWDF

ML

SI,

F]D

M

F

Z

WR

VWUXNWXU

NRGX

(UyGáRZH

JR

RUD]

VWUXNWXU

NRGX

F]D

su wykonania

(run-time

.RQVWUXRZDQLH

WDNLFK

GLD

JUDPyZ

MHVW

X*

\WHF]QH

]DUyZQR

]H

Z

]J

O

GX

QD

SRQRZQH

X*

\FLH

MDN

L

]H

Z]

JO

GX

QD

P

R*

OLZR

ü

RVL

J

DQLD

]

LFK

SRPRF

RGSRZLHGQLFKSDUDPHWUyZZ

\GD

MQR

FLRZ

\FK

UML wprowadza dwa rodzaje takich diagram

ó

w:

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy komponent

ó

w

Komponent

MHVW

MHGQRVWN

LPSOHPHQWDF

ML

]

GREU]H

]GHILQLRZDQ

\P

LQWHUIH

MVHP

,

GREU]HZ

\L]RORZDQ

\]NRQWHNVWXQDGD

M

F\

VL

GRZLHORNURWQH

JR

wykorzystania.

Diagram komponent

ó

w j

es

t

przedstawiany

jako graf, gdzie

Z

]áDPL

V

NRPSRQHQW

\

]D

]DOH

*QR

F

LS

UR

Z

DG

]

R

G

N

OLH

QW

D

pewnej

informacji do jej

dostawcy.

Program do

harmonogram

ó

w

Program

SODQXM

F\

Interfejs

graficzny

rezerwacje

aktualizacje

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

'LDJUDP\ZGUR

*HQLRZH

'LD

JUDP

\ZGUR

*HQLRZHSRND]X

M

NRQIL

JXUDF

M

HOHPHQWyZF]DVXZ

\N

onania:

NRPSRQHQWyZVSU]

WRZ

\FKIL]

\F]Q

\FK

MHGQRVWHNSRVLDGD

M

F\

FKFR

najmniej

SDPL

üDF]

VWRLPR

*OLZR

FLREOLF]HQLRZHNRPSRQHQWyZRSUR

Jramowania

RUD]]ZL

]DQ

\FK]QLPLRELHNWyZ

'LD

JUDPZGUR

*HQLRZ

\

MHVW

JUDIHP

JG]LH

Z

LHU]FKRáNL

]ZDQH

Z

]áDP

L

SRá

F]RQH

V

SU]H]

OLQLH

RGZ]RURZ

\ZX

M

FH

SRá

F]HQLD

NRPXQLNDF

\M

QH

NRPSRQHQWyZ

VSU]

WRZ

\FK

:

\

SRGREQLH

MDN

SRá

F]HQLD

NRPXQLNDF

\M

QH

PR

J

E

opatrzone stereotypami,

n

p

©&38ª

©SDPL

üª

©XU]

G]HQLH

MDNLH

ª

:

\

SU]HFKRZX

M

Z

\VW

SLHQLDRELHNWyZLNRPSRQHQWyZ

AdminServer:KomputerHost

:Program do

harmonogram

ó

w

rezerwacje

KomputerJacka:PC

:Program

SODQXM

F\

SRá

F]HQLH

komunikacyjne

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy pakiet

ó

w (1)

Pakiety

VWDQRZL

zgrupowanie element

ó

w modelu

6

URGNLHP

RJ

yOQH

JR

zastosowania przeznaczonym

do budowania struktur hierarchicznych.

.D

*G

\

element modelu musi

E\

ü

przypisany

do jednego

pakietu

(home

package). Model

PR

*HE

\üRSLVDQ

\SU]H]]ELyUSDNLHWyZ

.

3DNLHW

RSUyF]

HOHPHQWyZ

PRGHOX

P

R*

H

WH

*

]DZLHUDü

LQQH

SDNLHW

\

(]D

JQLH

*G

*DQLH

).

Stosowanie pakiet

ó

w

]QDF]

FR

XáDWZLD

]DU]

G]DQLH

przechowywaniem,

konfiguracjami czy modyfikowaniem element

ó

w systemu.

'REU]HSU]HSURZDG]RQ

\SRG]LDáQDSDNLHW

\PR

*H]QDF]

FR

XáDWZLü

]DU]

G]DQLH

procesem konstrukcji produktu programistycznego.

6

pakiety specjalnego rodzaju: fasada (facade), model, podsystem, system.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy pakiet

ó

w(

2

)

=áR

*RQDNRODERUDFMD

Ukrywanie detali, jest

X*

\WHF]QH

,

MDN

ND

*GD

DEVWUDNF

MD

.

7HPX

FHORZL

PR

*H

QS

.

VáX

*\

ü

Z

\RGU

EQLHQLH

VXENRODERUDF

ML

, a

QDVW

SQLH

]DPLDQD

MH

MQ

D

SDNLHW

. Pakiet nie

SRVLDGD

ZáDVQH

JR

LQWHUIH

MVX

, w

tym

sensie

*

H

SU]HVáDQLH

NRPXQLNDWX

do pakietu,

R]QDF]DSU]HVáDQLHNRPXQLNDWX

do obiektu

ZHZQ

WU]

pakietu.

W UML,

sparametryzowana kolaboracja

jest

traktowana jako

wzorzec

projektowy

(design pattern)

.

:\Uy

*QLDQLHVXENRODERUDFML

Zamiana subkolaboracji

na pakiet

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy pakiet

ó

w(

3

)

Edytor

Elementy

diagram

ó

w

graficznych

Elementy

dziedziny

]DVWRVRZD

Sterownik

5G]H

JUDILNL

5G]H

JUDILNL

Motif

5G]H

JUDILNL

Windows

System

okienkowy

Motif

MS

Windows

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Diagramy pakiet

ó

w(

4

)

«

facade

»

(

«

fasada

»

) Zawiera

Z

F]QLH

RGZRáDQLD

do element

ó

w

zdefiniowanych

w

innych pakietach.

«

model

»

6WDQRZLPQLH

MOXEZL

FH

MNRPSOHWQ

DEVWUDNF

M

V\

VWHPX

(na pewnym

SR]LRPLHV]F]H

JyáRZR

FLZLG]LDQ

]

pewnej perspektywy. Zwykle zawiera

drzewo pakiet

ó

w.

«

subsytem

»

(

«

podsystem

»

) Jest rodzajem pakietu, kt

ó

ry reprezentuje pewien

sp

ó

jny, logiczny, dobrze wyizolowany fragment systemu. Posiada dobrze

wyspecyfikowany zbi

ó

r interfejs

ó

w, do interakcji z otoczeniem. Podsystem

podzielony jest

QDGZLHF]

FLVSHF

\ILNDF

\M

Q

LUHDOL]DF

\M

Q

&]

ü

specyfikacyjna zawiera opis interakcji z otoczeniem, z

UH

JXá

\]D

SRPRF

SU]

\SDGNyZX

*\

FLD

. &]

üUHDOL]DF

\M

QD

SRVáX

JX

M

FVL

NRODERUDF

MDPL

, podaje

sposoby realizacji przypadk

ó

w przez podsystem. Podsytemy

PR

J

E

]EXGRZDQH

z innych podsystem

ó

w,

ZWHG

\W

H

QD

MQL

*V]H

JR

SR]LRPX

P

XV]

MX

*

]DZLHUDü

elementy modelu.

Podsytem stanowi zgrupowanie element

ó

w modelu logicznego. Komponent jest

zgrupowaniem element

ó

w modelu implementacyjnego. Zwykle, podsystemy

V

implementowane jako komponenty.

7DNLH

SRGH

MFLH

XSUDV]F]D

PDSRZDQLH

modelu logicznego na implementacyjny.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

0HFKDQL]P\UR]V]HU]DOQR

FL

w UML

UML

SRVLDGDWU]\URG]DMHPHFKDQL]PyZUR]V]HU]DOQR

FL

:

ƒ

stereotypy,

ƒ

ZDUWR

FLHW

\NLHWRZDQH

,

ƒ

ograniczenia.

Stereotypy

ƒ

6WHUHRW

\S

\XPR

*OLZLD

M

PHWDNODV

\ILNDF

M

element

ó

w modelu.

ƒ

Istnieje

lista

VWHUHRW

\SyZ

GOD

ND

*GH

JR

rodzaju

element

ó

w modelu (elementu

metamodelu UML),

np

UHODF

MLPL

G]

\SU]

\SDGNDPLX

*\

FLDNODVF]

\PHWRG

ƒ

Dany element modelu (np

NRQNUHWQDNODVDF]

\PHWRGDPR

*HE

oznaczona co

QDMZ\

*HMMHGQ\P

stereotypem.

ƒ

6

VWHUHRW

\S

\SUHGHILQLRZDQHDOHX

*\

WNRZQLF

\PR

J

WH

*GHILQLRZ

DüZáDVQH

ƒ

6WHUHRW

\S

\UR]V]HU]D

M

VHPDQW

\N

PHWDPRGHOX

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Stereotypy; notacja

Notacja:

zwykle

«

nazwa stereotypu

»

lub

ikona

, ale

PR

*QDWH

*X

*\

ZDü

koloru

czy

tekstury

,

FKRü

z

Uy

*Q

\FK

Z

]J

O

GyZ

QLH

jest to polecane (ograniczenia ludzkie lub

VSU]

WX

).

,NRQD

PR

*H

E\

ü

X*

\ZDQDQD

2 sposoby: zamiast symbolu stereotypu (

c,

d

)

lub razem z

nim (

b

). W przypadkach

a

,

b

,

c

]DZDUWR

ü

HOHPHQWX

P

RGHOX

RSDWU]RQH

JR

VWHUHRW

\SHP

(tu:

klasy

3LyUR

ZLHWOQH

)

jest widoczna. W przypadku

d

]RVWDáDRSXV]F]RQD

.

«

sterowanie

»

3LyUR

ZLHWOQH

lokacja: Punkt

uruchom (Tryb)

3LyUR

ZLHWOQH

«

sterowanie

»

3LyUR

ZLHWOQH

lokacja: Punkt

uruchom (Tryb)

ikona

(a

)(

b

)

(c

)

(d

)

«

»

guillemets

-

jeden znak -

X*

\ZDQ

\

w

FKDUDNWHU]HFXG]

\VáRZLD

w

M

]. francuskim

3LyUR

ZLHWOQH

lokacja: Punkt

uruchom (Tryb)

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Stereotypy;

SU]\NáDG\

«

WUZ

DáD

»

3URVWRN

W

punkt1: Punkt

punkt2: Punkt

«

konstruktory

»

3URVWRN

WS3XQNWS3XQNW

«

zapytania

»

obszar () : Real

aspekt

() :

Real

...

«

aktualizacje

»

SU]HVX

GHOWD3XQNW

SU]HVNDOX

MZVSyáF]

\QQLN

Real)

P1

P2

«

include

»

P3

P4

«

extend

»

rodzaj element

ó

w modelu:

UHODF

MHPL

G]

\SU]

\SDGNDPLX

*\

FLD

lista stereotyp

ó

w dla tego rodzaju:

«

include

»

i

«

extend

»

.D

*GDUHODF

MDPL

G]

\SU]

\SDGNDPLX

*\

FLD

(element modelu) jest opatrzona

jednym z dw

ó

ch stereotyp

ó

wz

SRZ

\*

V]H

MOLVW

\.

«

WUZ

DáD

»

3URVWRN

W

punkt1: Punkt

punkt2: Punkt

«

konstruktory

»

3URVWRN

WS3XQNWS3XQNW

«

zapytania

»

obszar () : Real

aspekt () : Real

...

«»

SU]HVX

GHOWD3XQNW

SU]HVNDOX

MZVSyáF]

\QQLN

Real)

Jednym stereotypem

PR

*QD

RSDWU]

FDá

OLVW

HOHPHQWyZ

P

RGHOX

.

.RQLHF

OLVW

\P

R*

H

E\

ü

oznaczony przez

«»

.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

ƒ

:DUWR

üH

W\

NLHWRZDQ

stanowi

FL

J

znak

ó

w

o

postaci:

VáRZRNOXF]RZH ZDUWR

ü

.

'RZROQ

\áD

FXFK]QDNyZPR

*HE

\üX

*\

W\

MDNRVáRZRNOXF]RZH

ƒ

6

VáRZDNOXF]RZHSUHGHILQLRZDQHDOHX

*\

WNRZQLNPR

*HWH

*GHILQ

LRZDüZáDVQH

ƒ

/LVW

ZDUWR

FLHW

\NLHWRZDQ

\FK

(oddzielonych przecinkami)

XPLHV]F]DVL

w

{}

.

ƒ

'RZROQ

\HOHPHQWPRGHOXPR

*HE

\üVNR

MDU]RQ

\QLHW

\ONR]OLVW

ZDUWR

FL

HW

\NLHWRZDQ

\FKDOHZEDUG]LH

MR

JyOQ

\PVHQVLH]áD

FXFKHPZáDV

QR

FLZSRVWDFL

^GRZROQ

\áD

FXFK]QDNyZ

`

:DUWR

FLHW\NLHWRZDQH

:DUWR

FL

HW\NLHWRZDQH

V

X

*\

ZDQH

GR

VNR

MDU]HQLD

arbitralnej informacji z

pojedynczym elementem modelu.

{autor =

“Jan

N

owak

´WHUPLQ]DNR

F]HQLD ³0D

MD´VWDWXV DQDOL]D

`

3U]\NáDG

:

:DUWR

FL

HW

\NLHWRZDQH

V

szczeg

ó

lnie przydatne do przechowywania

zar

ó

wno

informacji

]ZL

]DQ

\FK

]

]DU]

G]DQLHP

projektem (jak w

SU]

\NáDG]LH

SRZ

\*

HM

), jak i

do

SU]HFKRZ

\ZDQLDV]F]H

JyáyZ

implementacyjnych.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Ograniczenia

Ograniczenia

VSHF

\ILNX

M

U

HV

WU\

NF

MH

QDNáDGDQH

QD

HOHPHQW

\P

RG

HO

X

0

RJ

VWDQRZLü

Z

\UD

*HQLD

M

]\

ND

QDWXUDOQH

JR

F]

\

M

]\

ND

IRUPDOQH

JR

(np. OCL w UML),

PR

J

WH

*S

U]

\M

PRZDü

SRVWDü

IRUPXá

\

P

DWHPDW

\F]QH

MO

XE

I

UD

JPHQWX

NRGX

(F]

\W

H*

pseudokodu).

Notacja:

V

zawarte

ZHZQ

WU]

{}

i

umieszczane

za elementem w klasie, lub poza

NODV

0R

J

WH

*E

\üXPLHV]F]DQH

w komentarzu.

Pracownik

LPL

nazwisko

pensja {<=10 000}

Pracownik

LPL

nazwisko

pensja

{pensja

<=10 000}

{pensja nie wzrasta o

ZL

FH

MQL

*

300}

ograniczenie

statyczne

ograniczenie

dynamiczne

]PLH

SHQV

M

(nowa)

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Ograniczenia;

SU]\NáDG\

Konto

Firma

Osoba

{xor}

QDOH

*\

do

0..1

0..1

*

*

Symbole, takie jak

----

oraz

---->

PR

J

E

X*

\ZDQH

do wskazywania

element

ó

w,

QDNWyUH]RVWDá

\QDáR

*RQHR

JUDQLF]HQLD

.

Firma

0..1

1..*

pracownik

p

racodawca

SRGZáDGQ\

szef

0..1

*

Osoba

ograniczenie zapisane

w komentarzu

{Osoba.pracodawca =

Osoba.szef.pracodawca}

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

&]\NRU]\VWDü

z

PHFKDQL]PyZUR]V]HU]DOQR

FL

?

UML

GRVWDUF]

\áD

NLONX

PHFKDQL]PyZ

UR]V]HU]DOQR

FL

,

DE

\X

P

R*

OLZLü

SUR

MHNWDQWRP

Z

SURZDG]DQLH

P

RG

\ILNDF

ML

EH]

NRQLHF]QR

FL

]PLDQ

\V

DP

HJ

R

M

]\

ND

modelowania. Tw

ó

rcy

U

ML

VWDUDOL

VL

w ten spos

ó

b (

FKRFLD

*E

\

w pewnym

stopniu)

]DVSRNRLü

SRWU]HE

\

VSHF

\ILF]Q

\FK

G]LHG]LQ

SUREOHPRZ

\FK

F]

\

URGR

wi

sk

programowych.

1DU]

G]LD

PR

J

S

U]HFKRZ

\ZDü

ZSURZDG]RQH

P

RG

\ILNDF

MH

RUD]

PDQLSXORZDü

QL

P

LE

H]

N

RQ

LH

F]

QR

FL

Z

QLNDQLD

w

LFK

VHPDQW

\N

-

m

odyfikacje

z

UH

JXá

\

V

przechowywane w

SRVWDFLáD

FXFKyZ]QDNRZ

\FK

.

1DU]

G]LD

P

RJ

XVWDQRZLü

Z

áDVQ

VNáDGQL

i

VHPDQW

\N

G

OD

R

EV

áX

JL

PHFKDQL]PyZUR]V]HU]DOQR

FL

.

1DOH

*\

S

DP

L

WDü

*H

rozszerzenia

VWDQRZL

]

G

HI

LQ

LF

ML

RGVW

SVWZR

RG

standard

ó

w

80

/

L

*H

Z

naturalny spos

ó

b

SURZDG]

G

R

utworzenia pewnego

dialektu UML, a

to

z

NROHL

P

R*

H

SURZDG]Lü

do

problem

ó

w

]

SU]HQDV]DOQR

FL

7U]HED

]DZV]H

GREU]H

UR]ZD

*\

ü

]\

VNL

i straty, kt

ó

re

PR

J

E

SRQLHVLRQH

G]L

NL

korzystaniu z tych mechanizm

ó

w, szczeg

ó

lnie

wtedy,

gdy

“stare

” standardowe

mechanizmy

SUDFX

M

Z

\VWDUF]D

M

FR

dobrze.

background image

(ZD6

WHPSRV]-

]

\N

P

RG

HORZDQLDGDQ

\FK80/6OD

MG

II Seminarium PLOUG,

29 maja 2001

Podsumowanie UML

80/

SRZVWDá

Z

UH]XOWDFLH

SRá

F]RQ

\FK

Z

\VLáNyZ

WU]HFK

]QDQ

\FK

P

Htodolog

ó

w:

G.

Booch

’a, I.

Jacobson

’a

i J. Rumbaugh

’a,

NWyU

\FK

P

HWRG

\NL

RSDQRZDá

\R

NR

áR

U

\QNX

]DVWRVRZD

P

HW

RG

\N

RELHNWRZ

\FK

80/

]\

VNX

MH

FRUD]

ZL

NV]

SRSXODUQR

ü

MDNR

VNáDGRZD

QDU]

G]L

&$6(

L

SUDZGRSRGREQLH

E

G]LH

GRPLQRZDá

SU]H]ZLHOHQD

MEOL

*V]

\FKODWZREV]DU]HDQDOL]

\LSUR

MHNWRZDQLD

SI.

80

/

]J

RGQLH

]

GHNODUDF

M

W

Z

yU

Fy

Z

Q

LH

P

D

DP

EL

FM

L

E\

ü

PHWRG

\N

SUR

MHNWRZDQLD

-HVW

]HVWDZHP

SR

M

ü

R]QDF]H

L

G

LD

JUDPyZ

NWyU

\P

RJ

E

X*

\Z

DQ

HZ

G

RZ

RO

QH

MP

HW

RG

\FH

RSDUW

\FK

R

SRGVWDZRZH

SR

MFLD

RELHNW

RZR

FL

3R

M

FLD

80/

Z

]

DáR

*HQLX

WZyUFyZ

PD

M

S

U]

\NU

ZL

NV]R

ü

LVWRWQ

ych aspekt

ó

w

modelowanych system

ó

w.

Kwestia semantyki i pragmatyki tej notacji pozostaje mglista, co

jest

QLHXFKURQQ

\P

VNXWNLHP

VSU]HF]QR

FL

SRPL

G]

\Q

DW

XU

S

UR

FH

Vy

Z

W

Z

yU

czych a ich

IRUPDOL]DF

M

80

/

MHVWVNáDGRZ

VWDQGDUGX20*&25%$

1LH

ZV]

\VF

\V

]

DF

KZ

\FHQL

80/

1

LHNWyU]

\V

SH

FM

DOL

FL

XZD

*D

M

J

R

za tw

ó

r

QLHVWDELOQ

\

]E

\W

FL

*

NL

SU]HUHNODPRZDQ

\L

(OH

]GHILQLRZDQ

\

8

ML ma

NRQNXUHQWyZZSRVWDFLFDáH

JR]HVWDZXLQQ

\FKPHWRG

\NRELHNWRZ

\FK

.


Document Outline


Wyszukiwarka

Podobne podstrony:
Ewa St�posz J�zyk modelowania danych UML
W5 UML jezyk modelowania
MODELOWANIE DANYCH notatki
3 Modelowanie danych
Projekt modelowanie danych
02 Modelowanie danych
Modelowanie danych modany
Ćwiczenie 7 Język definiowania danych (DDL) część 1
Elementy statystycznego modelowania danych EDA 11
Modelowanie danych (ERD, WI, Semestr I N2, Modelowanie i analiza systemów, Poprawione wykłady
Modelowanie danych cz1
Ćwiczenie 8 Język definiowania danych (DDL) część 2
modelowanie danych
MODELOWANIE DANYCH notatki
W5 Modelowanie danych cd
Modelowanie z wykorzystaniem UML

więcej podobnych podstron