background image

Inżynieria oprogramowania

część VI – Proces inżynierii wymagań

mgr inż. Piotr Greniewski

Europejska Wyższa Szkoła Informatyczno-

Ekonomiczna

background image

Slajd nr 2

©Ian Sommerville 2000  - Inżynieria oprogramowania

Proces inżynierii wymagań

Zawartość:

Studium wykonalności 

Określenie i analizowanie wymagań

Zatwierdzanie wymagań

Zarządzanie wymaganiami

background image

Slajd nr 3

©Ian Sommerville 2000  - Inżynieria oprogramowania

Proces inżynierii wymagań

Feasibility

study

Requirements

elicitation and

analysis

Requirements

specification

Requirements

validation

Feasibility

report

System

models

User and system

requirements

Requirements

document

background image

Slajd nr 4

©Ian Sommerville 2000  - Inżynieria oprogramowania

Studium wykonalności

Studium wykonalności to odpowiedź na 
pytania:

Czy system przyczyni się do realizacji ogólnych 
celów przedsiębiorstwa?

Czy system może być zaimplementowany z użyciem 
dostępnych technologii, w ramach określonego 
budżetu i ograniczeń czasowych?

Czy system może być zintegrowany z istniejącymi 
systemami, które już zainstalowano?

background image

Slajd nr 5

©Ian Sommerville 2000  - Inżynieria oprogramowania

Studium wykonalności

Przeprowadzenie studium wykonalności obejmuje:

określenie informacji

zebranie informacji 

pisanie raportu

Przykład pytań potrzebnych do zdobycia informacji:

Jak firma radzi sobie bez zaimplementowanego systemu?

Jakie problemy występują w obecnych procesach i jak nowy 

system ma pomóc w ich eliminacji?

Jaki będzie bezpośredni wkład systemu w osiągnięcie celów 

gospodarczych?

Czy można przekazywać informację do i z innych systemów?

Czy system wymaga nowych technologii?

Co system musi wspomagać a czego nie?

background image

Slajd nr 6

©Ian Sommerville 2000  - Inżynieria oprogramowania

Określenie i analizowanie wymagań

Jest to trudny proces z wielu powodów:

Uczestnicy często nie wiedzą czego oczekują od 
systemu. 

Nie potrafią wyrazić wymagań w sposób zrozumiały 
dla inżynierów wymagań

Różni uczestnicy stawiają wymagania sprzeczne ze 
sobą.

Często mają wpływ czynniki polityczne występujące 
w firmie

Środowisko ekonomiczne i gospodarcze w którym 
przeprowadza się analizę jest dynamiczne co 
wpływa na analizę.

background image

Slajd nr 7

©Ian Sommerville 2000  - Inżynieria oprogramowania

Określenie i analizowanie wymagań

Rozpoznanie dziedziny

. Analitycy muszą zrozumieć 

dziedzinę zastosowania.

Zbieranie wymagań

. Jest to proces interakcji z 

użytkownikami systemu, którego celem jest wyjawienie 
ich wymagań.

Klasyfikacja

. Ta czynność polega na podzieleniu 

bezładnego zbioru wymagań na spoiste grupy.

Usuwanie sprzeczności

. Wymagania wielu 

użytkowników zawierają sprzeczności.

Nadawanie priorytetów

. W każdym zbiorze wymagań są 

bardziej i mniej ważne.

Sprawdzanie wymagań

. Sprawdza się czy wymagania 

są pełne, spójne i zgodne z tym czego chcą użytkownicy

background image

Slajd nr 8

©Ian Sommerville 2000  - Inżynieria oprogramowania

Zatwierdzanie wymagań

W trakcie procesu zatwierdzania wymagań przeprowadza 
się rozmaite sprawdzenia wymagań z dokumentacją 
wymagań:

Sprawdzenie ważności

. System ma różnych użytkowników 

przekonanych o tym jakie funkcje powinien spełniać system. 
Kompromis wymagań

Sprawdzenie niesprzeczności

. Wymagania spisane nie mogą 

być sprzeczne.

Sprawdzenie kompletności

. Dokumentacja wymagań powinna 

zawierać wymagania w których zdefiniowano wszystkie funkcje 
i ograniczenia.

Sprawdzenie realności

. Znając wiedzę technologiczną należy 

sprawdzić czy wymagania mogą być zaimplementowane. 
Sprawdzenie dotyczy również budżetu i harmonogramu.

Możliwość weryfikacji

. Wymagania systemu powinny być 

zapisane tak aby można je było weryfikować

background image

Slajd nr 9

©Ian Sommerville 2000  - Inżynieria oprogramowania

Metody zatwierdzanie wymagań

Przegląd wymagań

. Zespół recenzentów 

systematycznie analizuje wymagania

Prototypowanie.

 W tym modelu przedstawia 

się wykonywalny model systemu.

Generowanie testów

. Wymagania można 

testować.

Zautomatyzowane sprawdzanie 
niesprzeczności wymagań

. Narzędzia CASE 

itd.

background image

Slajd nr 10

©Ian Sommerville 2000  - Inżynieria oprogramowania

Zarządzanie wymaganiami

Wymagania stałe

 to względnie stabilne 

wymagania które wynikają z podstawowej 
działalności firmy. Wymagania te można 
wywnioskować z modelu dziedziny.

 

Wymagania zmienne

 to wymagania które 

prawdopodobnie ulegną zmianie w trakcie 
tworzenia systemu, albo po przekazaniu go 
użytkownikowi.

background image

Slajd nr 11

©Ian Sommerville 2000  - Inżynieria oprogramowania

Zarządzanie wymaganiami

Klasyfikacja wymagań zmiennych:

wymagania zmienne – pojawiają się na skutek zmian 
środowiska

wymagania pojawiające się – wymagania które 
pojawiają się w trakcie poznawania problemu.

wymagania wynikowe – wymagania pojawiające się 
wraz z wdrożeniem systemu

wymagania zgodności – zależą od konkretnych 
systemów lub procesów występujących wewnątrz 
firmy. Ich zmiana zmienia wymagania.

background image

Slajd nr 12

©Ian Sommerville 2000  - Inżynieria oprogramowania

Zarządzanie zmianami wymagań

Trzy kroki procesu zarządzania zmianami:

Analiza problemu i specyfikacja zmiany. 

Analiza zmiany i ocena kosztów

Implementacja zmiany


Document Outline