Diagramy przypadków użycia



Podobne dokumenty
Język UML w modelowaniu systemów informatycznych

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

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

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

Modelowanie obiektowe - Ćw. 3.

Modelowanie i analiza systemów informatycznych Spis treści

Diagram przypadków użycia

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

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

MAS dr. Inż. Mariusz Trzaska

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

Specyfikowanie wymagań przypadki użycia

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

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

slajd 1 Model przypadków użycia Anna Bobkowska

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

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

UML w Visual Studio. Michał Ciećwierz

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

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

Świat rzeczywisty i jego model

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

Tworzenie warstwy zasobów projektowanie metodą strukturalną

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

Podstawy programowania III WYKŁAD 4

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

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

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

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

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

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

Podstawy inżynierii oprogramowania

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

Inżynierski Projekt Zespołowy

Podstawy języka UML UML

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

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

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

Diagramy sekwencji. wymienianych między nimi

Model przestrzenny Diagramu Obiegu Dokumentów. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

IX Konferencja Informatyki Stosowanej

Inżynieria oprogramowania II

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

Język UML w modelowaniu systemów informatycznych

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

Faza analizy (modelowania) Faza projektowania

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

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

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

Diagramy klas. WYKŁAD Piotr Ciskowski

UML - zarys 2007/2008

TECHNOLOGIE OBIEKTOWE. Wykład 3

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

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

MODELOWANIE OBIEKTOWE

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

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

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Kontrola spójności modeli UML za pomocą modelu. Stanisław Jerzy Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Michał Adamczyk. Język UML

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

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

Projektowanie systemów informatycznych

Podstawy języka UML2 w realnych projektach

Tworzenie modelu przypadków użycia część 1 Diagramy przypadków użycia Wykład2

Zalety projektowania obiektowego

Diagramy czynności Na podstawie UML 2.0 Tutorial

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

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

Tworzenie modelu konceptualnego systemu informatycznego część 1

Diagramy czynności. Widok logiczny. Widok fizyczny

Diagramy przypadków użycia - MS Visio

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

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

Diagramy przypadków użycia Wykład2

Modelowanie obiektowe - Ćw. 5.

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

Rysunek 1: Przykłady graficznej prezentacji klas.

MODELOWANIE SYSTEMU INFORMATYCZNEGO WSPOMAGAJĄCEGO DZIAŁALNOŚĆ USŁUGOWĄ W ŚRODOWISKU OBIEKTOWO ZORIENTOWANYM.

Analiza i projektowanie aplikacji 3. 4.Modelowanie struktury. Diagram klas. 5.Strukturalizowanie modelu PU. Model systemowych PU.

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

NIFIED M L ODELLING ANGUAGE. Diagramy czynności

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

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Aktywacja powiadomień o zdarzeniach

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

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

System wspomagania obsługi pracy gabinetu stomatologicznego

Zasady sporządzania matrycy funkcji kontroli

Technologia programowania

Diagram maszyny stanowej - POJĘCIA

Unified Modeling Language

UPEDU: Rozpoznanie wymagań (ang. requirements discipline)

MiASI. Modele, perspektywy, diagramy UML. Piotr Fulmański. 7 grudnia Wydział Matematyki i Informatyki, Uniwersytet Łódzki, Polska

DIAGRAM PRZYPADKÓW UŻYCIA USE CASE MODEL

Modelowanie. Wykład 1: Wprowadzenie do Modelowania i języka UML. Anna Kulig

INŻYNIERIA OPROGRAMOWANIA. laboratorium

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

Transkrypt:

Instytut Informatyki Uniwersytetu Śląskiego 10 października 2010

Spis treści 1 Wprowadzenie do UML 2 3 4 5 6

Diagramy UML Język UML definiuje następujący zestaw diagramów: diagram przypadków użycia - służy do modelowania funkcjonalności systemu z punktu widzenia jego przyszłych użytkowników; diagram klas - słuy do modelowania struktury danych przechowywanych w stystemie; zawira klasy i może zawierać obiekty; diagram obiektów - służy do modelowania struktury danych przechowywanych w systemie; zawiera wyłącznie obiekty; diagramy dynamiczne - służą do modelowania zachowań: diagram stanów; diagram aktywności; diagram interakcji: diagram sekwencji oraz diagram współpracy; diagramy implementacyjne: diagram komponentów; diagram wdrożeniowy; diagram pakietów - służy do celów organizacyjnych.

Celem Use Case jest: opis funkcjonalności (przypadki użycia) opis środowiska (kto jest odbiorcą - Aktorzy) zawarcie umowy kontakty z przedstawicielami klienta wymagania niefunkcjonalne (w notatkach) do opracowania testów funkcjonalności Diagram przypadków użycia: definiuje granice modelowanego systemu określa jego kontekst wymienia użytkowników systemu i jednostki zewnętrzne przedstawia funkcje dostępne dla użytkowników określa powiązania i zależności pomiędzy nimi

