-]\NPRGHORZDQLDGDQ\FK80/
7
1. Geneza UML
0HWRG\ND MDNR ]HVWDZ SRMü M]\NyZ PRGHOL IRUPDOQ\FK L VSRVREyZ SRVWSRZDQLD MHVW
wy
NRU]\VW\ZDQDZSURFHVLHNRQVWUXNFML6,GRPRGHORZDQLDSRMFLRZHJRORJLF]QHJRLIL]\F]QHJR
0HWRG\ND SR]ZDOD QD SRG]LDá SURFHVX NRQVWUXNFML QD ID]\ GOD ND*GHM z faz ustala: produkty
wej
FLRZH L Z\MFLRZH VFHQDULXV]H SRVWSRZDQLD UHJXá\ SU]HFKRG]HQLD GR NROHMQHM ID]\ RUD]
doku
PHQWDFM NWyUD SRZLQQD SRZVWDü D ZLF XPR*OLZLD ]G\VF\SOLQRZDQLH SURFHVX NRQVWUXNFML
po
]ZDODMF QD Z PLDU RELHNW\ZQH UR]OLF]HQLH MHJR XF]HVWQLNyZ -]\NL HOHPHQW\ VNáDGRZH
meto
G\N PRJ Z\NRU]\VW\ZDü Uy*QH URG]DMH QRWDFML QS WHNVWRZ XVWUXNWXUDOL]RZDQ\ ]DSLV
tekstowy i
QXPHU\F]Q\ F]\ WH* QRWDFMH JUDILF]QH -]\NL NWyUH SRZLQQ\ E\ü SURVWH D ]DUD]HP
SUHF\]\MQH áDWZR ]UR]XPLDáH L QDGDMFH VL GR PRGHORZDQLD ]áR*RQ\FK ]DOH*QRFL PRJ E\ü
X*\ZDQH GR UHMHVWURZDQLD HIHNWyZ SUDF\ F]áRQNyZ ]HVSRáX SURMHNWRZHJR GR NRPXQLNDFML
ZHZQWU] ]HVSRáX GR ZVSyáSUDF\ ] X*\WNRZQLNLHP D WDN*H MDNR SRGVWDZRZ\ URGHN ]DSLVX
dokumentacji projektowej. J
]\N L MHJR QRWDFMD VWDQRZL ZD*Q\ HOHPHQW VNáDGRZ\ ND*GHM
PHWRG\NL :LHOH RVyE XWR*VaPLD PHWRG\N ] Z\NRU]\VW\ZDQ SU]H] QL QRWDFM QDZHW
QLHNRQLHF]QLH M]\NLHP SRQLHZD* ILUP\ U]DGNR VWRVXM VL GR UHJXá QDU]XFDQ\FK SU]H]
PHWRGRORJyZ RSUDFRZ\ZXMF Záasne, bardziej przystosowane do wykorzystywanego
RSURJUDPRZDQLD QDU]G]LRZHJR VSHF\ILNL Z\WZDU]anych produktów, struktury organizacyjnej
]HVSRáyZ SURMHNWRZ\FK F]\ QDE\W\FK GRZLDGF]H DOH Z\NRU]\VWXM QRWDFMH Z V]F]HJyOQRFL
graficzne, wspomagane przez narz
dzia CASE.
:]URVWSRSXODUQRFLRELHNWRZRFLZLQIRUPDW\FHZNRFXODW-W\FKLQDSRF]WNX-tych
VSRZRGRZDá SUDZG]LZ HNVSOR]M PHWRG\N L M]\NyZ RNUHODQ\FK MDNR ÄRELHNWRZH´ 2EMHFWRU\
(Jacobson), OMT (Rumbaugh), OOA/OOD (Coad/Yourdon), OOAD (Booch), OOSA
(Shla
HU0HOORU LWG &HFK ZVSyOQ MHVW WX RSDUFLH R SRMFLD RELHNWRZRFL WDNLH MDN NODV\
DWU\EXW\PHWRG\G]LHG]LF]HQLH]ZL]NLLWS'RüSRZV]HFKQHMHVWMHGQDNRGF]XFLH*HUy*QLFH
QSPLG]\M]\NDPLZW\FKPHWRG\NDFKVGUXJRU]GQHJáywnie syntaktyczne.
=JRGQLH ] GHNODUDFM WZyUFyZ UML 8QLILHG 0RGHOLQJ /DQJXDJH NWyU\ SRZVWDá Z
rezulta
FLH SRáF]HQLD WU]HFK PHWRG\N ÄMHVW M]\NLHP RJyOQHJR SU]H]QDF]HQLD GR VSHF\ILNDFML
NRQVWUXNFML ZL]XDOL]DFML L GRNXPHQWRZDQLD Z\WZRUyZ ]ZL]DQ\FK z systemami intensywnie
Z\NRU]\VWXMF\PLRSURJUDPRZDQLH´3RZ\*V]HVWZLHUG]HQLHQLHGRNRFDMHVWSUDZG]LZH.D*G\
M]\NZW\P8M/RSUyF]VHPDQW\NLLVNáDGQL]DZLHUDWH*SUDJPDW\N–SUDJPDW\NDRNUHODGR
MDNLHM NRQNUHWQHM V\WXDFML Z\VWSXMFHM Z SURFHsie konstrukcji SI (analizie, projektowaniu, … )
GRSDVRZDü NRQNUHtQ\ Z]RU]HF QRWDF\MQ\ D ZLF SRUHGQLR SURZDG]L GR RNUHOHQLD HOHPHQWyZ
pewnej metodyki.
2. Cele UML
UML
]JRGQLH ] GHNODUDFM MHJR WZyUFyZ PD GRNRQDü XQLILNDFML M]\NyZ X*\ZDQ\FK Z
innych meto
G\NDFKRELHNWRZ\FK6]DQVHU\QNRZHQLHGRü*HZ]PRFQLRQHSU]H]]DDNFHSWRZDQLH
JR MDNR VWDQGDUGX SU]HP\VáRZHJR SU]H] FLDáR VWDQGDU\]DF\MQH 20* V L WDN GX*H SRQLHZD*
auto
U]\*%RRFK,-DFREVRQL-5XPEDXJKWR]QDQLZLDWRZLPHWRGRORG]\NWyU\FKPHWodyki
opa
QRZDá\RNRáRU\QNX]DVWRVRZDPHWRG\NRELHNWRZ\FK7HPHWRG\NLWR
SOOSE , -DFREVRQ 8NLHUXQNRZDQD QD PRGHORZDQLH X*\WNRZQLNyZ L F\NOX *\FLRZHJR
systemu. Nie przykrywa zarówno aspektu modelowania dziedziny przedmiotowej, jak
i aspektu implementacji.
SOOAD*%RRFK'REU]HSRGFKRG]LGRNZHVWLLSURMHNWRZDQLDLPSOHPHQWDFMLL]ZL]NyZ
]H URGRZLVNLHP LPSOHPHQWDFML 1LH SU]\NU\ZD Z\VWDUF]DMFR GREU]H DVSHNWX
specyfikowa
QLDLDQDOL]\Z\PDJDX*\WNRZQLNyZ
SOMT (J. Rumbaugh): Ukierunkowana na modelowanie dziedziny przedmiotowej. Nie
8
Ewa
Stemposz
przy
NU\ZDGRVWDWHF]QLHGREU]H]DUyZQRDVSHNWXPRGHORZDQLDX*\WNRZQLNyZV\VWHPXMDN
i aspektu implementacji.
3RGVWDZRZ\P FHOHP 80/ ]JRGQLH ] LQWHQFMDPL DXWRUyZ E\áR XWZRU]HQLH M]\ND GR
mode
ORZDQLDX*\WHF]QHJR]DUyZQR dla ludzi, jak i dla maszyn –F]HJRZURG]DMXSRPRVWXPLG]\
OXG]NSHUFHSFMLZ\REUD(QLDDXWRPDW\F]QJHQHUDFMIUDJPHQWyZNRGXV]NLHOHWyZDSOLNDFML
F]\ ZUHV]FLH FDá\FK DSOLNDFML :\GDMH VL *H ]DGDQLH XF]\QLHQLD ] M]\ND GR PRGHORZDQLD
XZ]JOGQLDMFHJR Z\PDJDQLD GRW\F]FH QDWXUDOQRFL SRJOGRZRFL L Z\VRNLHJR SR]LRPX
abs
WUDNFML M]\ND DOJRU\WPLF]QHJR R EDUG]R SUHF\]\MQHM VNáDGQL L VHPDQW\FH MHVW FR QDMPQLHM
WUXGQHRLOH]JyU\QLHVND]DQHQDQLHSRZRG]HQLHLPXVLSURZDG]LüGR]PQLHMV]HQLDF]\WHOQRFL
diagra
PyZ D SU]H] WR GR ]PQLHMV]HQLD SRWHQFMDáX WHJR M]\ND MDNR URGND GR PRGHORZDQLD
SRMFLRZeJR 'ODWHJR QLH ZV]\VF\ V ]DFKZ\FHQL 80/ 1LHNWyU]\ XZD*DM JR ]D WZyU
SU]HUHNODPRZDQ\]E\WREV]HUQ\L(OH]GHILQLRZDQ\
3. Diagramy definiowane w UML
0QRJRüDVSHNWyZNRQVWUXRZDQ\FK6,]UHJXá\SURZDG]LGR]DLVWQLHQLDZPHWRG\NDFKZLHOX
PRGHOL RSLV\ZDQ\FK ]D SRUHGQLFWZHP GLDJUDPyZ L VWDQRZLF\FK FR Z URG]DMX ÄU]XWX´
projek
WRZDQHJR6,]SHZQHMSHUVSHNW\Z\LQDSHZQ\PSR]LRPLHV]F]HJyáRZRFL
W UML d
HILQLRZDQHVQDVWSXMFHGLDJUDP\
S3U]\SDGNyZ X*\FLD =D JáyZQ\ FHO PDM RGZ]RURZDQLH IXQNFMRQDOQRFL SURMHNWRZDQHJR
6,]SHUVSHNW\Z\SU]\V]á\FKX*\WNRZQLNyZ
SKlas i obiektów PDM ]D ]DGDQLH RGZ]RURZDQLH VWUXNWXU\ V\VWHPX QDMZD*QLHMV]H ]
diagramów UML.
SDynamiczne 1DOH*FH GR QLFK GLDJUDP\ LQWHUDNFML ZVSyáSUDF\ L VHNZHQFML GLDJUDP\
sta
QXRUD]GLDJUDP\DNW\ZQRFLVWDQRZLHOHPHQWZVSRPDJDMF\ZSURFHVLHX]XSHáQLDQLD
VWUXNWXU\V\VWHPXRRSHUDFMHXPR*OLZLDMFHUHDOL]DFMIXQNFMRQDOQRFLZ\VSHF\ILNRZDQHj w
PRGHOXSU]\SDGNyZX*\FLD
SImplementacyjne 1DOH* GR QLFK GLDJUDP\ NRPSRQHQWyZ L GLDJUDP\ ZGUR*HQLRZH
Dia
JUDP\NRPSRQHQWyZSRND]XMVSRVyERGZ]RURZDQLDIUDJPHQWyZSURMHNWXQDIUDJPHQW\
NRGX NRPSRQHQW\ D GLDJUDP\ ZGUR*HQLRZH SU]\SLVDQLH NRPSRQHQWyZ do fizycznych
za
VREyZF]\OLNRQILJXUDFMHOHPHQWyZF]DVXZ\NRQDQLD
SPakietów :VSRPDJDM ]DU]G]DQLH SRSU]H] XPR*OLZLHQLH SRG]LDáX PRGHOL V\VWHPX QD
PQLHMV]HHOHPHQW\]ZDQHSDNLHWDPLLXVWDOHQLX]DFKRG]F\FKPLG]\QLPLUHODFML
'LDJUDP\SU]\SDGNyZX*\Fia
3U]\SDGNL X*\FLD ]ZDQH VFHQDULXV]DPL ]DQLP , -DFREVRQ Z\RGUEQLá MH MDNR RGG]LHOQ PHWRG
SURMHNWRZDQLD E\á\ LQWXLF\MQLH VWRVRZDQH Z NRQVWUXRZDQLX 6, QD GáXJR SU]HG SRMDZLHQLHP VL
metodyk obiektowych.
'LDJUDP\SU]\SDGNyZX*\FLDRGZ]RURZ\ZXMIXQNFMRQDOQRüV\VWHPXZWDNLVSRVyEZMDNL
EG]LHZLGRF]QDSU]H]NODV\SU]\V]á\FKX*\WNRZQLNyZ]ZDQ\FKWXDNWRUDPL2ND]XMHVL*HGOD
GX*\FKV\VWHPyZRZLHOX]áR*RQ\FKLZ]DMHPQLHSRZL]DQ\FKIXQNFMDFKWHJRURG]DMXSRGHMFLH
PD U]HF]\ZLFLH GX*H ]QDF]HQLH, sprzyja bowiem punktowi widzenia, w którym centralnym
RURdNLHP]DLQWHUHVRZDQLDVWDMHVLX*\WNRZQLNV\VWHPXDQLHZHZQWU]QDVWUXNWXUDWHJRV\VWHPX
3U]\SDGNLX*\FLDRGZ]RURZ\ZXMVWUXNWXUV\VWHPXWDNMDNMZLG]MHJRX*\WNRZQLF\Zadanie
SUDZLGáRZHgo RNUHOHQLHZ\PDJDIXQNFMRQDOQ\FKQDSURMHNWRZDQ\V\VWHPVWDMHVLáDWZLHMV]H, co
MHVW ZD*QH ER SUDZLGáRZH RNUHOHQLH IXQNFMRQDOQRFL V\VWHPX X]QDZDQH MHVW ]D MHGHQ ]
podstawowych problemów w procesie konstrukcji.
-]\NPRGHORZDQLDGDQ\FK80/
9
3RGVXPRZ\ZXMFPRGHOSU]\SDGNyZX*\FLDSR]ZDODQD
SOHSV]H ]UR]XPLHQLH PR*OLZ\FK VSRVREyZ Z\NRU]\VWDQLD SURMHNWRZDQHJR V\VWHPX
(przypad
NyZ X*\FLD FR R]QDF]D ]ZLNV]HQLH VWRSQLD ZLDGRPRFL DQDOLW\NyZ L
SURMHNWDQWyZFRGRFHOyZF]\OLIXQNFMRQDOQRFLWHJRV\VWHPX
SustalenieSUDZGRVWSX do zasobów,
SXVWDOHQLHVNáDGRZ\FKV\VWHPXL]ZL]DQHJR]QLPLSODQXNRQVWUXNFMLV\VWHPX
SGRVWDUF]HQLHSRGVWDZ\GRVSRU]G]HQLDSODQXWHVWyZV\VWHPX
SOHSV]LQWHUDNFM]HVSRáXSURMHNWRZHJR]SU]\V]á\PLX*\WNRZQLNDPLV\VWHPX
klient
banku
kasjer
zarz
d
banku
« include»
uaktualnianie
stanu konta
«include»
«extend »
wp
áDWD
pieni
G]\
wyp
áDWD
pieni
G]\
sprawdzenie
stanu konta
obs
áXJD
po
*\F]NL
Rys. 1.
3U]\NáDGGLDJUDPXSU]\SDGNyZX*\FLD
Diagramy obiektów i diagramy klas
'LDJUDPNODVMHVWSRMFLHPFHQWUDOQ\PZHZV]\VWNLFK]QDQ\FKPHWRG\NDFKRELHNWRZ\FK6WDQRZL
SHZQRGPLDQGLDJUDPyZHQFMD-]ZL]HN=DVDGQLF]DQRZRüWRPHWRdy przypisane do klas. W
80/GLDJUDP\NODV]RVWDá\SUDNW\F]QLHEH]ZLNV]\FK]PLDQSU]HQLHVLRQH]207
'LDJUDPRELHNWyZ]DZLHUDZ\áF]QLHRELHNW\–Z\VWSLHQLDNODV'LDJUDPNODV]DZLHUDNODV\
DOHPR*HWH*]DZLHUDüRELHNW\SRZL]DQHZVLHü]DOH*QRFLDPi dwóch podstawowych rodzajów:
S]ZL]NL JHQHUDOL]DFML-specjalizacji JG]LH NODV\ EDUG]LHM Z\VSHFMDOL]RZDQH G]LHG]LF]
in
ZDULDQW\DWU\EXW\PHWRG\]GDU]HQLDZ\MWNLLLQQH]NODVEDUG]LHMRJyOQ\FK
SasocjacjeF]\OLGRZROQH]ZL]NLPLG]\NODVDPLRGZ]RURZ\ZXMFH]DOH*QRFL]DFKRG]FH
PLG]\E\WDPLZPRGHORZDQHMG]LHG]LQLHSU]HGPLRWRZHM
Specjalne rodzaje asocjacji to: asocjacja kwalifikowana, agregacja, kompozycja i asocjacja n-arna.
10
Ewa
Stemposz
Asocjacja kwalifikowana
SR]ZDODQDZ\Uy*QLHQLHNZDOLILNDWRUDSRMHG\QFzego atrybutu lub
]HVWDZXDWU\EXWyZDVRFMDFMLNWyUHJRZDUWRüZ\]QDF]DZVSRVyEXQLNDOQ\]ELyURELHNWyZSHZQHM
NODV\SRZL]DQ\FK]MHGQ\PRELHNWHPNODV\GRNWyUHMÄGRVWDZLRQ\´]RVWDáNZDOLILNDWRU1Sbank
+ numer konta
Z\]QDF]DMZVSRVyEMHGQR]QDF]Q\ZáDFLFLHODNRQWD
Agregacja
MHVW V]F]HJyOQ\P SU]\SDGNLHP DVRFMDFML Z\UD*DMF\P ]DOH*QRü F]ü-FDáRü
Po
MFLH DJUHJDFML MHVW QLHMDVQH L URG]L PQyVWZR ZWSOLZRFL =GDQLD V SRG]LHORQH QDZHW ZUyG
ZLDWRZ\FK JXUX 1S 3 &RDG SRGDMH ]ZL]HN PLG]\ RUJDQL]DFM D MHM SUDFRZQLNDPL MDNR
przy
NáDGQD]DVWRVRZDQLHDJUHJDFMLSRGF]DVJG\-5XPEDXJKWZLHUG]L*HRUJDQL]DFMDQLHPR*H
E\ü DJUHJDFM MHM SUDFRZQLNyZ $XWRU]\ 80/ SRGMOL SUyE ]PQLHMV]HQLD PWOLNX LVWQLHMFHJR
ZRNyá SRMFLD DJUHJDFML SRSU]H] ZSURZDG]HQie jej mocniejszej formy, zwanej NRPSR]\FM
=ZL]HNNRPSR]\FMLR]QDF]DF]üQLHPR*HE\üZVSyáG]LHORQDDMHMF\NO*\FLRZ\]DZLHUDVLZ
F\NOX *\FLRZ\P FDáRFL &]ü QLH PR*H ZLF LVWQLHü EH] FDáRFL MHM SRMDZLDQLH VL L ]QLNDQLH
zawsze pozostaje w zw
L]NX]LVWQLHQLHPSHZQHMFDáRFLGRNWyUHMMHVWSU]\SLVDQD.ODV\F]Q\P
SU]\NáaGHP]ZL]NXNRPSR]\FMLMHVW]ZL]HNPLG]\zamówieniem a SR]\FM]DPyZLHQLD.
Asocjacja n-
DUQDWRDVRFMDFMDNWyUHMZ\VWSLHQLDáF]QRELHNWyZEGF\FKLQVWDQFMDPLFR
QDMZ\*Hj n klas: 3-arna – 3 obiekty (inna nazwa dla tej asocjacji to ternarna), 4-arna – 4 obiekty,
itd.
'DQDNODVDPR*HSRMDZLüVLQDZLFHMQL*MHGQHMSR]\FMLZDVRFMDFMLAsocjacja binarna ze
VZRMXSURV]F]RQQRWDFMLSHZQ\PLGRGDWNRZ\PLZáDVQRFLDPLWDNLPLMDNPR*OLZRüXVWDODQLD
NLHUXQNX QDZLJRZDQLD NZDOLILNDWRUyZ ]ZL]NyZ DJUHJDFML F]\ NRPSR]\FML MHVW VSHFMDOQ\P
rodzajem asocjacji n-arnej, dla n=2. Asocjacja binarna i 2-
DUQDVUyZQRZD*QHQLHLVWQLHMHPLG]\
QLPL Uy*QLFD VHPDQW\F]QD LQQ\ MHVW W\ONR VSRVyE UHSUH]HQWRZDQLD :\PLHQLRQH SRZ\*HM
dodat
NRZHZáDVQRFLDVRFMDFMLELQDUQ\FKV]DEURQLRQHGODW\FKDVRFMDFMLQ-arnych, gdzie n > 2.
poprzedza
nastêpuje_po
zawiera
asystuje_w
zapisany_na
prowadzi
Pracownik
Student
Osoba
Kurs
Student_asystent
Profesor
1..*
*
1..*
*
0
..
1
Wyk³ad
*
*
1
0..1
1
Rys. 2.
3U]\NáDGGLDJUDPXNODV
Diagramy dynamiczne
Diagramy: int
HUDNFMLVWDQXDNW\ZQRFL–URGHNQRWDF\MQ\GRRSLVXPRGHOXG\QDPLF]QHJR–
PRJVWDQRZLüLF]VWRVWDQRZLLVWRWQHX]XSHáQLHQLHGLDJUDPXNODVDOHWH*ZZLHOXZ\SDGNDFK
ich znaczenie jest pomocni
F]HLGUXJRU]GQH
'LDJUDP\LQWHUDNFMLZVSyáSUDF\LVHNZHncji
'LDJUDP\LQWHUDNFMLSR]ZDODMQDXWZRU]HQLHRSLVXZVSyáG]LDáDQLDRELHNWyZV\VWHPXSRGF]DV
-]\NPRGHORZDQLDGDQ\FK80/
11
UHDOL]DFMLGDQHJR]DGDQLDQSSU]\SDGNXX*\FLDF]\WH*MHGQHJRNRQNUHWQHJRVFHQDULXV]DGDQHJR
SU]\SDGNXX*\FLD1LHGODZV]\VWNLFKSU]\SDGNyZX*\FLDPR*H]DFKRG]LüSRWU]HEDNRQVWUXRZDQLD
GLDJUDPyZ LQWHUDNFML DOH PRJ RND]Dü VL V]F]HJyOQLH X*\WHF]QH QS GR NRPXQLNDFML ZHZQWU]
]HVSRáX SURMHNWRZHJR MDN ]UHV]W ZV]\VWNLH LQQH URG]DMH GLDJUDPyZ F]\ WH* GR UR]ZD*HQLD
opcjonalnych realizacji w „trudnych przypadka
FK´ 3RQDGWR QLHNWyUH QDU]G]LD &$6( SRWUDIL
Z\NRU]\VWDü GLDJUDP\ LQWHUDNFML GR JHQHUDFML NRGX FR PR*H VWDQRZLü ZD*Q\ SRZyG GOD LFK
konstruowania.
80/ SRVLDGD GZD URG]DMH GLDJUDPyZ LQWHUDNFML GLDJUDP\ ZVSyáSUDF\ NRODERUDFML L
diagramy sekwencji. Oba
URG]DMHGLDJUDPyZED]XMFQDGDQ\PGLDJUDPLHNODVSRND]XMSUDZLH
W VDP LQIRUPDFM, w nieco inny sposób – GLDJUDP\ VHNZHQFML XPR*OLZLDM VSHF\ILNRZDQLH
ograni
F]HQDNáDGDQ\FKQDSU]HSá\ZF]DVX1LHNWyUHQDU]G]LD&$6(SRWUDILJHQHURZDüMHGQH]
tych d
LDJUDPyZ]GUXJLFK'HF\]MDNWyU\URG]DMGLDJUDPyZNRQVWUXRZDü]DOH*\RGSR*GDQHJR
aspektu interakcji.
:Persone
l
bibl .
:Cz
áonek
bibl .
:Ksi
*ka
1: Po
*ycz (tytuá)
1.1: a := CzyMo
*naPo*\F]\ü
:Egzemplarz Ksi
*ki
1.2.1: [b] ZaznaczWypo
*yczenie
1.2: [a] b := CzyDost
SQ\
Rys. 3.
3U]\NáDGGLDJUDPXZVSyáSUDF\
:Personel
bibl
.
:Ksi
*ka
:Cz
áonek
bibl .
:Egzemplarz
Ksi
*ki
1: Po
*ycz (tytuá)
1.1: a :=
1.2: [a] b := CzyDost
SQ\
1.2.1: [b] ZaznaczWypo
*yczenie
A
C
{C-A < 5 sek.}
{ ZaznaczWypo
*yczenie
CzyDost
pny < 1 sek. }
CzyMo
*naPo*\F]\ü
Rys. 4.
3U]\NáDGGLDJUDPXVHNZHQFML
12
Ewa
Stemposz
Diagramy stanu
2ELHNW Z ZLHWOH VZRLFK ZáDVQRFL XQLNDOQD WR*VDPRü VWDQ L ]DFKRZDQLH PR*H E\ü
trak
WRZDQ\ MDNR DXWRPDW R VNRF]RQHM OLF]ELH VWDQyZ F]\OL SHZQ PDV]\Q NWyUD PR*H
]QDMGRZDüVLZGDQ\PPRPHQFLHZMHGQ\P]Z\Uy*QLRQ\FKVWDQyZDWDN*HPR*HRGG]LDá\ZDü
na otoczenie i vice-versa. Maszyna stanu jest grafem,
NWyUHJRZLHU]FKRáNLVWDQRZLVWDQ\RELHNWX
DáXNLRSLVXMSU]HMFLDPLG]\VWDQDPL3U]HMFLHPLG]\VWDQDPLMHVWRGSRZLHG]LQD]GDU]HQLH
Zwykle, maszyn
D VWDQX MHVW SU]\SLVDQD GR NODV\ L VSHF\ILNXMH UHDNFMH Z\VWSLH GDQHM NODV\ QD
]GDU]HQLDNWyUHGRQLFKSU]\FKRG]VWDQRZLFZWHQVSRVyEPRGHOKLVWRULL*\FLDGODRELHNWXWHM
klasy. Takie po
GHMFLHVHSDUXMFHRELHNWRGUHV]W\ZLDWDLQQ\FKRELHNWyZZVystemie czy poza
QLP VWDQRZLFH SRGVWDZ GR NRQVWUXRZDQLD GLDJUDPyZ VWDQX SR]ZDOD QD DQDOL] ]DFKRZD
SRMHG\QF]HJRRELHNWXDOHPR*HQLHE\üQDMOHSV]\PVSRVREHPQD]UR]XPLHQLHG]LDáDQLDV\VWHPX
MDNRFDáRFL
0DV]\Q VWDQX PR*QD Z\NRU]\VWDüGRDQDOL]\SU]\SDGNyZX*\FLDSU]HSá\ZXRSHUDFMLF]\
ZVSyáSUDF\RELHNWyZDOHZW\P]QDF]HQLX–SU]HSá\ZXVWHURZDQLD–80/GRVWDUF]DLQQHURGNL
np. diagramy inte
UDNFMLF]\DNW\ZQRFL
.ROHMND
ELDá\FK
.ROHMND
F]DUQ\FK
UXFKELDá\FK
UXFKF]DUQ\FK
F]DUQH Z\JU\ZDM
UHPLV
ELDáHZ\JU\ZDM
ZKHQV]DFKPDW
ZKHQSDW
ZKHQSDW
ZKHQV]DFKPDW
8U]G]HQLH
QLHVSU]HGDQH
8U]G]HQLH
VSU]HGDQH
NXSQR XU]G]HQLD
]ZURW XU]G]HQLD
DIWHUGDWDJZDUDQFML
Rys. 5.
'LDJUDP\VWDQXZSRVWDFLÄF\NO*\FLDRELHNWX´RUD]ÄSU]HSá\ZVWHURZDQLD´
'LDJUDP\DNW\ZQRFL
'LDJUDP\ DNW\ZQRFL QLH SRVLDGDMFH Z\UD(QHJR SLHUZRZ]RUX Z SRSU]HGQLFK SUDFDFK
ÄWU]HFKSU]\MDFLyá´-DFREVRQ¶D%RRFK¶DL5XPEDXJK¶DáF]LGHHSRFKRG]FH]WU]HFK(UyGHá
GLDJUDPyZ ]GDU]H - 2GHOO¶D WHFKQLN PRGHORZDQLD VWDQyZ L VLHFL 3HWULHJR 6 V]F]HJyOQLH
X*yWHF]QH SU]\ PRGHORZDQLX SU]HSá\ZyZ RSHUDFML F]\ WH* Z RSLVLH ]DFKRZD ] SU]HZDJ
przetwarza
QLDZVSyáELH*QHJR
-]\NPRGHORZDQLDGDQ\FK80/
13
Pobierz
zam ów ienie
W yœlij
to, co
zam ów iono
Pam iêtaj
, co
Skom pletuj
zam ów ienie
P³aæ
D zia³ Sprzeda¿y
M agazyn
=DPyZLHQLH
^ZSURZDG]RQH`
=DPyZLHQLH
^VNRPSOHWRZDQH`
=DPyZLHQLH
^Z\VáDQH`
=DPyZLHQLH
^XPLHV]F]RQH`
:\VWDZ
]DPyZLHQLH
.OLHQW
LNLHG\Z\VáDQR
Rys. 6.
3U]\NáDGGLDJUDPXDNW\ZQRFL
*UDI DNW\ZQRFL WR maszyna stanu, której podstawowym zadaniem nie jest analiza stanów
RELHNWX DOH PRGHORZDQLH SU]HWZDU]DQLD SU]HSá\ZyZ RSHUDFML 6WDQ\ JUDIX DNW\ZQRFL ]ZDQH
DNW\ZQRFLDPLRGSRZLDGDMVWDQRPZ\Uy*QLDOQ\PZWUDNFLHSU]HWZDU]DQLDDQLHVWDQRPRELHNWX
Ak
W\ZQRü PR*H E\ü LQWHUSUHWRZDQD Uy*QLH Z ]DOH*QRFL RG SHUVSHNW\Z\ MDNR ]DGDQLH GR
wyko
QDQLDLWR]DUyZQRSU]H]F]áRZLHNDMDNLSU]H]NRPSXWHU]SHUVSHNW\Z\SRMFLRZHMF]\WH*
QS MDNR SRMHG\QF]D PHWRGD ] SHUVSHNW\Z\ SURMHNWRZHM 3RGREQLH SU]HMFLD PLG]\ VWDQDPL
UDF]HM QLH V WX ]ZL]DQH ] QDGHMFLHP ]GDU]HQLD DOH ] ]DNRF]HQLHP SU]HWZDU]DQLD
wyspecyfikowanego dla danego stanu.
'LDJUDP\LPSOHPHQWDF\MQHNRPSRQHQWyZLZGUR*HQLRZH
'LDJUDP\ LPSOHPHQWDF\MQH SRND]XM QLHNWyUH DVSHNW\ LPSOHPHQWDFML 6, ZáF]DMF Z WR
VWUXNWXUNRGX(UyGáRZHJRRUD]VWUXNWXUNRGXF]DVXZ\NRQDQLDUXQ-time). UML wprowadza dwa
URG]DMH WDNLFK GLDJUDPyZ GLDJUDP\ NRPSRQHQWyZ SRND]XMFH VWUXNWXU VDPHJR NRGX RUD]
diagramy
ZGUR*HQLRZHSRND]XMFHVWUXNWuUV\VWHPXF]DVXZ\NRQDQia.
Diagramy komponentów
'LDJUDP\ NRPSRQHQWyZ SRND]XM ]DOH*QRFL SRPLG]\ NRPSRQHQWDPL RSURJUDPRZDQLD
NRPSRQHQWDPLNRGX(UyGáRZHJRNRGXELQDUQHJRRUD]NRGXZ\NRQ\ZDOQHJR.RPSRQHQW\PRJ
LVWQLHüZUy*Q\PF]DVLHZF]DVLHNRPSLODFMLZF]DVLHNRQVROLGDFMLF]\WH*ZF]DVLHZ\NRQDQLD
'LDJUDPNRPSRQHQWyZSRND]XMHVLHüZ]DMHPQ\FK]DOH*QRFLMHVWSU]HGVWDZLDQ\MDNRJUDIJG]LH
Z]áDPLVNRPSRQHQW\]DáXNLSURZDG]RGNOLHQWDGRGRVWDZF\SHZQHMLQIRUPDFML
14
Ewa
Stemposz
harmonogramów
Program
planuj¹ cy
Interfejs
graficzny
rezerwacje
aktualizacje
Program do
Rys. 7.
3U]\NáDGGLDJUDPXNRPSRQHQWyZ
3.1.1.
'LDJUDP\ZGUR*HQLRZH
'LDJUDPZGUR*HQLRZ\MHVWJUDIHP]ZLHU]FKRáNDPL]ZDQ\PLWXZ]áDPLSRáF]RQ\PLSU]H]
áXNL RGZ]RURZ\ZXMFH SRáF]HQLD NRPXQLNDF\MQH :]á\ R]QDF]DM IL]\F]QH MHGQRVWNL NWyUH
po
VLDGDM FR QDMPQLHM SDPLü D F]VWR L PR*OLZRFL REOLF]HQLRZH :]á\ L SRáF]HQLD
komunikacyj
QH PRJ E\ü RSDWU]RQH VWHUHRW\SDPL QS ©&38ª ©SDPLüª ©XU]G]HQLH MDNLHª
:]á\SU]eFKRZXMZ\VWSLHQLDRELHNWyZLNRPSonentów.
SRáF]HQLHNRPXQLNDF\MQH
A
dm
inServer:K
om
puterH
ost
:Program
do
harm
onogram
ów
UH]HUZDFMH
.RPSXWHU-DFND3&
3URJUDP
SODQXMF\
Rys. 8.
3U]\NáDGGLDJUDPXZGUR*HQLRZHJR
Diagramy pakietów
3DNLHW\ZVSRPDJDMFH]DU]G]DQLHPSURMHNWHPVWDQRZLIUDJPHQWPRGHOXRSUyF]]HVWDZX
HOHPHQWyZVNáDGRZ\FKWHJRPRGHOX]DZLHUDMWH*VLHüLFKZ]DMHPQ\FK]DOH*QRFL.D*G\HOHPHQW
modelu m
XVL E\ü SU]\SLVDQ\ GR MHGQHJR SDNLHWX KRPH SDFNDJH 'DQ\ PRGHO PR*H E\ü ZLF
opi
VDQ\ SU]H] ]ELyU SDNLHWyZ 3RG]LDá PRGHOX QD SDNLHW\ MHVW DUELWUDOQ\ DOH X MHJR SRGVWDZ
SRZLQQ\OH*HüUDFMRQDOQHSU]HVáDQNLQSZVSyOQDIXQNFMRQDOQRüPRFQHVNRMDU]HQLDLtp. Pakiety
]DZLHUDM HOHPHQW\ W]Z Z\VRNLHJR SR]LRPX WDNLH MDN QS NODV\ L LFK ]ZL]NL PDV]\Q\ VWDQX
grafy przy
SDGNyZX*\FLDLWS7RFRMHVW]DZDUWHZHOHPHQWDFKZ\VRNLHJRSR]LRPXQSDWU\EXW\
RSHUDFMHVWDQ\]DJQLH*G*RQHRELHNW\OLQLH*\FLDNRPXQLNDW\LWS]UHJXá\QLHSRMDZLDVLMDNR
EH]SRUHdQLD]DZDUWRüSDNLHWX3DNLHW\PRJE\ü]DJQLH*G*DQHLPRJEUDüXG]LDáZ]ZL]NDFK
dziedziczenia.
'LDJUDP\ SDNLHWyZ V LVWRWQH SU]HGH ZV]\VWNLP GOD GX*\FK SURMHNWyZ VNáDGDMF\FK VL ]
ZLHOX PRGXáyZ IXQNFMRQDOQ\FK ]H ]áR*RQ\PL Z]DMHPQ\PL ]DOH*QRFLDPL QLH W\ONR Z FHOX
ukry
FLD PQLHM LVWRWQ\FK HOHPHQWyZ FR ]DZV]H XáDWZLD ]UR]XPLHQLH DOH WDN*H GOD XáDWZLHQLD
SRG]LDáXSUDFZUDPDFKJUXS\RVyEZVSyáSUDFXMF\FKSU]\NRQVWUXRZDQLX6,
-]\NPRGHORZDQLDGDQ\FK80/
15
Edytor
Elementy
dziedziny
zastosowa
Sterownik
Rdze
grafiki
Rdze
grafiki Motif
Rdze
grafiki Windows
System
okienkowy
Motif
MS Windows
Elementy
diagramów
graficznych
Rys. 9.
3U]\NáDGGLDJUDPXSDNLHWyZ
4.
0HFKDQL]P\UR]V]HU]DOQRFL
80/ SRVLDGD WU]\ URG]DMH PHFKDQL]PyZ SR]ZDODMF\FK QD UR]V]HU]HQLH VHPDQW\NL
metamo
GHOX VWHUHRW\S\ ZDUWRFL HW\NLHWRZDQH RJUDQLF]HQLD Rozszerzenia z definLFML VWDQRZL
RGVWpVWZRRGVWDQGDUGyZ80/LZQDWXUDOQ\VSRVyESURZDG]GRXWZRU]HQLDSHZQHJRGLDOHNWX
80/ FR ] NROHL Z HIHNFLH PR*H VSRZRGRZDü SUREOHP\ ] SU]HQDV]DOQRFL =DZV]H WU]HED
UR]ZD*Dü]\VNLLVWUDW\SRQLHVLRQHG]LNLNRU]\VWDQLX]W\FKPHFKDQizmów, szczególnie wtedy, gdy
„stare” – standardowe mechanizmy –
SUDFXMZ\VWDUF]DMFRGREU]H
Stereotypy
6WHUHRW\S\ V URGNLHP XPR*OLZLDMF\P PHWDNODV\ILNDFM HOHPHQWyZ PRGHOX 'OD ND*GHJR
URG]DMX HOHPHQWyZ PRGHOX F]\OL GOD ND*GHJR HOHPHQWX PHWDPRGHOX UML, istnieje lista
stereoty
SyZ SUHGHILQLRZDQ\FK DOH X*\WNRZQLN PR*H WH* GHILQLRZDü VWHUHRW\S\ ZáDVQH 'DQ\
HOHPHQWPRGHOXQSUHODFMDPLG]\SU]\SDGNDPLX*\FLDNRQNUHWQDNODVDF]\PHWRGDPR*HE\ü
R]QDF]RQDSU]H]FRQDMZ\*HMMHGHQVWHUHRW\S
16
Ewa
Stemposz
P1
P2
« include »
P3
P4
«extend »
« trwa
áa» Prostok t
punkt1: Punkt
punkt2: Punkt
«konstruktory »
Prostok
t (p1: Punkt, p2: Punkt)
«zapytania»
obszar () : Real
aspekt () : Real
...
«»
przesu
delta : Punkt)
przeskaluj(wspó
áczynnik : Real )
Rys. 10.
3U]\NáDG\]DVWRVRZDQLDVWHUHRW\SyZ
:DUWRFLHW\NLHWRZDQH
:DUWRFL HW\NLHWRZDQH V X*\ZDQH GR VNRMDU]HQLD DUELWUDOQHM LQIRUPDFML ] SRMHG\QF]\P
elementem modelu:
S:DUWRüHW\NLHWRZDQVWDQRZLFLJ]QDNyZR postaci: VáRZRNOXF]RZH ZDUWRü.
S'RZROQ\áDFXFK]QDNyZPR*HE\üX*\W\MDNRVáRZRNOXF]RZH
S6VáRZDNOXF]RZHSUHGHILQLRZDQHDOHX*\WNRZQLNPR*HWH*GHILQLRZDüZáDVQH
S'RZROQ\HOHPHQWPRGHOXPR*HE\üVNRMDU]RQ\QLHW\ONR]OLVWZDUWRFLHW\NLHWRZDQ\ch,
DOH Z EDUG]LHM RJyOQ\P VHQVLH ] áDFXFKHP ZáDVQRFL Z SRVWDFL ^GRZROQ\ áDFXFK
znaków}.
3U]\NáDG: ^DXWRU Ä-DQ1RZDN´WHUPLQ]DNRF]HQLD Ä0DMD´VWDWXV DQDOL]D`
:DUWRFLHW\NLHWRZDQHVV]F]HJyOQLHSU]\GDWQHGRSU]HFKRZ\ZDQLDLQIRUPDFML]ZL]DQ\FK
z
]DU]G]DQLHPSURMHNWHPMDNZSU]\NáDG]LHSRZ\*HMF]\]HV]F]HJyáDPLLPSOHPHQWDF\MQ\PL
Ograniczenia
Firma
0..1
1..*
pracownik
pracodawca
podw
áadny
szef
0..1
*
Osoba
{Osoba.pracodawca =
Osoba.szef.pracodawca}
Rys. 11.
3U]\NáDG]DVWRVRZDQLDRJUDQLF]H
-]\NPRGHORZDQLDGDQ\FK80/
17
2JUDQLF]HQLD VSHF\ILNXM UHVWU\NFMH QDNáDGDQH QD HOHPHQW\ PRGHOX 0RJ VWDQRZLü
Z\UD*eQLD M]\ND QDWXUDOQHJR M]\ND IRUPDOQHJR QS 2&/ Z 80/ PRJ SU]\MPRZDü SRVWDü
IRUPXá\PDWHPDW\F]QHMOXEIUDgPHQWXNRGXF]\WH*SVHXGRNRGX
5. Podsumowanie
:DG ZV]\VWNLFK PHWRG\N X*\ZDQ\FK Z SURFHVLH NRQVWUXNFML 6, MHVW LFK DUELWUDOQRü RUD]
idealiza
FMD V\WXDFML SURMHNWRZ\FK F]VWR QLH]E\W ]JRGQ\FK ] V\WXDFMDPL UHDOQ\PL .D*GD
PHWRG\ND MHVW REFL*RQD Z\VRNLP VWRSQLHP U\]\ND ERZLHP MHM VWRVRZDOQRü MHVW VLOQLH
X]DOH*QLRQDRGURG]DMXLVNDOLSU]HGVLZ]LFLD8dowodnienie, formalne czy empiryczne (na bazie
U]HF]\ZLVW\FK GX*\FK SURMHNWyZ *H ]DVWRVRZDQLH GDQHM PHWRG\NL PR*H ]QDF]FR XVSUDZQLü
proces konstrukcji SI, jest –
JáyZQLH ]H Z]JOGX QD UR]PLDU\ ZVSyáF]HVQ\FK SU]HGVLZ]Lü –
SUDNW\F]QLHQLHPR*OLZHGRSU]eSURZDG]HQLD1DZHWQDMOHSV]DPHWRG\NDQLHMHVWZVWDQLH]DSHZQLü
RVLJQLFLD SU]H] SURGXNW LnIRUPDW\F]Q\ RGSRZLHGQLR Z\VRNLHM MDNRFL .OXF]HP MHVW WX
]DLVWQLHQLH]HVSRáXNRPSHWHQWQ\FKL]DDQJD*RZDQ\FKRVyE1LHPQLHMMHGQDNPHWRG\NLVZD*QH–
VWDQRZL GUXJRU]GQH DF]
NROZLHN LVWRWQH ZVSRPDJDQLH Z SURFHVLH NRQVWUXNFML 6, : RVWDWHF]QRFL
OHSV]DMHVWGRZROQDOHSLHMF]\JRU]HMSU]HP\ODQDPHWRGDQL**DGQD
6. Bibliografia
[Fow1997]
M. Fowler, K. Scott. UML Distilled Applying the Standard Object Modeling
Language. Addison Wesley Longman, Inc., 1997
[Mar2000] Ch.
Marshall.
Enterprise Modeling with UML. Addison Wesley Longman, Inc., 2000
[Mul2000] R.J.
Muller.
%D]\GDQ\FKM]\N8POZPRGHORZDQLXGDQ\FKWydawnictwo Mikom,
2000
[OMG1999]
Standard OMG UML 1.3.
http://www.omg.org/cgi-bin/doc?formal/00-03-01.pdf
, 1999
[Qua2000] T.
Quatrani.
Visual Modeling with Rational Rose 2000 and UML. Addison Wesley
Longman, Inc., 2000
[Rum1998]
J. Rumbaugh, I. Jacobson, G. Booch. The Unified Modeling Language Reference
Manual. Addison-Wesley Object Technology Series, 1998
[Ste2000]
P. Stevenson, R. Pooley. Using UML Software Engineering with Objects and
Components. Harlow Pearson Education Ltd., 2000
[Sub1998] K.
Subieta.
2ELHNWRZRü Z SURMHNWRZDQLX L ED]DFK GDQ\FK Akademicka Oficyna
Wydawnicza PLJ, 1998