Dokument specyfikacji wymagań

Post on 05-Jan-2016

56 views 3 download

description

Analiza systemów informatycznych Wykład 2. Dokument specyfikacji wymagań. Jerzy.Nawrocki@put.poznan.pl www.cs.put.poznan.pl/jnawrocki/wsb-asi. Struktura SRS. IEEE Std 830-1998. 1. Wprowadzenie 2. Ogólny opis produktu 3. Wymagania funkcjonalne 4. Wymagania pozafunkcjonalne Dodatki - PowerPoint PPT Presentation

Transcript of Dokument specyfikacji wymagań

Copyright © Jerzy R. Nawrocki

Dokument specyfikacji wymagań Dokument specyfikacji wymagań

Jerzy.Nawrocki@put.poznan.plwww.cs.put.poznan.pl/jnawrocki/wsb-asi

Analiza systemów informatycznych

Wykład 2

J.Nawrocki, Dokument specyfikacji wymagań

Struktura SRS

1. Wprowadzenie2. Ogólny opis produktu3. Wymagania funkcjonalne4. Wymagania pozafunkcjonalneDodatkiIndeks

IEEE Std 830-1998

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Struktura SRS

1. Wprowadzenie1.1 Cel dokumentu1.2 Zakres produktu1.3 Definicje, akronimy i skróty1.4 Odwołania do literatury1.5 Omówienie dokumentu

2. Ogólny opis produktu3. Wymagania funkcjonalne4. Wymagania pozafunkcjonalneDodatkiIndeks

IEEE Std 830-1998

J.Nawrocki, Dokument specyfikacji wymagań

1.1 Cel dokumentu

Rola dokumentu specyfikacji wymagań + czytelnicy

Niniejszy dokument prezentuje wymagania dotyczące oprogramowania, czyli opisuje funkcjonalność budowanego oprogramowania i warunki, jakie ono musi spełniać.

Dokument ten został napisany z myślą o potencjalnych użytkownikach, projektantach, programistach, osobach zajmujących się testowaniem i autorach dokumentacji użytkowej.

J.Nawrocki, Dokument specyfikacji wymagań

1.2 Zakres produktu• Identyfikacja produktu programistycznego poprzez nazwę.• Co produkt będzie, a czego nie będzie robił.• Zastosowanie specyfikowanego oprogramowania.

Wizja produktu:• Na czym polega problem?• Kogo dotyczy?• Jakie są jego implikacje?• Jaki jest pomysł na jego rozwiązanie?

J.Nawrocki, Dokument specyfikacji wymagań

1.2 Zakres produktu• Identyfikacja produktu programistycznego poprzez nazwę.• Co produkt będzie, a czego nie będzie robił.• Zastosowanie specyfikowanego oprogramowania.

Polskie Towarzystwo Literackie ma ponad 10 tys. członków. Członkowie często zmieniają swoje dane adresowe i są kłopoty z ich szybką aktualizacją. Problem dotyczy zarówno członków towarzystwa (ok. 500 osób rocznie zmienia swoje dane), jak też zarządu, który ma kłopoty z komunikacją. Konsekwencją tego stanu rzeczy są zaległości składkowe rzędu 15 tys. zł. Rozwiązaniem ma być system internetowy e-Member umożliwiający aktualizację danych adresowych poprzez Internet.

J.Nawrocki, Dokument specyfikacji wymagań

1.3 Definicje, akronimy i skróty

ASAP – Tak szybko, jak to możliwe (od ang. As Soon As Possible)

Explorer – patrz MS Explorer...MS Explorer – Oprogramowanie firmy Microsoft umożliwiające

czytanie stron internetowychNIP – Numer identyfikacji podatkowejPTL – Polskie Towarzystwo Literackie

Uporządkować alfabetycznie!

J.Nawrocki, Dokument specyfikacji wymagań

1.4 Odwołania do literatury

System powinien podawać wartość średnią i odchylenie standardowe [Montgomery97].

