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

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

Projektowanie systemów informatycznych

Język UML w modelowaniu systemów informatycznych

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

Diagram przypadków użycia

Diagramy przypadków użycia

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

Modelowanie obiektowe - Ćw. 3.

Modelowanie i analiza systemów informatycznych Spis treści

Podstawy programowania III WYKŁAD 4

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

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

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

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

Analiza i projektowanie obiektowe 2017/2018. Wykład 2: Przypadki użycia

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

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

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

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

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

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Tworzenie warstwy zasobów projektowanie metodą strukturalną

INSTRUKCJA UŻYTKOWANIA USŁUGI mobile e-bank EBS

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

Diagramy przypadków użycia - MS Visio

Inżynieria oprogramowania II

System wspomagania obsługi pracy gabinetu stomatologicznego

4 Dokumentacja użytkowa

Tworzenie modelu konceptualnego systemu informatycznego część 1

MAS dr. Inż. Mariusz Trzaska

Prowadzenie rachunków bankowych, obsługa Kart oraz korzystanie z Elektronicznych Kanałów Dostępu osoby pełnoletnie

Przypadki użycia. Analiza. Model biznesowy. Specyfikacja wymagań. Model dziedziny problemu. Przypadki użycia

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

Plan wykładu 2. Model Przypadków Użycia (PU) systemu Diagram PU Opisy PU Związki w modelu PU, strukturalizacja

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

Bożena Wojnarowicz Głuszek, Wydział OSOZ

Prowadzenie rachunków bankowych, obsługa Kart oraz korzystanie z Elektronicznych Kanałów Dostępu osoby małoletnie

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

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

Płatności CashBill dla QuickCart

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

TECHNOLOGIE OBIEKTOWE. Wykład 3

Specyfikowanie wymagań przypadki użycia

PROJEKT INŻYNIERIA OPROGRAMOWANIA. Temat: System obsługi kasy - projekt wzorcowy

Obsługa bankowości mobilnej MobileBanking

Płatności CashBill dla shopgold

Instrukcja korzystania z platformy B2B Black Point S.A.

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

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

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

slajd 1 Model przypadków użycia Anna Bobkowska

PANEL ADMINISTRACYJNY SPRZEDAWCY SZYBKI START

Narysować diagram sekwencji pokazujący rejestrację wypożyczenia przez Jana Kowalskiego książki Potop

IX Konferencja Informatyki Stosowanej

Programowanie obiektowe

Rys. Przykładowy aktywacyjny

Pakiet na Dobry Początek

INSTRUKCJA OBSŁUGI PANELU ADMINISTRACYJNEGO MÓJ DOTPAY v0.1

Wybierz roczną prenumeratę wraz z poleceniem zapłaty i zyskaj!

III RACHUNKI BANKOWE DLA KLIENTÓW INSTYTUCJONALNYCH TAB. 2 Pozostałe rachunki

Espago Bill - Podręcznik użytkownika. Podręcznik użytkownika

Instrukcja użytkownika

Spis treści. Rejestracja/logowanie. Zmiana numeru konta klienta. Tworzenie nowej przesyłki. Zamawianie kuriera

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

V RACHUNKI OSZCZĘDNOŚCIOWO-ROZLICZENIOWE TAB. 2 Pozostałe rachunki oszczednościowo-rozliczeniowe

Split Payment (Podzielona płatność) w systemie KS-AOW

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym IAI-Shop (plugin dostępny w wersji ecommerce)

WYKAZ FUNKCJI SERWISÓW AKTYWNY DOSTĘP DO USŁUGI PEKAO24 DLA FIRM

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

Modelowanie Procesów Biznesowych Wykład 3 Notacja UML cz. 1

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

Projektowanie logiki aplikacji

SPECYFIKACJE WYMAGAŃ PRZYPADKI UŻYCIA (USE CASE)

Obsługa bankowości mobilnej MobileBanking

MOJA FIRMA PLUS. bankowość elektroniczna dla małych i średnich firm

Uzyskanie zaświadczenia o niekaralności przez internet

Instrukcja instalacji wtyczki Przelewy24

