Jaka jest różnica między wymaganiami funkcjonalnymi a niefunkcjonalnymi w kontekście projektowania systemu oprogramowania?
Podaj przykłady dla każdego przypadku.
Jaka jest różnica między wymaganiami funkcjonalnymi a niefunkcjonalnymi w kontekście projektowania systemu oprogramowania?
Podaj przykłady dla każdego przypadku.
Odpowiedzi:
Wymóg funkcjonalny opisuje, co powinien zrobić system oprogramowania, podczas gdy wymagania niefunkcjonalne ograniczają sposób, w jaki system to zrobi.
Pozwól mi rozwinąć.
Przykładem wymagania funkcjonalnego byłoby:
Powiązanym niefunkcjonalnym wymaganiem dla systemu może być:
Wymóg funkcjonalny opisuje zachowanie systemu w odniesieniu do jego funkcjonalności. Wymóg niefunkcjonalny opracowuje charakterystykę wydajności systemu.
Zazwyczaj wymagania niefunkcjonalne mieszczą się w obszarach takich jak:
Pełniejsza lista jest dostępna pod wpisem Wikipedii w sprawie wymagań niefunkcjonalnych .
Wymagania niefunkcjonalne są czasami definiowane w kategoriach wskaźników (tj. Czegoś, co można zmierzyć w systemie), aby uczynić je bardziej namacalnymi. Wymagania niefunkcjonalne mogą również opisywać aspekty systemu, które nie odnoszą się do jego wykonania, ale raczej do jego ewolucji w czasie (np. Łatwość konserwacji, rozszerzalność, dokumentacja itp.).
wymagania funkcjonalne to główne rzeczy, których użytkownik oczekuje od oprogramowania, na przykład jeśli aplikacja jest aplikacją bankową, aplikacja powinna móc utworzyć nowe konto, zaktualizować konto, usunąć konto itp. wymagania funkcjonalne są szczegółowe i określone w projekcie systemu
Wymóg niefunkcjonalny nie jest prostym wymogiem systemu, ale jest związany z użytecznością (w pewien sposób), na przykład w przypadku aplikacji bankowej główny wymóg niefunkcjonalny będzie dostępny, aplikacja powinna być dostępna 24/7 bez przestojów Jeśli to możliwe.
Wymagania funkcjonalne określają funkcję, którą musi spełniać system lub jego komponent. Można to udokumentować na różne sposoby. Najczęstsze z nich to pisemne opisy w dokumentach i przypadki użycia.
Przypadkami użycia mogą być tekstowe listy wyliczeniowe, a także diagramy opisujące działania użytkownika. Każdy przypadek użycia ilustruje scenariusze behawioralne według jednego lub więcej wymagań funkcjonalnych. Często jednak analityk zaczyna od wyszukania zestawu przypadków użycia, z których analityk może wywnioskować wymagania funkcjonalne, które należy wdrożyć, aby umożliwić użytkownikowi wykonanie każdego przypadku użycia.
Wymagania funkcjonalne są tym, co powinien osiągnąć system . Może być
Typowe wymaganie funkcjonalne będzie zawierało unikalną nazwę i numer, krótkie streszczenie oraz uzasadnienie. Informacje te są wykorzystywane, aby pomóc czytelnikowi zrozumieć, dlaczego wymaganie jest potrzebne, i aby śledzić wymaganie poprzez rozwój systemu.
LBushkin wyjaśnił już więcej na temat wymagań niefunkcjonalnych. Dodam więcej.
Wymagania niefunkcjonalne to wszelkie inne wymagania niż wymagania funkcjonalne. Są to wymagania określające kryteria, które można wykorzystać do oceny działania systemu, a nie konkretnych zachowań .
Wymagania niefunkcjonalne mają postać „system powinien być” , ogólną właściwością systemu jako całości lub określonego aspektu, a nie określoną funkcją. Ogólne właściwości systemu zwykle wskazują na różnicę między tym, czy projekt rozwojowy się powiódł, czy nie.
Wymagania niefunkcjonalne - można je podzielić na dwie główne kategorie:
- Wymagania dotyczące wydajności
- Wymagania dotyczące interfejsu
- Wymagania operacyjne
- Wymagania dotyczące zasobów
- Wymagania weryfikacyjne
- Warunki przyjęcia
- Wymogi dokumentacyjne
- Wymagania bezpieczeństwa
- Wymagania dotyczące przenośności
- Wymagania jakościowe
- Wymagania dotyczące niezawodności
- Wymagania dotyczące konserwacji
- Wymagania bezpieczeństwa
To, czy wymaganie jest wyrażone jako wymaganie funkcjonalne czy niefunkcjonalne, może zależeć:
Dawny. System może być wymagany do przedstawienia użytkownikowi wyświetlania liczby rekordów w bazie danych. Jest to wymóg funkcjonalny. Jak aktualna [aktualizacja] musi być ta liczba, jest wymogiem niefunkcjonalnym. Jeśli liczba musi być aktualizowana w czasie rzeczywistym, architekci systemu muszą upewnić się, że system jest w stanie zaktualizować liczbę [wyświetlanych] rekordów w akceptowalnie krótkim odstępie czasu od zmiany rekordów.
Bibliografia:
Wymagania funkcjonalne to te, które są związane z techniczną funkcjonalnością systemu.
wymóg niefunkcjonalny to wymóg określający kryteria, które można zastosować do oceny działania systemu w określonych warunkach, a nie określonych zachowań.
Na przykład jeśli rozważasz witrynę zakupów, dodawanie produktów do koszyka, przeglądanie różnych produktów, stosowanie ofert i ofert oraz skuteczne składanie zamówień spełnia wymagania funkcjonalne.
Gdzie jako wydajność systemu w godzinach szczytu, czas potrzebny systemowi na pobranie danych z bazy danych, bezpieczeństwo danych użytkownika, zdolność systemu do obsługi, jeśli duża liczba użytkowników logujących się spełnia wymagania niefunkcjonalne.
WYMAGANIA FUNKCJONALNE działania, które musi wykonać system
Myślę, że funkcjonalny wymóg jest po stronie klienta dla programisty, co dotyczy funkcjonalności dla użytkownika przez oprogramowanie, a niefunkcjonalny wymóg jest od programisty do klienta, tj. Wymóg nie jest podany przez klienta, ale programista zapewnia, aby system działał płynnie, np. bezpieczeństwo, ochrona, elastyczność, skalowalność, dostępność itp.