-]\NPRGHORZDQLDGDQ\FK80/ Ewa Stemposz. Instytut Podstaw Informatyki PAN

Wielkość: px
Rozpocząć pokaz od strony:

Download "-]\NPRGHORZDQLDGDQ\FK80/ {ewag@ipipan.waw.pl, ewag@pjwstk.waw.pl} Ewa Stemposz. Instytut Podstaw Informatyki PAN"

Transkrypt

1 -]\NPRGHORZDQLDGDQ\FK80/ Ewa Stemposz Instytut Podstaw Informatyki PAN Polsko--DSRVND:\*V]D6]NRáD7HFKQLN.RPSXWHURZ\FK

2 Zagadnienia Krótka charakterystyka UML Diagramy przypadków X*\FLD Diagramy klas Diagramy dynamiczne ƒ interakcji ƒ stanu ƒ DNW\ZQRFL Diagramy implementacyjne ƒ diagramy komponentów ƒ GLDJUDP\ZGUR*HQLRZH Diagramy pakietów 0HFKDQL]P\UR]V]HU]DOQRFL Podsumowanie

3 Unified Modeling Language (UML) ³80/ MHVW M]\NLHP RJyOQHJR SU]H]QDF]HQLD GR VSHF\ILNDFML NRQVWrukcji, ZL]XDOL]DFML L GRNXPHQWRZDQLD Z\WZRUyZ ]ZL]DQ\FK ] V\VWHPDPL LQWHQV\ZQLHZ\NRU]\VWXMF\PLRSURJUDPRZDQLH UML VW\F]H- ZU]HVLH UML 1.0 VW\F]HSU]HVáDQ\GR20* UML 1.1 NRQLHF]DWZLHUG]RQ\MDNRVNáDGQLNVWDQGDUGX20* UML 1.3 NZLHFLHPyZLVLRZHUVMLDOHEUDNGDQ\FK 3RáF]RQHVLá\WU]HFK]QDQ\FKPHWRGRORJyZRSURJUDPRZDQLD Grady Booch Ivar Jacobson James Rumbaugh

4 Zalety i wady poprzedników UML.D*GD]PHWRG\NSRSU]HGQLNyZ80/SRVLDGDVZRMH]DOHW\LZDdy. OMT (Rumbaugh): dobry do modelowania dziedziny przedmiotowej. Nie SU]\NU\ZDGRVWDWHF]QLHGRNáDGQLH]DUyZQRDVSHNWXX*\WNRZQLNyZV\stemu, jak i aspektu implementacji. OOSE (Jacobson)GREU]HSRGFKRG]LGRNZHVWLLPRGHORZDQLDX*\WNRZQLNyZ L F\NOX *\FLRZHJR V\VWHPX 1LH 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 LPSOHPHQWDFML 1LH SU]\NU\ZD GRVWatecznie GREU]HID]\UR]SR]QDZDQLDLDQDOL]\Z\PDJDX*\WNRZQLNyZ,VWQLHMH ZLHOH DVSHNWyZ V\VWHPyZ NWyUH SR]RVWDá\ZáDFLZLH QLe przykryte przez *DGQH ] Z\*HMZ\PLHQLRQ\FKSRGHMüQSSU]\VWRVRZDQLH QRWDFML do preferencji SURMHNWDQWyZ&HOHP80/E\áRSU]\NU\FLHUyZQLH*W\FKDVSHNWyZ

5 Nowe elementy wprowadzone w UML -DVQHRGUy*QLHQLHNODV\W\SX i Z\VWSLHQLDNODV\ 8V]F]HJyáRZLHQLD (refinementsgodremfld]zl]nyzsrplg]\ HOHPHQWDPLRWHMVDPHMVHPDQW\FHDUy*Q\PSR]LRPLHDEVWUakcji 2GSRZLHG]LDOQRFL (responsibilities) Kompozycja jako silniejsza forma agregacji Interfejsy i ]DOH*QRFLdependencies) typu: dostawca i klient pewnej LQIRUPDFMLZ\VWSXMFHPLG]\HOHPHQWDPLPRGHOL :VSyáELH*QRü :]RUFHZVSyáSUDFD 'LDJUDP\DNW\ZQRFL (dla UHLQ*\QLHULLprocesów biznesowych) Komponenty Pakiety 0HFKDQL]P\UR]V]HU]DOQRFL: stereotypy (stereotypeszduwrfl etykietowane (tagged values), ograniczenia (constraints)

6 Diagramy definiowane w UML 'LDJUDP\SU]\SDGNyZX*\FLD Diagramy klas Diagramy dynamiczne: ƒdiagramy interakcji: Œ Diagramy sekwencji Œ 'LDJUDP\ZVSyáSUDF\NRODERUDFML ƒ Diagramy stanów ƒ 'LDJUDP\DNW\ZQRFL Diagramy implementacyjne: ƒ Diagramy komponentów ƒ 'LDJUDP\ZGUR*HQLRZH Diagramy pakietów 'LDJUDP\ WH ]DSHZQLDM X]\VNDQLH ZLHOX SHUVSHNW\Z SURMHNWRZDQego systemu w trakcie jego budowy.

7 'LDJUDP\SU]\SDGNyZX*\FLD(1) Z\SáDWD SLHQLG]\ klient weryfikacja klienta «include» System REVáXJLNOLHQWD ZQWU]HV\VWHPX 3U]\SDGHN X*\FLD: 3RZLQLHQ PLHü XQLNDOQ QD]Z, RSLVXMF SU]\SDGHN X*\FLD z punktu widzenia jego zasadniczych celów. Czy lepiej jest VWRVRZDü QD]Z RSLVXMF F]\QQRü ( Z\SáDWD SLHQLG]\ ) czy polecenie ( Z\SáDü SLHQLG]H - zdania Vpodzielone. Aktor: 3RZLQLHQPLHü XQLNDOQQD]Z. Interakcja: 3RND]XMHLQWHUDNFMSRPLG]\SU]\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\ PLG]\ dwoma przypadkami X*\FLD lub SU]\SDGNLHPX*\FLD a EORNLHPSRQRZQHJRX*\FLD. Nazwa systemu wraz z otoczeniem systemu: Pokazuje JUDQLFSRPLG]\V\VWHPHP a jego otoczeniem.

8 'LDJUDP\SU]\SDGNyZX*\FLD (2) ZSáDWD SLHQLG]\ ZSáDWD SLHQLG]\ kasjer klient banku Z\SáDWD SLHQLG]\ VSUDZG( stan konta kasjer klient banku «include» Z\SáDWD SLHQLG]\ VSUDZG( stan konta «extend» «include» uaktualnianie stanu konta ZH( SR*\F]N ]DU]G banku ZH( SR*\F]N ]DU]G banku *áyzqh ]DGDQLH PRGHOX SU]\SDGNyZ X*\FLD to SUDZLGáRZH RNUHOHQLH Z\PDJD funkcjonalnych na projektowany system.

9 Klasa; oznaczenia (1) Cztery pola: nazwy, atrybutów, metod i czwarte pole, którego zawduwrü ]DOH*\RGX*\WNRZQLNDnpPR*HWRE\üOLVWDRGSRZLHG]LDOQRFLGDQHMNODV\ 0R*OLZHVUy*QHSR]LRP\V]F]HJyáRZRFL Okno Okno rozmiar czy_widoczne Pole nazwy klasy: stereotyp nazwa_ klasy lista_wart_etyk Okno rozmiar czy_widoczne Z\ZLHWO schowaj() Okno rozmiar: Obszar czy_widoczne: Boolean Z\ZLHWO schowaj() Pole atrybutów: VWHUHRW\SGRVWSQRüQD]ZD_atrybutu : typ ZDUWBSRF]WNRZDlista_wart_etyk Pole metod: VWHUHRW\SGRVWSQRüQD]ZD_metody (lista_arg) : typ_wart_zwracanej lista_wart_etykt

10 Klasa; oznaczenia (2) gdzie: GRVWSQRü jest RNUHODQD przez trzy symbole: + publiczna - prywatna # chroniona lista_arg: rodzaj nazwa_arg : typ ZDUWBSRF]WNRZD rodzaj definiuje sposób, w jaki metoda korzysta z danego argumentu: in: PHWRGDPR*HF]\WDüargument, ale QLHPR*Hgo ]PLHQLDü out: PR*H]PLHQLDü, QLHPR*HF]\WDü inout: PR*HF]\WDüi ]PLHQLDü Wszystkie elementy specyfikacji klasy za Z\MWNLHPnazwy klasy V opcjonalne. Nazwa klasy to z UHJXá\U]HF]RZQLNw liczbie pojedynczej.

11 3U]\NáDG\NODV Okno {abstrakcyjna, autor=kowalski status=przetestowane} +rozmiar: Obszar = (100,100) #czy_widoczne: Boolean = false UR]PLDUBGRP\OQ\3URVWRNW UR]PLDUBPDNV\PDOQ\3URVWRNW -[ZVND(QLN: XWindow* Z\ZLHWO +schowaj() +utwórz() -GRáF];:LQGRZ(xwin: XWindow*) WUZDáDª 3URVWRNW punkt1: Punkt punkt2: Punkt «konstruktor» 3URVWRNWS3XQNWS3XQNW «zapytania» obszar (): Real aspekt(): Real «aktualizacje» SU]HVXGHOWD3XQNW SU]HVNDOXMZVSyáF]\QQLN Real)...

12 Dziedziczenie Dziedziczenie pozwala na tworzenie drzewa klas lub LQQ\FKVWUXNWXUEH]SWOL Dziedziczenie jednoaspektowe specjalizacja generalizacja Osoba Pracownik Osoba Pracownik Asystent Adiunkt Docent Profesor Asystent Adiunkt Docent Profesor

13 Dziedziczenie wieloaspektowe {overlapping} QDSG Pojazd teren teren Dwa aspekty dziedziczenia: QDSG i teren. {overlapping} Pojazd wiatrowy Pojazd silnikowy Pojazd OGRZ\ Pojazd wodny {disjoint, incomplete} Drzewo gatunek drzewa 'E Brzoza Sosna disjont (GRP\OQH) - SRG]LDáUR]áF]Q\ overlapping - SRG]LDá QLHUR]áF]Q\SU]HFLFLH zbiorów obiektów klas, np. Pojazd OGRZ\i Pojazd wodny, nie jest zbiorem pustym; complete (GRP\OQH) - SRG]LDáFDáNRZLW\ incomplete -niektóre klasy, np. nieistotne dla UR]ZD*DQHJRSUREOHPX, ]RVWDá\SRPLQLWH

