(Microsoft PowerPoint - NCA_Wyklad_05.ppt [tryb zgodno\234ci])
Transkrypt
(Microsoft PowerPoint - NCA_Wyklad_05.ppt [tryb zgodno\234ci])
Narzędzia CASE - analiza 5-1 Modelowanie wymagań - dynamika Modelowanie logiki aplikacji – scenariusze Podział modelu funkcjonalnego na jednostki – przypadki użycia Relacje między przypadkami użycia: <<invoke>> i generalizacja. Punkty rozszerzenia przypadków użycia Scenariusze w notacji POD(D) Narzędzia CASE – analiza Scenariusze Scenariusz opisuje przykładowy dialog użytkownika (aktora) systemu z tymże systemem. Dialog rozpoczyna użytkownik. W ramach dialogu, system wykonuje określone czynności. Dialog kończy się jakimś wymiernym dla użytkownika efektem. Narzędzia CASE – analiza A Chciałbym dodać sprawdzian --------------------------------------------------------------------- Wybierz przedmiot z listy A Matematyka, 5 semestr Wprowadź dane sprawdzianu A --------------------------------------------------------------------- Sprawdzian: nr 3, całki, 8 Sprawdzian dodany do przedmiotu! --------------------------------------------------------------------- Slajd 5.2 Narzędzia CASE - analiza 5-2 Definicja scenariusza Alistair Cockburn „Jak pisać efektywne przypadki użycia”: „Scenariusz jest sekwencją interakcji dziejących się pod pewnymi warunkami, w celu osiągnięcia celu aktora głównego oraz mających określony rezultat z punktu widzenia tego celu. Interakcje rozpoczynają się od akcji uruchamiającej i są kontynuowane aż do osiągnięcia celu lub do wystąpienia niepowodzenia, oraz dopóki system nie wykona wszystkich swoich zadań z punktu widzenia interakcji”. Narzędzia CASE – analiza Slajd 5.3 Definicja przypadku użycia Alistair Cockburn „Jak pisać efektywne przypadki użycia”: „Przypadek użycia jest zbiorem możliwych scenariuszy, opisujących dialog między analizowanym systemem i zewnętrznymi aktorami, których główną cechą jest cel aktora w stosunku do zadeklarowanego zakresu obowiązków systemu, pokazujących jak ten cel może być osiągnięty lub nie.” W języku UML przypadek użycia jest określany jako „klasyfikator”. Oznacza to, że przypadek użycia posiada swoje instancje. Specyfikacja języka nie wyjaśnia precyzyjnie, czym mogą być te instancje (obiekty) przypadku użycia. Przyjmujemy, że są one jego scenariuszami. Wobec takiego założenia, przypadek użycia jest pewną klasą grupującą obiekty będące scenariuszami prowadzącymi w kierunku tego samego celu. Narzędzia CASE – analiza Slajd 5.4 Narzędzia CASE - analiza 5-3 Czym jest przypadek użycia? Przypadek użycia jest opisem zachowania systemu komunikującego się z jednym bądź więcej aktorami. Zarejestruj dane pojazdu Aby opis zachowania stanowił przypadek użycia, muszą być spełnione trzy warunki : Opis musi rozpoczynać się od interakcji aktora z systemem Opis musi przedstawiać wymianę komunikatów pomiędzy aktorem a systemem Opis musi jasno określać ostateczny cel osiągnięty na końcu wymiany komunikatów Po osiągnięciu celu musi istnieć możliwość rozpoczęcia innego przypadku użycia (lub ponownego wykonania obecnego). Ważne: Przypadek użycia z reguły zawira również alternatywne sekwencje wymiany komunikatów które prowadzą do tego samego celu lub porażki . BŁAD Narzędzia CASE – analiza OK! Slajd 5.5 Przypadek użycia jako „czarna skrzynka” Opisując przypadek użycia powinniśmy traktować system jako „czarną skrzynkę” Opis przypadku użycia powinien koncentrować się na zachowaniu widocznym dla użytkownika. Cała „mechanika” wewnątrz systemu powinna zostać ukryta. System jest opisany jako „biała skrzynka” dopiero na etapie projektowania architektury. Przypadki użycia z aktorami ludzkimi opisują tylko interfejs użytkownika i efekty biznesowe zachowania systemu (żadnej informacji o danych przekazywanych z klienta do serwera, danych przechowywanych w tabelach bazodanowych, rozpoczynaniu nowych wątków etc.). Narzędzia CASE – analiza Slajd 5.6 Narzędzia CASE - analiza 5-4 Notacja modelu przypadków użycia Aktor - w notacji modelu przypadków użycia, aktor jest oznaczany jako ikona człowieka narysowanego prostymi kreskami Narzędzia CASE – analiza Slajd 5.7 Notacja modelu przypadków użycia Przypadek użycia – w notacji modelu przypadków użycia, przypadek jest oznaczany jako elipsa z nazwą przypadku w środku lub pod elipsą Narzędzia CASE – analiza Slajd 5.8 Narzędzia CASE - analiza 5-5 Relacje między przypadkami użycia Typy relacji w modelu przypadków użycia: • use – oznaczona jako kreska pomiędzy aktorem a przypadkiem użycia • invoke – oznaczana jako przerywana strzałka ze stereotypem <<invoke>> Narzędzia CASE – analiza Slajd 5.9 Relacja generalizacji dla przypadków użycia Relację generalizacji stosujemy, gdy chcemy wprowadzić dwa podobne do siebie przypadki użycia Relację oznaczamy strzałką z grubym grotem Przypadek użycia ogólny opisuje „generyczne” zachowanie się systemu we współpracy z użytkownikiem Przypadek użycia szczegółowy przedstawia różnice (zazwyczaj: rozszerzenie funkcjonalności) w stosunku do przypadku użycia ogólnego Narzędzia CASE – analiza Obejrzenie szczegółowej listy studentów Obejrzenie listy studentów Slajd 5.10 Narzędzia CASE - analiza 5-6 Diagram przypadków użycia Na diagramach przypadków użycia pokazujemy aktorów, przypadki użycia oraz relacje między nimi. SODa «invokes» Pracow nik dziekanatu Potw ierdzenie w ydania indeksu Potw ierdzenie złożenia indeksu Dokonanie rej estracj i studenta po terminie «invokes» Obej rzenie listy studentów «invokes» Przydzielenie studentów do grup «invokes» Obej rzenie listy studentów przez pracow nika dziekanatu Potw ierdzenie skreślenia studenta Przej rzenie historii osiągnięć studenta «invokes» Dziek an Obej rzenie listy studentów przez Dziek ana «invokes» «invokes» «invokes» «invokes» Dokonanie zmiany rej estracj i studenta Narzędzia CASE – analiza Slajd 5.11 Opis przypadków użycia systemu Kompletny opis przypadku użycia zawiera: nazwę przypadku użycia – krótko opisuje cel, aktora (lub aktorów) – może być tylko jeden główny aktor i ewentualnie aktorzy drugoplanowi, opis słowny – paragraf tekstu, który opisuje przepływ komunikatów wewnątrz przypadku użycia i warunki pod jakimi może być wykonany przypadek użycia, punkty rozszerzeń – miejsca, z których mogą być wywołane inne przypadki użycia UWAGA: Wszystkie powyższe elementy opisu przypadku użycia oprócz opisu słownego są zawarte na diagramie przypadków użycia – nie musimy powielać tych informacji w opisie tekstowym. Opisując przypadki użycia oprogramowania, opis jest bardziej szczegółowy – zawiera scenariusze i zrzuty ekranu (scenopisy). Narzędzia CASE – analiza Slajd 5.12 Narzędzia CASE - analiza 5-7 Opis słowny przypadku użycia Spraw dzenie ocen z zaj ęć Drukow anie ocen «invokes» Student {Pre (stan): [Student] jest zalogowany do systemu.} Przypadek użycia umożliwia [Studentowi] sprawdzenie, jakie [Oceny cząstkowe] i [Oceny końcowe] uzyskał. Po uruchomieniu przypadku użycia, system pokazuje [Komunikat o ocenach studenta] dla aktualnego [Semestru nauki]. [Student] może też wybrać jeden z wcześniejszych [Semestrów nauki]. Wtedy system pokazuje [Komunikat o ocenach studenta] dla wybranego [Semestru nauki]. Możliwe jest też [(Drukowanie ocen)]. Ocena cząstkowa Student siatka siatka Ocena końcowa przedmiotów na przedmiotów na siatka Semestr nauki dany semestr dany semestr przedmiotów na liczba od 1 do 10 zawierająca zawierająca określająca poziom dany semestr studiów i status zawierająca studenta. Narzędzia CASE – analiza Slajd 5.13 Punkty rozszerzenia przypadków użycia Pokazanie listy z Spraw dzenie ocen zaj ęć przedmiotów Student 8 system wyświetla listę przedmiotów dla danego studenta. Możliwe jest [(Wybranie przedmiotu obieralnego)], gdy [okres rejestracyjny jest otwarty]8. Narzędzia CASE – analiza Wybranie «invokes» [okres rejestracyjny jest otwarty] Drukow anie ocen przedmiotu obieralnego Punkt rozszerzenia: określenie miejsca w scenariuszu przypadku użycia, w którym można uruchomić drugi przypadek użycia. Punkt rozszerzenia może zawierać warunek uruchomienia. Slajd 5.14 Narzędzia CASE - analiza 5-8 Pisanie scenariuszy: zdania POD(D) Najprostsze możliwe zdania! Admin podaje dane użytkownika. Nauczyciel zatwierdza oceny. Podmiot Orzeczenie Dopełnienia (1 lub 2) System dodaje ocenę do listy ocen. Narzędzia CASE – analiza Slajd 5.15 Przykładowy scenariusz przypadku użycia Scenariusze przypadku użycia Obejrzenie listy studentów Scenariusz 1: Pokazanie samej listy studentów {Podstawowy} 1. Pracownik dziekanatu zgłasza chęć obejrzenia [Listy studentów]. 2. System pokazuje [Formularz kryteriów wyszukiwania studentów]. 3. Pracownik dziekanatu wypełnia [Formularz kryteriów wyszukiwania studentów]. ==> [Wybrano OK] 4. System poszukuje [Studentów] zgodnych z [Kryteriami wyszukiwania studentów]. 5. System pokazuje [Okno listy studiujących]. ==> Rozszerzenie: [(Dokonanie rejestracji studenta po terminie)] ==> Rozszerzenie: [(Potwierdzenie złożenia indeksu)] ==> Rozszerzenie: [(Potwierdzenie wydania indeksu)] 6. Pracownik dziekanatu zgłasza chęć zamknięcia [Okna listy studentów]. 7. System zamyka [Okno listy studentów]. Narzędzia CASE – analiza Slajd 5.16 Narzędzia CASE - analiza 5-9 Diagramy czynności dla przypadku użycia Obok scenariuszy głównych można napisać scenariusze alternatywne (np. niepomyślne). Rozpoczęcie Pracownik dziekanatu zgłasza chęć obejrzenia [Listy studentów]. System pokazuje [Formularz kryteriów wyszukiwania studentów]. Wszystkie scenariusze przypadku użycia można przedstawić za pomocą diagramu czynności. Pracownik dziekanatu wypełnia [Formularz kryteriów wyszukiwania studentów]. [O.K.] System pokazuje wstępnie wypełnione [Okno kryteriów wyszukiwania studentów] z poprzednimi [Kryteriami wyszukiwania System poszukuje [Studentów] zgodnych z [Kryteriami wyszukiwania studentów]. System pokazuje [Okno listy studiuj ących]. Pracownik dziekanatu zgłasza chęć zmiany [Kryteriów wyszukiwania studentów]. Pracownik dziekanatu zgłasza chęć obej rzenia [Danych rejestracyjnych Narzędzia CASE – analiza Pracownik dziekanatu zgłasza chęć Slajd 5.17 Zgodność scenariuszy ze słownikiem (modelem klas) Słownik opisuje mapę „terytorium użytkownika” systemu. Słownik ujednolica terminologię używaną w różnych scenariuszach. 1. Dziekan chce dodać nowy wykład do studiów 2. System pyta o semestr 3. Dziekan wprowadza semestr 1. 4. Dean System pyta o dane wykładu 2. 5. Dean enters the semester Dziekan danethe wykładu 1.wprowadza Dean enters semester 3. 6. System asks for data of the lecture System dodaje wykład do listy wykładów 2. System asks for data of the lecture 4. Dean enters the data of the lecture 3. Dean enters the data of the lecture 5. System przypisuje nauczyciela do wykładu 4. System prints the data of the student Wykład Student Studia Nauczyciel Lista wykładów Semestr Narzędzia CASE – analiza Slajd 5.18 Narzędzia CASE - analiza 5-10 Ćwiczenie Proszę otworzyć w narzędziu CASE przykładowy diagram przypadków użycia Proszę dodać kilka (3-4) nowe przypadki użycia Proszę dodać co najmniej jedną relację <<invoke>> Proszę dodać co najmniej jedną relację generalizacji Narzędzia CASE – analiza Slajd 5.19