Нефункциональные требования описывают, как должна вести себя система, и устанавливают ограничения ее функциональности. Этот тип требований также известен как атрибуты качества системы. Если вам нужна подробная информация о типах нефункциональных требований и о том, как подходить к ним и документировать их, ознакомьтесь с нашей специальной статьей или посмотрите наше видео.
1. Юзабилити
Удобство использования определяет, насколько сложно пользователю будет освоить систему и управлять ею. Удобство использования можно оценить с разных точек зрения:
— Эффективность использования;
— Интуитивность;
— Низкая воспринимаемая рабочая нагрузка.
2. Безопасность
Требования безопасности гарантируют, что программное обеспечение защищено от несанкционированного доступа к системе и хранящимся в ней данным. В нем рассматриваются различные уровни авторизации и аутентификации для разных ролей пользователей. Например, конфиденциальность данных — это характеристика безопасности, которая описывает, кто может создавать, просматривать, копировать, изменять или удалять информацию. Безопасность также включает в себя защиту от вирусов и вредоносных атак.
3. Надежность
Надежность определяет, насколько вероятно, что программное обеспечение будет работать без сбоев в течение определенного периода времени. Надежность снижается из-за ошибок в коде, аппаратных сбоев или проблем с другими компонентами системы. Чтобы измерить надежность программного обеспечения, вы можете подсчитать процент операций, выполненных правильно, или отследить средний период времени, в течение которого система работает до сбоя.
4. Представление
Производительность — это атрибут качества, который описывает отзывчивость системы на различные взаимодействия пользователя с ней. Низкая производительность приводит к негативному пользовательскому опыту. Это также ставит под угрозу безопасность системы, когда она перегружена.
5. Доступность
Доступность определяется периодом времени, в течение которого функциональные возможности и службы системы доступны для использования во всех операциях. Таким образом, плановые периоды технического обслуживания напрямую влияют на этот параметр. При написании требований к доступности команда должна определить наиболее важные компоненты системы, которые должны быть доступны в любое время. Вы также должны подготовить уведомления пользователей на случай, если система или одна из ее частей станет недоступной.
6. Масштабируемость
Требования к масштабируемости описывают, как система должна расти без негативного влияния на ее производительность. Это означает обслуживание большего числа пользователей, обработку большего количества данных и совершение большего количества транзакций. Масштабируемость имеет как аппаратные, так и программные последствия.