Какво е нефункционално изискване в софтуерното инженерство?

Какво е нефункционално изискване?

Нефункционално изискване (NFR) определя атрибута за качество на софтуерна система. Те оценяват софтуерната система въз основа на отзивчивостта, използваемостта, сигурността, преносимостта и други нефункционални стандарти, които са критични за успеха на софтуерната система. Пример за нефункционално изискване, „колко бързо се зарежда уебсайтът?“ Неспазването на нефункционалните изисквания може да доведе до системи, които не успяват да задоволят нуждите на потребителите.

Нефункционалните изисквания в софтуерното инженерство ви позволяват да налагате ограничения или ограничения върху дизайна на системата в различните гъвкави неизпълнени задачи. Например, сайтът трябва да се зареди за 3 секунди, когато броят на едновременните потребители е > 10000. DescriptИонът на нефункционалните изисквания е също толкова критичен, колкото и функционалното изискване.

Видове нефункционални изисквания

По-долу са основните видове нефункционални изисквания:

Видове нефункционални изисквания
Видове нефункционални изисквания
  • Изискване за използваемост
  • Изискване за експлоатационна годност
  • Изискване за управляемост
  • Изискване за възстановимост
  • Изискване за сигурност
  • Дата Integrity изискване
  • Изискване за капацитет
  • Изискване за наличност
  • Изискване за мащабируемост
  • Изискване за оперативна съвместимост
  • Изискване за надеждност
  • Изискване за ремонтопригодност
  • Нормативно изискване
  • Изискване за околната среда

Примери за нефункционални изисквания

Ето някои примери за нефункционални изисквания:

  1. Потребителите трябва да променят първоначално зададената парола за влизане веднага след първото успешно влизане. Освен това инициалът никога не трябва да се използва повторно.
  2. Служителите никога не са имали право да актуализират информацията за заплатите си. Такъв опит трябва да бъде докладван на администратора по сигурността.
  3. Всеки неуспешен опит на потребител за достъп до елемент от данни се записва на одитна пътека.
  4. Един уебсайт трябва да е достатъчно способен да се справи с 20 милиона потребители, което да повлияе на ефективността му
  5. Софтуерът трябва да е преносим. Така че преминаването от една операционна система към друга не създава никакъв проблем.
  6. Поверителността на информацията, износът на ограничени технологии, правата върху интелектуалната собственост и т.н. трябва да бъдат одитирани.

Функционални срещу нефункционални изисквания

Следва основната разлика между функционалните и нефункционалните изисквания:

параметри Функционално изискване Нефункционално изискване
Какво е това? глагол Атрибути
Изискване Тя е задължителна Не е задължително
Тип заснемане Той е заловен в случай на употреба. Той се улавя като качествен атрибут.
Краен резултат Функция на продукта Свойства на продукта
Прихващане Лесен за заснемане Трудно за улавяне
Цел Помага ви да проверите функционалността на софтуера. Помага ви да проверите ефективността на софтуера.
Зона на фокусиране Фокусирайте се върху изискванията на потребителя Концентрира се върху очакванията на потребителя.
документация Опишете какво прави продуктът Описва как работи продуктът
Тип тестване Функционално тестване като система, интеграция, край до край, API тестване и т.н. Нефункционални тестове като производителност, стрес, използваемост, тестове за сигурност и др.
Изпълнение на теста Изпълнението на теста се извършва преди нефункционално тестване. След функционалното изследване
Информация за продукта Характеристики на продукта Свойства на продукта

Предимства на нефункционалното изискване

Предимства/плюсове на Нефункционално тестване са:

  • Нефункционалните изисквания гарантират, че софтуерната система следва законови правила и правила за съответствие.
  • Те гарантират надеждността, наличността и производителността на софтуерната система
  • Те осигуряват добро потребителско изживяване и лесна работа със софтуера.
  • Те помагат при формулирането на политика за сигурност на софтуерната система.

Недостатъци на нефункционалното изискване

Минуси/недостатъци на изискването за нефункционалност са:

  • Нито едно функционално изискване не може да засегне различните софтуерни подсистеми на високо ниво
  • Те изискват специално внимание по време на фазата на софтуерна архитектура/проектиране на високо ниво, което увеличава разходите.
  • Тяхното внедряване обикновено не се съпоставя с конкретната софтуерна подсистема,
  • Трудно е да модифицирате нефункционални, след като преминете фазата на архитектурата.

КЛЮЧОВО УЧЕНЕ

  • NFR означава: Нефункционално изискване определя атрибута за производителност на софтуерна система.
  • Какви са типовете нефункционално поведение: капацитет за мащабируемост, наличност, надеждност, възможност за възстановяване, данни IntegrityИ др
  • Един от примерите за NFR е, че на служителите никога не е разрешено да актуализират информацията за заплатите си. Такъв опит трябва да бъде докладван на администратора по сигурността.
  • Функционалното изискване е глагол, докато нефункционалното изискване е атрибут
  • Предимството на нефункционалното изискване е, че ви помага да осигурите добро потребителско изживяване и лекота на работа със софтуера
  • Най-големият недостатък на нефункционалното изискване е, че може да засегне различните софтуерни подсистеми на високо ниво.