Techniki identyfikacji wymagań, które sprawdzą się w Agile i nie tylko Copy

Czas czytania: 2 minutDefinicja wymagania, która będzie zrozumiała szczególnie dla początkujących analityków to jedno z największych wyzwań, jakie stoją przed osobami, które tworzą standardy światowe w zakresie inżynierii oprogramowania

Podstawowa przyczyna problemów w komunikacji między Klientem a Dostawcą wynika z rozbieżności między tym, co klient mówi, a tym czego rzeczywiście potrzebuje.

W przypadków rozwiązań technologicznych Klient sugeruje się najczęściej rozwiązaniami, które obejrzał w internecie, bądź próbuje przepisać dotychczasową funkcjonalność istniejącego systemu wraz z jej błędami i regułami.

Dlatego umiejętne korzystanie z technik w procesie identyfikacji wymagań pozwoli na uniknięcie niedopowiedzeń czy domysłów, które najczęściej pojawiają się na ostatnim etapie projektu IT- testów przez Klienta.

Podczas testów Klientowi wydawało się, że coś zostanie zaimplementowane, Dostawca jest nie tyle zdziwiony, co poddenerwowany tym, że w trakcie rozmów dane wymaganie nie zostało przez Klienta wypowiedziane.

Czy podczas etapu identyfikacji wymagań muszę korzystać ze wszystkich dostępnych technik? Odpowiedziałabym jak typowy handlowiec – “to zależy”. Zależy od Klienta, specyfiki projektu, ale również od poziomu naszej wiedzy dziedzinowej. Istnieją jednak “żelazne zasady”, a raczej techniki, których użycie podczas spotkania z biznesem minimalizuje ryzyko pominięcia ważnych dla niego kwestii.

W artykule przedstawiam wybrane techniki, które sprawdzą się w środowisku zwinnym, ale wynikają z tradycyjnego podejścia do tworzenia oprogramowania.

1. Co rozumiemy poprzez etap pozyskiwania i identyfikacji wymagań w projekcie?

Pozyskiwanie wymagań – proces identyfikowania wymagań pochodzących z różnych źródeł za pośrednictwem rozmów, warsztatów, grup fokusowych, obserwacji, analiz dokumentów oraz innych mechanizmów.

Celem identyfikacji wymagań jest:

  1. Identyfikacja wszystkich pożądanych funkcji, charakterystyk, ograniczeń oraz oczekiwań
  2. Zorientowanie wymagań względem wizji projektu
  3. Uszczegółowienie wymagań wysokopoziomowych i jasne opisanie funkcji oraz usług
  4. Wyłączenie funkcji i cech, których klient nie potrzebuje

Na początkowym etapie prac nad projektem analityk biznesowy czy inżynier wymagań (analityk biznesowo-systemowy) powinien zaplanować, jakie będzie jego podejście do pozyskiwania wymagań. Dzięki planowaniu unikniemy sytuacji, w których uczestnicy procesu będą odrywani od swoich zajęć w celu wykonania innych czynności.
Plan pozyskiwania wymagań obejmuje techniki, które będziesz stosować oraz wskazania, kiedy w i jakim celu chcesz z nich skorzystać.

Zagadnienia, o których musisz pamiętać:

1. Strategia pozyskiwania i planowane techniki

a) Zdecyduj z jakich technik będziesz korzystać w odniesieniu do każdej grupy interesariuszy
b) Łącz ze sobą techniki pozyskiwania

2. Harmonogram i oszacowanie zasobów

a) Zidentyfikuj osoby po stronie klienta i dostawcy, które będą brały udział w poszczególnych aktywnościach- sprawdź ich dostępność
b) Oszacuj czas jaki będziesz potrzebować na przygotowanie się do pozyskiwania wymagań oraz analizy materiałów

3. Spodziewane efekty

Podziel pozyskiwanie wymagań względem grup interesariuszy i rodzaje dokumentów, jakie mają być wytworzone w ramach współpracy.

4.Ryzyko związane z pozyskiwaniem

a) Zidentyfikuj czynniki uniemożliwiające pozyskiwanie wymagań zgodnie z planem

b) Znajdź rozwiązanie i zaplanuj aktywności minimalizujące ryzyko

5.Klasyfikowanie informacji pozyskanych od użytkownika

a) Nie oczekuj, że użytkownicy przedstawią zwięzłą, kompletną i dobrze zorganizowaną listę swoich potrzeb
b) Analityk musi klasyfikować otrzymane informacje wg. kategorii, dzięki czemu będzie mógł je rozwijać
c) Podczas identyfikacji wymagań może natrafić na zagadnienia, które wymagają dodatkowych wyjaśnień
d) Podczas przeglądania tak zaklasyfikowane wymagania biznesowe klienta pozwolą Ci na sprawdzenie czy są kompletne, czy są kwestie otwarte, czy są wymagania ze sobą sprzeczne