
Нефункциональные требования - это требования, которые не касаются непосредственно функциональности приложения, но влияют на его удобство использования.
Пример, когда тестирование нефункциональных требований провалено - мобильное приложение для покупки билета на электричку 🚃:
- имеет маленькие кнопки для выбора времени отправления поезда, на который надо купить билет (удобство использования),
- начинает долго грузиться по утрам, в час пик (производительность),
- и мой купленный билет можно при желании использовать многократно в течение дня (безопасность).
- чтобы добавить возможность покупки билетов "туда-обратно", программисты говорят, что дешевле с нуля все переписать (масштабируемость).
Поэтому, работая над требованиями к приложениям, думаем про:
💥 Надежность - способность приложения работать бесперебойно на протяжении определенного времени, без ошибок
💥 Безопасность - способность защищать данные и систему от внешних угроз, доступность персональных данных пользователей, авторизация
💥 Удобство использования - эргономика, интуитивно понятный интерфейс
💥 Производительность - скорость и эффективность работы приложения
💥 Масштабируемость - способность приложения адаптироваться к росту нагрузки и изменению требований
💥 Совместимость - способность приложения работать с разными системами и устройствами
Сохраняйте в заметки, чтобы не потерять, и использовать при постановке очередной задачи или написании ТЗ!
Пример, когда тестирование нефункциональных требований провалено - мобильное приложение для покупки билета на электричку 🚃:
- имеет маленькие кнопки для выбора времени отправления поезда, на который надо купить билет (удобство использования),
- начинает долго грузиться по утрам, в час пик (производительность),
- и мой купленный билет можно при желании использовать многократно в течение дня (безопасность).
- чтобы добавить возможность покупки билетов "туда-обратно", программисты говорят, что дешевле с нуля все переписать (масштабируемость).
Поэтому, работая над требованиями к приложениям, думаем про:
💥 Надежность - способность приложения работать бесперебойно на протяжении определенного времени, без ошибок
💥 Безопасность - способность защищать данные и систему от внешних угроз, доступность персональных данных пользователей, авторизация
💥 Удобство использования - эргономика, интуитивно понятный интерфейс
💥 Производительность - скорость и эффективность работы приложения
💥 Масштабируемость - способность приложения адаптироваться к росту нагрузки и изменению требований
💥 Совместимость - способность приложения работать с разными системами и устройствами
Сохраняйте в заметки, чтобы не потерять, и использовать при постановке очередной задачи или написании ТЗ!