Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Modele systemu l Abstrakcyjne opisy sytemu, którego wymagania są opisywane.

Podobne prezentacje


Prezentacja na temat: "©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Modele systemu l Abstrakcyjne opisy sytemu, którego wymagania są opisywane."— Zapis prezentacji:

1 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Modele systemu l Abstrakcyjne opisy sytemu, którego wymagania są opisywane

2 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 2 Cele l Wytłumaczenie, dlaczego modelowanie kontekstu systemu jest takie ważne l Opisanie modelowania zachowania, modelowania danych i modelowania obiektowego l Wprowadzenie niektórych notacji zawartych w Unified Modeling Language (UML) l Pokazanie w jaki sposób warsztaty CASE wspomagają modelowanie systemu

3 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 3 Zawartość l Modele kontekstowe l Modele zachowania l Modele danych l Modele obiektowe l Warsztaty CASE

4 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 4 Modelowanie systemu l Modelowanie systemu pomaga analitykom zrozumieć funkcjonalność systemu, a modele są używane w komunikacji z użytkownikiem l Różne modele pokazują zachowanie tego samego systemu z różnych punktów widzenia Zewnętrznego, przy którym modeluje się kontekst lub środowisko systemu Zachowania, przy którym modeluje się zachowanie systemu Strukturalnego,,przy którym modeluje się architekturę systemu lub strukturę przetwarzanych danych

5 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 5 Metody strukturalne l Metody strukturalne zawierają modelowanie jako nieodłączną część metody l Metody definiują zbiór modeli, proces powstawania tych modeli i reguły oraz wskazówki, których należy się trzymać l Narzędzia CASE zwykle wspierają poszczególne metody

6 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 6 Słabości metod strukturalnych l Nie modelują wymagań niefunkcjonalnych l Nie zawierają zazwyczaj informacji czy konkretna metoda jest stosowna do problemu czy też nie l Prowadzą do zbyt obszernej dokumentacji l Modele są bardzo szczegółowe i użytkownikom trudno je zrozumieć

7 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 7 Typy modeli l Model przetwarzania danych pokazujący, jak dane są przetwarzane w różnych krokach pracy systemu l Model składania pokazuje jak encje składają się z innych encji l Model architektoniczny pokazuje zasadnicze podsystemy, z których składa się system l Model klasyfikacyjny przestawiający wspólne cechy encji l Model bodziec-reakcja pokazujący odpowiedzi na zdarzenia wewnętrzne i zewnętrzne

8 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 8 Modele kontekstowe l Modele kontekstowe pokazują granice systemu l Czynniki społeczne i organizacyjne mogą wpływać na decyzje o umieszczeniu granic systemu l Model architektoniczny pokazuje system i jego związki z zewnętrznymi systemami

9 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 9 Model kontekstowy bankomatu System bankomatu Baza danych kont Baza danych o użytkownikach System konserwacji System zabezpieczeń System księgowy oddziału System obsługi oddziału

10 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 10 Modele procesów l Modele procesów pokazują przegląd procesów i opisują wszystkie procesy wspierane przez system l Modele przepływów danych mogą być używane do pokazywania procesów i przepływów danych między nimi

11 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 11 Model procesu zakupu wyposażenia Wyspecyfikuj potrzebne wyposażenie Sprawdź specyfikację Zdobądź oszacowanie kosztów Znajdź dostawców Wybierz dostawcę Złóż zamówienie na wyposażenie Zaakceptuj dostarczone wyposażenie Zainstaluj wyposażenie Zaakceptuj protokół odbioru Sprawdź dostarczone towary Baza danych z dostawcami Baza danych o wyposażeniu Instrukcja montażu Akceptacja instalacji Informacje o wyposażeniu Specyfikacja wyposażenia Specyfikacja wyposażenia Sprawdzona specyfikacja Lista dostawców Protokół odbioru Informacja o zamówieniu Szczegóły zamówienia + czysty blankiet Sprawdzony i podpisany formularz zamówienia Specyfikacja+ dostawca+ oszacowanie Protokół odbioru

12 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 12 Modele zachowania l Modele zachowania są używane do ogólnego opisywania zachowania systemu l Przedstawię dwa typy modeli zachowania Model przepływu danych pokazujący jak dane są przetwarzane przez system Model maszyny stanowej pokazujący jak system reaguje na zdarzenia wewnętrzne lub zewnętrzne l Oba te modele są potrzebne, aby opisać zachowanie systemu

13 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 13 Model przepływu danych l Pokazują jak system przetwarza dane l Dane są przekształcane w każdym kroku l Integralna część wielu metod analitycznych l Prosta i intuicyjna notacja, zrozumiała dla klienta l Pokazują przetwarzanie danych od początku do końca

