Tworzenie modelu konceptualnego systemu informatycznego część 1



Podobne dokumenty
Tworzenie warstwy zasobów projektowanie metodą strukturalną

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

Diagramy przypadków użycia Wykład2

Model przypadków użycia - rola diagramów przypadków użycia Część 1 Wykładowca Dr inż. Zofia Kruczkiewicz

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 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

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

Przykład 1 Iteracja 1 tworzenia oprogramowania

Język UML w modelowaniu systemów informatycznych

Diagramy przypadków użycia

Projekt INP Instrukcja 1. Autor Dr inż. Zofia Kruczkiewicz

Diagramy czynności tworzenie modelu przypadków użycia Wykład 2

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

Model przypadków użycia - rola diagramów aktywności Część 2 Wykładowca Dr inż. Zofia Kruczkiewicz

Modelowanie i analiza systemów informatycznych Spis treści

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

UML w Visual Studio. Michał Ciećwierz

Diagram przypadków użycia

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

Specyfikowanie wymagań przypadki użycia

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

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

Laboratorium z przedmiotu: Inżynieria Oprogramowania INP

Diagramy czynności Na podstawie UML 2.0 Tutorial

Specyfikacja wymagań systemowych (może podlegać edytowaniu na kolejnych etapach)

Modelowanie obiektowe - Ćw. 3.

Świat rzeczywisty i jego model

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu.

Modelowanie i analiza. warstwy biznesowej aplikacji

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

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

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

Podstawy programowania III WYKŁAD 4

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

INŻYNIERIA OPROGRAMOWANIA. laboratorium

Michał Adamczyk. Język UML

Dokument Detaliczny Projektu

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

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

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

Technologia programowania

Dokument Detaliczny Projektu

Wykład 1 Inżynieria Oprogramowania

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

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

slajd 1 Model przypadków użycia Anna Bobkowska

Inżynieria oprogramowania II

Podrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy

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

Analiza i projektowanie aplikacji Java

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

IX Konferencja Informatyki Stosowanej

Procesowa specyfikacja systemów IT

Modelowanie i analiza systemów informatycznych

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

Laboratorium 8 Diagramy aktywności

Modelowanie i analiza systemów informatycznych

Projektowanie systemów informatycznych

Instrukcja 1 Laboratorium z Podstaw Inżynierii Oprogramowania. Relacja 1 do 1..0 instrukcja z lab1

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

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

problem w określonym kontekście siły istotę jego rozwiązania

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

Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON

Inżynierski Projekt Zespołowy

Projektowanie logiki aplikacji

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 6

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1

Charakterystyka oprogramowania obiektowego

Biblioteka. Bazy danych I dokumentacja projektu. Cel projektu:

Modelowanie obiektowe - Ćw. 1.

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

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

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

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela

Inżynieria oprogramowania Jarosław Kuchta. Modelowanie interakcji

Modelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, r.

Inżynieria oprogramowania

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 7

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

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

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

Modelowanie danych, projektowanie systemu informatycznego

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20

MAS dr. Inż. Mariusz Trzaska

Programowanie obiektowe

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

Język UML w modelowaniu systemów informatycznych

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

Analiza biznesowa a metody agile owe

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

Rysunek 1: Przykłady graficznej prezentacji klas.

Inżynieria oprogramowania. Jan Magott

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

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

Systemy informatyczne. Modelowanie danych systemów informatycznych

Transkrypt:

