KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Podobne dokumenty
Diagramy przypadków użycia

Modelowanie przypadków użycia. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Inżynieria oprogramowania

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

Diagram przypadków użycia

Przypadki użycia (use cases) Po co są przypadki użycia? Próby definicji Podstawowe pojęcia Notacje Relacje Dokumentacja Kroki metody Przykłady

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

Diagramy czynności. Widok logiczny. Widok fizyczny

Język UML w modelowaniu systemów informatycznych

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

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

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

Modelowanie obiektowe - Ćw. 3.

Modelowanie i analiza systemów informatycznych Spis treści

Podstawy programowania III WYKŁAD 4

Inżynieria oprogramowania II

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

Projekt aplikacji internetowej specyfikacja wymagań (cz.1)

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

ZARZĄDZANIE PROCESAMI I PROJEKTAMI. Zakres projektu. dr inż. ADAM KOLIŃSKI ZARZĄDZANIE PROCESAMI I PROJEKTAMI. Zakres projektu. dr inż.

WOJSKOWA AKADEMIA TECHNICZNA

Inżynieria wymagań. Wykład 3 Zarządzanie wymaganiami w oparciu o przypadki użycia. Część 5 Definicja systemu

Analiza procesów: notacja UML, modele przypadków użycia, Rich Picture

Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Język UML w modelowaniu systemów informatycznych

Projektowanie systemów informatycznych. Diagramy przypadków użycia

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

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

Analiza i projektowanie obiektowe 2015/2016. Wykład 2: Przypadki użycia

Określanie wymagań. Cele przedsięwzięcia. Kontekst przedsięwzięcia. Rodzaje wymagań. Diagramy przypadków użycia use case diagrams

Wykład 1 Inżynieria Oprogramowania

Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia

Faza Określania Wymagań

Agenda. Cele projektu Wizja projektu Modelowanie biznesowe Wymagania użytkownika Przypadki użycia

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

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

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Specyfikowanie wymagań przypadki użycia

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

Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia

Inżynieria oprogramowania. Wykład 7 Inżynieria wymagań: punkty widzenia, scenariusze, przypadki użycia

TECHNOLOGIE OBIEKTOWE. Wykład 3

Załącznik nr 1. Specyfikacja. Do tworzenia Mapy Kompetencji

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

Inżynieria oprogramowania wykład IV Faza określenia wymagań

Tworzenie warstwy zasobów projektowanie metodą strukturalną

Tom 6 Opis oprogramowania

Modelowanie i analiza systemów informatycznych

Język UML. dr inż. Piotr Szwed C3, pok

Faza analizy (modelowania) Faza projektowania

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Diagramy przypadków użycia

Inżynieria wymagań. Wykład 2 Proces pisania przypadków użycia. Część 6 Wskazówki i sugestie

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

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

Cele przedsięwzięcia

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

SysML Tworzenie diagramu aktywności SysML005

UML w Visual Studio. Michał Ciećwierz

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

Inżynieria oprogramowania. Część 5: UML Diagramy klas

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

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

MiASI. Modelowanie systemów biznesowych. Piotr Fulmański. 7 stycznia Wydział Matematyki i Informatyki, Uniwersytet Łódzki, Polska

Inżynieria wymagań. Wykład 2 Proces pisania przypadków użycia. Część 3 Identyfikacja przypadków użycia

Technologie informacyjne - wykład 12 -

IO - inżynieria oprogramowania. dr inż. M. Żabińska, zabinska@agh.edu.pl

Inżynieria wymagań. Wykład 3 Zarządzanie wymaganiami w oparciu o przypadki użycia. Część 9 Strukturyzacja modelu przypadków użycia

Narzędzia CASE dla.net. Łukasz Popiel

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

Rysunek 1: Przykłady graficznej prezentacji klas.

Projektowanie oprogramowania

Tom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania

Diagramy przypadków uŝycia. związków między nimi

Modelowanie obiektowe - Ćw. 6.

Laboratorium 5 - Projektowanie programów zorientowanych obiektowo. Indywidualny projekt programistyczny

Procesowa specyfikacja systemów IT

Technologia programowania

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

IX Konferencja Informatyki Stosowanej

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

Zasady organizacji projektów informatycznych

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Inżyniera wymagań

KARTA PRZEDMIOTU. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI Ogólne umiejętności posługiwania się komputerem

Procedura tworzenia i aktualizacji kart i katalogu usług

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

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

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

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

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

Projektowanie systemów informatycznych

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

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

POLITECHNIKA OPOLSKA