14 Dziedziczenie wielokrotne Dziedziczenie wielokrotne (wielodziedziczenie) ma miejsce, gdy klasa G]LHG]LF]\LQZDULDQW\]ZLFHMQL*MHGQHMEH]SRUHGQLHMQDGNODV\. Osoba Nazwisko Pracownik Zarobek Student Nr_indeksu 3UDFXMF\B student

15 Dziedziczenie dynamiczne SáHü «dynamic» {mandatory} zawód Osoba Kobieta Manager,Q*\QLHU 0*F]\]QD Sprzedawca Dyskryminator (aspekt specjalizacji) zawód ]RVWDáWXRSDWU]RQ\ stereotypem «dynamic».

16 Klasa parametryzowana Klasy parametryzowane V X*\WHF]QH z dwóch zasadniczych powodówsrgqrv] poziom abstrakcji LZSá\ZDMQD]PQLHMV]HQLHGáXJRFLNRGX(UyGáRZHJRSURJUDPX..ODVDSDUDPHWU\]RZDQDPR*HE\üZVWDZLDQDdo diagramów UML na dwa sposoby: Zbiór <Pracownik> szablon Zbiór wstaw (T) XVX(T) T «bind» <Pracownik> Aktualny parametr parametryzacji Zbiór Pracowników Podstawowe zastosowanie klas parametryzowanych polega na wykorzystaniu ich do definiowania zbiorów (szerzej - kolekcji)..d*g\ RELHNW NODV\ Zbiór <Pracownik>, czy analogicznie ZbiórPracowników, jest zbiorem.

17 Rozszerzenia i ograniczenia w podklasie ƒ 3RGNODVDQLHPR*HRPLMDüOXE]PLHQLDüDWU\EXWyZQDGNODV\ ƒ 3RGNODVDPR*H]PLHQLüFLDáRPHWRG\]QDGNODV\DOHEH]]PLDQy jej specyfikacji. ƒ 3RGNODVDPR*HGRZROQLHGRGDZDüQRZHDWU\EXW\LPHWRG\UR]V]HU]Dü]ELyU ZáDVQRFLQDGNODV\ ƒ 3RGNODVDPR*HRJUDQLF]DüZDUWRFLDWU\EXWyZ Np..RáR MHVWSRGNODVNODV\ ElipsaJG]LHRELHUHGQLFHHOLSV\VVRELHUyZQH2JUDQLF]HQLDPRJ VSRZRGRZDü*HF]üPHWRGSU]HVWDQLHE\üSRSUDZQD Np. zmiana jednej ze UHGQLFRELHNWX- dozwolona dla obiektu klasy Elipsa - jest niedopuszczalna w obiekcie podklasy.rárjg\*pxv]wdpe\ü]plhqldqhrelhuhgqlfh MHGQRF]HQLH

18 :\VWSLHQLHklasy 3RMFLH Z\VWSLHQLHklasy (instancja klasy) oznacza obiekt, który jest ³SRGáF]RQ\ GRdanej klasy, jest MHMF]áRQNLHP. :\VWSLHQLDPRJE\ü: EH]SRUHGQLH i SRUHGQLH. Obiekt MHVWZ\VWSLHQLHPEH]SRUHGQLPVZRMHMNODV\LZ\VWSLHQLHP SRUHGQLPZV]\VWNLFKMHMQDGNODV. 0R*OLZHR]QDF]HQLDQDZ\VWSLHQLHklasy nazwa_obiektu : nazwa_klasy nazwa_atrybutu = wart_atrybutu... : nazwa_klasy nazwa_atrybutu = wart_atrybutu... nazwa_obiektu : nazwa_klasy : nazwa_klasy

19 Klasa abstrakcyjna a klasa konkretna Klasa abstrakcyjna QLHPDQLHPR*HPLHüEH]SRUHGQLFKZ\VWSLHLVáX*\ Z\áF]QLHMDNRQDGNODVDGODLQQ\FKNODV6WDQRZLMDNE\ZVSyOQ F]ü definicji grupy klas o podobnej semantyce. Klasa konkretna PR*HPLHüPDSUDZRPLHüZ\VWSLHQLDEH]SRUHGQLH Klasyczne klasyfikacje w ELRORJLL W\ONR OLFLH Z GU]HZLH NODV PRJ E\ü klasami konkretnymi. Osoba prawna Sekwencja pierwszy QDVWSQ\ Osoba fizyczna Firma Sekwencja int Sekwencja char... implementacje...implementacje

20 Metoda abstrakcyjna Metoda abstrakcyjna jest to metoda wyspecyfikowana w nadklasie, której LPSOHPHQWDFMDPXVL]QDOH(üVLZNWyUHM]SRGNODV Pracownik {abstract} MX*]DURELáZW\PURNX REOLF]Z\SáDW^abstract} Pracownik godzinowy stawka godzinowa VWDZNDZLWHF]QD REOLF]Z\SáDW Pracownik etatowy zarobek tygodniowy REOLF]Z\SáDW Pracownik na zlecenie ]DUREHNPLHVLF]Q\ REOLF]Z\SáDW Klasa abstrakcyjna PR*H ]DZLHUDüDEVWUDNF\MQHPHWRG\, ale nie musi. Klasa konkretna musi ]DZLHUDüLPSOHPHQWDFMHW\FKPHWRGDEVWUDNF\MQ\FK, które nie ]RVWDá\]DLPSOHPHQWRZDQH w *DGQHMz nadklas danej klasy konkretnej.

21 Interfejs, realizacja, ]DOH*QRü (1) Osoba {abstract} LPL nazwisko data ur. policz wiek «interface» IPracownik + ]PLHSHQVM dependency Firma Pracownik pensja stanowisko ]PLHSHQVM realization Stereotyp «interface» SRSU]HG]DQD]ZNODV\, 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 notacji podobnej do dziedziczenia. =DOH*QRü (dependency) RSLVXMHUHODFMW\SXNOLHQW-dostawca pewnej informacji.

22 Interfejs, ]DOH*QRü (2) 'ODSRSU]HGQLHJRGLDJUDPXPR*QD]DVWRVRZDüLQQH, EDUG]LHM]ZL]áH oznaczenie. IPracownik Firma Pracownik Osoba Klasa abstrakcyjna i interfejs ]RVWDá\ WX potraktowane w podobny sposób -jakodefinicje interfejsów do klasy Pracownik. -HGQDN*H, istnieje PLG]\QLPLSHZQD Uy*QLFD: klasa abstrakcyjna, w SU]HFLZLHVWZLH do interfejsu, PR*H ]DZLHUDü atrybuty i implementacje metod.

23 Ekstensja klasy Ekstensja klasy (class extent) = aktualny (zmienny w czasie) zbiór ZV]\VWNLFKZ\VWSLHWHMNODV\Ekstensja klasy w implementacji oznacza VSHFMDOQ VWUXNWXU GDQ\FK, konkretny byt programistyczny GRáF]RQ\ GR klasy. Ta struktura przechowuje wszystkie obiekty EGFH F]áRQNDPL GDQHM klasy. 1LHNWyUHPHWRG\Z\VSHF\ILNRZDQHZGDQHMNODVLHRGQRV]VLGRMHj Z\VWSLH: pracownik.wiek pracownik.zwolnij KONTO.Oblicz_procent 1LHNWyUHPHWRG\Z\VSHF\ILNRZDQHZGDQHMNODVLHRGQRV]VLGRMHj ekstensji: KL_pracownik.nowy KL_pracownik.zlicz KL_KONTO.2EOLF]BVXP.ODVDPR*HPLHüQLHMHGQlecz wiele ekstensji.

24 3RZL]DQLHDasocjacja (binarne) 3RZL]DQLH binarne Fizyczny lub SRMFLRZ\ ]ZL]HN PLG]\ GZRPDRELHNWDPL, RGZ]RURZ\ZXMF\ ]ZL]HN LVWQLHMF\ PLG]\ RGSRZLHGQLPL bytami w analizowanej dziedzinie przedmiotowej. Asocjacja binarna Grupa SRZL]DSRVLDGDMF\FK ZVSyOQVWUXNWXU LVHPDQW\N 3RZL]DQLH jest Z\VWSLHQLHPasocjacji. Osoba LPL Firma rodzaj pracuje_w :Osoba Kasia pracuje_w pracuje_w :Firma Krawiecka :Osoba Ewa :Osoba Jasio :Firma Szewska pracuje_w Klasy i asocjacja na diagramie klas 2ELHNW\LSRZL]DQLD na diagramie obiektów

25 /LF]QRüDVRFMDFML /LF]QRüMHVWR]QDF]DQDQDREXNRFDFKDVRFMDFML 3U]\NáDG\: 1 1..* 2..* 3-5 2,4, * * znaczenie 1 1, 2, 3,... 2, 3, 4,... 3, 4, 5 2, 4, 18 1,? 0, 1 0, 1, 2,... 0, 1, 2,... 3DVWZR Stolica Firma 1 * Pracownik 0..* 0..1 Osoba Adres 2]QDF]DüF]\QLHR]QDF]DüOLF]QRü1?

26 Asocjacje skierowane Zamówienie GDWD=áR*HQLD F]\=DSáDFRQH VXPD'R=DSáDW\ realizuj() zamknij() 1 * PozycjaZamówienia * 1 Klient nazwisko adres ZLDU\JRGQRü 1DGLDJUDPDFK80/PR*QD]D]QDF]DüNLHUXQHN QDZLJDFML Z]GáX* GDQHM DVRFMDFML : WDNLP przypadku asocjacja jest rysowana w postaci VWU]DáNL QDZLJDFMDMHVW PR*OLZD ]JRGQLH ] MHM kierunkiem, ale nie odwrotnie. LORü cena czyzrealizowana * 1 Produkt

