Нефункциональные программные требования

Функциональные требования к программному обеспечению

Функциональные требования описывают, как ведет себя система. Эти требования обычно ориентированы на действия ("Когда пользователь делает х, система будет делать y”). Большинство продуктов и приложений, предназначенных для выполнения полезной работы, содержит множество функциональных требований к программному обеспечению. Программное обеспечение используется для реализации большей части функциональных возможностей.

При определении функциональных требований следует искать золотую середину между слишком конкретизированной формулировкой требования и слишком общей и неоднозначной. Например, как правило, ни к чему иметь обобщенное функциональное требование следующего вида: "Когда вы нажимаете эту кнопку, система включается и работает". С другой стороны, формулировка требования, которая состоит из нескольких страниц текста, но-видимому, слишком конкретизирована, но может быть правомерной в некоторых частных случаях. Мы вернемся к рассмотрению этого вопроса в главе 26.

Оказывается, что большинство функциональных требований можно сформулировать в| виде простых декларативных определений или в форме прецедентов, которым посвящена следующая глава. Опыт свидетельствует, что определение требования, состоящего из одного – двух предложений, обычно является наилучшим, когда нужно соотнести потребность пользователя с приемлемым для работы разработчика уровнем конкретизации.

До сих пор в данной, главе приводились, в основном, примеры поведенческих (функциональных) требований к системе, основное внимание в которых уделялось вопросам ввода, вывода и обработки. Функциональные требования описывают, как система должна вести себя, когда ей предоставляются определенные входные данные или условия.

Но этого недостаточно для полного описания требований к системе. Необходимо также учитывать следующие характеристики, которые Грейди (Grady) (1992) назвал "нефункциональными требованиями".

• Практичность (Usability)

• Надежность (Reliability)

• Производительность (Performance)

• Возможность обслуживания (Supportability)

Эти требования, как правило, используются для описания некоторых "атрибутов системы" или "атрибутов системного окружения" из нашего сложного определения. Благодаря их удобной классификации мы можем больше узнать о системе, которую необходимо создать. Рассмотрим каждый из перечисленных пунктов более подробно.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: