W historii analizy systemowej jednym z najtrudniejszych zadań jest identyfikacja i sformalizowanie nieoczywistych, niejasnych lub ukrytych wymagań. Często klient sam nie jest w stanie jasno wyjaśnić, czego dokładnie potrzebuje, lub używa terminów, nie ujawniając rzeczywistych oczekiwań.
Problem nieformalizowanych wymagań jest znany od czasów pierwszych projektów wdrożeniowych. Początkowo stosowano proste wywiady, obecnie używa się również mapowania historii użytkowników, prototypowania oraz facylitacji.
Niejawne wymagania prowadzą do błędnych postanowień zadań, niepotrzebnych nakładów pracy i konfliktów między stronami.
Stosować techniki wywiadu, wizualizacji (mapy procesów, prototypy), facylitacji i dokładnego dokumentowania wyników. Sprawdzać feedback po każdym etapie sformalizowania wymagań.
Czy można sformalizować wszystkie wymagania przed rozpoczęciem projektu?
Nie, wiele wymagań jest doprecyzowywanych i identyfikowanych w trakcie pracy w miarę prototypowania i doprecyzowania projektu.
Czy warto zapisywać tylko jawnie wyrażone życzenia klienta?
Nie, analityk powinien pracować także z niejawnie wyrażonymi oczekiwaniami, analizować cele biznesowe, identyfikować ukryte potrzeby.
Czy zadaniem analityka systemowego jest tylko przetłumaczenie wymagań na specyfikację techniczną?
Nie, analityk również odpowiada za sformalizowanie, uzgodnienie i doprecyzowanie wymagań, identyfikację sprzeczności.
Negatywny przypadek:
Analityk zapisał wszystko, co powiedział klient w projekcie, nie doprecyzowując szczegółów.
Zalety: szybki rozpoczęcie rozwijania, oszczędność czasu na analizę.
Wady: wiele przeróbek, konflikty z klientem z powodu błędnych oczekiwań.
Pozytywny przypadek:
Analityk robił prototypy, prowadził sesje doprecyzowujące, zapisywał niejawne wymagania razem z klientem.
Zalety: wysoka dokładność wymagań, zadowolony klient, mniej konfliktów.
Wady: koszty facylitacji i zbierania feedbacku.