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



Podobne dokumenty
Inżynieria Programowania Inżynieria wymagań. Plan wykładu. Motto. Wstęp. Notatki. Notatki. Notatki. Notatki. Arkadiusz Chrobot

Inżynieria Programowania Inżynieria wymagań

Proces Inżynierii Wymagań

Inżynieria wymagań. Inżynieria wymagań 1/1

Inżynieria wymagań. Proces inżynierii wymagań

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

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

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

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Podstawy programowania III WYKŁAD 4

Modelowanie i analiza systemów informatycznych Spis treści

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Diagram przypadków użycia

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

TECHNOLOGIE OBIEKTOWE WYKŁAD 2. Anna Mroczek

Język UML w modelowaniu systemów informatycznych

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

KATEDRA INFORMATYKI STOSOWANEJ PŁ INŻYNIERIA OPROGRAMOWANIA

Inżynieria oprogramowania

Modelowanie i analiza systemów informatycznych

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

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

Zasady organizacji projektów informatycznych

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

UML w Visual Studio. Michał Ciećwierz

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

Faza Określania Wymagań

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

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

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

WYKAZ ZMIAN W TABELI OPŁAT I PROWIZJI

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

Diagramy przypadków użycia

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

Wykład 1 Inżynieria Oprogramowania

Inżynieria oprogramowania II

Projektowanie oprogramowania

Analiza biznesowa a metody agile owe

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

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

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

Case study - bankomat. Piotr Ciskowski

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

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

Modelowanie obiektowe - Ćw. 6.

Bazy danych 2. Wykład 1

10. Płatności Płatności Definicje

Rozdział I RACHUNKI BANKOWE I. Rachunki bieżące i pomocnicze w PLN

Cele przedsięwzięcia

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

Portal zarządzania Version 7.5

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

TARYFA PROWIZJI I OPŁAT ZA CZYNNOŚCI BANKOWE I NNE USŁUGI DLA KLIENTÓW INDYWIDUALNYCH I PODMIOTÓW INSTYTUCJONALNYCH W BANKU SPÓŁDZIELCZYM W SUSZU

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

Obowiązuje od r.

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

Język UML w modelowaniu systemów informatycznych

Modelowanie obiektowe - Ćw. 5.

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

Zalety projektowania obiektowego

INŻYNIERIA OPROGRAMOWANIA. laboratorium

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

Obowiązuje od dnia 8 sierpnia 2018 r.

MAS dr. Inż. Mariusz Trzaska

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

Podstawy inżynierii oprogramowania

Wymagania klienta mogą być opisane na różnych poziomach abstrakcji: Podział wymagań: Wymagania funkcjonalne Wymagania niefunkcjonalne

Obowiązuje od dnia 1 listopada 2014 r.

Dokument dotyczący opłat

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Tworzenie warstwy zasobów projektowanie metodą strukturalną

Język UML w modelowaniu systemów informatycznych

Dział VIII. Rachunki bankowe dla klientów instytucjonalnych

Prowadzenie rachunku miesięcznie W miesiącu kalendarzowym, w którym otwarto rachunek, opłata nie jest pobierana 6,90

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

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

TELEFONEM DZIĘKI IKO MOBILNE

Wykorzystanie sieci urządzeń wielofunkcyjnych - aspekty organizacyjne i biznesowe.

Podstawy modelowania programów Kod przedmiotu

WYKAZ ZMIAN W TABELI OPŁAT I PROWIZJI

Wprowadzenie do Behaviordriven

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

Rozdział Przed zmianą Po zmianie Rozdział I Postanowienia ogólne

Wykaz zmian w taryfie opłat i prowizji dla firm, rolników i instytucji od r.

Szkolenie obejmuje zagadnienia związane z tworzeniem i zarządzaniem bazą danych Oracle, jej zasobami i dostępem do danych.

Rachunek bieżący dla przedsiebiorstw, spółek i spółdzielni

WYKAZ ZMIAN W TABELI OPŁAT I PROWIZJI

Tom 6 Opis oprogramowania

Dokument dotyczący opłat

StarCARD - Centrum Usług Kartowych

KLIENCI INDYWIDUALNI

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

Zarządzanie sprzedażą w programie bs4

Obowiązuje od dnia 1 lutego 2017 r.

