MODELOWANIE STRUKTURY

Podobne dokumenty
Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

UML w Visual Studio. Michał Ciećwierz

Michał Adamczyk. Język UML

Podstawy programowania III WYKŁAD 4

Tytuł pracy: PRACA MAGISTERSKA AUTOR: KRAKÓW, Marzec 2011 Promotor pracy :

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

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

Wykład 1 Inżynieria Oprogramowania

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

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

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

Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji

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

Zasady organizacji projektów informatycznych

UML cz. III. UML cz. III 1/36

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

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

PRZEWODNIK PO PRZEDMIOCIE

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

Podstawy modelowania programów Kod przedmiotu

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

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

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

PRZEWODNIK PO PRZEDMIOCIE

Egzamin / zaliczenie na ocenę*

PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem

RUP. Rational Unified Process

Język UML w modelowaniu systemów informatycznych

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

KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH

Narzędzia CASE dla.net. Łukasz Popiel

Źródło: S. Wrycza, B. Marcinkowski, K. Wyrzykowski Język UML 2.0 w modelowaniu systemów informatycznych Helion DIAGRAMY INTERAKCJI

Modelowanie i analiza systemów informatycznych

MODELOWANIE OBIEKTOWE

TECHNOLOGIE OBIEKTOWE. Wykład 3

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Język UML w modelowaniu systemów informatycznych

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

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

koniec punkt zatrzymania przepływów sterowania na diagramie czynności

Diagramy maszyn stanowych, wzorce projektowe Wykład 5 część 1

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Inżynieria oprogramowania II

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

Wymiar poziomy: oś na której umieszczono instancje klasyfikatorów biorące udział w interakcji.

Podstawy inżynierii oprogramowania

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

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

Podstawy języka UML2 w realnych projektach

Procesy wytwarzania oprogramowania Specyfikacja i projektowanie oprogramowania

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

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Specyfikowanie wymagań przypadki użycia

Modelowanie obiektowe - Ćw. 3.

Feature Driven Development

WOJSKOWA AKADEMIA TECHNICZNA

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Wytwarzanie oprogramowania

Opis metodyki i procesu produkcji oprogramowania

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz

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

Spis treści. Część I Diagramy języka UML Wstęp 7. Rozdział 1. Studia przypadków 13. Rozdział 2. Diagramy przypadków użycia 29

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

Modelowanie testów. czyli po co testerowi znajomość UML

Analiza i projektowanie aplikacji Java

KONTROLA JAKOŚCI Zapewnienie jakości w projekcie tworzenia oprogramowania

Etapy życia oprogramowania

Diagramy przypadków użycia

Inżynieria oprogramowania

Wykład 3 Wymagania. MIS n Inżynieria oprogramowania Październik Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie

problem w określonym kontekście siły istotę jego rozwiązania

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Analiza i projektowanie obiektowe 2016/2017. Wykład 8: Przypisywanie obiektom odpowiedzialności (2)

Inżynieria oprogramowania. Jan Magott

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

WPROWADZENIE DO UML-a

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Zalety projektowania obiektowego

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

Technologie informacyjne - wykład 12 -

Identyfikacja i modelowanie struktur i procesów biologicznych

Narzędzia informatyczne wspierające przedsięwzięcia e-commerce

Część I - Załącznik nr 7 do SIWZ. Warszawa. 2011r. (dane Wykonawcy) WYKAZ OSÓB, KTÓRYMI BĘDZIE DYSPONOWAŁ WYKONAWCA DO REALIZACJI ZAMÓWIENIA

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Konfiguracja modelowania w procesie wytwarzania oprogramowania

Inżynieria oprogramowania

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

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Wprowadzenie do UML, przykład użycia kolizja

Diagramy klas. dr Jarosław Skaruz

Diagramy sekwencji. wymienianych między nimi

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

Podstawy projektowania systemów komputerowych

Modelowanie i Programowanie Obiektowe

ZAMAWIAJĄCY. CONCEPTO Sp. z o.o.

Transkrypt:

MODELOWNIE STRUKTURY (Wykład na podstawie literatury: M.Śmiałek Zrozumieć UML 2.0, Helion 2005) Prezentacja struktury na dwóch poziomach: klas i obiektów (Na diagramach opisujących strukturę fragmentu modelowanej rzeczywistości lub systemu pojawią się zarówno klasy jak i obiekty) spekty modelowanej dziedziny: (wykorzystując klasy i związki m.n.) Zbiór wszystkich możliwych stanów obiektów klas Zbiór wszystkich usług dostarczanych przez klasy Zbiór wszystkich możliwych powiązań obiektów klas pomiędzy sobą Zbiór wszystkich możliwych ścieżek komunikacji między obiektami klas (Diagramy klas pokazują potencjalne możliwości wchodzenia obiektów w interakcje ze sobą. Model klas stanowi słownik dziedziny. Tworzenie struktury z wykorzystaniem abstrakcji (Zamykanie wielu klas i obiektów w pudełku i traktowanie pudełka jako nowego pojęcia pakietu (gromadzą wiele klas) lub mogą stanowić całe podsystemy dostarczające na zewnątrz określonej funkcjonalności komponenty

MODELOWNIE STRUKTURY Diagramy STRUKTURY DiagramOpisuStruktury DiagramWdrożenia DiagramSkładowych <<instance>> DiagramStruktury <<instance>> serwer_aplikacyjny Wydzial.jar Samochód stacja_pc Statystyki.jar k:koło[4] z:podwozie[1] <<jar>> Rejestracja.jar s:silnik[0..1] z:koło[0..1] Serwer_baz_danych <<SQLdb>> DBccess.db

MODELOWNIE STRUKTURY Diagramy STRUKTURY DiagramStruktury DiagramKlas DiagramObiektów DiagramPakietów DiagramKomponentów <<instance>> <<instance>> <<instance>> <<instance>> plikacjarejestracji własność współwłasność Właściciel pierwszy: Samochód Pojazdy Samochód udokumentowanie osoba: Właściciel IRejestracja IStatystyki przynależność DowódRej doc:dowódrej RejestracjaPojazdów DaneRejestracji IOsoby małżonek: Właściciel drugi:samochód Osoby IDane DaneOsobowe status=niezarejestrowany UtrwalanieDanych

MODELOWNIE DYNMIKI Prezentacja Systemu w działaniu (Realizacja dynamiki systemu obejmuje przede wszystkim spełnienie rzeczywistych potrzeb zamawiajacego) spekty modelowanej funkcjonalności systemu: Prezentacja następstwa czasów Prezentacja dialogu użytkownika z systemem Powiązanie modelu dynamiki z modelem struktury (obiekty z diagramów opisujących dynamikę mają swoje odpowiedniki w obiektach (klasach) prezentowanych na diagramach opisu struktury) Diagramy przypadków użycia (use case diagram) prezentują jednostki funkcjonalności systemu i ich użytkowników Diagramy sekwencji (sequence diagram) pokazują ciąg interakcji zachodzącymi oraz Diagramy komunikacji pomiędzy obiektami systemu (różnica pomiędzy diagramami polega na sposobie prezentacji wymiany komunikatów) Diagramy czynności (activity diagram) graf opisujący czynności podejmowane w zależności od warunków zewnętrznych i stanu systemu

MODELOWNIE DYNMIKI Diagramy maszyny stanów (state machine diagram) prezentacja możliwych stanów jakiegoś elementu, klasy z siecią przejść pomiędzy stanami Diagramy opisu interakcji (interaction overview diagram) pokazują interakcje połączone jako sieć czynności Diagramy następstw (timing diagram) prezentacja protokołów jak ciągów czasowo uzależnionych komunikatów wymienianych między obiektami.

MODELOWNIE DYNMIKI DiagramOpisuDynamiki DiagramPrzypadkówUżycia DiagramInterakcji DiagramCzynności DiagramMaszynyStanów <<instance>> <<instance>> <<instance>> DiagramSekwencji DiagramKomunikacji DiagramOpisuInterakcji DiagramNastępstw <<instance>> <<instance>> <<instance>> <<instance>>

MODELOWNIE DYNMIKI diagram przypadków użycia System Wydział Komunkacji Zarejestrowanie, wydania dow. rej. Zgłoszenie chęci rejestracji pojazdu Rejestrator Zgłoszenie zapotrzebowania na dow. rej. Sprawdzenie stanu rejestracji Właściciel Przypadki użycia jednostki opisu dynamiki systemu zestawy scenariuszy Scenariusze sekwencja interakcji podlegających określonym warunkom i prowadzącym do określonego celu (w opisie prezentowana jako tekst lub diagramy czynności) ctor obiekt (klasa obiektów) na zewnątrz systemu, często użytkowników systemu

MODELOWNIE DYNMIKI diagram czynności Rozpoczęcie rejestracji Rejestrator podaje nazwisko do rejestracji System rejestruje samochód znalezionego właściciela [tak] System wyszukuje właściciela o podanym nazwisku czy znaleziono? [nie] System powiadamia rejestratora o zarejestrowaniu samochodu System powiadamia rejestratora o nieznalezieniu właściciela zakończenie rejestracji Węzeł początkowy i końcowy ograniczniki sieci akcji kcje określone czynności opisane w zaokrąglonych prostokątach Węzły decyzyjne romby z opisem decyzji Przepływy sterowania strzałki, mogą być z uwarunkowaniem

MODELOWNIE DYNMIKI diagram interakcji (sekwencji) :Rejestrator apl:gui Zarejestruj_samochód(nazwisko) :Właściciel Znaleziony :Właściciel s:samochód Loop znajdź [porównaj_dane=false] Boolean:= [porównaj_dane(nazwisko) Zaznacz_rejestrację() rejestruj() Pokazują następstwo czasowe w sekwencji komunikatów Linie życia pionowe kolumny odnoszace się do obiektów z diagramów obiektów Fragment włączony sekwencje komunikatów realizowanych iteracyjnie ktorzy również włączeni jako obiekty. Nazwa komunikatu nad strzałkami obrazującymi ich wymianę. Komunikat powrotny powrót sterowania

MODELOWNIE DYNMIKI diagram interakcji (komunikacji) 1:zarejestruj_samochód(nazwisko) :Właściciel Znaleziony :Właściciel :Rejestrator 2: porównaj_dane() 4: rejestruj() 3: zaznacz_rejestrację() apl:gui s:samochód Uboższa notacja niż w diagramach sekwencji Komunikaty oznaczone kolejnymi cyframi Brak komunikatów zwrotnych ktorzy również włączeni jako obiekty. Brak jednoznacznych pętli

MODELOWNIE DYNMIKI diagram interakcji (opisu interakcji) :Właściciel Interakcja 1 Zarejestruj_samochód(n) apl:gui :Właściciel Połączenie diagramu czynności i diagramu sekwencji Bazą jest notacja diagramów czynności, gdzie poszczególne akcje są zastapione interakcjami Obrazowanie czynności złożonych z ciągu kolejnych interakcji pomiędzy obiektami Rozpoczęcie porównaj_dane(n) Interakcja 2 apl:gui Znaleziony :Właściciel s:samochód Interakcja 2 Zaznacz_rejestrację() rejestruj () apl:gui porównaj_dane = true Komunikat (O.K.) Komunikat(nie znaleziono) Zakończenie

s:samochód w:właściciel MODELOWNIE DYNMIKI diagram interakcji (następstw) Wyprodukowany Zakupiony Zdecydowany 0 10 20 30 40 50 60 70 80 90 100 Pokazują następstwo zdarzeń w sekwencji stanu obiektów oraz zmiany tych stanów pod wpływem komunikatów przesyłanych między obiektami. Przestawiają zależności czasowe warunkujace przesyłanie komunikatów

MODELOWNIE DYNMIKI diagram maszyny stanów Początek Wyprodukowany Zakupiony Zarejestrowany Zarejestrowany tymczasowo Wyrejestrowany Wycofany Koniec określają sposób zachowania się wybranego elementu modelu (obiektu) w postaci przejść pomiędzy jego stanami. Stan pewna, stabilna sytuacja w jakiej znajduje się dany element Przejścia do innych stanów mogą następować pod wpływem określonych zdarzeń (np. Komunikatów otrzymanych od innych elementów modelu)

MODELOWNIE OBIEKTOWE Praktyczne wykorzystanie diagramów struktury i dynamiki Użytkownik lub zamawiający system: diagramy przypadków użycia, diagramy klas, diagramy czynności rchitekci systemu oprogramowania dodatkowo diagramy komponentów, diagramy wdrożeń, diagramy sekwencji, diagramy składowych Projektanci systemów czasu rzeczywistego diagramy następstw, diagramy maszyny stanów

Od Środowiska do Kodu Obszary aktywności Środowisko Kod Zamawiający - Funkcjonuje w środowisku biznesowym, zmiennym!! Model środowiska Model kodu Programista - żyje w świecie najbardziej złożonych wytworów człowieka Modele obiektowe próba ustanowienia wspólnego języka dwóch światów zamawiającego i programisty (światy bardzo złożone) Tłumaczenie modelu środowiska na model kodu - transformacje Modelarze transformacji środowiska: Zamawiający sprawdzenie zgodności ze środowiskiem nalityk środowiska tworzenie opisu środowiska Użytkownik sprawdzanie wymagań nalityk wymagań tworzenie wymagań rchitekt projektowanie systemu Projektant projektowanie podsystemów Programista wykonanie systemu Recenzent sprawdzenie jakości produktów Tester sprawdzenie jakości kodu

Od Opisu Środowiska do Kodu Kaskadowy model tworzenia oprogramowania Zamawiający Środowisko - Funkcjonuje w środowisku biznesowym, zmiennym!! Model kaskadowy (waterfall) proces wytwórczy oprogramowania składający się z faz Fazy etapy aktywności twórczej zakończone określonym produktem składającym się na tzw. kamienie milowe (milestone) określają cele poszczególnych faz Faza analizy i syntezy dokument opisu środowiska dokument specyfikacji wymagań naliza środowiska projekt systemy kompletny system naliza wymagań Projektowanie systemu sprawdzony system Realizacja systemu Testowanie systemu Wdrażanie systemu Wady (większość tak realizowanych projektów kończy się fiaskiem): naliza problemu Synteza systemu Brak iteracji na poszczególnych etapach Brak jednoznacznych procedur przekształcenia wymagań środowiska w system oprogramowania Brak ciągu modeli wskazujących na sposób transformacji od środowiska do kodu. Kod systemu zainstalowany system

CIĄG MODELI Obszary aktywności Opis środowiska Środowisko Kod systemu Opis funkcjonowania środowiska Słownik środowiska Model statyczny podsystemów Model dynamiczny podsystemów Wymagania funkcjonalne dla systemu Produkty analizy Wymagania słownikowe dla systemu Wszystkie modele są połączone transformacjami. Transformacja to przekształcenie modelu na inny z zachowaniem informacji, który element modelu jest przekształcany i w jaki sposób. Transformacje poziome są realizowane w ramach jednej roli w projekcie, na jednym poziomie kaskady, pionowe pozwalają na przejście pomiędzy kaskadami.\ Słownik środowiska model statyczny Opis funkcjonowania środowiska model dynamiczny Brak modeli służących testowniu systemów Model statyczny systemu Model dynamiczny systemu Jednoznaczna transformacja zapewniająca spójność dynamicznych i statycznych aspektów systemu Produkty syntezy

MODELOWNIE OBIEKTOWE Tworzenie systemów sterowane modelami OMG (2000) (Model Driven rchitecture - MD) związane z Tworzeniem programów sterownych modelami (Model driven Developmnet) idea wytwarzania oprogramowania oparta na modelach i ich przekształceniach Podstawowe element MD: definicja modelu na danym etapie cyklu definicja przekształcenia modelu w inny model Pierwotna idea MD dwa poziomy modelowania: poziom niezależny od platformy (PIM Platform Independent Model) specyfikacja wymagań poziom zależny od platformy (PSM Platform Specyfic Model ) realizacja wymagań Wyrażenie modeli i transformacji pomiędzy nimi z pomocą UML: 1. Które modele modele są potrzebne na poszczególnych etapach tworzenia oprogramowania? 2. Jakie warunki powinny spełniać te modele na różnych etapach? 3. Jakie przekształcenia modeli są potrzebne? 4. Które elementy modeli powinny być nawzajem przekształcane i w jaki sposób? Sposób określenia ścieżki od wymagań do kodu!!

Tworzenie systemów sterowane modelami Model środowiska Model środowiska (umożliwia zdefiniowanie zakresu funkcjonowania danego środowiska) Model przypadków użycia Model Klas Modele podsystemów Model wymagań (przypadki użycia prezentują usługi systemu, a nie usługi i procesy środowiska) Model przypadków użycia Model Klas Model systemu Spójność na poziomie środowiska synchronizacja pojęć w słowniku z opisami przypadków użycia i akcji modelu czynności, oraz synchronizacja czynności z przypadkami użycia Spójność na poziomie wymagań przypadki użycia systemu jednoznacznie przekształcone z czynności na poziomie modelu Środowiska, model klas, czyli słownik jest rozszerzeniem modelu klas pochodzącego z poziomu środowiska Modele pomocnicze Model Pakietów Model Składowych Model Maszyny Stanów

Tworzenie systemów sterowane modelami Przekształcenie modelu wymagań w model systemu Model środowiska (umożliwia zdefiniowanie zakresu funkcjonowania danego środowiska) Model przypadków użycia Model Klas Modele podsystemów Model wymagań (przypadki użycia prezentują usługi systemu, a nie usługi i procesy środowiska) Model przypadków użycia Model Klas, Słownik wymagań Model systemu Model komponentów Model wdrożenia Model interakcji (sekwencji) Model komponentów podział systemu na podsystemy (model logiczny), specyfikacja interfejsów do komunikacji pomiędzy podsystemami. Model wdrożeń podział systemu na elementy fizyczne (maszyny mające pamięć i możliwości przetwarzania. Diagramy czynności pozwalają zaprojektować operacje dostarczane przez interfejsy spójność przyporządkowane operacjom poszczególnych interfejsów. Diagramy interakcji realizacja poszczególnych funkcjonalności systemu. Interakcje pomiędzy komponentami a interfejsami pokazują działanie systemu spójność interakcja pomiędzy interf. a komp. Modele pomocnicze Model Pakietów Model Składowych Model Maszyny Stanów

Tworzenie systemów sterowane modelami Uszczegółowienie systemu Model środowiska (umożliwia zdefiniowanie zakresu funkcjonowania danego środowiska) Model przypadków użycia Model Klas Modele podsystemów Diagramy klas Diagramy składowych Model sekwencji Model wymagań (przypadki użycia prezentują usługi systemu, a nie usługi i procesy środowiska) Model przypadków użycia Model Klas, Słownik wymagań Model systemu Model komponentów Model wdrożenia Model interakcji (sekwencji) Diagramy składowych, diagramy klas uszczegółowienie podsystemów wynikające z modelu komponentów (związek z modelem klas modelu wymagań) Modele pomocnicze Model Maszyny Stanów i sekwencji zależność od modelu klas podobna do zależności w modelu systemu od modelu komponentów Model Pakietów Model Składowych Diagramy interakcji realizacja poszczególnych funkcjonalności systemu. Interakcje pomiędzy komponentami a interfejsami pokazują działanie systemu spójność interakcja pomiędzy interf. a komp.

FORMUŁOWNIE WYMGŃ Transformacja środowiska w model środowiska ŚRODOWISKO <<czerpanie wiedzy>> nalityk środowiska <<wykorzystanie wiedzy>> T R N S F O R M C J <<czerpanie wiedzy>> Zamawiający <<tworzenie>> Model środowiska (umożliwia zdefiniowanie zakresu funkcjonowania danego środowiska) Model przypadków użycia Model Klas <<sprawdzenie>> Każdy ma swoją wiedzę. Zamawiający ma cele i priorytety nie do zautomatyzowania Model analityczny środowiska uzyskany z transformacji środowiska. (Odwrócenie model zmieniający środowisko jest projektem środowiska środowisko sterowne modelami)

FORMUŁOWNIE WYMGŃ Transformacja modelu środowiska w model wymagań Model środowiska (umożliwia zdefiniowanie zakresu funkcjonowania danego środowiska) Model przypadków użycia Model Klas <<wykorzystanie>> nalityk wymagań <<wykorzystanie wiedzy>> T R N S F O R M C J Model wymagań (przypadki użycia prezentują usługi systemu) <<wykorzystanie>> Użytkownik Model przypadków użycia <<tworzenie>> Model Klas, Słownik wymagań <<sprawdzenie>> Stabilny model środowiska daje podstawę dla stworzenia modelu wymagań dla odpowiedniego systemu oprogramowania należy uwzględnić użytkownika Dopuszczalne na bazie wymagań powstaje model środowiska

RELIZCJ WYMGŃ Transformacja modelu wymagań w model systemu Model wymagań (przypadki użycia prezentują usługi systemu) <<wykorzystanie>> rchitekt <<tworzenie>> Model przypadków użycia <<wykorzystanie wiedzy>> Model systemu Model komponentów Model Klas, Słownik wymagań T R N S F O R M C J Model wdrożenia Model interakcji (sekwencji) Podział systemu na logiczne jednostki funkcjonalne komponenty Dbałość o spójność podziału na komponenty i komunikacji za pomocą interfejsów Komponenty grupują elementy realizujące zwarty podsystem (duża zwartość komponentów oraz słabe więzy z innymi komponentami)

RELIZCJ WYMGŃ Transformacja modelu systemu w model podsystemu Model systemu Model komponentów <<wykorzystanie>> Projektant <<tworzenie>> Model wdrożenia <<wykorzystanie wiedzy>> Modele podsystemów Diagramy klas Diagramy składowych Model interakcji (sekwencji) T R N S F O R M C J Model sekwencji Projektowanie struktury i dynamiki komponentów Dbałość o jakość realizacji zawartości komponentów (wraz z programistami )

RELIZCJ WYMGŃ Transformacja modelu podsystemu do kodu Modele podsystemów Diagramy klas <<wykorzystanie>> Diagramy składowych Model sekwencji Programista <<tworzenie>> <<wykorzystanie wiedzy>> Kod systemu T R N S F O R M C J Decyzje projektowe zawarte w modelu w modelu podsystemu są realizowane przez programistę. Wykorzystując składnię określonego języka zapisuje strukturę i algorytmy przetwarzania zaprojektowane przez projektanta, proste. W przypadku braku narzędzi do automatycznego generowania kodu zadanie żmudne. Generatory kodu budujące szkielet kodu na podstawie modelu klas. Dopuszcza się transformacje odwrotne łączenie funkcji programisty i projektanta

<<sprawdzanie jakości>> KONTROL JKOŚCI Zapewnienie jakości w projekcie tworzenia oprogramowania Model środowiska Model przypadków użycia Model klas <<wykorzystanie>> Model wymagań Model przypadków użycia Model klas Słownik wymagań Modele systemu Model wdrożenia Model komponentów Model sekwencji Tester Modele podsystemów Diagramy Diagramy klas składowych Model sekwencji Recenzent <<sprawdzenie jakości>> Kod systemu Wpływ ponownego wykorzystania na jakość projektu <<sprawdzenie >> Tworzenie modeli projektowych (podsystemów) wzorce projektowe Szkielety architektoniczne wzorce, modele wymagań - wzorce.