MAS dr. Inż. Mariusz Trzaska

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Ź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

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

Transkrypt:

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, jakie na produkt końcowy nakłada klient. Warunki te są punktem wyjścia do zdefiniowania cech systemu, opisujących jego funkcjonalność, wydajność, wiarygodność czy ergonomiczność. Należy zwrócić uwagę na to, że osobą, która weryfikuje system pod kątem spełnienia bądź niespełnienia oczekiwań, jest klient. Dlatego tak ważne jest, aby wymagania były zdefiniowane w sposób możliwie najpełniejszy i jednoznaczny. Dodatkowo sposób zapisu tych wymagań powinien służyć nie tylko projektantom systemu, ale również musi być zrozumiały i jasny dla klienta, dzięki czemu może on dokonać weryfikacji samego procesu pozyskiwania wymagań. Twórcy systemu zyskują wówczas poczucie, że to, co budują jest tym, czego użytkownicy i klienci potrzebują. Przykładem sposobu zapisu wymagań jest Model Przypadków Użycia. Opisuje on to, co system będzie robił. Jest swego rodzaju kontraktem pomiędzy klientami a twórcami. Umożliwia użytkownikom i klientom weryfikację czy system jest rzeczywiście tym, czym być powinien. Z punktu widzenia twórców, dzięki modelowi przypadków użycia są oni w stanie dokonać weryfikacji swojej pracy (czy budujemy to, czego się od nas oczekuje). Proces wytwarzania oprogramowania, którego podstawą są przypadki użycia nazywa się procesem sterowanym przypadkami użycia (ang. Use-case driven)

Artefakty związane z wymaganiami Rysunek 1 pokazuje elementy projektu związane z wymaganiami. Artefakty związane z wymaganiami Słowniczek Model przypadków użycia Specyfikacja uzupełniająca Aktorzy Przypadki użycia Diagram przypadków użycia Specyfikacje przypadków użycia Rys.1 Artefakty związane z wymaganiami. Słowniczek Przy tworzeniu systemu dla określonej dziedziny problemowej (biznesowej) napotyka się wiele pojęć, których znaczenie może być nie do końca zrozumiałe dla projektantów systemu. Jednocześnie wiele pojęć z dziedziny informatyki może być obce dla klientów i użytkowników. Dlatego dla zachowania spójności i umożliwienia poprawnej komunikacji pomiędzy członkami zespołu projektowego oraz klientami należy zdefiniować pojęcia, które będą wykorzystywane w całej dokumentacji projektowej. Definicja takich pojęć powinna być umieszczona w tzw. Słowniku Pojęć. Aby Słownik Pojęć spełniał swoje zadanie, (referencja dla znaczeń wyrażeń wykorzystywanych w dokumentacji) należy w trakcje tworzenia dokumentacji

projektowej (wymagania, projekt, dokumentacja użytkownika) konsekwentnie używać nazw w nim zdefiniowanych. Specyfikacja uzupełniająca Nie wszystkie wymagania da się wyrazić w opisanym poniżej modelu przypadków użycia. W przypadku tzw. wymagań niefunkcjonalnych niezbędna jest dodatkowa dokumentacja zwana specyfikacją uzupełniającą. Do wymagań opisanych w tym dokumencie należą m.in.: oczekiwana wydajność systemu; odporność na błędy, czyli niezawodność; zdolność przetwarzania danych przy dużym ich natężeniu, itp. Mimo tego, że dokument ten jest nazywany specyfikacją uzupełniającą to pełni on bardzo ważną rolę w opisie wymagań dla projektowanego systemu. Model przypadków użycia Podstawowym zadaniem modelu przypadków użycia jest opisanie działania systemu z punktu widzenia jego użytkowników (aktorów w modelu). Innymi słowy model przypadków użycia mówi, co system ma robić natomiast nie odpowiada na pytanie jak będzie to robił. Model przypadków użycia składa się z następujących elementów: Aktorzy Przypadki użycia Specyfikacje przypadków użycia Aktorem jest dowolny byt zewnętrzny, który uczestniczy w interakcji z systemem. Każdy potencjalny aktor może wchodzić w interakcję z systemem na pewną liczbę jemu właściwych sposobów. Każdy z tych sposobów nosi nazwę przypadku użycia i reprezentuje przepływ operacji w systemie związany z obsługą zadania zleconego przez aktora w procesie interakcji. Należy pamiętać o tym, że aktor nie oznacza konkretnej osoby. Przypadki użycia reprezentuje sekwencję operacji, niezbędnych do wykonania zadania zleconego przez aktora, np. potwierdzenie pisma, złożenie zamówienia, itp. Każde takie wyróżnialne zadanie jest opisywane przez osobny przypadek użycia.