Podstawowe pojęcia: Aktor Przypadek użycia Interakcja aktora z przypadkiem użycia Oznaczenie granic systemu i jego otoczenia Scenariusze przypadków użycia

Aktor actor Actor_1 Jest osobą fizyczną, rolą w systemie lub systemem zewnętrznym; Reprezentuje potencjalnego użytkownika systemu traktowanego jako całość bądź jako użytkownika fragmentu systemu; Inicjuje wykonanie funkcji systemu; Może zlecić systemowi zadania (np. złożenie zamówienia, wysłanie komunikatu do obiektu) i/lub może współdziałac z systemem w trakcie realizacji tego zadania; Musi posiadać unikatową nazwę

Case_1 Przypadek użycia use case To zbiór akcji wykonywanych przez system, które powodują efekt zauważalny dla aktora (interakcja pomiędzy użytkownikiem a systemem komputerowym); Akcja jest operacją atomową, ktorej nie można przerwać w trakcie wykonywania i reazlizowana przez system w odpowiedzi albo na sygnał pochodzący od aktora, albo na zdarzenie związane z uplywem czasu; Sekwencja czynności prowadzi do spełnienia celu przypadku użycia (zaspokojenia pewnej potrzeby użytkownika) - obserwowalny rezultat; Kompletny zbiór przypadków użycia definiuje funkcjonalność systemu; Musi posiadać unikatową nazwę; W przeciwienstwie do aktorów kilkukrotne umieszczenie na diagramietego samego przypadku użycia nie jest dozwolone.

(1) (2) (3) Interakcja aktora z przypadkiem użycia Dla oznaczenia interkacji aktora z przypadkiem użycia stosuje się linię ciągłą (1); W celu zaznaczenia kierunku przepływu informacji używa się linii skierowanej (2); grot wskazuje na byt (aktora lub przypadek użycia), który pobiera dane; Interakcja oznaczona symbolem (3), jako równoważna interakcji (1), nie jest stosowana.

<<include>> <<extend>> Przepływy zdarzeń można przedstawić w postaci sekwencji podprzepływów: jeden główny i kilka pobocznych. Niektóre przepływy mogą powtarzać się w rożnych sekwencjach, można więc wyodrębnic je w postaci oodzielnych przypadków; W opisie sekwencji przypadków, każde dwa przypadki użycia można połączyć w relacje: zawierania «include» gdy kilka przypadków użycia ma wspólna sekwencję podobnych kroków, której nie warto ciągle kopiować z jednego przypadku do drugiego; uogólnienia gdy dany przypadek użycia jest podobny do innego, ale jest nieco obszerniejszy; rozszerzenia «extend» podobna do uogólnienia; może wzbogacić go o nowe dodatkowe zachowania, a w takiej systuacji podstawowy przypadek użycia musi okreslić pewne punkty rozszerzenia. Rozszerzający przypadek użycia może dodać nowe zachowania tylko w tych punktach.

Przebieg podstawowy P1 Przypadek bazowy zawsze występuje jako pierwsze w kolejności działanie P1 zawsze wywołuje (używa, włącza) P2 przypadek poboczny (wlączany) P1 <<include>> P2 Rysunek: Przebieg podstawowy

Przebieg opcjonalny P1 jest czasami rozszerzane o przypadek poboczny P2, zwany przypadkiem rozszerzającycm «extend». Oznacza to, że na wywołanie P2 z P1 może być nałożony warunek. Jeżeli warunek nie został wyspecyfikowany, co jest dopuszczalne, P2 będzie wywoływane zawsze. P1 <<extend>> P2 Rysunek: Przebieg opcjonalny

Generalizacja Zarówno aktorzy jak i przypadki użycia mogą byc spokrewnieni relacją generalizacji. Na przykład w bibliotece każdy obiekt klasy PozyczajacyCzasopismo jest także obiektem klasy PozyczajacyKsiazke, ponieważ osoby mogące pożyczać czasopisma mogą tez pożyczać książki. Podobna jest do relacji «extend». Opisując dodatkowe zachowanie, które powinno być czasami stosowane w zależności od warunków powstałych w trakcie działania programu lepsze będzie użycie relacji «extend». Jeśli natomiast jest potrzebne wyróżnienie wyspecjalizowanej wersji całego zadania nalezy użyć generalizacji. PozyczajacyKsiazke PozyczajacyCzasopismo Rysunek: Generalizacja między aktorami

Ustal limity Zaktualizuj rachunki Kierownik sali Przeanalizuj ryzyko <<include>> Makler Okresl wartosc Wycen kontrakt <<include>> Zawieranie Zarejestruj transakcje Sprzedawca Uogólnienie Limit przekroczony Przypadek użycia Rysunek: Diagram przypadków użycia dla systemu maklerskiego

System obsługi klienta Wnętrze systemu Oznaczenie granic systemu i jego otoczenia Dwa prostokąty (jeden zawarty w drugim), gdzie zewnętrzny prostokąt reprezentuje otoczenie systemu, a wewnętrzny reprezentuje sam system. Scenariusze przypadków użycia Scenariusz jest specyfikacją przepływu zdarzeń (sekwencji interakcji) między aktorem a systemem. Specyfikację tą należy formułoważ w języku naturalnym w prosty, spójny sposób i w oparciu o terminy zawarte w slowniku pojęć z dziedziny problemowej.