[Montgomery97] D.Montgomery, Introduction to Statistical Quality Control, John Wiley & Sons, Boston, 1997.

[ustawa2000] Ustawa z dnia 16.11.2000 o przeciwdziałaniu wprowadzaniu do obrotu finansowego wartości majątkowych pochodzących z nielegalnych lub nieujawnionych źródeł oraz o przeciwdziałaniu finansowaniu terroryzmu, Dz.U. z dnia 22 grudnia 2000.

J.Nawrocki, Dokument specyfikacji wymagań

1.5 Omówienie dokumentu

Omówić organizację pozostałej części dokumentu.

W rozdziale 2. omówiono ogólnie produkt wraz z krótką charakterystyką użytkowników i funkcjonalności, jaką będzie im udostępniał budowany system. Rozdział 3. jest poświęcony szczegółowemu opisowi wymagań funkcjonalnych, które zostały podzielone na grupy wg klas użytkowników (ról). Wymagania te są punktem wyjścia do opisu wymagań pozafunkcjonalnych, które przedstawiono w rozdziale 4.

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Struktura SRS

1. Wprowadzenie2. Ogólny opis produktu

2.1 Kontekst funkcjonowania2.2 Charakterystyka użytkowników2.3 Główne funkcje produktu2.4 Ograniczenia2.5 Założenia i zależności

3. Wymagania funkcjonalne4. Wymagania pozafunkcjonalneDodatkiIndeks

IEEE Std 830-1998

J.Nawrocki, Dokument specyfikacji wymagań

2.1 Kontekst funkcjonowania

Omawiany system ma współpracować z systemem PolCard w zakresie płatności elektronicznych. Diagram kontekstu przedstawiono na rys. 1.

E-MemberE-MemberCzłonek

Zarząd

PolCard

J.Nawrocki, Dokument specyfikacji wymagań

2.2 Charakterystyka użytkowników

Można wyróżnić następujące role:

Członek towarzystwa – Gros członków PTL (ponad 80%) jest w przedziale od 30 do 55 lat. Część z nich ma problemy ze wzrokiem. Z przeprowadzonej ostatnio ankiety wynika, że 80% członków ma w domu komputer i umie lub chce się nauczyć korzystać z Internetu.

Zarząd – Wszyscy członkowie zarządu mają komputery i potrafią korzystać z Internetu.

J.Nawrocki, Dokument specyfikacji wymagań

2.3 Główne funkcje produktu

Produkt udostępnia funkcje opisane poniżej.

Członek PTL może za pomocą e-Member:• Czytać swoje dane przechowywane w systemie• Aktualizować swoje dane

Zarząd PTL może:• Wysyłać do członków PTL korespondencję zbiorową

J.Nawrocki, Dokument specyfikacji wymagań

2.4 Ograniczenia

System musi spełniać wymagania stawiane przez ustawę o ochronie danych osobowych [ustawa-osob].

J.Nawrocki, Dokument specyfikacji wymagań

2.5 Założenia i zależności

Prezentowane wymagania dotyczą stanu prawnego na dzień 1 września 2005 roku.

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Struktura SRS

1. Wprowadzenie2. Ogólny opis produktu3. Wymagania funkcjonalne 3.1 Opis otoczenia 3.2.1 Członek PTL 3.2.1.1 Czytanie danych 3.2.1.2 Aktualizacja danych 3.2.2 Zarząd PTL 3.2.2.1 Wysyłanie korespondencji4. Wymagania pozafunkcjonalneDodatkiIndeks

IEEE Std 830-1998

J.Nawrocki, Dokument specyfikacji wymagań

Struktura SRS

1. Wprowadzenie2. Ogólny opis produktu3. Wymagania funkcjonalne 3.1 Opis otoczenia 3.2.1 Członek PTL 3.2.1.1 Czytanie danych 3.2.1.2 Aktualizacja danych 3.2.2 Zarząd PTL 3.2.2.1 Wysyłanie korespondencji4. Wymagania pozafunkcjonalneDodatkiIndeks

IEEE Std 830-1998

