Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Что такое спецификация программы??
Спецификация, определение требований к программе — один из важнейших этапов, на котором подробно описывается исходная информация, формулируются требования к результату, поведение программы в особых случаях (например, при вводе неверных данных), разрабатываются диалоговые окна, обеспечивающие взаимодействие пользователя и программы.
Спецификация программы - это средство для точного описания того, что должно быть совершено в результате выполнения программы.
Спецификация программы - точная и полная формулировка задачи, содержащая информацию, необходимую для построения алгоритма (программы) решения этой задачи.
+ Существует несколько видов спецификаций: - функциональная - внешняя - архитектурная - техническая
Функциональная спецификация: формальное описание, которое объясняет, что и как будет делать программа. Она достаточно детально показывает строение всех модулей и их взаимодействие с учетом проектных ограничений. Спецификация невозможна без четкого описания структур данных программы. В крупных комплексных проектах спецификации имеют несколько уровней детализации. Первоисточником для разработки функциональных спецификаций является Техническое задание. В этом документе описываются требования к программному продукту.
На верхнем уровне специфицирования программного продукта разрабатывается Внешняя спецификация для заказчика. Это документ, объясняющий в бизнес–терминах, что должна делать система. Документ разрабатывается с ориентацией на пользователя и, соответственно, должен отражать все его интересы. Документ не должен быть перегружен техническими подробностями. Пользователю интересно, какие меню, экраны и отчеты будут представлены в программе, и как программа будет осуществлять переходы из одной точки в другую. В зависимости от уровня подготовленности заказчика спецификация может иметь различную степень детализации.
На втором уровне может быть разработан концептуальный документ, описывающий Архитектуру системы. Эта спецификация показывает функционирование всей системы в целом, не детализируя устройство отдельных модулей. Она представляет структуру объектов и их зависимости. Спецификация дает профессионалу быстрое понимание организации системы и функционирования компонент, как части общей системы. Инструментами для описания архитектуры являются такие средства: UML, DFD, ERD и т.п.
На заключительном этапе разрабатывается Техническая спецификация. Этот документ является завершающим в цепочке спецификаций и позволяет полностью сосредоточиться на стадии кодирования системы. Спецификация описывает низкоуровневую организацию продукта. Здесь для каждого модуля разработчик должен определить все требования, включая передаваемые параметры, глобальные структуры и переменные, вызываемые подпрограммы и т.д. Эта информация важна для кодировщиков, которые параллельно реализуют различные модули, взаимодействующие друг с другом. Хорошо выполненная техническая спецификация снимает все проблемы, возникающие при объединении отдельных модулей в единое целое. Вторая часть низкоуровневого проектирования - создание псевдокода - является трудной, но очень важной частью процесса. Для маленьких процедур и модулей код с размером в несколько строк написать проще, при этом не надо тратить время на представление одних и тех же действий дважды. Однако для крупных проектов с большой командой усилия, затраченные на эту работу, с лихвой окупятся на этапе сопровождения продукта, делая его более понятным, а, следовательно, модифицируемым с меньшими затратами.
Спецификация может содержать следующие разделы:
* Назначение и область применения * Термины и сокращения * Описание структурной модели программы (описываются модули и взаимодействие между ними, используются соответствующие инструменты, могут использоваться диаграммы классов, событийные диаграммы) * Описание информационной модели (специфицируются структуры данных и приводятся диаграммы данных) * Описание алгоритмической модели (описываются 2-3 наиболее интересные с точки зрения алгоритмов функции программы, для описания используются псевдокод)
Структурная модель, событийная и информационная модели описывают архитектуру программы верхнего и среднего уровня. Алгоритмическая модель должна описывать работу системы на низком уровне.
В России форму и порядок составления программного документа " Спецификация" определяется по ГОСТ 19.101-77. Структура и оформление документа устанавливаются в соответствии с ГОСТ 19.105-78. Информационную часть (аннотацию и содержание) допускается в документ не вносить. Кроме того для составления спецификаций используются CASE-системы/язык UML
|