Най- ключова разлика между функционалните и нефункционалните изисквания е, че функционалните изисквания описват какво трябва да прави системата, докато нефункционалните изисквания описват как работи системата.
В софтуерното инженерство софтуерните изисквания се фокусират върху нуждите, които трябва да бъдат решени от софтуера. При разработването на софтуер първата стъпка е събирането на изисквания. Това е една от най-важните стъпки, защото целият продукт зависи от събраните изисквания. След като изискванията са събрани, те се анализират и документират в спецификацията на софтуерните изисквания (SRS). Софтуерните изисквания могат да бъдат категоризирани в два раздела като функционални и нефункционални изисквания.
1. Преглед и ключова разлика
2. Какво са функционални изисквания
3. Какво са нефункционални изисквания
4. Паралелно сравнение - функционални и нефункционални изисквания в таблична форма
5. Резюме
Изискванията, които определят функционалните аспекти на софтуера, са известни като функционални изисквания. Функционалните изисквания се променят от един проект към друг. Те определят функционалностите, осигурени от системите или компонентите.
Фигура 01: Разработка на софтуер
Да приемем система за управление на болницата. Може да има няколко модула като модул за вход, модул за пациент, лекарски модул, модул за назначаване, модул за докладване и модул за фактуриране. Модулът за вход трябва успешно да влезе в системата, когато са предоставени правилното потребителско име и парола. Модулът на пациента трябва да запазва, редактира и изтрива данните за пациента. Лекарският модул трябва да запазва, редактира и изтрива данните на лекаря. Модулът за назначаване трябва да насрочи, разсрочи и изтрие срещите. Отчетният модул трябва да генерира медицински доклади. Модулът за фактуриране трябва да генерира сметки за плащане. Това са някои функционални изисквания към системата за управление на болницата.
Изискванията, които не са свързани с функционалния аспект на софтуера, попадат в категорията на нефункционалните изисквания. Те определят очакваните характеристики на софтуера. Потребителите могат да правят предположения за тях. Много потребители са загрижени за това, как нефункционалните изисквания са правилни, особено за големи системи.
Системата за управление на болницата трябва да има следните нефункционални изисквания. Скоростта е значително изискване. Системата трябва да обработва данни в рамките на минимално време за отговор. Системата трябва да е защитена. Данните трябва да са достъпни само от оторизирани потребители. Тя трябва да бъде лесно поддържаема. Софтуерът трябва да е работещ и използваем продукт. Данните трябва да бъдат надеждни и достъпни, когато е необходимо. Следователно системата за управление на болницата трябва да има нефункционални изисквания като производителност, сигурност, поддържане, използваемост, надеждност и наличност.
Функционални спрямо нефункционални изисквания | |
Функционални изисквания са изискванията, които определят функциите на дадена система или нейните подсистеми. | Нефункционални изисквания са изискванията, които определят критерии, които могат да бъдат използвани за преценка на работата на системата. |
употреба | |
Функционалните изисквания се използват за описание на функционалностите на дадена система. | Нефункционалните изисквания описват характеристиките на качеството на системата или атрибутите за качество. |
Тази статия обсъжда разликата между двете категории софтуерни изисквания. Разликата между функционалните и нефункционалните изисквания е, че функционалните изисквания описват какво трябва да прави системата, докато нефункционалните изисквания описват как работи системата.
1. „Изисквания към софтуера.“, Точка за уроци, 8 януари 2018 г. Достъпно тук
1.'Кодиране на кадри Годишен план с висока резолюция 5'By Matthew (WMF) - Собствена работа, (CC BY-SA 3.0) през Commons Wikimedia