Стадии и этапы разработки программ

Стадии и этапы разработки программ

Государственный стандарт ГОСТ 19.102—77 устанавливает следующие стадии разработки программной документации:

1) техническое задание;

2) эскизный проект;

3) технический проект;

4) рабочий проект;

Рассмотрим подробнее каждую из стадий.

1. Стадия «Техническое задание». Этапы и содержание работ на этой стадии представлены в табл. 7.5.

Таблица 7.5. Работы, выполняемые на стадии «Техническое задание»

Обоснование необходимости разработки программы

Постановка задачи. Сбор исходных материалов. Выбор и обоснование критериев эффективности и качества разрабатываемой программы. Обоснование необходимости проведения научно-исследовательских работ

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

Разработка и утверждение технического задания

Определение требований к программе. Разработка технико-экономического обоснования разработки программы. Определение стадий, этапов и сроков разработки программы и документации на нее. Выбор языков программирования

Разработка и утверждение технического задания

Определение необходимости проведения научно-исследовательских работ на последующих стадиях. Согласование и утверждение технического задания

Документ «Техническое задание» оформляется в соответствии с ГОСТ 19.106—78 на листах формата А4 и А3 номера листов (страниц) проставляются в верхней части листа над текстом.

Содержание технического задания должно соответствовать ГОCT 19.201—78 и включать следующие разделы:

основания для разработки;

требования к программе или программному изделию;

требования к программной документации;

стадии и этапы разработки;

порядок контроля и приемки;

в техническое задание допускается включать приложения.

В зависимости от особенностей программы или программного изделия допускается уточнять содержание разделов, вводить новые разделы или объединять некоторые из них.

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

В разделе «Введение» указывают наименование, краткую характеристику области применения программы или программного изделия и объекта, в котором используют программу или программное изделие.

Все разработки программных систем можно разбить на три группы: управляемые потребителем, контролируемые потребителем и независимые от потребителя. В случае управляемой потребителем разработки характеристики области применения задаются ее потребителем; в случае разработки, контролируемой потребителем, характеристики области применения формулируются совместно разработчиком и потребителем; в случае независимой от потребителя разработки вся ответственность за выбор характеристик области применения ложится на .разработчика.

В разделе «Основания для разработки» должны быть указаны:

документ (документы), на основании которых ведется разработка;

организация, утвердившая этот документ, и дата его утверждения;

наименование и (или) условное обозначение темы разработки. В разделе «Назначение разработки» должно быть указано функциональное и эксплуатационное назначение программы или программного изделия.

Раздел «Требования к программе или программному изделию» должен содержать следующие подразделы:

требования к функциональным характеристикам;

требования к надежности;

требования к составу и параметрам технических средств;

требования информационной и программной совместимости;

требования к маркировке и упаковке;

требования к транспортированию и хранению;

В подразделе «Требования к функциональным характеристикам» должны быть указаны требования к составу выполняемых функций, организации входных и выходных данных, временным характеристикам и т. д.

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

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

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

Необходимый состав технических средств (конфигурация системы), с указанием их основных технических характеристик приводится в подразделе «Требования к составу и параметрам технических средств».

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

В подразделе «Требования к маркировке и упаковке» в общем случае указывают требования к маркировке программного изделия, варианты и способы упаковки.

Читайте также:  Как вставить документ визио в ворд

В подразделе «Требования к транспортированию и хранению» должны быть указаны для программного изделия условия транспортирования, места хранения, условия хранения, условия складирования, сроки хранения в различных условиях.

В разделе «Требования к программной документации» должен быть указан предварительный состав программной документации и при необходимости специальные требования к ней,

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

В разделе «Стадии и этапы разработки» устанавливают необходимые стадии разработки, этапы и содержание работ (перечень программных документов, которые должны быть разработаны, согласованы и утверждены), а также, как правило, сроки разработки, которые и определяют исполнителей.

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

Возможны следующие пути представления результатов разработки:

1) в форме программной документации;

2) в форме конструкторской документации на программное изделие;

3) в форме программного изделия.

В приложениях к техническому заданию при необходимости приводят:

перечень научно-исследовательских и других работ, обосновывающих разработку;

схемы алгоритмов, таблицы, описания, обоснования, расчеты и другие документы, которые могут быть использованы при разработке;

другие источники разработки.

2. Стадия «Эскизный проект». Основные этапы и содержание работ на этой стадии приведены в табл. 7.6. .