Zagadnienia (1/3) Inżynieria Oprogramowania

UPEDU: Rozpoznanie wymagań (ang. requirements discipline)

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

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

Transkrypt:

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

Punkt widzenia (Point of View) Systemy oprogramowania mają zwykle kilku różnych użytkowników. Wielu uczestników interesuje się wymaganiami systemowymi. Przykład: system bankomatowy, służy do automatycznego dokonywania operacji bankomatowych. Usługi: Wypłata, Wpłata, Przekazywanie informacji

Uczestnicy systemu bankomatowego Klienci banku Klienci innych banków Dyrektorzy oddziałów banków Pracownicy obsługi klienta w oddziałach Administratorzy baz danych Dział bezpieczeństwa banku Dział marketingu banku Inżynierowie pielęgnacji sprzętu i oprogramowania

Model zewnętrznych punktów widzenia Bierzemy pod uwagę punkty widzenia takich klas użytkowników, którzy: Otrzymują usługi od systemu Przekazują do niego dane i sygnały sterujące Techniki analizy wymagań metodą punktów widzenia: Metoda VORD Przypadki użycia i diagramy sekwencji UML

Metoda VORD (Viewpoint-Oriented Requirements Definition) Identyfikacja punktów widzenia Polega na znajdowaniu punktów widzenia, których reprezentanci są użytkownikami systemu, oraz usług oferowanych tym reprezentantom. Strukturalizacja punktów widzenia Polega na budowaniu hierarchii punktów widzenia. Dokumentowanie punktów widzenia Tworzenie opisu znalezionych punktów widzenia i usług. Przyporządkowywanie punktów widzenia do systemu Znajdowanie w projekcie systemu oprogramowania obiektów, które będą dostarczać usługi.

Szablony formularzy Szablon do opisu punktu widzenia Odnośnik (nazwa punktu widzenia) Atrybuty (cechy informujące o punkcie widzenia) Zdarzenia (odnośnik do scenariuszy zdarzeń opisujących) Usługi (odnośnik do zbioru opisów usług) PW (nazwy podrzędnych punktów widzenia) Szablon do opisu usługi Odnośnik (nazwa usługi) Uzasadnienie (przyczyna oferowania usługi) Specyfikacja (odnośnik do listy specyfikacji usług, które mogą być opisane za pomocą różnych notacji) Punkty widzenia (lista nazw punktów widzenia, których reprezentanci korzystają z usługi) Wymagania niefunkcjonalne (odnośnik do zbioru wymagań niefunkcjonalnych ograniczających usługę) Dostawca (odnośnik do listy obiektów, które oferują tę usługę)

Burza mózgów w trakcie identyfikacji Pytanie o saldo Zasoby maszyny Interfejs użytkownika Właściciel konta Zdalna diagnostyka punktów widzenia Odczyt transakcji Informacje o koncie Karta skradziona Niezawodność Menedżer Koszt systemu Aktualizacja konta Baza danych klientów Dziennik komunikatów Zwrot karty Przelew środków Wypłata gotówki Zdalna aktualizacja oprogramowania Rozmiar oprogramowania Dziennik transakcji Zamówienie czeków Kasa banku Obcy klient Drukarka Nieuprawniony użytkownik Pielęgnacja Zabezpieczenia Zamówienie oprogramowania Zatrzymanie wyciągu karty Przekazywanie komunikatów Weryfikacja karty

Informacja o usługach przypisanych do punktów widzenia Właściciel konta Obcy klient Pracownik banku Lista usług Lista usług Lista usług Wypłata gotówki Pytania o saldo Zamówienie czeków Wysyłanie komunikatu Lista transakcji Zamówienie wyciągu Przelew środków Wypłata gotówki Pytania o saldo Diagnostyka Dodanie gotówki Dodanie papieru Wysłanie komunikatu

Dane związane z punktami widzenia Właściciel konta Dane sterujące Dane wejściowe Rozpocznij transakcje Informacje z karty Anuluj transakcje Zakończ transakcje Wybór usługi PIN Żądana kwota Komunikat

Hierarchia punktów widzenia Wszystkie PW Usługi Pytanie o saldo Wypłata gotówki Klient Personel banku Usługi Kasa Menedżer Inżynier Zamówienie czeków Wysłanie komunikatu Lista transakcji Zamówienie wyciągu Przelew środków Właściciel konta Klient obcy