Tworzenie modelu konceptualnego systemu informatycznego część 1 1. Elementy diagramów przypadków użycia (usecases) 2. Wytyczne tworzenia diagramów przypadków użycia (use-cases) (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 3. Model konceptualny identyfikacja i specyfikacja wymagań 4. Przykłady diagramów przypadków użycia (use-cases) 1

Tworzenie modelu konceptualnego systemu informatycznego część 1 1. Elementy diagramów przypadków użycia (use-cases) 2

Diagramy UML 2 część pierwsza Na podstawie UML 2.0 Tutorial http://sparxsystems.com.au/resources/uml2_tutorial/ 3

Dwa rodzaje diagramów UML 2 Diagramy UML modelowania strukturalnego Diagramy pakietów Diagramy klas Diagramy obiektów Diagramy mieszane Diagramy komponentów Diagramy wdrożenia Diagramy UML modelowania zachowania Diagramy przypadków użycia Diagramy aktywności Diagramy stanów Diagramy komunikacji Diagramy sekwencji Diagramy czasu Diagramy interakcji 4

Diagramy przypadków użycia (Use Case Diagram) Diagramy przypadków użycia opisują wymagania systemu Przypadki użycia (Use cases) oznaczają funkcje udostępniane użytkowników lub innych zewnętrznych systemów (actors) przez projektowany system Actors Zewnętrzni użytkownicy: ludzie, sprzęt, system rysowania jako figura lub klasa ze słowem kluczowym «actor». 5

Związek miedzy aktorami typu Generalization Actors mogą genaralizować innych Actors. Oznacza to dziedziczenie funkcji (przypadków użycia) przez aktora CommercialCustomer od aktora Customer oraz korzystanie z nowych przypadków użycia 6

Association Customer Bank Teller Związek miedzy aktorami typu Association Actors mogą być powiązani z innymi Actors, czyli mogą pośredniczyć w dostępie do przypadków użycia. Oznacza to, że aktor Customer za pośrednictwem aktora BankTeller korzysta z jego przypadków użycia 7

Przypadek użycia (Use Cases) Jednostka pracy Wysoki poziomom zewnętrznej obserwacji systemu Notacja elipsa <<>> znak stereotypu oznaczającego właściwości związku Związek użycia przypadku użycia <<use>> Np. aktor Customer używa przypadku użycia Withdraw (pobiera pieniądze np. z konta) 8

Przypadek użycia zawiera: Nazwę i opis Wymagania funkcjonalne spełniane dla użytkownika Ograniczenia warunki przed- po- przypadku użycia oraz nie zmieniające się na skutek wykonania przypadku użycia Scenariusze sekwencja zdarzeń między systemem i zewnętrznymi użytkownikami (opis tekstowy) Diagramy scenariuszy diagramy sekwencji Dodatkowe informacje np. identyfikacja karty płatniczej przed dokonaniem wyciągu z konta 9

Powiązania (Association) liczność związku Liczność instancji na końcu połączenia Np. aktor Klient (Customer) ma tylko jedną sesję wypłacania pieniędzy w danym momencie (Withdraw) natomiast Bank może mieć ich wiele w tym samym czasie 10

Zawieranie <<includes>> Przypadek użycia zawiera jeden lub wiele innych przypadków użycia eliminując powtarzanie funkcjonalności systemu dzięki tej wieloużywalności, czyli zawieraniu np.pobranie z konta (Withdraw) zawsze zawiera identyfikację karty (Card identification) 11

Rozszerzanie <<extends>> Jeden przypadek użycia może być użyty do rozszerzenia właściwości drugiego przypadku użycia Np. Przypadek użycia Zezwolenie (Get Approval) opcjonalnie rozszerza właściwości przypadku użycia Modyfikuj zlecenie (Modify Order) 12

Punkty rozszerzające (Extension Points) np..punkt, w którym rozszerzany przypadek użycia Wykonanie tranzakcji (Perform Transaction) jest rozszerzany przez rozszerzajacy przypadek użycia Pomoc (On-Line Help) zgodnie ze znaczeniem punktu rozszerzania np. przez wybór (selection) 13

Granice systemu (System Boundary) Zazwyczaj aktorzy są na zewnątrz systemu, a przypadki użycia wewnątrz systemu. 14

Tworzenie modelu konceptualnego systemu informatycznego część 1 1. Elementy diagramów przypadków użycia (use-cases) 2. Wytyczne tworzenia diagramów przypadków użycia (use cases) (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 15

Identyfikacja aktorów i przypadków użycia przypadek prostego systemu 1. Należy wyznaczyć granice systemu w ramach środowiska 2. Należy zdefiniować wymagania systemu: należy podać użytkowników - aktorów systemu, zależności między aktorami typu dziedziczenie (generalization) lub powiązanie (association), oczekiwane funkcje systemu (przypadki użycia), powiązania między aktorami i przypadkami użycia oraz zależności między przypadkami użycia 3. Należy opisać każdy przypadek użycia np. wg szablonu podanego na slajdzie 9 (przykład na slajdzie 28) 16

(1) Wytyczne przy modelowaniu granic systemu Należy zidentyfikować aktorów działających wokół systemu. Oznacza to wyznaczenie grup użytkowników korzystających w określonym celu z projektowanego systemu (zarządzanie, pielęgnacja, usługi) - (analiza wspólności i zmienności) Należy uporządkować aktorów wg zależności typu powiązanie np. Klient korzysta z usług Sprzedawcy lub dziedziczenia: Komercyjny Klient dziedziczy przypadki użycia od Klienta (analiza wspólności i zmienności) Należy powiązać aktorów z przypadkami użycia za pomocą powiązań nadając im zidentyfikowane znaczenie za pomocą stereotypu wg podanych definicji 17

(2) Wytyczne przy modelowaniu wymagań stawianych systemowi (slajdy 21,28) Należy określić otoczenie systemu, czyli zidentyfikować aktorów Dla każdego aktora należy podać działania, jakie każdy aktor oczekuje od systemu (slajdy 22, 27, 30) Działania należy zapisać jako przypadki użycia Należy wyłączyć powtarzające się ciągi działań i zastąpić je jednym nowym połączonym relacją <<include>> lub <<extends>> lub <<use>> lub zwykłym powiązaniem typu association bez stereotypu (analiza wspólności i zmienności) Należy uwzględnić tych aktorów, przypadki użycia oraz zidentyfikowane powiązania między nimi Można dodać do każdego aktora i przypadku użycia notatkę opisującą wymagania niefunkcjonalne (np. sprzęt, język, korzystanie z Internetu) 18

(3) Wytyczne przy modelowaniu przypadków użycia Należy opisać główny i nadzwyczajne ciągi zdarzeń każdego przypadku użycia (slajd 28) podając: czynności i dane używane podczas działania przypadku użycia Należy zdefiniować testy systemu (slajd 29) w odniesieniu do wybranego aktora i powiązanego za nim jednego lub grupy przypadków użycia podając stan początkowy i końcowy oznaczający powodzenie testu przypadku użycia (np. Wstawianie nowej książki jest możliwe tylko wtedy, gdy istnieje już jej tytuł w katalogu oraz posiada unikatowy numer. Po wstawieniu tej książki nie może być dwóch książek o tym samym numerze) 19

Tworzenie modelu konceptualnego systemu informatycznego część 1 1. Elementy diagramów diagramów przypadków użycia (use-cases) 2. Wytyczne tworzenia diagramów przypadków użycia (use-cases) (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 3. Model konceptualny identyfikacja i specyfikacja wymagań 20

Model biznesowy Przykład modelu biznesowego dotyczącego realizacji opłat z dokumentacji środowiska Business Process Visual Architect (BP-VA) do wizualnego modelowania diagramów procesów stosując notacje BPM (Business Process Modeling Notation - BPMN). 21

Proces identyfikacji i specyfikacji wymagań Czynności Produkty wyjściowe Opis produktu wyjściowego lista kandydujących wymagań zrozumienie kontekstu systemu lista znamionowa Model dziedziny)* (domain model)-najważniejsze obiekty systemu: rzeczy lub zdarzenia podawane przez ekspertów Model biznesowy* (business model) - wewnętrzny model procesu biznesowego organizacji, wyszczególniany przez klientów systemu (customers) status, szacowany koszt, priorytety, poziom ryzyka implementacji itp. diagram najważniejszych klas dziedziny (domain classes) z niewielką ilością operacji-metod (około 10-50 w notacji UML), reszta przewidywanych klas w glosariuszu (glossary); business use case : a) Opis przypadków użycia ( uses cases ) i aktorów ( actors ) odpowiadających procesowi biznesowemu oraz klientom procesu biznesowego b) biznesowy model obiektowy (business object model) składający się z wykonawców (workers), encji biznesowych (business entities), jednostek pracy (work units) realizujących use case, 22

