To co analityk lubi najbardziej ( :) ), czyli zbieranie i analiza wymagań. Jak już wspomniałem są to określone warunki, których spełnienia potrzebuje biznes, aby osiągnąć swoje cele. BABOK® Guide dla opisu wymagań stosuje następującą klasyfikację:
- Wymagania biznesowe (Business Requirements) - to określenia najwyższego poziomu dotyczące i definiujące cele i kluczowe potrzeby przedsiębiorstwa. Opisują powody, dla których projekt został zainicjowany, cele jakie mają zostać osiągnięte poprzez realizację projektu oraz wskaźniki pomiaru sukcesu tej realizacji. Wymagania biznesowe opisują potrzebę organizacji jako całości, bez rozbicia na grupy czy zainteresowane strony. Są definiowane przez obszar wiedzy określany jako "enterprise analysis" (o obszarach wiedzy opisanych przez BABOK Guide powiemy sobie szerzej w następnych wpisach).
- Wymagania interesariuszy (Stakeholder Requirements) - są opisem potrzeb konkretnego zainteresowanego podmiotu lub grupy interesariuszy. Czyli definiują jakie potrzeby posiada dany podmiot oraz jak dostarczone rozwiązanie wpływa na te potrzeby. Wymagania interesariuszy stanowią swego rodzaju pomost pomiędzy wymaganiami biznesowymi a różnymi klasami wymagań dotyczących rozwiązań. Są opracowywane w obszarze "requirements analysis".
- Wymagania dotyczące rozwiązania (Solution Requirements) - opisują charakterystykę rozwiązania, które spełnia oba powyższe wymagania. Opracowanie następuje w obszarze "requirements analysis". Często dzielimy je na podkategorie, zwłaszcza kiedy mamy do czynienia z rozwiązaniem programowym. Wyróżniamy dwie główne podkategorie:
- wymagania funkcjonalne - opisują zachowanie oraz możliwości systemu pod kątem realizowanych zadań i działań związanych ze spełnianiem konkretnych wymagań biznesowych,
- wymagania pozafunkcjonalne - nie mają bezpośredniego związku z zachowaniem lub funkcjonalnością rozwiązania, a raczej opisują warunki środowiskowe, w których rozwiązanie jest dostarczane lub jakość, jaką muszą posiadać systemy. Są one również znane jako wymagania jakościowe lub uzupełniające. Mogą to być wymagania dotyczące pojemności, prędkości, bezpieczeństwa, dostępności i architektury informacji oraz prezentacji interfejsu użytkownika.
- Wymagania przejściowe/transformacyjne (Transition Requirements) - opisują możliwości jakie musi posiadać rozwiązanie w celu ułatwienia przejścia z obecnego stanu przedsiębiorstwa do stanu planowanego. Po zakończeniu tego procesu stają się zbędne. Są odróżniane od innych wymagań ponieważ mają charakter tymczasowy i nie można ich rozwijać bez zdefiniowania stanu obecnego i docelowego. Zazwyczaj dotyczą one konwersji danych z istniejących systemów, luk w umiejętnościach, które należy rozwiązać i innych powiązanych zmian w celu osiągnięcia pożądanego stanu przyszłego. Są one opracowywane i definiowane poprzez "solution assessment and validation".