WellCommerce Poradnik: CRM

Klikając zaloguj do KIRI-BS zostaniemy przekserowani do strony logowania Bankowości Internetowej.

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

TELEFONEM DZIĘKI IKO MOBILNE

INSTRUKCJA UŻYTKOWNIKA SKLEPU INTERNETOWEGO PGG SP. Z O.O.

Inżynierski Projekt Zespołowy

Instrukcja instalacji wtyczki Przelewy24

Inżynieria oprogramowania

TAXI W KLASIE BIZNES. Przejazdy firmowe z mytaxi

Instrukcja użytkownika

ELEKTRONICZNE LISTY WPŁAT ZA AKTYWACJĘ Instrukcja

III RACHUNKI BANKOWE DLA KLIENTÓW INSTYTUCJONALNYCH TAB. 2 Pozostałe rachunki

Kartoteki 'Grupy opakowań' 'Grupy opakowań Otwórz' Grupy opakowań Kartoteki -> Grupy opakowań Nowy (Ctrl+N) Grupa opakowań Nowy Nazwę: Uwagi:

Instrukcja erejestracji Kliniki Nova.

V RACHUNKI OSZCZĘDNOŚCIOWO-ROZLICZENIOWE TAB. 1 PAKIETY

Systemy informatyczne. Modelowanie danych systemów informatycznych

Szczegółowa informacja o samodzielnej rejestracji w firmie Dr Nona oraz sposób składania zamówień w sklepie internetowym.

Instrukcja logowania i realizacji podstawowych transakcji w systemie bankowości internetowej dla klientów biznesowych BusinessPro.

Płatności CashBill dla Shoper

Programowanie obiektowe

III RACHUNKI BANKOWE DLA KLIENTÓW INSTYTUCJONALNYCH TAB. 2 Pozostałe rachunki

Transkrypt:

Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Diagramy przypadków użycia

Diagramy przypadków użycia jako narzędzie modelowania wymagań Nazwa diagramu UML: Diagramy przypadków użycia use case diagrams. Cel stosowania: Określenie wymagań stawianych systemowi czyli co system ma robić z punktu widzenia jego otoczenia. Określenie granic systemu jego otoczenia oraz elementów, które wchodzą z nim w interakcję. Diagramy przypadków użycia opisują, co robi system z punktu widzenia zewnętrznego obserwatora. Eksponują to, co robi system, a nie jak to robi. 2

Diagramy przypadków użycia jako narzędzie modelowania wymagań Główne zastosowania: Określanie i doprecyzowanie funkcji systemu opisywane przypadki użycia zwykle generują nowe wymagania, a projekt przybiera coraz wyraźniejszy kształt. Komunikacja z klientami prostota notacji i intuicyjność sprawiają, że diagramy przypadków użycia są dobrym sposobem porozumiewania się projektantów z przyszłymi użytkownikami systemu. Generowanie przypadków testowych opis danego przypadku użycia może zasugerować sposoby testowania i konkretne dane testowe. Zrozumienie różnych scenariuszy wykorzystania projektowanego systemu. Porozumiewanie się projektantów systemu i jego przyszłych użytkowników. 3

Komponenty diagramów przypadków użycia Aktor Aktor Przypadek użycia Przypadek użycia Związek 4

Komponenty diagramów przypadków użycia aktorzy Aktorami mogą być ludzie, urządzenia, inne systemy informatyczne. Pojęcia aktora odpowiada roli jaką on odgrywa w stosunku do systemu. Pojęcia aktora nie odpowiada zawsze np. konkretnej osobie fizycznej, bo ta może wcielać się w różne role (ta sama osoba fizyczna może się logować do systemu raz jako administrator, a innym razem jako zwykły użytkownik). Jeden aktor może reprezentować całą grupę fizycznych użytkowników systemu (aktor Klient reprezentuje wszystkich potencjalnych klientów systemu). Aktorzy są zwykle aktywni inicjują przypadku użycia, choć mogą być również pasywni (np. aktor tyko zatwierdzający przelew bankowy). <<Actor>> System obsługi kart płatniczych <<Actor>> System weryfikacji podpisu elektronicznego Klient Admin Kierownik 5

