Введение

НФР (нефункциональные требования) нуждаются в структуре для систематизации. Анализ начинается с мягких целей, представляющих собой НФР, с которыми согласуются заинтересованные стороны. Мягкие цели – это цели, которые сложно четко сформулировать, но обычно отражают общие качества программной системы, такие как удобство использования, производительность, безопасность и гибкость. Если команда начинает их собирать, то часто обнаруживает их очень много. Для сокращения их количества до управляемого объема полезным является структурированный подход. Существует несколько фреймворков, которые могут служить основой для такой структуры.

Измерение нефункциональных требований

SNAP – это процесс оценки нефункциональных характеристик программного обеспечения. В то время как функциональные точки измеряют функциональные требования, определяя объем потока данных в программном приложении, SNAP от IFPUG измеряет нефункциональные требования. Модель SNAP состоит из четырех категорий и четырнадцати подкатегорий для оценки нефункциональных требований. Нефункциональные требования сопоставляются с соответствующими подкатегориями. Каждая подкатегория оценивается по размеру, а размер требования определяется как сумма размеров его подкатегорий. Процесс оценки размера SNAP очень похож на процесс оценки размера функциональных точек. В рамках границ приложения нефункциональные требования связываются с соответствующими категориями и их подкатегориями. Используя стандартизированный набор базовых критериев, каждая подкатегория затем оценивается в соответствии с ее типом и сложностью; размер такого требования является суммой размеров его подкатегорий. Эти размеры суммируются для получения общей оценки нефункционального размера программного приложения. Бета-тестирование модели показало, что размер SNAP имеет высокую корреляцию с трудозатратами, необходимыми для разработки нефункциональной части программного приложения.