J.Nawrocki, Dokument specyfikacji wymagań

Środowisko operacyjne

SystemSystemUżytkownik

Użytkownik

ENV1

Urządzenie

Systemzewnętrzny

ENV2

J.Nawrocki, Dokument specyfikacji wymagań

Środowisko operacyjne

ENV1: UżytkownicySystem będzie wykorzystywany przez

następujących użytkowników: Główna księgowa Prezes Dyrektor handlowy

Wszyscy użytkownic

y

J.Nawrocki, Dokument specyfikacji wymagań

Wszystkie urządzenia i

systemy zewn.

Środowisko operacyjne

ENV2: Urządzenia i systemy zewn.

System będzie się komunikował z następującymi urządzeniami i systemami zewnętrznymi:

• SAP R/3

ENV2: Urządzenia i systemy zewn.

System będzie się komunikował z następującymi urządzeniami i systemami zewnętrznymi:

• SAP R/3

J.Nawrocki, Dokument specyfikacji wymagań

Środowisko operacyjne

Użytkownik

SystemSystem

J.Nawrocki, Dokument specyfikacji wymagań

Środowisko operacyjne

ENV3: Operacje głównej księgowej:

Główna księgowa może zainicjować wykonanie następujących operacji:

Pobranie faktury . . .

Wszystkie operacje.

Użytkownik, urządzenie. lub system zewn.

J.Nawrocki, Dokument specyfikacji wymagań

Metafora systemu

Jak opisaćpobranie faktury?

Producent Konsument

SystemSystem

J.Nawrocki, Dokument specyfikacji wymagań

Metafora systemu

Co muszę wiedziećo systemie, aby

opisać jego operacje?

Segregator z fakturamiSegregator z fakturami

SystemSystem

J.Nawrocki, Dokument specyfikacji wymagań

Metafora systemu

MET1: Architektura wewnętrznaSystem będzie składał się z

następujących elementów: Segregator z fakturami (pusty lub

niepusty) . . .

Wszystkieelementy

i ich stany.

J.Nawrocki, Dokument specyfikacji wymagań

Struktura SRS

1. Wprowadzenie2. Ogólny opis produktu3. Wymagania funkcjonalne 3.1 Opis otoczenia 3.2.1 Członek PTL 3.2.1.1 Czytanie danych 3.2.1.2 Aktualizacja danych 3.2.2 Zarząd PTL 3.2.2.1 Wysyłanie korespondencji4. Wymagania pozafunkcjonalneDodatkiIndeks

IEEE Std 830-1998

J.Nawrocki, Dokument specyfikacji wymagań

Funkcje systemu

STOP

0.1234

Funkcja (Operacja)

Nie do nas! Dokładność?

Efekty uboczne

Wej. Wyj.

J.Nawrocki, Dokument specyfikacji wymagań

Funkcje systemu

FUN1: Pobranie faktury

WEJŚCIE: -WARUNEK: Segregator faktur jest niepusty. WYJŚCIE: Faktura (wzorzec WF-1/2001.09)EFEKT UBOCZNY: Pobrana faktura jest usuwana z

segregatora. Jeśli jest to jedyna faktura w segregatorze, segregator staje się pusty.

PRZETWARZANIE: -DOKŁADNOŚĆ: Cześć ułamkowa każdej kwoty ma dwie

cyfry po przecinku.

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Ivar Jacobson

1967: Ericsson, systemy telekomunikacyjne

1985: Ph.D., Dep. of Computer Systems, The Royal Institute of Tech., Stockholm

1987: Założyciel Objectory AB

1995: Objectory AB łączy się z Rationalem

2003: IBM kupuje Rationala

http://www.analisi-disegno.com/uml/JacobsonInterview.htmlhttp://www.jaczone.com/

J.Nawrocki, Dokument specyfikacji wymagań

Ivar Jacobson

Addison-Wesley, 1992

J.Nawrocki, Dokument specyfikacji wymagań

Przykładowy przypadek użycia