Komponenty diagramów przypadków użycia przypadki użycia Przypadek użycia reprezentuje sekwencję operacji wykonywanych przez system, inicjowanych przez aktora. Przypadek użycia modeluje oczekiwanie zachowanie systemu wobec danego aktora, nie precyzując sposobu realizacji tego zachowania. Uruchomienie danego przypadku użycia ma dostarczyć aktorowi wymiernych wyników. Przypadek użycia zwykle opisuje pewien większy, dłuższy, bardziej złożony proces a nie elementarną akcję. aktywuje Przypadek użycia Aktor 6

Przypadki użycia przydatne informacje Nazwa przypadku użycia zazwyczaj zawiera rzeczownik określający cel uaktywnienia przypadku, poprzedzony czasownikiem opisującym rodzaj aktywności. Porada lekarska Sprzedaż towaru Wystawienie faktury Rezerwacja książki Wypożyczenie książki Wyszukanie książki Wykonanie przelewu Sprawdzenie stanu Przegląd transakcji 7

Przypadek użycia to nie tylko elipsa na diagramie Dla każdego przypadku użycia: Definiuje się dokumentację przypadku użycia use case document (szczegóły później). Można zaproponować rysunek lub makietę interfejsu użytkownika, wtedy łatwiej tworzy się opis danego przypadku. Można zaproponować diagram aktywności activity diagram. Sprzedaż towaru Użytkownik wybiera towar z listy dostępnych towarów i zapisuje go w koszyku. Po wybraniu ostatniego towaru użytkownik naciska przycisk <Kupuję> co powoduje wyświetlenie ostatecznej ceny zakupionych produktów. Dokumentacja przypadku użycia Makieta interfejsu Diagram aktywności 8

Komponenty diagramów przypadków użycia związki Związek pomiędzy aktorem a przypadkiem użycia opisuje udział aktora w danym przypadku użycia. Pomiędzy przypadkami użycia mogą występować związki zostaną przedstawione za chwilę. Porada lekarska Pacjent Aktor Pacjent inicjuje przypadek użycia Porada lekarska. Jest to pewien nieelementarny proces, wynikiem którego jest umówienie wizyty lekarskiej oraz przygotowanie kartoteki pacjenta. Ten przypadek użycia dostarcza aktorowi konkretnych efektów działania systemu porada lekarska może się odbyć. 9

Związki pomiędzy przypadkami użycia zawieranie Czasem wiele przypadków użycia posiada pewną wspólną sekwencję operacji (wspólne zachowanie) można ją wyróżnić w postaci odrębnego przypadku użycia. Wspólny, odrębny przypadek użycia włącza się do przypadku bazowego wykorzystując związek zawierania, opisany stereotypem. Przypadek bazowy występuje jako pierwszy i zawsze używa przypadku składowego. Składowy przypadek użycia reprezentuje podzadanie, zadania jakim jest przypadek bazowy. Przypadek bazowy Przypadek składowy 10

Zawieranie, przykład Przychodnia Porada lekarska Sprawdzenie karty pacjenta Pacjent Wypisanie recepty Zarejestrowany pacjent pewnej prywatnej przychodni lekarskiej korzysta z porad lekarskich, wymagających umówienia terminu i przygotowania dokumentów wymagających sprawdzenia karty pacjenta. Czasem jednak pacjent może prosić jedynie o wypisanie recepty na leki do stałego przyjmowania, to nie wymaga umówienia wizyty lekarskiej, jednak konieczne jest przygotowanie dokumentów i sprawdzenie karty pacjenta. 11

Zawieranie, przykład Biblioteka Rezerwacja książki Wyszukanie książki Klient Wypożyczenie książki Klient pewnej biblioteki może przeszukiwać jej zasoby katalogowe w poszukiwaniu konkretnej książki. Klient pewnej biblioteki może rezerwować konkretną książkę przed jej fizycznym wypożyczeniem, co wymaga zwykle jej wyszukania. Klient pewnej biblioteki może wypożyczyć konkretną książkę, co wymaga zwykle jej wyszukania. 12

