Skip to main content

Co to jest inżynieria wymagań?

Duże systemy sprzętowe lub oprogramowania, takie jak statek kosmiczny, mają złożone wymagania.Wymagania są specyfikacją tego, co należy zbudować, w jaki sposób system powinien się zachowywać lub ograniczenia w procesie budowania systemu.Inżynieria wymagań to wykorzystanie dobrych praktyk inżynieryjnych w celu zrozumienia wymagań przed zbudowaniem systemu.Nabiera znaczenia, ponieważ zainteresowane strony systemu same nie są jasne co do swoich potrzeb i mają rozbieżne potrzeby.

Złożony system może mieć wielu interesariuszy, takich jak osoby, które zlecą system, użytkownicy, którzy używają jednego lub więcej aspektów systemui ludzie, którzy korzystają z systemu.Możliwe jest również, że interesariusze obejmują członków społeczeństwa, których dotkną pewne osobliwości systemu.Zainteresowane strony mają własne specjalne potrzeby.Z drugiej strony ludzie, którzy rozwijają system, mogą być technicznie zdolni, ale mogą nie w pełni zrozumieć punkt widzenia interesariuszy.Inżynieria wymagań to niezbędna zdolność łącząca te strony.

Formalnie działalność inżynieryjna wymagań jest podzielona na rozwój wymagań i zarządzanie wymaganiami.Rozwój wymagań składa się z wywołania, analizy, specyfikacji i weryfikacji.Zarządzanie wymaganiami to kontrola całego procesu wymagań, zwłaszcza obsługę wszelkich zmian wymagań.Przeciwnie, niektórzy praktykujący po prostu nazywają całą działalność jako analizę wymagań.

Wywołanie wymagań od interesariuszy staje się konieczne, ponieważ interesariusze często nie określają ich potrzeb i nie rozumieją implikacji nowego systemu.Zainteresowane strony nie mogą się otworzyć, ponieważ mogą obawiać się wpływu na ich obecne miejsca pracy.Wywołanie jest zatem ostrożnym i być może długim procesem, w którym potrzebna jest empatia i subtelna psychologia.Należy uważać, aby różnice kulturowe między różnymi zainteresowanymi stronami, a także deweloperami są wykorzystywane.

Kilka technik jest wykorzystywanych do wywołania wymagań.Wymagania można wywołać poprzez indywidualne wywiady, spotkania grupowe i obserwowanie ludzi podczas ich zadań.Techniki, które mogą wydawać wymagania, obejmują grupy fokusowe, tworzenie priorytetowych list, prototypowanie i porównanie z innymi działającymi systemami.Wymagania dotyczące wywołania potrzeb biznesowych systemu, procesów biznesowych użytkowników podczas korzystania z systemu oraz funkcjonalne funkcje systemu.Ponadto wymagania niefunkcjonalne, takie jak czas reakcji, dostępność systemu i łatwość użytkowania, należy wywołać.

Krok analizy w wymaganiach inżynierii stanowi wymagania niskiego poziomu, które spełnią pierwotne wymagania wysokiego poziomu.Obejmuje to tworzenie modeli koncepcyjnych i prototypów w celu ustalenia kompletności wymagań.Konflikty w potrzebach różnych interesariuszy są częściej spotykane przez modele i prototypy niż z zwykłej listy wymagań.Pożądane cechy systemowe, takie jak bezpieczeństwo, elastyczność i zachowanie, muszą zostać dodane do wymagań przez analityków.

Wymagania są określone w dokumencie dla ułatwienia zrozumienia wszystkich interesariuszy.W polu oprogramowania dokument nazywa się SRS, który oznacza specyfikację wymagań oprogramowania.Wymagania są weryfikowane przez kluczowych interesariuszy.Dotyczy to głównie prezentacji i dokumentu specyfikacji, ale czasami z przypadkami testowymi odpowiadającymi wymaganiom.

Inżynieria wymagań jest przede wszystkim komunikacją, działaniem, a nie technicznym.Potrzebuje umiejętności multidyscyplinarnych.Inżynieria wymagań pomaga zainteresowanym stronom i deweloperom rozwiązywać konflikty i łączą je w swoich celach;To prowadzi do solidnego systemu.