27 Atrybuty asocjacji GRVWSQ\ dla Plik * 3UDZRGRVWSX GRVWS * 8*\WNRZQLN { GRVWSR]QDF]D czytanie lub czytanie-pisanie} Osoba nazwisko szef pesel kieruje 0..1 adres * pracownik 1..* zatrudnia 0..1 Zatrudnienie zarobek stanowisko Firma nazwa adres -HOL NODVD DVRFMDFML QLH ]DZLHUD metod ani asocjacji do innych klas, to MHMQD]ZDPR*H E\ü RSXV]F]RQD GOD SRGNUHOHQLD IDNWX *H chodzi tu Z\áF]QLHRatrybuty asocjacji. 2FHQDZ\GDMQRFL ocena

28 Atrybuty i asocjacje pochodne &HFKD SRFKRGQD MHVW ]GHILQLRZDQD SRSU]H] IXQNFM G]LDáDMFQDjednym lub ZLFHM E\WDFK PRGHOX NWyUH WH* PRJ E\ü SRFKRGQH &HFKD SRFKRdna R]QDF]DQDMHVWXNRQLNLHP Osoba atrybut pochodny: /wiek data_urodzenia /wiek ^ZLHN GDWDBELH*FD- data_urodzenia} zatrudnia :\G]LDá * Sekcja * Pracownik * * zlokalizowana_w /pracuje_w Budynek asocjacja pochodna: /pracuje_w Asocjacja pracuje_w jest DVRFMDFMSRFKRGQNWyUPR*QDZ\]QDF]\üSRSU]H] asocjacje zatrudnia i zlokalizowana_w $VRFMDFM SRFKRGQ PR*QD R]QDF]\ü SRSU]HG]DMFXNRQLNLHPQD]ZOXEURODVRFMDFML

29 3U]\NáDGRZ\diagram klas Osoba poprzedza zapisany_na 1..* Student 0..1 Kurs * 1 zawiera QDVWSXMHBSR Pracownik Profesor prowadzi 1 1..* 1..* :\NáDG *

30 Agregacja $JUHJDFMDMHVW V]F]HJyOQ\P SU]\SDGNLHP DVRFMDFML Z\UD*DMF\P]ZL]HN F]ü-FDáRü NpVLOQLNMHVWF]FLVDPRFKRGX Nie istnieje jednak powszechnie akceptowana definicja agregacji. P. Coad SRGDMH SU]\NáDG DJUHJDFML MDNR ]ZL]HN SRPLG]\ RUJDQL]DFM L MHj pracownikami; dla odmiany J. Rumbaugh WZLHUG]L*HILUPDQLHMHVWDJUHJDFMMHM pracowników. : ZLHOX SU]\SDGNDFK ]ZL]NL DJUHJDFML V RF]\ZLVWH -HGQDN*H ZWSOLZRFL SRZVWDM QDZHW Z SU]\SDGNX VDPRFKRGX L VLOQLND ER np VLOQLN PR*H E\ü WRZDUHP Z VNOHSLH QLH ]ZL]DQ\P ] *DGQ\P VDPRFKRGHP 0WOLN GRRNRáD SRMFLD DJUHJDFML Z\QLND UyZQLH* ]WHJR *H MHVW RQD QDGX*\ZDQD w celu XVSUDZLHGOLZLHQLDSHZQ\FKRJUDQLF]HPRGHOXRELHNWRZHJR NpSRSXODUQHZ\MDQLHQLHSRZRGyZEUDNXnp. dziedziczenia wielokrotnego WR*HPR*QDMHÄREHMüSU]H]DJUHJDFM FRMHVWQRQVHQVHP]SXnktu widzenia FHOyZPRGHORZDQLDSRMFLRZHJRWDNVDPRMDN]GDQLHÄDVRFMDFMHV]EGQHER PR*QDMHREHMüSU]H]DWU\EXW\ Wszysto PR*QDREHMüZ assemblerze!

31 .RPSR]\FMDMDNRPRFQDSRVWDüDJUHJDFML 3RMFLHDJUHJDFMLMHVWUR]XPLDQHQDGZDVSRVRE\ ƒ-dnr]zl]hnf]ü-fdárüsrplg]\relhnwdplzldwdu]hf]\zlvwhjr np. VLOQLNMHVWF]FLVDPRFKRGX ƒ-dnrsrprfqlf]\urghngrprghorzdqldgrzroqhmlqqhmv\wxdfmlniedy WU]HEDZ\G]LHOLüpodobiekty w pewnych obiektach. np. informacja o XEH]SLHF]HQLDFKZHZQWU]RELHNWyZSUDFRZQLNyZ :80/WHGZLHV\WXDFMH ]RVWDá\ UR]G]LHORQH 3LHUZV] IRUP QD]wano NRPSR]\FM.RPSR]\FMDR]QDF]D*HF\NO*\FLRZ\VNáDGRZHM]DZLHUDVLZ F\NOX*\FLRZ\PFDáRFLRUD]*HVNáDGRZDQLHPR*HE\üZVSyáG]LHlona. * K * C K S * K C K S agregacja kompozycja

32 Agregacja a kompozycja; SU]\NáDG {ordered} 3..* Punkt Wielobok NUJ SURPLH * * Styl kolor F]\:\SHáQLRQ\ W przedstawionym UR]ZL]DQLX punkt na SáDV]F]\(QLH, w którym SU]HFLQDMVLRNUJLwielobok, jest odwzorowywany w dwa (?) obiekty klasy Punkt.

33 Asocjacja kwalifikowana Katalog 1 * Plik nazwa { nazwa pliku jest unikatowa w ramach katalogu } Katalog nazwa pliku Plik 3HUVSHNW\ZDSRMFLRZD- plik jes t w ramach katalogu jednoznacznie LGHQW\ILNRZDQ\SU]H]QD]Z. Perspektywa projektowa - wskazanie na WR*HNDWDORJSOLNyZPR*QD ]RUJDQL]RZDüMDNRWDEOLFDVRFMDF\MQlub VáRZQLN(przeeszukiwanie za SRPRFnazwy pliku).

34 Asocjacja n-arna Asocjacja n-arna to asocjacja, której Z\VWSLHQLDáF]n obiektówegf\fk instancjami co QDMZ\*HMn klas. Dana NODVD PR*H SRMDZLü VLQDZLFHMQL* jednej pozycji w asocjacji. Asocjacja binarna ze VZRMXSURV]F]RQQRWDFMLpewnymi dodatkowymi ZáDVQRFLDPL(WDNLPLMDNPR*OLZRüXVWDODQLDNLHUXQNXQDZLJRZDQLD, kwalifikatorów]zl]nyzagregacji czy kompozycji) jest specjalnym rodzajem asocjacji n-arnej (dla n=2). asocjacja 3-arna asocjacja 4-arna K1 K3 K1 A K3 K2 K2

35 Diagramy interakcji Diagramy interakcji (ZVSyáSUDF\ i sekwencji) MDNR JáyZQH ]DGDQLH PDM ZVSRPR*HQLH SURMHNWDQWD w procesie konstruowania modelu obiektowego (diagramu klas). Pomoc polega na analizie zachowania systemu w trakcie realizacji MHJR]DGD i LGHQW\ILNRZDQLXQRZ\FKF]\WH*NRUHNFLHMX* LVWQLHMF\FKelementów modelu, np.: klas, LFKDWU\EXWyZF]\PHWRGRUD]DVRFMDFMLPLG]\NODVDPL. Oba rodzaje diagramów SU]HGVWDZLDM bardzo SRGREQ LQIRUPDFM, w nieco inny sposób. 'LDJUDP\ ZVSyáSUDF\ VWDQRZLFH Z pewnym sensie Z\VWSLHQLD fragmentu diagramu klas, lepiej SU]HGVWDZLDM]ZL]NL PLG]\ RELHNWDPL ELRUF\PL XG]LDá w UHDOL]DFMLGDQHJRSU]\SDGNXX*\FLD. àdwzlhmwh*pr*qd WXRGZ]RURZDüHIHNW\ RGG]LDá\ZDQLDQDSRMHG\QF]\RELHNW. Diagramy sekwencji lepiej SU]HGVWDZLDM ]DOH*QRFL F]DVRZH, EDUG]LHM QL* diagramy kolaboracji QDGDMVL do modelowania systemów czasu rzeczywistego i ]ár*rq\fkvfhqdulxv]\. Diagramy sekwencji GRVWDUF]DMURGNyZdo modelowania przetwarzania ZVSyáELH*QHJR.

36 ,QWHUDNFMDQDGLDJUDPDFKZVSyáSUDF\ :Personel bibl. 3R*\F] (W\WXá) :Egzemplarz.VL*NL 2.1: [b] =D]QDF]:\SR*\F]HQLH :&]árqhn bibl. 2: [a] b:= &]\'RVWSQ\.VL*ND specyfikacja warunku 1: a:= &]\0R*QD3R*\F]\ü Komunikaty PRJ E\üQXPHURZDQH, albo kolejnymi liczbami naturalnymi, albo VWRVXMFQXPHUDFM ]DJQLH*G*RQ1XPHUDFMD]DJQLH*G*RQDR]QDF]D: MHOLRELHNW O otrzyma komunikat o numerze np. 7.3 to ten QXPHUEG]LH GRáF]DQ\jako prefix do ND*GHJRNRPXQLNDWXZ\V\áDQHJRw trakcie realizacji komunikatu 7.3 przez O.

37 Interakcja na diagramach sekwencji :Personel bibl. :&]árqhn bibl..vl*nd :Egzemplarz.VL*NL A 3R*\F] (W\WXá) 1: a := &]\0R*QD3R*\F]\ü {C-A < 5 sek.} { =D]QDF]:\SR*\F]HQLH - &]\'RVWSQ\ < 1 sek.} 2: [a] b := &]\'RVWSQ\ 2.1: [b] =D]QDF]:\SR*\F]HQLH C Dwa sposoby opisywania czasu: R]QDF]DQLH VNDOL F]DVRZHM OXE QDNáDGDQLH RJUDQLF]HQDXSá\ZF]DVX.

38 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 ]DFKRZDZDUXQNRZ\FK, jak i iteracji. :K1 :K2 :K3 xyyyxyyy 3.1: *[i := 1..2] x 3.1.1: *[j := 1..3] y Komunikat, który ma E\üZ\VáDQ\ZLHOHUD]\, PXVLE\üSRSU]HG]RQ\V\PEROHP *. 2F]\ZLFLHPXVLE\üWH*Z\VSHF\ILNRZDQ\ZDUXQHNRNUHODMF\]DNRF]HQLH iteracji.