Zawieranie, przykład Konto Klient Złożenie zlecenia stałego Wykonanie przelewu Dodatkowe uwierzytelnienie Sprawdzenie stanu Przegląd transakcji Standardowa autoryzacja Zalogowany klient pewnego systemu bankowości elektronicznej, może wykonywać przelewy i składać zlecenia stałe. Wymaga to jednak zawsze dodatkowego uwierzytelnienia klienta. Przegląd transakcji i sprawdzenie stanu wymaga zawsze standardowej autoryzacji klienta. 13

Związki pomiędzy przypadkami użycia rozszerzanie Czasem pewien przypadek bazowy opcjonalnie realizuje jakaś czynność opcjonalną. Przypadek bazowy może działać samodzielnie i nie wykonywać funkcji opcjonalnej. Jednak po dojściu do pewnego punktu rozszerzającego, może zostać uruchomiony przypadek rozszerzający. Po zakończeniu przypadku rozszerzającego, wznawiane jest wykonanie przypadku bazowego. Rozszerzający przypadek użycia opisany jest stereotypem <<extend>> Notacja wykorzystująca komentarz z warunkiem rozszerzenia: Przypadek bazowy <<extend>> Przypadek rozszerzający 14

Związki pomiędzy przypadkami użycia rozszerzanie Typowa notacja dla rozszerzania: Przypadek bazowy Extension points Opis punktu <<extend>> Przypadek rozszerzający Notacja wykorzystująca komentarz z warunkiem rozszerzenia: Przypadek bazowy Extension points Opis punktu <<extend>> Przypadek rozszerzający Condition: opis warunku Extension point: opis punktu 15

Rozszerzanie, przykład Biblioteka Rezerwacja książki Wyszukanie książki Klient Wypożyczenie książki Extension points Opłata karna <<extend>> Zapłata opłaty karnej Klient pewnej biblioteki może wypożyczyć konkretną książkę. Jednak na tym etapie sprawdza się, czy nie zalega z opłatą karną za nieterminowe oddawanie książek, jeżeli tak, użytkownik musi opłacić wszystkie zaległości. 16

Rozszerzanie, przykład Przychodnia Rejestracja pacjenta Condition: Pacjent nie jest zarejestrowany Extension point: Nowy pacjent <<extend>> Porada lekarska Extension points Nowy pacjent Sprawdzenie karty pacjenta Pacjent Wypisanie recepty Do pewnej prywatnej poradni lekarskiej może się zgłosić pacjent, który nigdy wcześniej nie korzystał z jej usług. Skorzystanie z porady lekarskiej musi być wtedy poprzedzone rejestracją pacjenta w systemie przychodni. Pacjent może się zarejestrować w systemie przychodni bez korzystania z porady lekarskiej. 17

Związki pomiędzy przypadkami użycia uogólnienie Czasem pewien można zidentyfikować przypadki określające ten sam rodzaj przetwarzania realizowanego przez system. Przypadki są podobne, lecz nie jednakowe. W stosunku do przypadków można zastosować związek generalizacjaspecjalizacja, i zastosować podejście analogiczne do klas. Przypadek będący specjalizacją pewnego przypadku uogólnionego, dziedziczy po nim całe zachowanie. Potomek może dodać nowe elementy do odziedziczonego zachowania lub wręcz całkowicie zmienić odziedziczone zachowanie. Przypadek ogólny Przypadek specjalizowany 18

Uogólnienie, przykład Przychodnia Rejestracja pacjenta Condition: Pacjent nie jest zarejestrowany Extension point: Nowy pacjent <<extend>> Porada lekarska Extension points Nowy pacjent Sprawdzenie karty pacjenta Pacjent Wypisanie recepty Opłacenie porady Opłata gotówkowa Opłata refundowana ubezpiecz. 19

Uogólnienie, przykład Biblioteka Rezerwacja książki Wyszukanie książki Klient Wypożyczenie książki Extension points Opłata karna Wypożyczenie książki z odbiorem osobistym <<extend>> Opłacenie kary Wypożyczenie książki z dostawą do domu 20