: Krok 1: Sporządzenie słownika pojęć Krok 2: Identyfikowanie aktorów Krok 3: Określanie przypadków użycia Krok 4: Dokumentowanie przypadków użycia

: Krok 1: Sporządzenie słownika pojęć polega na wywołaniu z wymagań użytkownika tych pojęć dziedziny problemowej, które odnoszą się do aktorów, przypadków użycia, obiektów, zdarzeń, itp. Należy zwrócić uwagę na: rzeczowniki - mogą oznaczac aktorów lub byty z dziedziny problemowej; frazy opisujące funkcje, akcje, zachowanie - mogą być podstawą do wyróżnienia przypadków użycia. Krok 2: Identyfikowanie aktorów czemu służą odpowiedzi na poniższe pytania: Którzy użytkownicy potrzebują wspomagania ze strony systemu? Którzy użytkownicy są potrzebni do tego, aby system działał i wykonywał swoje funkcje? Z jakich elementow zewnętrznych musi korzystać system, aby realizować swoje funkcje? Następnie ustalamy nazwę dla każdego aktora/roli, zakresy znaczeniowe dla poszczególnych nazw aktorów oraz relacje pomiędzy wyspecyfikowanymi zakresami

: Krok 3: Określanie przypadków użycia poprzez: Określenie dla każdego aktora zadań (funkcji), które powinien wykonywać i wyodrębnienie w pierwszej kolejności zadań głównych, stanowiących istotę współpracy z systemem; Powiązanie w jeden przypadek użycia zespołu zadań realizujących podobne cele; Uporządkowanie aktorów, przypadków użycia w postaci diagramu, a nastepnie analiza powiązań; Określenie wzajemnych relacji pomiędzy przypadkami głównymi i ustalenie rodzaju zależności; Dodanie zachowań skrajnych, wyjątkowych, opcjonalnych; Opisanie przypadków użycia przy pomocy zdań w języku naturalnym, używając terminów określonych w słowniku pojęć.

: Krok 4: Dokumentowanie przypadków użycia powinno zawierać: ; Ogólny opis każdego przypadku użycia: jak i kiedy przypadek zaczyna się i kończy; opis interakcji przypadku użycia z aktorem (kiedy ma miejsce?, co jest przesyłane?); kiedy i do czego przypadek użycia potrzebuje danych zapamiętanych w systemie oraz jak i kiedy zapamiętuje dane w systemie; wyjątki występujące przy obsłudze przypadku; specjalne wymagania (np. wydajność, czas odpowiedzi); jak i kiedy używane są pojęcia dziedziny problemowej. Szczegółowy opis przypadków użycia, takich jak: scenariusze, specyfikacja uczestniczących obiektow oraz diagramy interakcji.

: Diagram przypadków użycia dla biblioteki Występuje trzech aktorów: Czytelnik, Bibliotekarz i Zegar. Pierwsi dwaj reprezentują rolę użytkowników systemu, natomiast Zegar służy do generowania cyklicznych Powiadomień. Czytelnik i Bibliotekarz korzystają z przypadkow użycia. Niektore z nich, np. Zwrot lub Wypożyczenie do czytelni, są przez nich współdzielone, natomiast Rejestracja czytelnika i Przedłużenie są dostępne tylko dla jednego albo drugiego aktora. Przypadek użycia Wyszukanie jest włączany do kilku innych przypadków użycia: Rezerwację, Wypożyczenie i Wypożyczenie do czytelni. W ten sposób jest on wywoływany w sposob pośredni przez aktora, a bezpośrednio przez inny przypadek użycia. Przypadek użycia Rezerwacja jest rozszerzany przez Powiadomienie. Oznacza to, że Powiadomienie może uczestniczyć w realizacji funkcji Rezerwacji. Ponadto Rezerwacja posiada dwa szczegółowe przypadki: Rezerwację książki i Rezerwację czasopisma.

Zwrot Czytelnik Wypozyczenie do czytelni <<include>> Przedluzenie Wyszukanie Bibliotekarz <<include>> <<include>> Rezerwacja <<extend>> Wypozyczenie Rejestracja czytelnika Powiadomienie Rezerwacja czasopisma Rezerwacja ksiazki Zegar

Głównym celem konstruowania modelu przypadków użycia jest wsparcie analityka przy okresleniu wymagań funkcjonalnych dla projektowanego systemu; Usprawnienie komunikacji wewnątrz grona uczestnikow projektu; Ustalenie praw dostępu do zasobów poprzez wyspecyfikowanie interakcji aktorów z przypadkami uzycia; Ustanownienie bazy do projektowania interfejsu użytkownika, szacowania czasu i kosztów realizacji projektu; Dostarczenie podstawy do planowania rozwoju i testowania systemu; Weryfikacja poprawności i kompletności.