39 2]QDF]DQLHZVSyáELH*QRFL Rodzaj interakcji Symbol Znaczenie synchroniczna powrót Normalna proceduralna sytuacja. Nadawca ]DZLHV]D G]LDáDQLH, dopóki odbiorca nie SU]HND*H VWHURZDQLD, co PR*QD R]QDF]\ü Z\NRU]\VWXMFV\PERO powrotu. Powrót nie jest komunikatem. Oznacza ]DNRF]HQLHNRPXQLNDWX i przekazanie sterowania do nadawcy. SáDVND (flat) Nadawca komunikatu przekazuje sterowanie do odbiorcy NRF]F MHGQRF]HQLH ZáDVQ G]LDáDOQRü. asynchroniczna Nadawca komunikatu odbiorcy nie oczekuje na RGSRZLHG(RGELRUF\, ale WH*inieNRF]\ ZáDVQHMDNW\ZQRFL, co oznacza*hnadal przetwarza i PR*HZ\V\áDü komunikaty.

40 Diagramy stanu (1) Maszyna stanu jest grafem skierowanym,, NWyUHJR ZLHU]FKRáNL VWDQRZL stany obiektu, a áxnl RSLVXM SU]HMFLD PLG]\ VWDQDPL. 3U]HMFLH PLG]\ VWDQDPL jest RGSRZLHG]L na zdarzenie. Zwykle, maszyna stanu jest przypisana do klasy VWDQRZLF PRGHO KLVWRULL *\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]FLHMZ\NRU]\VWXMHVLLQQHURGNL, np. GLDJUDP\DNW\ZQRFL. Stan obiektu PR*HE\üFKDUDNWHU\]RZDQ\QDNLONDVSRVREyZ: jako okres czasu, wktórym obiekt oczekuje na zdarzenie albo jako okres czasu, w którym obiekt SU]HWZDU]DDOERMDNR]ELyUZDUWRFLRELHNWX (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ü- operacjanwyupr*qdsu]huzdü, OLVWDDNW\ZQRFL - podobnie, jak lista akcji, entry, do, exit - VáRZDNOXF]RZHdo specyfikowania operacji wykonywanych na ZHMFLX, w trakcie i QDZ\MFLX]HVWDQX

41 Diagramy stanu (2) Typ zdarzenia Opis 6NáDGQLD ZRáDQLH otrzymanie przez obiekt synchronicznego *GDQLDwykonania operacji - najbardziej podstawowy rodzaj zdarzenia op (a : T) zmiana zdarzenie typu zmiana jest X*\WHF]QHQS. do modelowania sytuacji, gdy obiekt zmienia stan po otrzymaniu odpowiedzi na Z\VáDQ\SU]H]VLHELHNRPXQLNDW when(z\ud*hqlh) V\JQDá otrzymania przez obiekt asynchronicznego *GDQLDwykonania operacji; X*\WHF]QHdo PRGHORZDQLD]GDU]HSU]\FKRG]F\FK ]]HZQWU]systemu nazwa_syg (a : T) czas XSá\QLFLHF]DVXRNUHORQHJRw sposób EH]Z]JOGQ\OXEZ]JOGQ\, np. after (5 sec.) after (czas)

42 Diagramy stanu (3) SU]HMFLH]HZQWU]QH (external transition) zdarzenie [warunek] /akcja S 1 S 2 SU]HMFLHZHZQWU]QH (internal transition) zdarzenie [warunek] /akcja bez zmiany stanu samo-su]hmflh (selftransition) S zdarzenie [warunek] /akcja SU]HMFLHDXWRPDW\F]QH (completion transition) [warunek] /akcja S1 S2 ZV]\VWNLH RSHUDFMH Z\VSHF\ILNRZDQH SR VáRZDFK kluczowych entry, exit i do ]RVWDá\XNRF]RQH

43 Diagramy stanu (4) Diagram typu: F\NO*\FLDRELHNWX 8U]G]HQLH niesprzedane kupno XU]G]HQLDprzez klienta 8U]G]HQLH sprzedane NOLHQW]ZUyFLáXU]G]HQLH after (data gwarancji) Diagram typu: SU]HSá\ZVWHURZDQLD VWDQNRFRZ\ stan SRF]WNRZ\ ruch czarnych Kolejka ELDá\FK UXFKELDá\FK when (szach mat) when (pat) when (pat) czarne Z\JU\ZDM remis Kolejka czarnych when (szach mat) ELDáH Z\JU\ZDM

44 Diagramy stanu (5) Stan prosty nie posiada substruktury, jest specyfikowany przez zbiór operacji oraz SU]HMü. Stan ]ár*rq\, SRZVWDá\ w HIHNFLH ]DJQLH*G*DQLD VWDQyZ, PR*H E\ü zdekomponowany na stany bardziej proste, a dekompozycja jest tu rodzajem specjalizacji..d*g\ z SRGVWDQyZ G]LHG]LF]\SU]HMFLD nadstanu. Tylko jeden z SRGVWDQyZPR*HE\üDNW\ZQ\w danym momencie. zd1 zd2 zd2 S S zd1 zd4 S1 S1 S2 zd5 zd3 S3 zd4 zd5 S2 s3 zd4 zd4 ZF]HQLHMV]HSUDFH5XPEDXJKD zd3 D. Harel, OMT, UML

45 'LDJUDP\DNW\ZQRFL(1) *UDIDNW\ZQRFL to maszyna stanu, której podstawowym zadaniem nie jest analiza stanów obiektu, ale modelowanie przetwarzania (SU]HSá\ZyZ operacji). 6WDQ\ JUDIX DNW\ZQRFL, zwane DNW\ZQRFLDPL RGSRZLDGDM stanom Z\Uy*QLDOQ\Pw trakcie przetwarzania, a nie stanom obiektu. $NW\ZQRüPR*H E\ü LQWHUSUHWRZDQD Uy*QLH, w ]DOH*QRFL RG SHUVSHNW\Z\: jako zadanie do wykonania i to ]DUyZQRSU]H]F]áRZLHND, jak i przez komputer (z perspektywy SRMFLRZHM) F]\WH*QS. jako pojedyncza metoda (z perspektywy projektowej). Podobnie, SU]HMFLD PLG]\ VWDQDPL UDF]HM QLH V tu ]ZL]DQH ] QDGHMFLHP zdarzenia, ale z ]DNRF]HQLHP SU]HWZDU]DQLD Z\VSHF\ILNRZDQHJR GOD GDQHJR stanu. 'ODVNRPSOHWRZDQLDSURMHNWXND*GDDNW\ZQRüSRZLQQDE\üUR]SLVDna na szereg operacji, z których ND*G WU]HED EG]LH QD Sy(QLHMV]\P HWDSLH SU]\G]LHOLü do odpowiedniej klasy. 'LDJUDP\ DNW\ZQRFL V V]F]HJyOQLH X*\WHF]QH SU]\ PRGHORZDQLX SU]HSá\ZyZ RSHUDFML F]\ WH* w RSLVLH ]DFKRZD ] SU]HZDJ SU]HWZDU]DQLDZVSyáELH*QHJR.

46 'LDJUDP\DNW\ZQRFL (2) Oznaczenia: nazwa DNW\ZQRFL DNW\ZQRü SU]HMFLH, z zasady nie opisywane; PR*H E\ü RSDWU]RQH warunkiem, PR*H WH*E\ü R]QDF]RQH V\PEROHP LWHUDFML; akcje RSLVXMFH SU]HMFLD SRZLQQ\E\ü UDF]HM GRáF]RQH GR NWyUHM z DNW\ZQRFL; romb, NWyU\PR*HUR]G]LHODüMHGQRSU]HMFLHQDNLONDLQQ\FK (opatrzonych warunkami) lub áf]\ünlonddowhuqdw\zq\fksu]hmü w jedno sztabka synchronizujaca (synchronization bar); PR*H E\ü typu fork (rozdzielenie jednej operacji na kilka SU]HELHJDMF\FKrównolegle) lub typu join (synchronizacja NLONXRSHUDFMLUyZQROHJá\FKZMHGQ DNW\ZQRüSRF]WNRZD DNW\ZQRüNRFRZD

47 'LDJUDP\DNW\ZQRFL (3) Klient ']LDá6SU]HGD*\ Magazyn Wystaw zamówienie 3áDü :Zamówienie {Z\VáDQH} 3DPLWDM, co i NLHG\Z\VáDQR :Zamówienie {umieszczone} Pobierz zamówienie :Zamówienie {skompletowane} :\OLM to, co zamówiono :Zamówienie {wprowadzone} Skompletuj zamówienie

48 Diagramy implementacyjne 'LDJUDP\ LPSOHPHQWDF\MQH SRND]XM QLHNWyUH DVSHNW\ LPSOHPHQWDFML SI, ZáF]DMFZWRVWUXNWXUNRGX(UyGáRZHJRRUD]VWUXNWXUNRGXF]Dsu wykonania (run-time.rqvwuxrzdqlhwdnlfkgldjudpyzmhvwx*\whf]qh]duyzqr]hz]jogx QD SRQRZQH X*\FLH MDN L ]H Z]JOGX QD PR*OLZRü RVLJDQLD ] LFK SRPRF RGSRZLHGQLFKSDUDPHWUyZZ\GDMQRFLRZ\FK UML wprowadza dwa rodzaje takich diagramów: ƒ Diagramy komponentów SRND]XMFH]DUyZQRLPSOHPHQWDFM HOHPHQWyZ projektu (npnodvsu]h]nrpsrqhqw\mdnllqwhuihmv\rud]]doh*qrflplgzy NRPSRQHQWDPLLQQ\PLVáRZ\SRND]XMFHVWUXNWXUNRGXNRQVWUXRwanego SI. ƒ 'LDJUDP\ ZGUR*HQLRZH SRND]XMFH NRQILJXUDFM V\VWHPX F]DVX wykonania, czyli rozmieszczenie komponentów i obiektów na REOLF]HQLRZ\FK ]DVREDFK F]DVX Z\NRQDQLD ]ZDQ\FKWXZ]áDPL Taka NRQILJXUDFMDPR*HE\ü]DUyZQRVWDW\F]QDMDNLG\QDPLF]QD- i komponenty LRELHNW\PRJPLJURZDüPLG]\Z]áDPLZF]DVLHZ\NRQDQLD