funkcjonalne wymagania niefunkcjonalne wymagania Model przypadków użycia (identyfikacja przypadków użycia z modelu biznesowego) uzupełniające wymagania lub indywidualne wymagania proces reprezentowania wymagań jako przypadków użycia oraz innych produktów specyfikowany za pośrednictwem języka UML: 1. opis tekstowy realizujących zachowanie systemu przy działaniu poszczególnych przypadków użycia lub aktorów i przypadków użycia - czyli opis sekwencji akcji odpowiednich do modyfikacji, przeglądu, projektowania i testowania, 2. model przypadków użycia zawierający aktorów i przypadki użycia oraz powiązania (np. dziedziczenia) między nimi oraz: dodatkowo diagramy: stanów, czynności, sekwencji akcji oraz współpracy, przepływu zdarzeń 3. opis architektury przypadków użycia, 4. glosariusz - definicje ważnych termów wyprowadzanych z modelu dziedziny lub modelu biznesowego, 5. prototyp interfejsu użytkownika-interakcje między aktorami - ludźmi i oprogramowaniem 1. specjalne wymagania zawierające niefunkcjonalne wymagania w postaci opisu tekstowego 2. ograniczenia środowiska i implementacji (np. typ komputera, typ plików, rodzaj systemu operacyjnego, typ oprogramowania Internetu), zależności, 23 konserwacja, zdolność do poszerzania,