Zależności pomiędzy wszystkimi przypadkami użycia i wszystkimi aktorami wyraża się w ramach modelu przypadków użycia na diagramach przypadków użycia. Specyfikacja przypadku użycia to szczegółowy opis działania systemu dla określonego przypadku użycia. Aktorzy Aktorem jest wszystko to, co wymienia dane z systemem i, z punktu widzenia systemu, należy do środowiska zewnętrznego. Zazwyczaj aktorem jest osoba, ale może nim być także pewna organizacja (np. biuro prawne) lub inny system komputerowy. Aktor modeluje grupę osób pełniących pewną rolę, a nie konkretną osobę. Jedna osoba może wchodzić w interakcję z systemem z pozycji wielu aktorów; np. być zarówno sprzedawcą, jak i klientem. I odwrotnie, jeden aktor może odpowiadać wielu konkretnym osobom, np. aktor strażnik budynku. Wyszukiwanie aktorów Zanim rozpoczniemy wyszukiwanie przypadków użycia należy wyszukać aktorów naszego systemu. Dopiero, gdy mamy zdefiniowanych użytkowników naszego systemu możemy na tej podstawie określić, jakiej funkcjonalności potrzebują. Aby poprawnie określić aktorów należy odpowiedzieć na następujące pytania: Jaka grupa użytkowników potrzebuje wspomagania ze strony systemu (np. osoba wysyłająca korespondencję)? Jacy użytkownicy są konieczni do tego, aby system działał i wykonywał swoje funkcje (np. administrator systemu)? Z jakich elementów zewnętrznych (innych systemów, komputerów, czujników, sieci, itp.) musi korzystać system, aby realizować swoje funkcje. Po wyszukaniu aktorów, należy ustalić: nazwę dla każdego aktora/roli, zakresy znaczeniowe dla poszczególnych nazw aktorów oraz relacje pomiędzy zakresami (np. sekretarka pracownik administracji pracownik dowolna osoba). Niekiedy warto ustalić hierarchię dziedziczenia dostępu do funkcji systemu dla aktorów.

Przypadki użycia KATEDRA INFORMATYKI STOSOWANEJ Przypadek użycia opisuje zadanie, które wykonuje system dla konkretnego aktora (aktorów). Istotnym jest fakt, że opis ten jest dokonywany z punktu widzenia aktora (użytkownika systemu). Czyli przypadek użycia mówi nam, jakie działania wykonuje system, aby aktor mógł otrzymać określony wynik. Sekwencja zdarzeń przypadku użycia jest inicjowana przez aktora, który zgłasza prośbę wykonania przez system pewnego zadania. Wskazówki do wyszukiwania przypadków użycia. Dla każdego aktora, znajdź funkcje (zadania), które powinien wykonywać w związku z jego działalnością w zakresie zarówno dziedziny przedmiotowej, jak i wspomagania działalności systemu informacyjnego. Czy aktor powinien być poinformowany o pewnych zdarzeniach, które zachodzą w systemie? Czy aktor musi informować system o zmianach, jakie zachodzą w środowisku zewnętrznym? Jakie informacje muszą być modyfikowane lub tworzone w systemie? Staraj się powiązać w jeden przypadek użycia zespół funkcji realizujących podobne cele. Unikaj rozbicia jednego przypadku użycia na zbyt wiele podprzypadków. Nazwy dla przypadków użycia: powinny być krótkie, ale jednoznacznie określające charakter zadania lub funkcji. Nazwy powinny odzwierciedlać czynności z punktu widzenia aktorów, a nie systemu, np. wpłacanie pieniędzy, a nie przyjęcie pieniędzy od klienta. Diagramy przypadków użycia Diagram przypadków użycia obrazuje: Związki pomiędzy aktorami a przypadkami użycia dany przypadek użycia jest powiązany z jednym bądź kilkoma aktorami. Rys. 2 Powiązanie pomiędzy aktorem i przypadkiem użycia (jednokierunkowe)