49 Diagramy komponentów Komponent MHVW MHGQRVWN LPSOHPHQWDFML ] GREU]H ]GHILQLRZDQ\P LQWHUIHMVHP, GREU]HZ\L]RORZDQ\]NRQWHNVWXQDGDMF\VLGRZLHORNURWQHJRwykorzystania. Program do harmonogramów rezerwacje Diagram komponentów jest przedstawiany jako graf, gdzie Z]áDPL V NRPSRQHQW\ ]D ]DOH*QRFLSURZDG]RGNOLHQWD pewnej dostawcy. informacji do jej Program SODQXMF\ aktualizacje Interfejs graficzny

50 'LDJUDP\ZGUR*HQLRZH 'LDJUDP\ZGUR*HQLRZHSRND]XMNRQILJXUDFMHOHPHQWyZF]DVXZ\Nonania: NRPSRQHQWyZVSU]WRZ\FKIL]\F]Q\FKMHGQRVWHNSRVLDGDMF\FKFRnajmniej SDPLüDF]VWRLPR*OLZRFLREOLF]HQLRZHNRPSRQHQWyZRSURJramowania RUD]]ZL]DQ\FK]QLPLRELHNWyZ 'LDJUDPZGUR*HQLRZ\MHVWJUDIHPJG]LHZLHU]FKRáNL]ZDQHZ]áDPLSRáF]RQH V SU]H] OLQLH RGZ]RURZ\ZXMFH SRáF]HQLD NRPXQLNDF\MQH NRPSRQHQWyZ VSU]WRZ\FK :]á\ SRGREQLH MDN SRáF]HQLD NRPXQLNDF\MQH PRJ E\ü opatrzone stereotypami, np &38ª SDPLüª XU]G]HQLH MDNLHª :]á\ SU]HFKRZXMZ\VWSLHQLDRELHNWyZLNRPSRQHQWyZ SRáF]HQLHkomunikacyjne AdminServer:KomputerHost KomputerJacka:PC :Program do harmonogramów rezerwacje :Program SODQXMF\

51 Diagramy pakietów (1) Pakiety VWDQRZL zgrupowanie elementów modelu 6 URGNLHP RJyOQHJR 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 PR*H WH* ]DZLHUDü LQQH SDNLHW\ (]DJQLH*G*DQLH). 6pakiety specjalnego rodzaju: fasada (facade), model, podsystem, system. 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]FRXáDWZLü]DU]G]DQLH procesem konstrukcji produktu programistycznego.

52 Diagramy pakietów (2) =ár*rqdnroderudfmd :\Uy*QLDQLHVXENRODERUDFML Zamiana subkolaboracji na pakiet Ukrywanie detali, jest X*\WHF]QH, MDN ND*GD DEVWUDNFMD. 7HPX FHORZL PR*H QS. VáX*\üZ\RGUEQLHQLHVXENRODERUDFML, a QDVWSQLH]DPLDQDMHMQDSDNLHW. Pakiet nie SRVLDGDZáDVQHJRLQWHUIHMVX, w tym sensie*h SU]HVáDQLHNRPXQLNDWXdo pakietu, R]QDF]DSU]HVáDQLHNRPXQLNDWX do obiektu ZHZQWU]pakietu. W UML, sparametryzowana kolaboracja jest traktowana projektowy (design pattern). jako wzorzec

53 Diagramy pakietów (3) Edytor Sterownik Elementy diagramów graficznych Elementy dziedziny ]DVWRVRZD 5G]HJUDILNL System okienkowy 5G]HJUDILNL Motif Motif 5G]HJUDILNL Windows MS Windows

54 Diagramy pakietów (4) «facade» («fasada») Zawiera Z\áF]QLHRGZRáDQLDdo elementów zdefiniowanych w innych pakietach. «model» 6WDQRZLPQLHMOXEZLFHMNRPSOHWQ DEVWUDNFMV\VWHPX(na pewnym SR]LRPLHV]F]HJyáRZRFLZLG]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\MQLUHDOL]DF\MQ&]ü specyfikacyjna zawiera opis interakcji z otoczeniem, z UHJXá\]DSRPRF SU]\SDGNyZX*\FLD. &]üuhdol]df\mqdsrváxjxmfvlnroderudfmdpl, podaje sposoby realizacji przypadków przez podsystem. Podsytemy PRJE\ü]EXGRZDQH z innych podsystemów, ZWHG\ WHQDMQL*V]HJR SR]LRPX PXV] 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 SRGHMFLH XSUDV]F]D PDSRZDQLH modelu logicznego na implementacyjny.

55 0HFKDQL]P\UR]V]HU]DOQRFLw UML UML SRVLDGDWU]\URG]DMHPHFKDQL]PyZUR]V]HU]DOQRFL: ƒ stereotypy, ƒ ZDUWRFLHW\NLHWRZDQH, ƒ ograniczenia. Stereotypy ƒ 6WHUHRW\S\XPR*OLZLDMPHWDNODV\ILNDFM elementów modelu. ƒ Istnieje lista VWHUHRW\SyZGODND*GHJRrodzaju elementów modelu (elementu metamodelu UML), npuhodfmlplg]\su]\sdgndplx*\fldnodvf]\phwrg ƒ Dany element modelu (npnrqnuhwqdnodvdf]\phwrgdpr*he\ü oznaczona co QDMZ\*HMMHGQ\Pstereotypem. ƒ 6VWHUHRW\S\SUHGHILQLRZDQHDOHX*\WNRZQLF\PRJWH*GHILQLRZDüZáDVQH ƒ 6WHUHRW\S\UR]V]HU]DMVHPDQW\NPHWDPRGHOX

56 Stereotypy; notacja Notacja: zwykle «nazwa stereotypu» lub ikona, ale PR*QDWH*X*\ZDükoloru czy tekstury, FKRü z Uy*Q\FKZ]JOGyZQLHjest to polecane (ograniczenia ludzkie lub VSU]WX). guillemets - jeden znak - X*\ZDQ\ w FKDUDNWHU]HFXG]\VáRZLDw M]. francuskim (a) «sterowanie» 3LyURZLHWOQH lokacja: Punkt uruchom (Tryb) (b) «sterowanie» 3LyURZLHWOQH lokacja: Punkt uruchom (Tryb) ikona (c) 3LyURZLHWOQH (d) lokacja: Punkt 3LyURZLHWOQH uruchom (Tryb),NRQDPR*HE\üX*\ZDQDQD2 sposoby: zamiast symbolu stereotypu (c, d) lub razem z nim (b). W przypadkach a, b, c ]DZDUWRüHOHPHQWXPRGHOXRSDWU]RQHJRVWHUHRW\SHP (tu: klasy 3LyURZLHWOQH) jest widoczna. W przypadku d ]RVWDáDRSXV]F]RQD.

57 Stereotypy; SU]\NáDG\ «include» P1 P2 «extend» P3 P4 rodzaj elementów modelu: UHODFMHPLG]\SU]\SDGNDPLX*\FLD lista stereotypów dla tego rodzaju: «include» i «extend».d*gduhodfmdplg]\su]\sdgndplx*\fld(element modelu) jest opatrzona jednym z dwóch stereotypów z SRZ\*V]HMOLVW\. «WUZDáD» 3URVWRNW punkt1: Punkt punkt2: Punkt «WUZDáD» 3URVWRNW punkt1: Punkt punkt2: Punkt «konstruktory» 3URVWRNWS3XQNWS3XQNW «zapytania» obszar () : Real aspekt() : Real... «aktualizacje» SU]HVXGHOWD3XQNW SU]HVNDOXMZVSyáF]\QQLN Real) «konstruktory» 3URVWRNWS3XQNWS3XQNW «zapytania» obszar () : Real aspekt () : Real... SU]HVXGHOWD3XQNW SU]HVNDOXMZVSyáF]\QQLN Real) Jednym stereotypem PR*QD RSDWU]\ü FDá OLVW HOHPHQWyZ PRGHOX..RQLHF OLVW\ PR*H E\ü oznaczony przez.

58 :DUWRFLHW\NLHWRZDQH :DUWRFL HW\NLHWRZDQH V X*\ZDQH GR VNRMDU]HQLD arbitralnej informacji z pojedynczym elementem modelu. ƒ :DUWRüHW\NLHWRZDQ stanowi FLJ znaków o postaci: VáRZRNOXF]RZH ZDUWRü. 'RZROQ\áDFXFK]QDNyZPR*HE\üX*\W\MDNRVáRZRNOXF]RZH ƒ 6VáRZDNOXF]RZHSUHGHILQLRZDQHDOHX*\WNRZQLNPR*HWH*GHILQLRZDüZáDVQH ƒ /LVWZDUWRFLHW\NLHWRZDQ\FK (oddzielonych przecinkami) XPLHV]F]DVL w {}. ƒ 'RZROQ\HOHPHQWPRGHOXPR*HE\üVNRMDU]RQ\QLHW\ONR]OLVWZDUWRFL HW\NLHWRZDQ\FKDOHZEDUG]LHMRJyOQ\PVHQVLH]áDFXFKHPZáDVQRFLZSRVWDFL ^GRZROQ\áDFXFK]QDNyZ` {autor = Jan Nowak WHUPLQ]DNRF]HQLD ³0DMD VWDWXV DQDOL]D` 3U]\NáDG: :DUWRFL HW\NLHWRZDQH V szczególnie przydatne do przechowywania zarówno informacji ]ZL]DQ\FK]]DU]G]DQLHPprojektem (jak w SU]\NáDG]LHSRZ\*HM), jak i do SU]HFKRZ\ZDQLDV]F]HJyáyZ implementacyjnych.

59 Ograniczenia Ograniczenia VSHF\ILNXM UHVWU\NFMH QDNáDGDQH QD HOHPHQW\ PRGHOX 0RJ VWDQRZLüZ\UD*HQLDM]\NDQDWXUDOQHJRF]\M]\NDIRUPDOQHJR(np. OCL w UML), PRJWH*SU]\MPRZDüSRVWDüIRUPXá\PDWHPDW\F]QHMOXEIUDJPHQWXNRGX(F]\WH* pseudokodu). Notacja: Vzawarte ZHZQWU] {} i umieszczane za elementem w klasie, lub poza NODV0RJWH*E\üXPLHV]F]DQHw komentarzu. Pracownik LPL nazwisko pensja {<=10 000} Pracownik LPL nazwisko pensja {pensja <=10 000} ]PLHSHQVM(nowa) ograniczenie statyczne {pensja nie wzrasta o ZLFHMQL*300} ograniczenie dynamiczne

60 Ograniczenia; SU]\NáDG\ Symbole, takie jak ---- oraz ---->PRJE\ü X*\ZDQH do wskazywania elementów, QDNWyUH]RVWDá\QDáR*RQHRJUDQLF]HQLD Firma * Konto QDOH*\do * {xor} Osoba 0..1 SRGZáDGQ\ * 0..1 szef Osoba 1..* 0..1 pracownik pracodawca Firma {Osoba.pracodawca = Osoba.szef.pracodawca} ograniczenie zapisane w komentarzu

61 &]\NRU]\VWDüz PHFKDQL]PyZUR]V]HU]DOQRFL? UML GRVWDUF]\áD NLONX PHFKDQL]PyZ UR]V]HU]DOQRFL, DE\ XPR*OLZLü SURMHNWDQWRPZSURZDG]DQLHPRG\ILNDFMLEH]NRQLHF]QRFL]PLDQ\VDPHJRM]\ND modelowania. Twórcy UML VWDUDOL VL w ten sposób (FKRFLD*E\ w pewnym stopniu) ]DVSRNRLüSRWU]HE\VSHF\ILF]Q\FKG]LHG]LQSUREOHPRZ\FKF]\URGRwisk programowych. 1DU]G]LDPRJSU]HFKRZ\ZDüZSURZDG]RQHPRG\ILNDFMHRUD]PDQLSXORZDü QLPLEH]NRQLHF]QRFL ZQLNDQLD w LFK VHPDQW\N - modyfikacje z UHJXá\ V przechowywane w SRVWDFLáDFXFKyZ]QDNRZ\FK. 1DU]G]LD PRJ XVWDQRZLü ZáDVQ VNáDGQL i VHPDQW\N GOD REVáXJL PHFKDQL]PyZUR]V]HU]DOQRFL. 1DOH*\ SDPLWDü *H rozszerzenia VWDQRZL ] GHILQLFML RGVWSVWZR RG standardów 80/ L *H Z naturalny sposób SURZDG]GRutworzenia pewnego dialektu UML, a to z NROHL PR*H SURZDG]Lü do problemów ] SU]HQDV]DOQRFL 7U]HED]DZV]HGREU]HUR]ZD*\ü]\VNL i straty, które PRJE\üSRQLHVLRQHG]LNL korzystaniu z tych mechanizmów, szczególnie wtedy, gdy stare standardowe mechanizmy SUDFXMZ\VWDUF]DMFRdobrze.

62 Podsumowanie UML 80/SRZVWDáZUH]XOWDFLHSRáF]RQ\FKZ\VLáNyZWU]HFK]QDQ\FKPHtodologów: G. Booch a, I. Jacobson a i J. Rumbaugh a, NWyU\FK PHWRG\NL RSDQRZDá\ RNRáR U\QNX ]DVWRVRZD PHWRG\N RELHNWRZ\FK 80/ ]\VNXMH FRUD] ZLNV] SRSXODUQRü MDNR VNáDGRZD QDU]G]L &$6( L SUDZGRSRGREQLH EG]LH GRPLQRZDá SU]H]ZLHOHQDMEOL*V]\FKODWZREV]DU]HDQDOL]\LSURMHNWRZDQLDSI. 80/ ]JRGQLH ] GHNODUDFM WZyUFyZ QLH PD DPELFML E\ü PHWRG\N SURMHNWRZDQLD -HVW ]HVWDZHP SRMü R]QDF]H L GLDJUDPyZ NWyU\ PRJ E\ü X*\ZDQH Z GRZROQHM PHWRG\FH RSDUW\FK R SRGVWDZRZH SRMFLD RELHNWRZRFL 3RMFLD80/Z]DáR*HQLXWZyUFyZPDMSU]\NU\üZLNV]RüLVWRWQych aspektów modelowanych systemów. Kwestia semantyki i pragmatyki tej notacji pozostaje mglista, co jest QLHXFKURQQ\P VNXWNLHP VSU]HF]QRFL SRPLG]\QDWXUSURFHVyZWZyUczych a ich IRUPDOL]DFM 80/MHVWVNáDGRZVWDQGDUGX20*&25%$ 1LH ZV]\VF\ V ]DFKZ\FHQL 80/ 1LHNWyU]\ VSHFMDOLFL XZD*DM JR za twór QLHVWDELOQ\ ]E\W FL*NL SU]HUHNODPRZDQ\ L (OH ]GHILQLRZDQ\ 8ML ma NRQNXUHQWyZZSRVWDFLFDáHJR]HVWDZXLQQ\FKPHWRG\NRELHNWRZ\FK.

Rysunek 1: Przykłady graficznej prezentacji klas.

Rysunek 1: Przykłady graficznej prezentacji klas. 4 DIAGRAMY KLAS. 4 Diagramy klas. 4.1 Wprowadzenie. Diagram klas - w ujednoliconym języku modelowania jest to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

MAS dr. Inż. Mariusz Trzaska

MAS dr. Inż. Mariusz Trzaska MAS dr. Inż. Mariusz Trzaska Wykład 5 Model obiektowy cz. 3 Zagadnienia Dziedziczenie asocjacji Asocjacje pochodne Redukcja liczności Role wielowartościowe Trochę więcej o agregacji Agregacja rekursywna

Bardziej szczegółowo

MAS dr. Inż. Mariusz Trzaska

MAS dr. Inż. Mariusz Trzaska MAS dr. Inż. Mariusz Trzaska Wykład 4 Model obiektowy cz. 2 Zagadnienia Asocjacja binarna Agregacja a kompozycja Modelowanie generalizacji-specjalizacji Obejście dziedziczenia wielokrotnego Asocjacja kwalifikowana

Bardziej szczegółowo

Podstawy projektowania systemów komputerowych

Podstawy projektowania systemów komputerowych Podstawy projektowania systemów komputerowych Diagramy klas UML 1 Widok logiczny Widok logiczny Widok fizyczny Widok przypadków użycia Widok procesu Widok konstrukcji Używany do modelowania części systemu

Bardziej szczegółowo

TECHNOLOGIE OBIEKTOWE. Wykład 3

TECHNOLOGIE OBIEKTOWE. Wykład 3 TECHNOLOGIE OBIEKTOWE Wykład 3 2 Diagramy stanów 3 Diagram stanu opisuje zmiany stanu obiektu, podsystemu lub systemu pod wpływem działania operacji. Jest on szczególnie przydatny, gdy zachowanie obiektu

Bardziej szczegółowo

Diagramy klas. WYKŁAD Piotr Ciskowski

Diagramy klas. WYKŁAD Piotr Ciskowski Diagramy klas WYKŁAD Piotr Ciskowski przedstawienie statyki systemu graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków między nimi obiekty byt, egzemplarz

Bardziej szczegółowo

UML w Visual Studio. Michał Ciećwierz

UML w Visual Studio. Michał Ciećwierz UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować

Bardziej szczegółowo

Projektowanie systemów informacyjnych

Projektowanie systemów informacyjnych Projektowanie systemów informacyjnych E. Stemposz, Analiza i Projektowanie Systemów Informatycznych, Wykład 10, Slajd 1 Wykład 10 Model dynamiczny (2) Diagramy stanów Ewa Stemposz Instytut Podstaw Informatyki

Bardziej szczegółowo

Podstawy programowania III WYKŁAD 4

Podstawy programowania III WYKŁAD 4 Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.

Bardziej szczegółowo

Diagramy klas i obiektów

Diagramy klas i obiektów Diagramy klas i obiektów zastosowanie do modelowania w języku UML Agnieszka Niegowska & Grzegorz Widziszowski Klasy Klasa jest miejscem przechowywania cech obiektów, które są niezmienne (inwariantów).

Bardziej szczegółowo

Podstawy inżynierii oprogramowania

Podstawy inżynierii oprogramowania Podstawy inżynierii oprogramowania Modelowanie. Podstawy notacji UML Aleksander Lamża ZKSB Instytut Informatyki Uniwersytet Śląski w Katowicach aleksander.lamza@us.edu.pl Zawartość Czym jest UML? Wybrane

Bardziej szczegółowo

Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com

Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,

Bardziej szczegółowo

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language) Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu

Bardziej szczegółowo

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2 Wyższa Szkoła Menedżerska w Legnicy Systemy informatyczne w przedsiębiorstwach Zarządzanie, ZIP, sem. 6 (JG) Modelowanie wymagań Wykład 2 Grzegorz Bazydło Cel wykładu Celem wykładu jest przekazanie wiedzy

Bardziej szczegółowo

Podstawy języka UML2 w realnych projektach

Podstawy języka UML2 w realnych projektach Kod szkolenia: Tytuł szkolenia: UML2/RP Podstawy języka UML2 w realnych projektach Dni: 3 Opis: Adresaci Szkolenia: Szkolenie adresowane jest do osób, które chciałby poznać podstawy UML2. Przede wszystkim

Bardziej szczegółowo

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017 Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy

Bardziej szczegółowo

Po lewej przykłady klas. Stereotypy zostały tu wykorzystane do metaklasyfikacji metod.

Po lewej przykłady klas. Stereotypy zostały tu wykorzystane do metaklasyfikacji metod. 1. Klasa; notacja w UML 2. Dziedziczenie: jednoaspektowe wieloaspektowe wielokrotne dynamiczne 3. Klasa parametryzowana 4. Rozszerzenia i ograniczenia w podklasie 5. Wystąpienie klasy 6. Klasa abstrakcyjna

Bardziej szczegółowo

Modelowanie obiektowe

Modelowanie obiektowe Modelowanie obiektowe ZPO 2018/2019 Dr inż. W. Cichalewski Materiały wykonane przez W. Tylman Diagramy klas Diagramy klas Zawiera informacje o statycznych związkach między elementami (klasami) Są ściśle