14 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 14 DFD obsługi zamówień Wypełnij blankiet zamówienia Zarejestruj zamówienie Sprawdź zamówienie Zaktualizuj budżet dostępnych środków Wyślij do dostawcy Plik budżetu Plik zamówień Szczegóły zamówienia Wypełniony blankiet zamówienia Podpisany formularz zamówienia Podpisany formularz zamówienia Podpisany formularz zamówienia Wartość zamówienia + informacje księgowe Sprawdzone i podpisane zamówienie +informacja o zamówieniu Szczegóły zamówienia + czysty blankiet zamówienia

15 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 15 Diagramy przepływu danych l DFDs modelują system z punktu widzenia funkcjonalności l Śledzenie i dokumentowanie jak dane są przetwarzane przez system pomaga lepiej zrozumieć całość systemu l Diagramy przepływu danych mogą być używane do pokazywania wymiany danych pomiędzy systemem a jego otoczeniem

16 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 16 DFD warsztatu CASE Edytor projektów Analizator projektów Weryfikator projektów Generator szkieletu kodu Generator raportów Baza danych z projektami Baza danych z projektami Wykorzystywane projekty Gotowy projekt Sprawdzony projekt Analiza projektu Sprawdzony projekt Kod wynikowy Raport dla użytkownika Wstępny projekt

17 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 17 Modele maszyn stanowych l Służą do opisywania zachowania systemu, gdy reaguje na wewnętrzne lub zewnętrzne zdarzenia l Są szczególnie przydatne w systemach czasu rzeczywistego l Modele maszyn stanowych używają węzłów do opisów stanów a strzałek do opisu zdarzeń. Kiedy występuje zdarzenie system przechodzi z jednego stanu do drugiego l Grafy stanów są częścią UML-a.

18 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 18 Model kuchenki mikrofalowej Pełna moc do: ustaw moc = 600 Połowa mocy do: ustaw moc = 300 Działanie do: podgrzewanie Gotowy do: wyświetlaj Gotowy Niegotowy do: wyświetlaj Czekam Ustawianie czasu do: odczytaj liczbę exit: ustaw czas Oczekiwanie do: wyświetlaj godzinę Oczekiwanie do: wyświetlaj godzinę Pełna moc Połowa mocy Połowa mocy Pełna moc Stoper Liczba Otworzono drzwiczki Zamknięto drzwiczki PoczątekZamknięto drzwiczki Otworzono drzwiczki Zatrzymaj

19 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 19 Opis stanów modelu

20 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 20 Opis bodźców modelu

21 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 21 Grafy stanów l Pozwala na dekompozycję modelu na podmodele l Krótka informacja o działaniach zawarta po słowie do l Mogą być uzupełniane za pomocą tabel z opisami stanów i bodźców

22 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 22 Działanie kuchenki mikrofalowej Sprawdzanie do: sprawdź stan Alarm do: wyświetl zdarzenie Gotowanie do: praca generatora Wykonano do: włącz brzęczyk na 5s. Działanie OczekiwanieNiegotowy Awaria talerza obrotowego Awaria źródła fal Koniec czasu Czas OK Otworzono drzwiczki Zatrzymaj

23 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 23 Znaczeniowe modele danych l Używane do opisu logicznej struktury danych przetwarzanych przez system l Model związków encji przedstawia encje w systemie, związki pomiędzy nimi i ich atrybuty l Szeroko używane w bazach danych. Mogą być bezpośrednio przekształcane w tabele l Brak oddzielnej notacji w UML, ale można wykorzystać w tym celu modele obiektów i ich związków

24 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 24 Znaczeniowy model danych projektu oprogramowania Projekt nazwa opis data-u data-m Wiązanie nazwa typ Węzeł nazwa typ Etykieta nazwa treść ikona ma-węzły jest n n 1 n 1 n 1 n1 21 ma-wiązania wiązania ma-etykietki

25 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 25 Słowniki danych l Słownik danych to lista wszystkich nazw użytych w modelu systemu. Zawiera również opisy encji związków i atrybutów l Zalety Wspomaga zarządzanie nazwami i zapobiega duplikatom Przechowuje informacje o przedsiębiorstwie łącząc analizę, projekt, implementację i ewolucję l Większość narzędzi CASE zawiera wsparcie dla słowników danych

26 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 26 Wpisy w słowniku danych

27 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 27 Modele obiektowe l Modele obiektowe opisują system używając obiektów i klas l Klasa jest abstrakcją zbioru obiektów, ze wspólnymi atrybutami i usługami dostarczanymi przez te obiekty l Można stworzyć następujące typy modeli: Modele dziedziczenia Modele agregacja Modele interakcji

28 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 28 Modele obiektowe l naturalna metoda odwzorowywania bytów ze świata rzeczywistego przetwarzanych przez system l Byt abstrakcyjne są trudniejsze do wymodelowania l Identyfikacja klas jest uważana za trudny proces wymagający doskonałej znajomości dziedziny l Klasy opisujące byty dziedziny mogą być używane w wielu różnych systemach