Zarejestruj IOZarejestruj IOAktorAktor: Rejestrator IOCelCel: Zarejestrować w systemie nową IO.ZdarzenieZdarzenie: Rejestrator otrzymał wniosek papierowy. Główny scenariuszGłówny scenariusz1.1. Rejestrator IORejestrator IO: Wprowadza NIP lub REGON IO.2.2. SystemSystem: Sprawdza poprawność wprowadzonego NIP/REGON.3.3. RejestratorRejestrator: Wprowadza pozostałe dane identyfikacyjne IO.4.4. SystemSystem: Weryfikuje poprawność składniową wprowadzonych

danych.5.5. RejestratorRejestrator: Wprowadza dane dotyczące jednostek IO.RozszerzeniaRozszerzenia2a.2a. NIP/REGON jest niepoprawny 2a1.2a1. System wyświetla komunikat i wracamy do kroku 1.

J.Nawrocki, Dokument specyfikacji wymagań

Ten sam cel

Przypadki użycia a scenariusze

Scenario #1

Scenario #2

Scenario #3

Przypadek użycia

J.Nawrocki, Dokument specyfikacji wymagań

Przykładowy przypadek użycia

Zarejestruj IOZarejestruj IOAktorAktor: Rejestrator IOCelCel: Zarejestrować w systemie nową IO.ZdarzenieZdarzenie: Rejestrator otrzymał wniosek papierowy. Główny scenariuszGłówny scenariusz1.1. Rejestrator IORejestrator IO: Wprowadza NIP lub REGON IO.2.2. SystemSystem: Sprawdza poprawność wprowadzonego NIP/REGON.3.3. RejestratorRejestrator: Wprowadza pozostałe dane identyfikacyjne IO.4.4. SystemSystem: Weryfikuje poprawność składniową wprowadzonych

danych.5.5. RejestratorRejestrator: Wprowadza dane dotyczące jednostek IO.RozszerzeniaRozszerzenia2a.2a. NIP/REGON jest niepoprawny 2a1.2a1. System wyświetla komunikat i wracamy do kroku 1.

J.Nawrocki, Dokument specyfikacji wymagań

Zalety przypadków użycia

• Są półformalne. Wprowadzają strukturę do opowieści.

• Opisują także sytuacje błędne.

• Są podstawą do szacowania pracochłonności, specyfikacji szczegółowych wymagań, projektowania interfejsów i scenariuszy testowych.

J.Nawrocki, Dokument specyfikacji wymagań

Źle napisany przypadek użycia

Zapisz się na przedmiot (Główny scen.)

1. Wyświetl pusty plan zajęć.2. Wyświetl listę wszystkich zajęć w następujący sposób: Lewe okno

pokazuje wszystkie przedmioty w systemie uporządkowane alfabetycznie. Dolne okno pokazuje godziny, w których podświetlony przedmiot jest dostępny. Trzecie okno pokazuje wszystkie przedmioty znajdujące się obecnie w planie zajęć.

3. Wykonaj.4. Student klika na przedmiot.5. Aktualizuj dolne okno aby pokazać godziny, w których przedmiot jest

dostępny.6. Student klika na godziny a potem na przycisk „Dodaj przedmiot” .

J.Nawrocki, Dokument specyfikacji wymagań

1. Wyświetl pusty plan zajęć.2. Wyświetl listę wszystkich zajęć w następujący sposób: Lewe okno

pokazuje wszystkie przedmioty w systemie uporządkowane alfabetycznie. Dolne okno pokazuje godziny, w których podświetlony przedmiot jest dostępny. Trzecie okno pokazuje wszystkie przedmioty znajdujące się obecnie w planie zajęć.

3. Wykonaj.4. Student klika na przedmiot.5. Aktualizuj dolne okno aby pokazać godziny, w których przedmiot jest

dostępny.6. Student klika na godziny a potem na przycisk „Dodaj przedmiot” .

Źle napisany przypadek użycia

Za dużo szczegółów dot. GUI

J.Nawrocki, Dokument specyfikacji wymagań