Bardziej szczegółowo

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych Mariusz Trzaska Modelowanie i implementacja systemów informatycznych Notka biograficzna Dr inż. Mariusz Trzaska jest adiunktem w Polsko-Japońskiej Wyższej Szkole Technik Komputerowych, gdzie zajmuje się

Bardziej szczegółowo

UML. dr inż. Marcin Pietroo

UML. dr inż. Marcin Pietroo dr inż. Marcin Pietroo Pojęcia obiektowości obiekt klasa komunikat hermetyzacja polimorfizm dziedziczenie graficzny język wizualizacji, specyfikowania, tworzenia i dokumentowania systemów informatycznych

Bardziej szczegółowo

INŻYNIERIA OPROGRAMOWANIA. laboratorium

INŻYNIERIA OPROGRAMOWANIA. laboratorium INŻYNIERIA OPROGRAMOWANIA laboratorium UML 1/4 UML (Unified Modeling Language) - język modelowania obiektowego systemów i procesów [Wikipedia] Spojrzenie na system z różnych perspektyw dzięki zastosowaniu

Bardziej szczegółowo

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych Modelowanie klas i obiektów Jarosław Kuchta Podstawowe pojęcia (1) Byt, encja (entity) coś co istnieje, posiada własne cechy i wyodrębnioną tożsamość (identity); bytem może być rzecz, osoba, organizacja,

Bardziej szczegółowo

UML cz. I. UML cz. I 1/1

UML cz. I. UML cz. I 1/1 UML cz. I UML cz. I 1/1 UML cz. I 2/1 UML - Unified Modeling Language ujednolicony można go współdzielić z wieloma pracownikami modelowania służy do opisu projektowanego modelu język posiada opisaną strukturę

Bardziej szczegółowo

MAS dr. Inż. Mariusz Trzaska

MAS dr. Inż. Mariusz Trzaska MAS dr. Inż. Mariusz Trzaska Wykład 3 Model obiektowy cz. 1 Klasa; notacja w UML Dziedziczenie: jednoaspektowe wieloaspektowe wielokrotne dynamiczne Zagadnienia Klasa parametryzowana Rozszerzenia i ograniczenia

Bardziej szczegółowo

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami.

UML a kod w C++ i Javie. Przypadki użycia. Diagramy klas. Klasy użytkowników i wykorzystywane funkcje. Związki pomiędzy przypadkami. UML a kod w C++ i Javie Projektowanie oprogramowania Dokumentowanie oprogramowania Diagramy przypadków użycia Przewoznik Zarzadzanie pojazdami Optymalizacja Uzytkownik Wydawanie opinii Zarzadzanie uzytkownikami

Bardziej szczegółowo

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji Inżynieria oprogramowania Jarosław Kuchta Modelowanie interakcji Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja

Bardziej szczegółowo

Podstawy języka UML UML

Podstawy języka UML UML Podstawy języka UML UML Plan prezentacji Wprowadzenie do modelowania Wprowadzenie do języka UML Diagram klas Diagram pakietów Diagram przypadków użycia Diagram czynności Terminologia Terminologia Aplikacja

Bardziej szczegółowo

UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne.

UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne. 45. UML, jego struktura i przeznaczenie. Przeznaczenie UML (Unified Modeling Language jest to sposób formalnego opisu modeli reprezentujących projekty informatyczne. Pozwala obrazować, specyfikować, tworzyć

Bardziej szczegółowo

Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania

Diagramy interakcji. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Diagramy interakcji Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania.

Bardziej szczegółowo

Modelowanie danych, projektowanie systemu informatycznego

Modelowanie danych, projektowanie systemu informatycznego Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym Modele - konceptualne reprezentacja obiektów w uniwersalnym

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej Analiza i projektowanie obiektowe 2017/2018 Wykład 3: Model wiedzy dziedzinowej Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Model wiedzy dziedzinowej

Bardziej szczegółowo

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA Przygotował: mgr inż. Radosław Adamus Wprowadzenie Podstawą każdego projektu, którego celem jest budowa oprogramowania są wymagania, czyli warunki,

Bardziej szczegółowo

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Podstawy języka UML2 w realnych projektach

Podstawy języka UML2 w realnych projektach Kod szkolenia: Tytuł szkolenia: UML2/RP Podstawy języka UML2 w realnych projektach Dni: 3 W cenie szkolenia uczestnik otrzymuje licencję na oprogramowanie Enterprise Architect, najlepsze narzędzie do modelowania

Bardziej szczegółowo

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Tomasz Pawlak 2 Plan prezentacji Wprowadzenie i historia UML Modelowanie z użyciem UML Wybrane diagramy struktury i zachowania Narzędzia wspierające UML 3 Unified Modeling Language

Bardziej szczegółowo

Wprowadzenie do UML, przykład użycia kolizja

Wprowadzenie do UML, przykład użycia kolizja Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2012 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Wzorce Strukturalne. Adapter: opis. Tomasz Borzyszkowski

Wzorce Strukturalne. Adapter: opis. Tomasz Borzyszkowski Adapter: opis Wzorce Strukturalne Tomasz Borzyszkowski Alternatywna nazwa: Wrapper (opakowanie) Rola obiektu Adapter: pełni wobec Klienta rolę otoczki, która umożliwia przetłumaczenie jego żądań na protokół

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Spis treúci. 1. Wprowadzenie... 13

Spis treúci. 1. Wprowadzenie... 13 Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...

Bardziej szczegółowo

MAS dr. Inż. Mariusz Trzaska. Realizacja różnych modeli dziedziczenia w obiektowych językach programowania

MAS dr. Inż. Mariusz Trzaska. Realizacja różnych modeli dziedziczenia w obiektowych językach programowania MAS dr. Inż. Mariusz Trzaska Wykład 10 Realizacja różnych modeli dziedziczenia w obiektowych językach programowania Zagadnienia o o o o o o Omówienie różnych rodzajów dziedziczenia, klas abstrakcyjnych

Bardziej szczegółowo

MODELOWANIE OBIEKTOWE Z UML

MODELOWANIE OBIEKTOWE Z UML MODELOWANIE OBIEKTOWE Z UML Maciej Patan Paradygmat obiektowy system zbiór unikatowych obiektów( społeczność obiektów ), obiekt w czasie swego cyklu życia : jest nośnikiem informacji(atrybuty=dane), może

Bardziej szczegółowo

Paweł Kurzawa, Delfina Kongo

Paweł Kurzawa, Delfina Kongo Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management

Bardziej szczegółowo

MODELOWANIE OBIEKTOWE

MODELOWANIE OBIEKTOWE (Wykład na podstawie literatury: M.Śmiałek Zrozumieć UML 2.0, Helion 2005) UML Unified Modeling Language (język do specyfikowania, wizualizowania, konstruowania i dokumentacji tzw. artefactów oraz czynności

Bardziej szczegółowo

Diagram przypadków użycia

Diagram przypadków użycia Diagram przypadków użycia Diagram przypadków użycia opisuje system z punktu widzenia użytkownika, pokazuje, co robi system, a nie jak to robi. Diagram ten sam w sobie zazwyczaj nie daje nam zbyt wielu

Bardziej szczegółowo

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig Modelowanie Obiektowe Wykład 1: Wprowadzenie do Modelowania i języka UML Anna Kulig Wprowadzenie do modelowania Zasady Pojęcia Wprowadzenie do języka UML Plan wykładu Model jest uproszczeniem rzeczywistości.

Bardziej szczegółowo

Projektowanie logiki aplikacji

Projektowanie logiki aplikacji Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia Materiały dla nauczyciela Projekt

Bardziej szczegółowo

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Wprowadzenie do UML Igor Gocaliński Odrobina historii Połowa lat 70-tych i koniec 80-tych to początek analizy obiektowej Wiele opracowanych metod w połowie lat 90-tych Metoda

Bardziej szczegółowo

UML cz. II. UML cz. II 1/38

UML cz. II. UML cz. II 1/38 UML cz. II UML cz. II 1/38 UML cz. II 2/38 Klasy Najważniejsze informacje o klasie: różnica pomiędzy klasą a jej instancją (obiektem) na podstawie klasy tworzone są obiekty (instancje klasy) stan obiektu

Bardziej szczegółowo

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe

Bardziej szczegółowo

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek TECHNOLOGIE OBIEKTOWE WYKŁAD 2 Anna Mroczek 2 Diagram czynności Czym jest diagram czynności? 3 Diagram czynności (tak jak to definiuje język UML), stanowi graficzną reprezentację przepływu kontroli. 4

Bardziej szczegółowo

Analiza i projektowanie aplikacji Java

Analiza i projektowanie aplikacji Java Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Laboratorium 6 DIAGRAM KLAS (Class Diagram)

Laboratorium 6 DIAGRAM KLAS (Class Diagram) Laboratorium 6 DIAGRAM KLAS (Class Diagram) Opisuje strukturę programu (a także zależności między nimi), co znajduje odzwierciedlenie w kodzie. Charakteryzuje zależności pomiędzy składnikami systemu: klasami,

Bardziej szczegółowo

Diagramy UML, przykład problemu kolizji

Diagramy UML, przykład problemu kolizji Bogdan Kreczmer bogdan.kreczmer@pwr.edu.pl Katedra Cybernetyki i Robotyki Wydział Elektroniki Politechnika Wrocławska Kurs: Copyright c 2015 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 1 Wprowadzenie do narzędzia CASE

Bardziej szczegółowo

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski INFORMATYKA W ZARZĄDZANIU Wykład VI dr Jan Kazimirski jankazim@mac.edu.pl http://www.mac.edu.pl/jankazim MODELOWANIE SYSTEMÓW UML Literatura Joseph Schmuller UML dla każdego, Helion 2001 Perdita Stevens

Bardziej szczegółowo

Podstawy języka UML UML

Podstawy języka UML UML Podstawy języka UML UML Plan szkolenia Plan szkolenia Godzina (czas) 10:20 11:20 (60 min) 11:20 11:40 (20 min) 11:40 13:10 (90 min) 13:10 13:30 (20 min) 13:30 15:00 (90 min) Temat Wprowadzenie do UML (Definicja,

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 8 Diagram pakietów I Diagram pakietów (ang. package diagram) jest diagramem

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

1 Projektowanie systemu informatycznego

1 Projektowanie systemu informatycznego Plan wykładu Spis treści 1 Projektowanie systemu informatycznego 1 2 Modelowanie pojęciowe 4 2.1 Encja....................................... 5 2.2 Własności.................................... 6 2.3 Związki.....................................

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla studentów

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla studentów Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Fazy analizy (modelowania) oraz projektowania FAZA ANALIZY:

Fazy analizy (modelowania) oraz projektowania FAZA ANALIZY: Fazy analizy (modelowania) oraz projektowania Analiza bez brania pod uwagę szczegółów implementacyjnych Projektowanie ze szczegółami implementacyjnymi. FAZA ANALIZY: Celem fazy analizy jest ustalenie wszystkich

Bardziej szczegółowo

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy

Bardziej szczegółowo

Świat rzeczywisty i jego model

Świat rzeczywisty i jego model 2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),

Bardziej szczegółowo

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest:

12) Wadą modelu kaskadowego jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 13) Wadą modelu opartego na prototypowaniu jest: Zagadnienia obowiązujące na egzaminie z inżynierii oprogramowania: 1) Oprogramowanie to: 2) Produkty oprogramowania w inżynierii oprogramowania można podzielić na: 3) W procesie wytwarzania oprogramowania

