Interested Article - Функциональная спецификация

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

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

Обзор

В системной инженерии спецификация — это документ, который понятно и точно описывает существенные технические требования для объектов, материалов или операций. Спецификации помогают устранить дублирование и несоответствия, позволяют точно оценить необходимые действия и ресурсы, выступают в качестве согласующего и справочного документов о внесённых изменениях, предоставляют документацию с конфигурацией, и даёт возможность взаимодействия лиц, работающих с восемью основными функциями системного проектирования. Они дают точное представление о решении проблемы, повышая эффективность разработки системы и оценивая стоимость альтернативных путей проектирования. Они служат указанием для испытателей для верификации (качественной оценки) каждого технического требования.

Функциональная спецификация не определяет операции, происходящие внутри данной системы и каким образом будет реализована её функция. Вместо этого, она рассматривает взаимодействие с внешними агентами (например, персонал, использующий программное обеспечение; периферийные устройства компьютера или другие компьютеры), которые могут «следить», взаимодействуя с системой.

Пример из типичной функциональной спецификации:

Когда пользователь нажимает кнопку ОК, окно диалога закрывается и в фокусе оказывается главное окно, которое было до появления диалога.

Такое требование описывает взаимодействие внешнего агента ( пользователь ) и программной системы. Когда пользователь производит ввод в систему, путём нажатия кнопки ОК, программа отвечает (или должна ответить) закрытием окна, содержащего эту кнопку.

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

Назначение

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

Применение

Когда группа разработчиков приходит к общему мнению о готовности функциональной спецификации, то в таком случае её называют «завершенной» или «подписанной». После этого, программисты и тестировщики пишут исходный код и тестируют программу, используя функциональную спецификацию в качестве эталона. Во время тестирования осуществляется сравнение действий программы с ожидаемыми, определёнными в спецификации.

См. также

Примечания

  1. Defense Acquisition University Press, 2001 22 июля 2011 года. (англ.)

Ссылки

  • (англ.)
  • (англ.)
  • (англ.)
Источник —

Same as Функциональная спецификация