plik


ÿþDlaczego ten temat? Prawie ka|dy w swojej pracy wykorzystuje notacj graficzn (np. do modelowania, ilustrowania itp.) Prawie ka|dy stosuje inn, któr musi definiowa We wspólnej grupie (produkcyjnej) konieczne jest Notacja UML stosowanie jednolitej, wspólnej, dobrze zdefiniowanej notacji, w tym graficznej w skrócie Notacja powinna by wBa[ciwa do zastosowaD Jest wskazane, aby notacja byBa popularna i powszechnie wprowadzenie do modelowania oprogramowania uznana W procesie dydaktycznym nie jest wskazane stosowanie tylko jednej notacji, ale najpopularniejsze trzeba uwzgldnia Modele budowane w procesie Modele budowane w procesie wytwarzania oprogramowania wytwarzania oprogramowania Domain Business Model Partial artifacts, Modeling Biznesowy * refined in each * iteration. WymagaD Use-Case Model Analityczny :System foo( x ) Danych Requirements bar( y ) system Projektowy text use system operations system use case sequence operation Implementacyjny cases diagrams diagrams contracts Design Model Design Modele: model dziedziny Rodzaje diagramów Modelujce algorytmy/aktywno[ci Modelujce zwizki statyczne midzy elementami projektu oprogramowania Modelujce zwizki dynamiczne midzy elementami projektu oprogramowania Modelujce wymagania Modelujce organizacje (procesy biznesowe) Modelujce zwizki midzy elementami implementacyjnymi Modelujce struktur techniczn 1 Modele budowane w procesie wytwarzania oprogramowania (zgodnie z kolejno[ci Elementy notacji (wprowadzenie) budowania) NewCo Biznesowy NewClass mponent Atrybut Operacja() WymagaD NewPackage <processor name> Analityczny NewState entry/ Nam e pre emptive Projektowy exit/ Name do/ Name <process name > event Event In/ ^Event Out New Object : <th rea d n ame> NewClass Danych <Actor Name> NewActivity (f rom Ac tors) <device name> Implementacyjny Konstrukcyjny <Use Case Name> (from <Use Case Name>) Elementy notacji - zwizki Stereotypy <<realize>> NewClass Atrybut NewClass2 NewClass <<process>> Operacja() NewClass Atrybut <<ster>> Atrybut NewClass Operacja() Atrybut NewClass2 <Use Case Name> <<ster>> Operacja() <<use-case realization>> <Use-Case Name> (from <Use Case Name>) Operacja() New Object : : NewClass NewClass NewClass Atrybut NewClass2 [ Guard ] Operacja( ) Operacja() NewPackage <<layer>> <<subsystem>> NewPackage NewPackage NewClass NewActivity Atrybut NewClass2 1: Operacja( ) Operacja() New Object : : NewClass NewClass NewPackage NewClass2 <processor name> <<include>> <device name> Connection <Use Case Name> NewUs eCase <Use Case Name> NewUs eCase (from <Use Case Name>) (from <Use Case Name>) preemptive <Use Case Name> <Actor Name> <process name> (from <Use Case Name>) (f rom Actors) <thread name> Sposoby prezentacji stereotypów Diagram przypadków u|ycia Graficzny model wymagaD funkcjonalnych <<Business Worker>> BuisnessW_X Specyfika podej[cia  opis interakcji BuisnessW_X BuisnessW_X systemu z otoczeniem <<control>> CC Przedstawia: CC atrybut atrybut Otoczenie  aktorów operacja() operacja() CC atrybut Sposób u|ywania stemu przez otoczenie  operacja() przypadki u|ycia <<subsystem>> <<Interface>> <<subsystem>> Zwizki otoczenia z przypadkami u|ycia InterfaceB ClassB ClassB InterfaceB Hierarchi otoczenia i przypadków u|ycia Zwizki midzy przypadkami u|ycia 2 Hierarchia aktorów i przypadków PrzykBadowy diagram u|ycia Make_Deal Register System 1 User Rola 1 UC_X Buy_Books Find_a_Book Rola 2 Admin Create_Account UszczegóBowienie przypadków Biznesowe przypadki u|ycia u|ycia (organizacji) Fragment modelu organizacji (przedsibiorstwa) Wykonywany opcjonalnie na etapie Get_Permission wstpnym/strategicznym 5Get_Key <<include>> Zazwyczaj du|y poziom ogólno[ci <<include>> Rola 1 Przedstawia sposób widzenia caBej organizacji <<extend>> przez jej otoczenie Borrow_Car Fill_Tank <<extend>> Projektowane oprogramowanie jest tylko cz[ci tak modelowanej organizacji <<include>> Rola 2 NewUseCase6 Modyfikacja  zwykBego diagramu przypadków NewUseCase3 u|ycia przez wprowadzenie odpowiednich stereotypów PrzykBadowy diagram Diagramy aktywno[ci Kiedy[ rozumiany jako specjalizacja diagramu stanów UML- zmiana NewUseCase2 NewUseCase5 <<include>> <<include>> Wykorzystywany do opisu wymagaD Rola 1 procesowych (przypadki u|ycia sjego <<extend>> NewUseCase NewUseCase4 fragmentem) <<extend>> Rola 2 <<include>> NewUseCase6 NewUseCase3 3 PrzykBadowy diagram Stany pocztkowe i koDcowe Ndo_A NewActivity NewActivity NewActivity Do_B NewActivity2 NewActivity2 NewActivity2 [ Warunek 2 ] [ Warunek 1 ] NewActivity3 NewActivity4 NewActivity3 [ Warunek 3 ] Operacje równoczesne Operacje równoczesne NewActivity NewActivity NewActivity2 NewActivity3 NewActivity2 NewActivity3 NewActivity5 NewActivity4  Tory pBywackie Diagram stanów NewSwiml ane NewSwimlane2 Wykorzystywany do opisania dynamiki (zachowania si) jednego elementu modelu NewActivity w zale|no[ci od wcze[niejszych zdarzeD NewActivity2 Opracowane na bazie map stanów (Harel) NewActivity3 4 PrzykBadowy diagram Akcje wykonywane w stanie wznowienie/aktywuj Zdarzenie 1 przerwanie Pracuje Przerwa wBczenie przerwanie NewState event wyBczenie/ zatrzymanie event wyBczenie/ null entry/ Akcja 1 do/ Akcja 2 exit/ Akcja 3 wznowienie wyBczenie event Zdarzenie In( Arg )[ War 1 ]/ ^Cel.Zdarzenie Out(Arg) event Zdarzenie In( Arg )[ War 2 ]/ ^Cel.Zdarzenie Out(Arg) wyBczenie WyBczone Zdarzenie In 2( Arg )[ War ] / Akcja ^Cel.Zdarzenie Out(Arg) NewState2 Zagnie|d|anie stanów i stany historyczne Diagramy sekwencji z-0-2 Modeluj dynamik oprogramowania State1 H H Uwypuklaj nastpstwa czasowe State2 State2 z-0-1 komunikatów State4 State4 State4 Prezentuj jedn [cie|k realizacji z-4-5 State5 State5 State5 konkretnego wymagania, odpowiedzialno[ci lub operacji z-2-3 z-1-0 z-3-3 State3 State3 PrzykBadowy diagram WywoBania warunkowe i iteracje a : ClassA : ClassB : ClassC :ClassA : ClassB : ClassC message 1( ) Opis warunku messageX1( ) message 2( ) message 2( ) message 4( ) message 3( ) message 3( ) Opis stanu obiektu message 4( ) Opis warunków iteracji 5 Diagramy komunikacji Komunikaty zwrotne (wspóBpracy) : NewClass : NewClass2 : NewClass3 Tak jak diagramy sekwencji, modeluj dynamik oprogramowania messageX( ) Uwypuklaj zwizki midzy obiektami messageY( ) messageZ( ) Równoznaczno[ diagramów PrzykBadowy diagram sekwencji i komunikacji : NewClass : NewClass : NewClass2 : NewClass3 : NewClass 1: message 1( ) message 1( ) 1: message 1( ) 4: message 4( ) 3: message 3( ) 4: message 4( ) 3: message 3( ) message 2( ) message 3( ) : NewClass2 : NewClass2 message 4( ) 2: message 2( ) : NewClass3 2: message 2( ) : NewClass3 Diagramy klas Opis klasy Prezentuj statyczne zwizki midzy elementami Nazwa klasy logicznymi oprogramowania Klasy Operacje (odpowiedzialno[ci, metody) Pakiety Atrybuty Interfejsy Podsystemy Warstwy Nazwa atrybut 1 : Boolean Zwizki midzy klasami okre[laj wzajemn atrybut 2 : Integer  widoczno[ klas operacja 1() operacja 2() Zale|no[ci midzy pakietami wynikajce z  widoczno[ci klas 6 Rodzaje klas PrzykBadowy diagram CC B Klasa zwykBa A +rola 2 message 1() message 3() 1 2..7 message 3() 1 Arg1 Klasa sparametryzowana message 4() 0..1 0..1 Arg2 +rola 1 PaCl C message C() <<abstract>> Klasa abstrakcyjna AC +rola 3 1..n Operacja abstrakcyjna D operacja zwykBa() operacja abstrakcyjna() message 2() E Zwizki Opis asocjacji Asocjacje NewClass6 NewClass7 Nazwa (nieu|ywana) NewClass6 NewClass7 Jedno i dwukierunkowe Stereotyp NewCl ass6 NewClass7 Agregacje Nazwy ról NewCl ass6 NewClass7 Kompozycje Krotno[ Generalizacja NewCl ass6 NewClass7 (dziedziczenie) Zakres widzialno[ci NewClass6 NewInterface7 Realizacja <<sterotyp>> Nazwa +rola A -rola B NewClass6 NewClass7 A B Zale|no[ci 2 1..7 Zakres widzialno[ci Wykorzystanie pakietów Publiczny NewClass NewClass3 1..n 1..n (from Pakiet 1) 0..1 (from Pakiet 2) 0..1 +Rola 1 +Rola 3 Chroniony message 3() message 2() 1 1 0..n 0..n +Rola 2 Prywatny NewClass2 (from Pakiet 1) Implementacyjny (zaprzyjazniony) NewClass5 NewClass4 message 1() (from Pakiet 2) (from Pakiet 2) message 3() message 4() Nazwa Nazwa publiczny + Ppubliczny +rola chroniony # chroniony #rola prywatny - prywatny NewClass6 NewClass7 -rola Implementacyjny Iiplementacyjny rola Pakiet 1 Pakiet 2 + publiczny() publiczny() # chroniony() chroniony() - prywatny() prywatny() implementacyjny() implementacyjny() 7 Wykorzystanie podsystemów i interfejsów Diagram procesów Podsystem to wyizolowany pakiet Przedstawia hierarchi procesów, widoczny tylko poprzez dokBadnie podprocesów i wtków okre[lony interfejs Okre[la zwizek midzy procesami oraz Interfejs definiuje tylko operacje i staBe midzy procesami a implementujcymi je implementowane w pakiecie, podsystemie klasami lub klasie <<Interface>> NewInterface NewInterface NewClass8 <<subsystem>> operacja 1() NewPackage operacja 2() operacja 1() operacja 2() PrzykBadowy diagram procesów Diagram komponentów Jak perspektywa logiczna ma by <<process>> <<process>> Process Name Process Name 2  zanurzona w [rodowisku implementacyjnym Zwizek klas z komponentami <<thread>> <<thread>> Thread Name 2 Thread Name 1 Komponenty odpowiadaj zazwyczaj jednostkom kompilacji (plikom) <<thread>> Thread Name 3 <<process>> Subprocess Name Pakiety odpowiadaj podsystemom implementacyjnym (katalogom, pakietom) PrzykBadowy diagram Diagram monta|owy U[wiadamia ograniczenia konstrukcji NewSubprogSpec NewSubprogBody oprogramowania wynikajce ze struktury technicznej Nie ma na celu precyzyjnego modelowania struktury technicznej NewMainSubprog NewPackageSpec NewPackageBody NewCo Przedstawia elementy struktury technicznej: mponent Procesory  elementy aktywne Urzdzenia  elementy pasywne NewTaskBody PoBczenie midzy elementami NewTaskSpec Przedstawia rozmieszczenie programów (i procesów) w procesorach 8 Diagram monta|owy: przykBad PrzykBady wykorzystania DM Modelowanie oprogramowania w tym Serwer statyczny model procesów i model NewCo mponent Urzdzenie USB komunikacji/synchronizacji preemptive NewMainSubprog Process Name Modelowanie organizacji  modelowanie Thread Name Ethernet 100 procesów organizacji Model matematyczny  wektory stanów Stacja NewCo mponent Proces Too many different views & ? I co dalej ? UML + Metodyka (RUP) + ... = Projektowanie 56 Notacja UML Koniec 9

Wyszukiwarka

Podobne podstrony:
2007 06 UML – potrzeba standaryzacji notacji [Inzynieria Oprogramowania]
UML opis notacji
(21 Potencjał zakłócający i anomalie)
980928 21
173 21 (10)
2 21 SPAWANIE MIEDZI I STOPÓW MIEDZI (v4 )
049 051
USTAWA z dnia 21 marca 1985 r o drogach publicznych

więcej podobnych podstron