Tworzenie modelu konceptualnego systemu informatycznego część 1 1. Elementy diagramów diagramów przypadków użycia (use-cases) 2. Wytyczne tworzenia diagramów przypadków użycia (use-cases) (wg Booch G., Rumbaugh J., Jacobson I., UML przewodnik użytkownika) 3. Model konceptualny identyfikacja i specyfikacja wymagań 4. Przykłady diagramów przypadków użycia (use-cases) 24

Przykład 1: Katalog tytułów i książek - opis biznesowy świata rzeczywistego w języku klienta 1. Opis zasobów ludzkich Pracownik wypożyczalni może dodawać do katalogu tytułów nowe tytuły. Każdy tytuł jest reprezentowany przez następujące dane: tytuł, autor, wydawnictwo, ISBN oraz informacje o liczbie egzemplarzy i miejscu ich przechowywania i występuje w bibliotece jako pojedyncza informacja dla każdego tytułu. Pewna grupa tytułów opisuje książki nagrane na kasety, dlatego dodatkowo tytuł zawiera dane nagrania np nazwisko aktora. Każdy egzemplarz, niezależnie, czy jest książką czy kasetą, jest opisany odrębną informacją zawierajacą numer egzemplarza i ewentualnie (dotyczy to wyodrębnionych egzemplarzy) informację o liczbie dni, na które można wypożyczyć egzemplarz. Numery egzemplarzy mogą się powtarzać dla różnych tytułów. Pracownik bilioteki (bibliotekarz) może dodawać nowe tytuły i egzemplarze oraz je przeszukiwać, natomiast klient może jedynie przeszukiwać tytuły i sprawdzać egzemplarze wybranych tytułów. 2. Przepisy Pracownik ponosi odpowiedzialność za poprawność danych - odpowiada materialnie za niezgodność danych ze stanem wypożyczalni. Wypożyczalnia powin-na być przyjazna dla klienta biznesowego 3. Dane techniczne Klient może przeglądać dane wypożyczalni za pośrednictwem strony internetowej lub bezpośrednio za pomocą specjalnego programu (tak obsługuje już wdrożone programy). Pracownik biblioteki może dodatkowo modyfikować i usuwać dane o tytułach oraz egzemplarzach. Zakłada się, że klientów, jednocześnie przeglądajądających dane wypożyczalni może być ponad 1000 oraz wypożyczalnia może zawierać kilkadziesiąt tysięcy tytułów oraz przynajmniej dwukrotnie więcej egzemplarzy. Biblioteka składa się z kilku ośrodków w różnych miastach na terenie kraju (lista 25 miast jest dołączona do umowy). Zaleca się stosowanie technologii Java.

Wymagania stawiane tworzonej aplikacji - na podstawie opisu świata rzeczywistego wykonanego przez eksperta problemu reprezentującego stronę zamawiającą czyli użytkownika i klienta, przekazana wykonawcy systemu wg Hans-Erik Erikson, Magnus Penker: UML Toolkit Wymagania funkcjonalne System powinien wspierać wypożyczanie książek Biblioteka wypożycza podane książki i czasopisma osobom zarejestrowanym, o ile je posiada Biblioteka dokonuje zakupu nowych książek, przy czym popularne książki kupuje w kilku egzemplarzach. Usuwa zniszczone książki i czasopisma. Bibliotekarz jest pracownikiem biblioteki, komunikuje się z wypożyczającym. Jego praca jest wspierana za pomocą systemu Wypożyczający może zarezerwować książkę lub czasopismo, które nie jest dostępne w danej chwili, W momencie, kiedy zamówione rzeczy są dostępne- albo po zwrocie lub dzięki zakupowi, można je wypożyczyć i usunąć rezerwację. Rezerwację można usunąć niezależnie. Biblioteka może łatwo utworzyć, zmienić i usunąć informację o tytułach, wypożyczających, wypożyczeniach i rezerwacjach Wymagania niefunkcjonalne System powinien pracować w popularnych systemach (UNIX, Windows, OS/2) i powinien mieć nowoczesny graficzny interfejs użytkownika System powinien się rozwijać np. wprowadzenie możliwości zawiadamiania rezerwującego książkę o jej dostępności lub dłużnika o przekroczeniu terminu wypożyczenia przez Internet 26

AKTOR OPIS PRZYPADKI UŻYCIA Bibliotekarz Klient Bibliotekarz wypożycza, rezerwuje książki i przyjmuje zwroty książek oraz usuwanie rezerwacji. Jest on odpowiedzialny za utrzymywanie zasobów biblioteki (wstawianie i usuwanie: tytułów książek, egzemplarzy książek oraz danych wypożyczających) Klient nie może bezpośrednio korzystać systemu. Korzysta on z usług bibliotekarza zarzadzanie wykonaj rezerwacje usun rezerwacje wypozycz pozycje zwrot pozycji wykonaj rezerwacje usun rezerwacje wypozycz pozycje zwrot pozycji 27

PU wypożycz pozycje OPIS CEL: obsługa bibliotekarza WS (warunki wstępne): inicjalizacja przez uruchomienie programu (np. otwarcie strony WWW, start aplikacji) WK (warunki końcowe): pojawienie się nowej danej w aplikacji lub komunikat o przyczynach braku wypożyczenia PRZEBIEG: 1. Pokazanie menu i wybór tytułu z listy 2. Pokazanie menu i wybór wypożyczającego z listy 3. Identyfikacja tytułu - jeśli tytuł jest w systemie, przejdź do punktu 4 lub automatycznie zakończ wypożyczanie 4. Identyfikacja dostępności egzemplarza (pozycji) jeśli jest przynajmniej jeden egzemplarz wolny, przejdź do punktu 5 lub zakończ automatycznie wypożyczanie 5. Identyfikacja wypożyczającego jeśli jest, przejdź do punktu 6 lub zakończ automatycznie wypożyczanie 6. Rejestracja nowego wypożyczenia zawierającego informację o wypożyczającym i wypożyczonym egzemplarzu i wywołanie PU usun rezerwacje 28