Związki pomiędzy aktorami i aktorami (związek uogólnienia) Związki pomiędzy przypadkami użycia a przypadkami użycia (include, extend, związek uogólnienia) Diagramy przypadków użycia nie pokazują kolejności, w jakiej ewentualnie mogłyby się wykonywać przypadki użycia. PrzypUż1 Aktor1 PrzypUż2 PrzypUż3 Aktor4 Aktor2 PrzypUż4 PrzypUż4 Aktor3 PrzyuUż6 PrzypUż8 Aktor5 Specyfikacje przypadków użycia Diagramy aktywności Rys. 3 Diagram przypadków użycia Oczywiście samo znalezienie i nazwanie przypadku użycia nie wystarczy, aby w pełni opisać zadania systemu. Dlatego każdy przypadek użycia jest opisany za pomocą specyfikacji przypadku użycia. Na specyfikację składają się następujące elementy: Nazwa Krótki opis Przepływ zdarzeń (sterowania) Powiązania

Diagramy przypadków użycia Wymagania specjalne Warunki wejściowe (ang. pre-conditions) Warunki wyjściowe (ang. post-conditions) Inne diagramy DiagramyAktywności KATEDRA INFORMATYKI STOSOWANEJ Zadaniem diagramu aktywności jest graficzny opis przepływu sterowania, składającego się na działanie wykonywane w przypadku użycia. Diagramy aktywności są opcjonalnym elementem specyfikacji przypadku użycia (nie jest to ich jedyna funkcja w UML). Elementy diagramu aktywności: Nazwa Aktywność reprezentuje wykonywanie pewnego działania, lub kroku w przepływie pracy Blok decyzyjny sprawdzenie warunków (ang. guard condition). W wyniku wybierana jest jedno z alternatywnych przejść. Bloku można użyć również w przypadku, gdy zbiegają się alternatywne wątki. Przejście, z zasady nie opisywane, ponieważ z reguły oznacza zakończenie aktywności; może być opatrzone warunkiem, może też być oznaczone symbolem iteracji; akcje opisujące przejścia powinny być raczej dołączone do którejś z aktywności. Sztabka synchronizującą (ang. synchronization bar); może być typu fork (rozdzielenie jednej operacji na kilka przebiegających równolegle) lub typu join (złączenie kilku operacji równoległych w jedną). Stan początkowy Stan końcowy

Wybierz kurs Sprawdź terminarz Sprawdz wymagania wstępne [ Kontrola pomyślna ] [ Kontrola niepomyślna ] Przypisz do kursu Rozwiąż problem Student dodany do kursu Uaktualnij terminarz Rys. 4 Przykładowy diagram aktywności

ZADANIA: Zadanie 1 Zadanie 1: Burza mózgów grupa (czas 45 min.) Na podstawie specyfikacji znajdującej dostarczonej przez prowadzącego, w 4 5 osobowych grupach należy określić potencjalnych aktorów oraz przypadki użycia dla systemu. Utwórz słowniczek projektu wykorzystując szablon słowniczek.dot. Utwórz dokument specyfikacji uzupełniającej wykorzystując szablon specyfikacja_uzupełniająca.dot. Zadanie 2: Tworzenie modelu Przypadków Użycia w programie Rational Rose indywidualnie (czas 45 min.) Zapoznaj się z własnościami aplikacji Rational Rose. Utwórz nowy model w programie Rational Rose. Nazwij go zgodnie z wybraną nazwą projektu. Dodaj do Widoku Przypadków Użycia (ang. Use Case View) przypadki użycia zdefiniowane w ćwiczeniu 1. Dodaj do Widoku Przypadków Użycia (ang. Use Case View) aktorów zdefiniowanych w ćwiczeniu 1. Zadanie 3. Tworzenie specyfikacji przypadków użycia indywidualnie (czas 60 min.) Dla każdego przypadku użycia utwórz dokument specyfikacji przypadku użycia wykorzystując szablon specyfikacj_przyp_uzyc.dot. We właściwościach dokumentu wpisz swoje nazwisko jako autora specyfikacji. W historii wersji wpisz swoje nazwisko jako autora wersji 1.0. Podłącz specyfikację do odpowiedniego przypadku użycia w modelu zbudowanym za pomocą Rational Rose.

Zadanie 4: Tworzenie diagramu przypadków użycia indywidualnie (czas 15 min.) Narysuj diagram przypadków użycia. Umieść na nim przypadki użycia oraz aktorów. Odpowiednio zdefiniuj powiązania pomiędzy aktorami a przypadkami użycia. Zadanie 5: Graficzne modelowanie przepływu zdarzeń dla przypadku użycia indywidualnie (czas 60 min.) Dla każdego przypadku użycia zdefiniuj diagram aktywności, który będzie graficznie opisywał przepływ sterowania dla przypadku użycia.