Opis punktu widzenia klienta i usługi wypłaty gotówki Odnośnik: Atrybuty: Zdarzenia: Klient Numer konta PIN Zacznij transakcję Wybierz usługę Anuluj transakcję Zakończ transakcję Odnośnik: Wypłata gotówki Uzasadnienie: Celem jest przyśpieszenie obsługi klienta i zmniejszenie liczby dokumentów papierkowych Specyfikacja: Użytkownicy wybierają tę usługę przez naciśnięcie przycisku wypłata gotówki. Następnie wprowadzają żądaną kwotę. Potwierdza się ją i jeśli na koncie są środki następuje wypłata PW: Klient Usługi: Wypłata gotówki Info o saldo Podrzędne PW: Właściciel konta Wymagania niefunkcjonalne: Wypłać gotówkę najpóźniej po 1 minucie od potwierdzenia kwoty Dostawca: Wypełnić później

Scenariusz Szczegółowy opisy poszczególnych interakcji z systemem, obejmuje jedną lub najwyżej kilka możliwych interakcji. Atrybuty scenariusza: Opis stanu systemu na początku scenariusza. Opis normalnego następstwa zdarzeń scenariusza. Opis tego, co może pójść źle, i jak to będzie obsługiwane. Informacje o innych czynnościach, które można wykonywać w tym samym czasie. Opis stanu systemu po zakończeniu scenariusza.

Scenariusze zdarzeń w VORD Dokumentowanie zachowania systemu, po zajściu konkretnego zdarzenia. Przykłady zdarzeń: wsunięcie karty do bankomatu wybranie usługi Scenariusze obejmują: opis przepływu danych akcje systemu wyjątki, które mogą się pojawić

Diagram scenariusza zdarzeń Event Sequence Diagram (IBM) A session management application

Przypadki użycia Metodą określania wymagań opartą na scenariuszach Obecnie podstawowy element notacji UML W najprostszej postaci w przypadku użycia definiuje się aktorów biorących udział w interakcji i wskazuje typ tej interakcji

Przypadek użycia Wypłata gotówki Wypłata gotówki Klient

Przypadki użycia systemu obsługi bankomatu Klient własny Przelew środków Wypłata gotówki Personel Klient obcy Dodanie gotówki

Diagramy sekwencji (UML) Modelują zachowanie systemu (scenariusz), najczęściej jakiś przypadek użycia Uczestnicy (obiekty) prostokąty Strzałki wiadomości przesyłane pomiędzy uczestnikami Strzałki przerywane wartości zwracane Pionowe linie przerywane linie życia obiektów Pionowe prostokąty na liniach życia przetwarzanie obsługujące daną wiadomość

Diagram sekwencji: wypłata ATM Database Card PIN request Card number Card OK PIN Option m enu Validate card <<exception>> invalid card Withdraw request Amount request Amount <<exception>> insuf ficient cash Balance request Balance Debit (amount) Debit response Handle request Card Card rem oved Cash Cash rem oved Receipt Complete transaction

Sprawdzenie wymagań Sprawdzenie ważności Czy system udostępnia usługi, których potrzebuje klient? Sprawdzenie niesprzeczności Czy wymagania nie są sprzeczne? Sprawdzenie kompletności Czy zdefiniowano wszystkie funkcje i ograniczenia? Sprawdzenie realności Czy wymagania mogą być naprawę zaimplementowane? Możliwość weryfikacji Czy wymagania są napisane tak, że można je później weryfikować? Cel: uniknięcie sporów między klientem a zleceniobiorcą

Metody zatwierdzania wymagań Przeglądy wymagań Zespół recenzentów systematycznie analizuje wymagania. Prototypowanie W tym podejściu do zatwierdzania przedstawia się użytkownikom i klientom wykonywalny model systemu. Generowanie testów Idealnie byłoby, aby wymagania dało się testować. Zautomatyzowane sprawdzanie sprzeczności Jeśli wymagania wyrażono w modelu systemu za pomocą strukturalnej lub formalnej notacji, to narzędzia CASE mogą sprawdzić niesprzeczność systemu.

Ewolucja wymagań Wstępne zrozumienie problemu Zmienione rozumienie problemu Wstępne wymagania Zmienione wymagania Czas