Bardziej szczegółowo

Unified Modeling Language. Referat na seminarium magisterskie Zagadnienia Programowania Obiektowego Dymitr Pszenicyn

Unified Modeling Language. Referat na seminarium magisterskie Zagadnienia Programowania Obiektowego Dymitr Pszenicyn Unified Modeling Language Referat na seminarium magisterskie Zagadnienia Programowania Obiektowego Dymitr Pszenicyn Po co UML? Duże przedsięwzięcia informatyczne wymagają modelowania. Istniało wiele metodologii

Bardziej szczegółowo

WYKŁAD 1. Wprowadzenie do problematyki baz danych

WYKŁAD 1. Wprowadzenie do problematyki baz danych WYKŁAD 1 Wprowadzenie do problematyki baz danych WYKŁAD 2 Relacyjny i obiektowy model danych JĘZYK UML (UNIFIED MODELING LANGUAGE) Zunifikowany język modelowania SAMOCHÓD

Bardziej szczegółowo

Michał Adamczyk. Język UML

Michał Adamczyk. Język UML Michał Adamczyk Język UML UML I. Czym jest UML Po co UML II.Narzędzia obsługujące UML, edytory UML III.Rodzaje diagramów UML wraz z przykładami Zastosowanie diagramu Podstawowe elementy diagramu Przykładowy

Bardziej szczegółowo

Analiza i projektowanie obiektowe

Analiza i projektowanie obiektowe Analiza i projektowanie obiektowe Procesy budowy systemów informatycznych Fazy procesu budowy SI Specyfikacja wymagań o Analiza dziedziny modelowanie podstawowych pojęć i terminów Analiza systemowa modelowanie

Bardziej szczegółowo

Podstawy modelowania programów Kod przedmiotu

Podstawy modelowania programów Kod przedmiotu Podstawy modelowania programów - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy modelowania programów Kod przedmiotu 11.3-WI-INFP-PMP Wydział Kierunek Wydział Informatyki, Elektrotechniki

Bardziej szczegółowo

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu.

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu. AGH, EAIE, Informatyka Winda - tutorial Systemy czasu rzeczywistego Mirosław Jedynak, Adam Łączyński Spis treści 1 Wstęp... 2 2 Przypadki użycia (Use Case)... 2 3 Diagramy modelu (Object Model Diagram)...

Bardziej szczegółowo

Inżynieria oprogramowania

Inżynieria oprogramowania Inżynieria oprogramowania Wykład 8 Inżynieria wymagań: analiza przypadków użycia a diagram czynności Patrz: Stanisław Wrycza, Bartosz Marcinkowski, Krzysztof Wyrzykowski, Język UML 2.0 w modelowaniu systemów

Bardziej szczegółowo

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji Modelowanie danych. Model związków-encji Plan wykładu Wprowadzenie do modelowania i projektowania kartograficznych systemów informatycznych Model związków-encji encje atrybuty encji związki pomiędzy encjami

Bardziej szczegółowo

UML. zastosowanie i projektowanie w języku UML

UML. zastosowanie i projektowanie w języku UML UML zastosowanie i projektowanie w języku UML Plan Czym jest UML Diagramy przypadków użycia Diagramy sekwencji Diagramy klas Diagramy stanów Przykładowe programy Visual Studio a UML Czym jest UML UML jest

Bardziej szczegółowo

WPROWADZENIE DO UML-a

WPROWADZENIE DO UML-a WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,

Bardziej szczegółowo

UML a kod. C++, Java i C#

UML a kod. C++, Java i C# UML a kod C++, Java i C# UML a kod w C++ i Javie Projektowanie oprogramowania! Dokumentowanie oprogramowania Diagramy przypadków użycia Klasy użytkowników i wykorzystywane funkcje Mogą sugerować podział

Bardziej szczegółowo

Programowanie Obiektowe Język UML

Programowanie Obiektowe Język UML Programowanie Obiektowe Język UML Wstęp UML (Unified Modeling Language), zunifikowany język do modelowania, jest następcą i syntezą notacji występujących w obiektowych metodykach analizy i projektowania

Bardziej szczegółowo

Diagramy przypadków użycia

Diagramy przypadków użycia Instytut Informatyki Uniwersytetu Śląskiego 10 października 2010 Spis treści 1 Wprowadzenie do UML 2 3 4 5 6 Diagramy UML Język UML definiuje następujący zestaw diagramów: diagram przypadków użycia - służy

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.

Bardziej szczegółowo

Projektowanie interakcji. Jarosław Kuchta

Projektowanie interakcji. Jarosław Kuchta Projektowanie interakcji Jarosław Kuchta Podstawowe pojęcia Interakcja (interaction) Przepływ komunikatów pomiędzy obiektami konieczny dla wykonania określonego zadania. Interakcja występuje w kontekście

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 3 Diagramy przypadków użycia Diagramy przypadków użycia (ang. use case)

Bardziej szczegółowo

UML - zarys 2007/2008

UML - zarys 2007/2008 UML - zarys 2007/2008 Modelowanie Jest ważne przy tworzeniu wysokiej jakości oprogramowania Jest przydatne przy tworzeniu i analizie działania organizacji Modelujemy aby: Zrozumieć system Określić pożądaną

Bardziej szczegółowo

Spis treúci. Księgarnia PWN: Robert A. Maksimchuk, Eric J. Naiburg - UML dla zwykłych śmiertelników. Wstęp... 11. Podziękowania...

Spis treúci. Księgarnia PWN: Robert A. Maksimchuk, Eric J. Naiburg - UML dla zwykłych śmiertelników. Wstęp... 11. Podziękowania... Księgarnia PWN: Robert A. Maksimchuk, Eric J. Naiburg - UML dla zwykłych śmiertelników Spis treúci Wstęp... 11 Podziękowania... 13 O autorach... 15 Robert A. Maksimchuk... 15 Eric J. Naiburg... 15 Przedmowa...

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Diagramy przypadków użycia. WYKŁAD Piotr Ciskowski

Diagramy przypadków użycia. WYKŁAD Piotr Ciskowski Diagramy przypadków użycia WYKŁAD Piotr Ciskowski Diagram przypadków użycia definiowanie wymagań systemowych graficzne przedstawienie przypadków użycia, aktorów, związków między nimi występujących w danej

Bardziej szczegółowo

Modelowanie i analiza systemów informatycznych

Modelowanie i analiza systemów informatycznych Katolicki Uniwersytet Lubelski Jana Pawła II Wydział Matematyki, Informatyki i Architektury Krajobrazu Modelowanie i analiza systemów informatycznych ćwiczenia informacja wstępna dr Viktor Melnyk, prof.

Bardziej szczegółowo

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla nauczyciela

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla nauczyciela Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Laboratorium modelowania oprogramowania w języku UML Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram

Bardziej szczegółowo

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,

Bardziej szczegółowo

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego.

Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego. Umiejętność czytania oraz tworzenia diagramów klas UML jest podstawą w przypadku zawodu programisty. Z takimi diagramami będziesz spotykał się w przeciągu całej swojej kariery. Diagramy klas UML są zawsze

Bardziej szczegółowo

Podstawy Programowania Obiektowego

Podstawy Programowania Obiektowego Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja

Bardziej szczegółowo

Enterprise Architect - narzędzie do modelowania

Enterprise Architect - narzędzie do modelowania Kod szkolenia: Tytuł szkolenia: EA Enterprise Architect - narzędzie do modelowania Dni: 3 Opis: Adresaci szkolenia Szkolenie adresowane jest do osób, które już potrafią modelować w UML jednakże mają potrzebę

Bardziej szczegółowo

Diagramy czynności. Widok logiczny. Widok fizyczny

Diagramy czynności. Widok logiczny. Widok fizyczny Diagramy czynności System widoków 4+1 Kruchtena Widok logiczny Widok fizyczny Widok procesu Widok przypadków użycia Widok konstrukcji Diagramy czynności są jedynym diagramem w widoku procesu modelowanego

Bardziej szczegółowo

Faza analizy (modelowania) Faza projektowania

Faza analizy (modelowania) Faza projektowania Faza analizy (modelowania) Faza projektowania Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie: co i przy jakich ograniczeniach system ma robić? Wynikiem tej analizy jest zbiór wymagań

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.

Bardziej szczegółowo

o partnerstwie publiczno-prywatnym.

o partnerstwie publiczno-prywatnym. SENAT RZECZYPOSPOLITEJ POLSKIEJ V KADENCJA Warszawa, dnia 20 czerwca 2005 r. Druk nr 984 0$56=$à(. 6(-08 RZECZYPOSPOLITEJ POLSKIEJ Pan Longin PASTUSIAK 0$56=$à(. 6(1$78 RZECZYPOSPOLITEJ POLSKIEJ =JRGQLH

Bardziej szczegółowo

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Wprowadzenie Modelowanie biznesowe jest stykiem między

Bardziej szczegółowo