Zadanie na ćwiczenia: opracuje SRS i dopracuj diagram dla Biblioteka Inni aktorzy... Inne przypadki użycia... Rejestracja klienta Bibliotekarz Do tworzenia diagramów Use Case można wykorzystać darmowy system ArgoUML dostępne via Internet 21

Suplement Wyjaśnienie wybranych wątpliwości dotyczących diagramów Use Case

Uwagi dodatkowe, związki tylko aktor przypadek użycia Linia oznaczająca aktywację (nieprzerywana, bez strzałek) przypadku użycia może występować tylko pomiędzy aktorem a przypadkiem użycia. Rezerwacja książki Wyszukanie książki Pacjent Pacjent Wyszukanie książki Czytelnik Uwaga, związki include, extend i dziedziczenie to osobna sprawa. 23

Powiązania co z tymi strzałkami Standardowo powiązania pomiędzy aktorami a przypadkami użycia to nieprzerywana linia bez strzałek. Powszechną praktyką jest jednak wykorzystanie strzałek, określających czy aktor jest aktywny czy pasywny. Klient Rezerwacja książki <<Actor>> System wydawana ksiażek Pacjent Wystawienie recepty Lekarz Aktor pasywny w sensie biznesowym nie inicjuje bezpośrednio interakcji z systemem, ale jego istnienie jest konieczne dla funkcjonowania systemu. 24

Powiązania co z tymi strzałkami, cd... Uwaga kierunek strzałki nie określa kierunku przepływu danych. Dane mogą przepływać w obie strony. Strzałka określa jedynie inicjowanie aktywności. Ponieważ UML standardowo nie definiuje związków ze strzałkami, ich interpretacja może się zmieniać w zależności od konkretnej metodyki czy konkretnegonarzędzia. Można spotkać podejścia w którym związek bez strzałek określa aktora pasywnego. Pojęcie aktorów pasywnych i aktywnych nie jest również określone w UML. Wystawienie recepty Pacjent Lekarz Aktor aktywny Aktor pasywny 25

Nie dekompomujemy, Use Case nie są dla programisty Założenie Zarządzanie kontem Edycja danych Użytkownik Nie Usunięcie 26

Uwagi dodatkowe duża liczba przypadków użycia Jeżeli na pojedynczym diagramie zaczyna być ciasno ze względu na dużą liczbę przypadków użycia, należy definiować ogólniejsze przypadki. Założenie Użytkownik Edycja danych Usunięcie Zarządzanie kontem Użytkownik 27

Nie określamy zależności czasowych, Use Case nie są dla programisty Fragment Use Case dla sklepu internetowego Założenie Logowanie Edycja danych Użytkownik Nie Usunięcie 28

Nie określamy zależności czasowych, Use Case nie są dla programisty Fragment Use Case dla sklepu internetowego Założenie Edycja danych Logowanie Użytkownik Usunięcie 29

Nie określamy zależności czasowych, Use Case nie są dla programisty Fragment Use Case dla bankomatu Sprawdzenie stanu Wczytanie PIN Weryfikacja PIN Wypłata gotówki Klient banku Nie Wpłata gotówki 30

Nie określamy zależności czasowych, Use Case nie są dla programisty Fragment Use Case dla sklepu internetowego Założenie Edycja danych Logowanie Użytkownik Usunięcie Weryfikacja PIN <<Actor>> System bankowy 31

Uwagi dodatkowe duża liczba przypadków użycia Dla złożonego przypadku użycia można rozrysować osobny, szczegółowy diagram. Zarządzanie kontem użytkownika Założenie Potwierdzenie via email Edycja danych użytkownika Użytkownik Logowanie Usunięcie 32

Uwagi dodatkowe funkcje systemu aktywowane czasem Aktor może być rozumiany jako źródło zdarzeń powodujących akcję wykonywaną przez system. Jeżeli jakieś akcje mają być wykonywane automatycznie okresowo, można wprowadzić aktora reprezentującego zdarzenie czasowe. Codzienna archiwizacja danych Czas Tworzenie tygodniowego raportu 33