Test PU: wypożycz pozycje Dane wejściowe: Dane klienta wypożyczającego książkę, tytuł wypożyczanej książki Dane wyjściowe: Powstanie nowego wypożyczenia, jeśli dane wejściowe były w systemie oraz była wolna książka o podanym tytule Usunięcie rezerwacji wypożyczonej książki, jeśli była w systemie dla danego klienta 29

Wypożyczalnia 30

Przykład 2. System bankowy: wg UML Modeling: Creating Use Case Diagrams (http://www.netbeans.org/products/uml/) 31

Opis diagramu przypadków użycia systemu bankowego AKTOR OPIS PRZYPADKI UŻYCIA Bank Computer Update Customer DataBase Employees Aktor bazowy dla aktorów Technician, Employees, Bank Teller Technician Bank Teller Loan Oficier Customer Service ATMs Deposit Money rozszerzony (extends) przez Deposit Cash from at ATM Withdraw Money rozszerzony (extends) przez Withdraw Cash from ATM Process Loan Withdraw Cash from ATM Deposit Cash from at ATM Apply for Loan rozszerzony (extends) przez Process Loan

Przykład 3. System sporządzania rachunków Lista wymagań funkcjonalnych 1. System zawiera katalog produktów 2. Można zakupić trzy typy produktów różniące się sposobem obliczania ceny detalicznej: netto, z podatkiem, z promocją, 3. Można wprowadzić wiele rachunków 4. Pozycje rachunku muszą zawierać produkty różne w sensie nazwy, ceny, podatku i promocji 5. Każda pozycja rachunku powinna podać swoją wartość brutto oraz dane produktu oraz ilość zakupionego produktu. 6. Na rachunku powinna znajdować się wartość łączna wszystkich zakupów oraz wartości zakupów należących do wybranych kategorii Lista wymagań niefunkcjonalnych 1. Wstawianie produktów może odbywać się tylko przez uprawnione osoby 2. Wstawianie nowych rachunków oraz wstawianie nowych zakupów jest dokonywane przez klientów 3. Zakupy mogą być dokonane przez Internet przez aplikację uruchamianą przez przeglądarkę lub bez jej pośrednictwa 33

<<include>> 34

AKTOR OPIS PRZYPADKI UŻYCIA Klient Sprzedawca Klient może dokonywać zakupów wybranych produktów przez Internet korzystając z przeglądarki lub z aplikacji Sprzedawca może dodatkowo dodawać nowe produkty Wstawianie nowego rachunku powiązane przez <<include>> z PU Szukanie rachunku Obliczanie wartosci rachunku powiązane przez <<include>> z PU Szukanie rachunku Wstawianie nowego zakupu powiązane przez <<include>> z PU Szukanie rachunku oraz powiązane przez <<include>> z PU Szukanie produktu Wstawianie nowego rachunku powiązane przez <<include>> z PU Szukanie rachunku Obliczanie wartosci rachunku powiązane przez <<include>> z PU Szukanie rachunku Wstawianie nowego zakupu powiązane przez <<include>> z PU Szukanie rachunku oraz powiązane przez <<include>> z PU Szukanie produktu Wstawianie nowego produktu powiązane 35 przez <<include>> z PU Szukanie produktu

Wnioski - model przypadków użycia Opis w języku klienta Zewnętrzna postać systemu Strukturyzacja za pomocą przypadku użycia czyli struktura postaci zewnętrznej systemu Używany głównie jako kontrakt między klientem i wykonawcami, określający co system powinien robić i czego nie powinien robić Może zawierać redundancję, sprzeczności Przedstawia funkcjonalność systemu, dołączając architekturę ważnej funkcjonalności Definiuje przypadki użycia analizowane w modelu analizy 36