Таблица 7.6. Работы, выполняемые íà стадии Эскиэный проект»

Разработка эскизного проекта Утверждение эскизного проекта

Предварительная разработка структуры входных и выходных данных. Уточнение методов решения задачи. Разработка общего описания алгоритма решения задачи. Разработка технико-экономического обоснования. Разработка пояснительной записки

Согласование и утверждение эскизного проекта

Полный объем работы по эскизному проектированию и конкретное содержание этой стадии зависят от сложности разрабатываемой программной системы. Результатом проектирования является достаточно полное описание архитектуры системы. Это описание часто делается на нескольких уровнях детализации, начиная с верхнего уровня — общесистемного описания. На верхнем уровне выделяются важнейшие подсистемы—программные, комплексы, им присваиваются имена, устанавливается взаимодействие между этими комплексами и обмен данными между ними, определяются функции каждой такой подсистемы (модуля), которые получаются путем декомпозиции программных функций системы. Затем для каждой из выделенных подсистем может выполняться аналогичная процедура, выделяются модули следующего уровня и т. д. Нижние уровни этой иерархии разрабатываются и описываются на следующей стадии проектирования. В конечном итоге система оказывается организованной иерархически, расслоенной на уровни, каждый из которых представляет собой совокупность взаимосвязанных модулей. При таком построении можно упростить анализ системы, делая уровни максимально независимыми друг от друга, оно получило название нисходящего проектирования. Наряду с нисходящим проектированием на практике используется в какой-то степени противоположный подход — восходящее проектирование. Более подробно вопросы проектирования программ будут рассмотрены выше.

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

Результаты эскизного проектирования отображаются в документе «Пояснительная записка к эскизному проекту:», оформляемом в соответствии с ГОСТ 19.105—78 и ГОСТ 19.404—79. Этот документ должен содержать следующие разделы:

2) назначение и область применения;

3) технические характеристики;

4) ожидаемые технико-экономические показатели;

5) источники, использованные при разработке;

В зависимости от особенностей документа отдельные разделы (подразделы) допускается объединять, а также вводить новые разделы (подразделы).

В разделе «Введение» указывают наименование программы и (или) условное обозначение темы разработки, а также документы, на основании которых ведется разработка с указанием организации и даты утверждения.

В разделе «Назначение и область применения» указывают назначение программы и характеризуют область ее применения. Характеристики области применения должны точно соответствовать характеристикам, указанным в техническом задании, но должны быть более подробно описаны с точки зрения функционирования программного комплекса.

Раздел «Технические характеристики» должен содержать следующие подразделы:

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

описание алгоритма и (или) функционирования программы с обоснованием выбора схемы алгоритма решения задачи, возможные взаимодействия программы с другими программами, отдельно должны быть рассмотрены состав и функции программных подсистем, связи этих подсистем и соглашения о связях, требования к программным интерфейсам;

описание и обоснование выбора метода организации входных и выходных данных;

описание и обоснование выбора состава технических и программных средств на основании проведенных расчетов и (или) анализов, распределение носителей данных.

В разделе «Ожидаемые технико-экономические показатели» указывают технико-экономические показатели, обосновывающие преимущество выбранного варианта технического решения, а также при необходимости ожидаемые оперативные показатели,

В разделе «Источники, использованные при разработке» дается перечень научно-технических публикаций, нормативных документов, документов входящих подсистем и программ, а также других материалов, на которые есть ссылки в основном тексте.

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

Читайте также:  Если сломалась флешка можно извлечь информацию

После утверждения пояснительной записки она становится программным документом, правила дублирования учета и хранения которого определяются ГОСТ 19.601—78 и ГОСТ 19.602—78. Последующие стадии и этапы разработки программной системы могут выявить необходимость внесения изменений в ее эскизный проект. Эти изменения должны быть отражены в пояснительной записке эскизного проекта; правила внесения изменений определяются ГОСТ 19.603—78 и ГОСТ 19.604—78.

3. Стадия «Технический проект». Этапы и содержание работ на этой стадии определяются табл. 7.7.

Таблица 7.7. Работы, выполненные на стадии «Технический проект»

Разработка технического проекта

Утверждение технического проекта

Уточнение структуры входных и выходных данных. Разработка алгоритма решения задачи. Определение формы представления входных и выходных данных. Определение семантики и синтаксиса языка. Разработка структуры программы. Окончательное определение конфигурации технических средств

Разработка плана мероприятий по разработке и внедрению программ. Разработка пояснительной записки. Согласование и утверждение технического проекта

Содержанием работ на этой стадии является проектирование структуры программного комплекса. Результатом — реализующий заданные функции программный комплекс как иерархически организованная структура программных модулей, заданных своими функциональными спецификациями. Формой представления результатов является документ «Пояснительная записка к техническому проекту». Требования к содержанию и оформлению этого документа определены ГОСТ 19.105—78, ГОСТ 19.404—79. Рассмотрим важнейшие этапы работы на этой стадии. Разработка структуры программной системы заключается в выделении всех программных компонентов по функциональным признакам, определении функциональных спецификаций программных модулей и уточнении внешних функциональных спецификаций системы и структуры входных и выходных данных, определении • операционной среды, языковых средств и конфигурации технических средств.

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

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

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

4. Стадия «Рабочий .проект». Содержанием работ на этой стадии является описание программы на выбранном проблемно-ориентированном языке (кодирование), отладка, разработка, согласование и утверждение порядка и методики испытаний, разработка программных документов в соответствии с требованиями ГОСТ 19.101—77, проведение предварительных испытаний (тестирование), корректировка программы и программной документации по результатам испытаний, проведение приемо-сдаточных межведомственных, государственных и других видов испытаний.

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

Отметим, что хотя ЕСПД предусматривает разработку порядка и методики испытаний на стадии «Рабочий проект», работа по подготовке и проведению испытаний фактически начинается уже на стадии «Техническое задание», когда намечается порядок контроля и приемки, и ее целесообразно вести в течение всего процесса проектирования программы.

5. Стадия «Внедрение». Содержанием работ на этой стадии является подготовка и передача программы и программной документации для сопровождения и (или) изготовления, оформления и утверждения акта о передаче программы на сопровождение или изготовление, передача программы в фонд алгоритмов и программ.

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

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

Значение сопровождения в жизненном цикле больших программ стало осознаваться специалистами лишь в последние годы, когда выяснилось, что затраты на их сопровождение могут составлять до 60% затрат на программное обеспечение, или 50% общих затрат на вычислительную технику. Жизненный цикл программного обеспечения длится около 5—7 лет, в течение которых требования к нему могут существенно меняться. Различие между большими и малыми программами проявляется не только и не столько в их разработке, сколько в сопровождении.

Большую программу по понятным причинам нельзя переделать заново, но при изменении и дополнении больших программ на стадии сопровождения приходится в какой-то степени повторять все предыдущие стадии разработки, что приводит к большим затратам и множеству ошибок. Типичным является следующее распределение ресурсов для больших систем: 100 чел. в течение 2 лет заняты разработкой программного обеспечения и 35 чел. в течение 8 лет — сопровождением. Один из путей упрощения стадии сопровождения состоит в учете особенностей этого этапа на остальных стадиях разработки программного изделия.

Читайте также:  Файл nm7 что это

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

В обоснованных случаях допускается исключать стадии экскизного и технического проекта – необходимость этого выявляется на стадии техни­ческого задания.

По согласованию с заказчиком можно объединять, исключать, вводить другие этапы и изменять их содержание.

Стадия ТЕХНИЧЕСКОЕ ЗАДАНИЕ состоит из следующих этапов.

1 Обоснование необходимости разработки программы – на этом этапе выполняются:

– сбор исходных материалов;

– выбор и обоснование критериев эффективности и качества разраба­тываемой программы;

– обоснование необходимости проведения научно-исследовательских работ.

2 Научно–исследовательские работы – на этом этапе выполняются:

– определение структуры входных и выходных данных;

– предварительный выбор методов решения задачи;

– обоснование целесообразности применения ранее разработанных программ;

– определение требований к техническим средствам;

– обоснование принципиальной возможности решения поставленной задачи.

3 Разработка и утверждение технического задания – на этом этапе выполняются:

– определение требований к программе;

– разработка технико-экономического обоснования разработки программы;

– определение стадий, этапов и сроков разработки программы и документации на нее;

– выбор языков программирования;

– определение необходимости проведения научно-исследовательских работ на последующих стадиях.

Стадия ЭСКИЗНЫЙ ПРОЕКТ состоит из следующих этапов.

1 Разработка эскизного проекта – на этом этапе выполняются:

– предварительная разработка структуры входных и выходных данных.

– уточнение методов решения задачи;

– разработка общего описания алгоритма решения задачи;

– разработка технико-экономического обоснования.

2 Утверждение эскизного проекта – на этом этапе выполняются:

– разработка пояснительной записки;

– согласование и утверждение эскизного проекта.

Стадия ТЕХНИЧЕСКИЙ ПРОЕКТ состоит из следующих этапов.

1 Разработка технического проекта – на этом этапе выполняются:

– уточнение структуры входных и выходных данных;

– разработка алгоритма решения задачи;

– определение формы представления входных и выходных данных;

– определение семантики и синтаксиса языка;

– разработка структуры программы;

– окончательное определение конфигурации технических средств.

2 Утверждение технического проекта – на этом этапе выполняются:

– разработка плана мероприятий по разработке и внедрению программы;

– разработка пояснительной записки;

– согласование и утверждение технического проекта.

Стадия РАБОЧИЙ ПРОЕКТ состоит из следующих этапов.

1 Разработка программы – на этом этапе выполняется:

– программирование и отладка программы.

2 Разработка программной документации – на этом этапе выполняется:

– разработка программных документов в соответствии с требованиями ЕСПД

3 Испытания программы – на этом этапе выполняются:

– разработка согласование и утверждение программы и методики испытаний;

– проведение предварительных государственных, межведомственных, приемо-сдаточных и других видов испытаний;

– корректировка программы и программной документации по результатам испытаний.

Стадия ВНЕДРЕНИЕ состоит из единственного этапа.

1 Подготовка и передача программы – на этом этапе выполняются:

– подготовка и передача программы и программной документации для сопровождения и/или изготовления;

– оформление и утверждение акта о передаче программы на сопровождение и/или изготовление;

– передача программы в фонд алгоритмов и программ[2].

Дата добавления: 2015-09-18 ; просмотров: 745 ; ЗАКАЗАТЬ НАПИСАНИЕ РАБОТЫ

разработка техдокументации — аванпроекты, НИР, ОКР — СРПП (ВТ), ЕСКД, ЕСПД, КСАС

Стадии разработки, этапы и содержание работ по ГОСТ 19.102-77

Стадии разработки, этапы и содержание работ должны соответствовать указанным в таблице.

Обоснование необходимости разработки программы

Постановка задачи
Сбор исходных материалов
Выбор и обоснование критериев эффективности и качества разрабатываемой программы
Обоснование необходимости проведения научно-исследовательских работ

Определение структуры входных и выходных данных
Предварительный выбор методов решения задач
Обоснование целесообразности применения ранее разработанных программ
Определение требований к техническим средствам
Обоснование принципиальной возможности решения поставленной задачи

Разработка и утверждение технического задания

Определение требований к программе
Разработка технико-экономического обоснования разработки программы
Определение стадий, этапов и сроков разработки программы и документации на нее
Выбор языков программирования
Определение необходимости проведения научно-исследовательских работ на последующих стадиях
Согласование и утверждение технического задания

Разработка эскизного проекта

Предварительная разработка структуры входных и выходных данных
Уточнение методов решения задачи
Разработка общего описания алгоритма решения задачи
Разработка технико-экономического обоснования

Утверждение эскизного проекта

Разработка пояснительной записки
Согласование и утверждение эскизного проекта

Разработка технического проекта

Уточнение структуры входных и выходных данных
Разработка алгоритма решения задачи
Определение формы представления входных и выходных данных
Определение семантики и синтаксиса языка
Разработка структуры программы
Окончательное определение конфигурации технических средств

Утверждение технического проекта

Разработка плана мероприятий по разработке и внедрению программ
Разработка пояснительной записки
Согласование и утверждение технического проекта

Разработка программной документации

Разработка программных документов в соответствии с требованиями ГОСТ 19.101-77

Подготовка и передача программы

Подготовка и передача программы и программной документации для сопровождения и (или) изготовления
Оформление и утверждение акта о передаче программы на сопровождение и (или) изготовление
Передача программы в фонд алгоритмов и программ

  1. Допускается исключать вторую стадию разработки, а в технически обоснованных случаях — вторую и третью стадии. Необходимость проведения этих стадий указывается в техническом задании;
  2. Допускается объединять, исключать этапы работ и (или) их содержание, а также вводить другие этапы работ по согласованию с заказчиком.
Ссылка на основную публикацию
Adblock detector