Inne często popełniane błędy

Za dużo niskopoziomowych przypadków użycia („Authorize user”).

Stosowanie przypadków użycia do prezentacji informacji nie-behawioralnej (np. opis formularzy – do dodatków).

Za długie (powinny być krótkie, zazwyczaj 3-9 kroków).

Fragmenty zdań (np. pomijanie nazwy aktora w opisie kroków).

J.Nawrocki, Dokument specyfikacji wymagań

Krótki format

AktorAktor

Administrator

Przypadek użyciaPrzypadek użycia

UstawParametryMonito

WybierzMonitor

OpisOpis

Osoba monitorująca i kontrolująca system

sterowania zadaniami.

OpisOpis

Umożliwia administratorowi podanie zakresu

i dokładności monitorowanych elementów

Wybierz przedmiot monitorowania (np.

proces albo kolejkę oczekujących procesów)

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Wymagania poza funkcjonalne

F

U

R

P

S

unctionality - fukcjonalność

sability - użyteczność

eliability - niezawodność

performance - wydajność

ecurity - bezpieczeństwo

4.1 Użyteczność4.2 Niezawodność4.3 Wydajność4.4 Bezpieczeństwo

J.Nawrocki, Dokument specyfikacji wymagań

Plan wykładu

•SRS – Wprowadzenie •SRS – Ogólny opis produktu•SRS – Wymagania funkcjonalne•Przypadki użycia•Wymagania pozafunkcjonalne•Dobre praktyki dotyczące dokumentu SRS

•Kontrola jakości•Szacowanie rozmiaru i•Standardy serii ISO 9000•Modele CMM/CMMI•Inżynieria wymagań•Zarządzanie projektami •Personal Software Process•Team Software Process•Zwinne metodyki•Rational Unified Process•Projekty dyplomowe

J.Nawrocki, Dokument specyfikacji wymagań

Klasyfikacja dobrych praktyk

Dokument SRS

Zbieranie wymagań

Analiza i negocjacja wymag.

Opisywanie wymagań

Modelowanie systemu

Walidacja wymagań

Zarządzanie wymaganiami

IW dla systemów krytycznych

Podst. Pośred. Zaaw.

8

6

54

3

4

4

2

36

-

6

21

3

3

3

3

21

-

1

1-

-

1

2

4

9

J.Nawrocki, Dokument specyfikacji wymagań

Dokument wymagań

Zdefiniuj standardową strukturę dokumentuWyjaśnij, jak korzystać z dokumentuDołącz streszczenie wymagańOpracuj uzasadnienie biznesowe dla systemuZdefiniuj terminy specjalistyczneWybierz czytelny szablon dokumentuPomóż czytelnikom znaleźć informacjęUczyń dokument łatwym do zmiany

J.Nawrocki, Dokument specyfikacji wymagań

Klasyfikacja dobrych praktyk

Dokument SRS

Zbieranie wymagań

Analiza i negocjacja wymag.

Opisywanie wymagań

Modelowanie systemu

Walidacja wymagań

Zarządzanie wymaganiami

IW dla systemów krytycznych

Podst. Pośred. Zaaw.

8

6

54

3

4

4

2

36

-

6

21

3

3

3

3

21

-

1

1-

-

1

2

4

9

J.Nawrocki, Dokument specyfikacji wymagań

Opisywanie wymagań

Zdefiniuj standardowe szablony dla opisu wymag.Pisz prosto i krótkoOdpowiednio korzystaj z diagramówWzbogacaj język naturalny innymi formami opisuSpecyfikuj wymagania ilościowo

J.Nawrocki, Dokument specyfikacji wymagań

Podsumowanie

•Struktura dokumentu SRS•Przypadki użycia•Dobre praktyki Sommerville’a

J.Nawrocki, Dokument specyfikacji wymagań

Ocena wykładu

1. Wrażenie ogólne (1 - 6)2. Za szybko czy za wolno?3. Czy dowiedziałeś się czegoś ważnego?4. Co i jak poprawić?