29 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 29 Modele dziedziczenia l Organizują klasy w hierarchie l Klasy na szczycie reprezentują wspólne cechy wszystkich klas l Obiekty dziedziczą atrybuty i usługi z jednej lub więcej nadklas l Jeśli chce się uniknąć duplikowania w różnych gałęziach, to projektowanie hierarchii klas jest rzeczą skomplikowaną

30 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 30 Unified Modeling Language l Został stworzony przez twórców używanych metod projektowania i analizy obiektowej l Stał się standardem służącym do obiektowego modelowania systemów l Notacja Klasy są prostokątami z nazwą na górze, atrybutami w środku i operacjami na dole Relacje pomiędzy klasami są liniami łączącymi klasy Dziedziczenie jest nazywane generalizacją i obrazuje się je raczej w górę, a nie w dół jak w innych metodach

31 Hierarchia klas biblioteki Składnik biblioteki Numer katalogowy Data zakupu Cena Typ Stan Liczba kopii Nabądź() Skataloguj() Usuń() Udostępnij() Zwróć() Składnik opublikowany Tytuł Wydawca Składnik utrwalony Tytuł Nośnik Książka Autor Data wydania ISBN Czasopismo Rok Numer Film Reżyser Data ukazania się Dystrybutor Program komputerowy Wersja Platforma

32 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 32 Dziedziczenie wielokrotne l Zamiast dziedziczyć atrybuty i usługi po jednej klasie, systemy, które wspierają dziedziczenie wielokrotne pozwalają jednej klasie dziedziczyć z wielu klas l Mogą prowadzić do konfliktów semantycznych, jeśli atrybuty lub usługi mają te same nazwy w nadklasach, a różną semantykę l Reorganizacja hierarchii klas jest wtedy bardziej skomplikowana

33 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 33 Dziedziczenie wielokrotne Liczba taśm Mówiąca książka Autor Wydanie Data wydania ISBN Książka Mówca Czas trwania Data zapisu Zapis mowy

34 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 34 Agregacja obiektów l Agregacje pokazują jak klasy będące zbiorami są złożone z obiektów innych klas l Znaczenie podobne do bycia częścią w znaczeniowym modelu danych

35 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 35 Agregacja obiektów Kaseta video Zawartość Notatki Tekst Przezrocza Zadanie Punkty Rozwiązanie Tekst Diagramy Ćwiczenia Liczba zadań Opis Tytuł wykładu Numer Rok Wykładowca Pakiet do nauki

36 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 36 Modelowanie zachowania obiektów l Model zachowania pokazuje interakcje pomiędzy obiektami, które prowadzą do określonego zachowania systemu wyspecyfikowanego jako przypadek użycia l Diagramy kooperacji są używaną w UML metodą przedstawiania interakcji pomiędzy obiektami

37 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 37 Prośba o składnik elektroniczny :Użytkownik biblioteki Ecat: Katalog Wyszukaj Zamów Wyświetl : Składnik biblioteki Lib1:: Serwer sieciowy Zaakceptuj warunki Wyślij warunki Skompresuj Dostarcz

38 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 38 Warsztaty CASE l Zbiór narzędzi, które wspólnie wspomagają tworzenie oprogramowania i czynności takie jak: analiza, projektowanie i testowanie l Narzędzia do analizy i projektowania wspierają modelowanie systemu zarówno podczas zbierania wymagań jak i tworzenia systemu l Warsztaty mogą wspierać konkretną metodę projektowania jak również mogą pomagać przy tworzeniu różnych typów modeli

39 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 39 Warsztat do analizy i projektowania Centralne repozytorium informacji Strukturalne narzędzia do rysowania diagramów Słownik danych Udogodnienia do generowania raportów Generator kodu Narzędzia do tworzenia formularzy Narzędzia do analizy i sprawdzania projektów Udogodnienia do importu i eksportu Udogodnienia do stawiania zapytań

40 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 40 Części warsztatu analitycznego l Edytor diagramów l Narzędzia do analizy i sprawdzania projektu l Repozytorium z językiem zapytań l Słownik danych l Narzędzia do definiowania i generowania raportów l Narzędzia do definiowania formularzy l Udogodnienia do importu i eksportu l Narzędzia do generowania kodu

41 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 41 Główne tezy l Model jest abstrakcyjnym obrazem systemu. uzupełniające się typy modeli dostarczają różnych rodzajów informacji l Model kontekstowy przedstawia pozycję systemu w środowisku i otoczeniu innych systemów l Modele przepływów danych pokazują kolejność obrabiania danych przez system l Maszyny stanowe obrazują zachowanie systemu w odpowiedzi na zdarzenia zewnętrzne i wewnętrzne

42 ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 42 Główne tezy l Znaczeniowe modele danych pokazują strukturę logiczną danych importowanych lub eksportowanych z systemu l Modele obiektowe opisują encje ich klasyfikację i agregację. l Warsztaty CASE wspomagają opracowywanie modeli systemu


Pobierz ppt "©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Modele systemu l Abstrakcyjne opisy sytemu, którego wymagania są opisywane."

Podobne prezentacje


Reklamy Google