The kluczowa różnica między wymaganiami funkcjonalnymi i niefunkcjonalnymi jest to, że wymagania funkcjonalne opisują, co powinien zrobić system, a wymagania niefunkcjonalne opisują sposób działania systemu.
W inżynierii oprogramowania wymagania dotyczące oprogramowania koncentrują się na potrzebach, które oprogramowanie powinno rozwiązać. Podczas opracowywania oprogramowania pierwszym krokiem jest zebranie wymagań. Jest to jeden z najważniejszych kroków, ponieważ cały produkt zależy od zebranych wymagań. Po zebraniu wymagań są one analizowane i dokumentowane w specyfikacji wymagań oprogramowania (SRS). Wymagania dotyczące oprogramowania można podzielić na dwie sekcje jako Wymagania funkcjonalne i niefunkcjonalne.
1. Przegląd i kluczowa różnica
2. Jakie są wymagania funkcjonalne
3. Jakie są wymagania niefunkcjonalne
4. Porównanie obok siebie - wymagania funkcjonalne w porównaniu do niefunkcjonalnych w formie tabelarycznej
5. Podsumowanie
Wymagania określające funkcjonalne aspekty oprogramowania są znane jako wymagania funkcjonalne. Wymagania funkcjonalne zmieniają się z jednego projektu do drugiego. Definiują funkcje zapewniane przez systemy lub komponenty.
Rysunek 01: Rozwój oprogramowania
Załóżmy system zarządzania szpitalem. Może mieć kilka modułów, takich jak moduł logowania, moduł pacjenta, moduł lekarza, moduł wizyty, moduł raportu i moduł fakturowania. Moduł logowania powinien pomyślnie zalogować się do systemu, jeśli podana zostanie poprawna nazwa użytkownika i hasło. Moduł pacjenta powinien zapisywać, edytować i usuwać dane pacjenta. Moduł lekarza powinien zapisywać, edytować i usuwać dane lekarza. Moduł spotkań powinien planować, ponownie planować i usuwać spotkania. Moduł raportów powinien generować raporty medyczne. Moduł rozliczeniowy powinien generować rachunki do zapłaty. Są to niektóre wymagania funkcjonalne dotyczące systemu zarządzania szpitalem.
Wymagania niezwiązane z funkcjonalnym aspektem oprogramowania należą do kategorii wymagań niefunkcjonalnych. Definiują oczekiwane cechy oprogramowania. Użytkownicy mogą przyjmować na ich temat założenia. Wielu użytkowników obawia się, że wymagania dotyczące funkcji nie będą odpowiednie, szczególnie w przypadku dużych systemów.
System zarządzania szpitalem powinien mieć następujące wymagania niefunkcjonalne. Szybkość jest znaczącym wymogiem. System powinien przetwarzać dane w jak najkrótszym czasie odpowiedzi. System powinien być bezpieczny. Dane powinny być dostępne tylko dla upoważnionych użytkowników. Powinien być łatwy w utrzymaniu. Oprogramowanie powinno być działającym i użytecznym produktem. Dane powinny być wiarygodne i dostępne w razie potrzeby. Dlatego system zarządzania szpitalem powinien mieć niefunkcjonalne wymagania, takie jak wydajność, bezpieczeństwo, łatwość konserwacji, użyteczność, niezawodność i dostępność.
Wymagania funkcjonalne a niefunkcjonalne | |
Wymagania funkcjonalne to wymagania, które definiują funkcje systemu lub jego podsystemów. | Wymagania niefunkcjonalne to wymagania określające kryteria, które można wykorzystać do oceny działania systemu. |
Stosowanie | |
Wymagania funkcjonalne służą do opisania funkcjonalności systemu. | Wymagania niefunkcjonalne opisują cechy jakości systemu lub atrybuty jakości. |
W tym artykule omówiono różnicę między dwiema kategoriami wymagań dotyczących oprogramowania. Różnica między wymaganiami funkcjonalnymi i niefunkcjonalnymi polega na tym, że wymagania funkcjonalne opisują, co powinien zrobić system, natomiast wymagania niefunkcjonalne opisują sposób działania systemu.
1. „Wymagania dotyczące oprogramowania.”, Tutorials Point, 8 stycznia 2018 r. Dostępne tutaj
1.'Coding Shots Plan roczny wysokiej rozdzielczości-5'By Matthew (WMF) - Praca własna, (CC BY-SA 3.0) przez Commons Wikimedia