• Оформление по еспд программной документации, еспд. Правила оформления курсовых и дипломных Общая характеристика состояния

    Г О С У Д А Р С Т В Е Н Н Ы Й С Т А Н Д А Р Т С О Ю З А С С Р

    Система технической документации на АСУ

    ГОСТ 24.207-80

    ТРЕБОВАНИЯ К СОДЕРЖАНИЮ ДОКУМЕНТОВ ПО ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ

    System of technical documentation for computer control systems. Requirements for contents of documents on software

    Постановлением Государственного комитета СССР по стандартам от 14 мая 1980 г. № 2101 срок введения установлен

    с 01.01 1981 г.

    Настоящий стандарт распространяется на техническую документацию на автоматизированные системы управления (АСУ) всех видов, разрабатываемые для всех уровней управления (кроме общегосударственного), и устанавливает требования к содержанию документов, входящих в соответствии с ГОСТ 24.101-80 в состав документации программного обеспечения в проектах АСУ.

    1. ОБЩИЕ ПОЛОЖЕНИЯ

    1.1. Документация программного обеспечения предназначена:

    • для описания проектных решений по программному обеспечению в документе «Описание программного обеспечения АСУ».
    • для установления требований к программе (комплексу программ) в документе «Техническое задание»;
    • для описания решений, обеспечивающих сопровождение, изготовление и эксплуатацию программы (комплекса программ) в документах «Пояснительная записка», «Описание применения», «Описание программы», «Спецификация», «Руководство программиста», «Руководство оператора», «Текст программы», «Формуляр», «Порядок и методика испытаний»;
    • для проверки работоспособности программы (комплекса программ) в документе «Описание контрольного примера».

    1.2. При разработке документов на части АСУ содержание разделов каждого документа ограничивают рамками соответствующей части.

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

    1.4. Требования к содержанию документов «Техническое задание», «Пояснительная записка», «Описание применения», «Спецификация», «Руководство оператора», «Текст программы», «Формуляр», «Порядок и методика испытаний» установлены ГОСТ 19.201-78 , ГОСТ 19.404-79 , ГОСТ 19.502-78 , ГОСТ 19.202-78 , ГОСТ 19.505-79 , ГОСТ 19.401-78 , ГОСТ 19.501-78 и ГОСТ 19.301-79 .

    (Измененная редакция, Изм. № 1).

    2. ТРЕБОВАНИЯ К СОДЕРЖАНИЮ ДОКУМЕНТОВ

    2.1. Описание программного обеспечения АСУ

    2.1.1. Документ должен содержать вводную часть и разделы:

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

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

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

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

    (Измененная редакция, Изм. № 1).

    2.1.5. Раздел «Методы и средства разработки программного обеспечения» должен содержать перечень методов программирования и средств разработки программного обеспечения АСУ с указанием частей программного обеспечения, при разработке которых следует использовать соответствующие методы и средства.

    2.1.6. Раздел «Операционная система» должен содержать:

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

    2.1.7. Раздел «Средства, расширяющие возможности операционной системы» должен содержать подразделы, в которых для каждого используемого средства, расширяющего возможности операционной системы, следует указать:

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

    2.2. Описание программы

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

    2.2.3. Раздел «Настройка программных средств» должен содержать:

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

    2.3. Руководство программиста

    2.3.1. Документ по составу разделов и их содержанию должен соответствовать ГОСТ 19.504-79 и, кроме того, включать раздел «Сведения о форме представления программы (комплекса программ)».

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

    2.3.3. Для программы (комплекса программ), допускающей настройку на условия конкретного применения, в документ «Руководство программиста» включают разделы:

    • структура программы;
    • настройка программы;
    • дополнительные возможности;
    • сообщения системному программисту.

    2.3.4. Разрешается для программы (комплекса программ), допускающей настройку на условия конкретного применения, вместо разделов, перечисленных в п. 2.3.3, разрабатывать отдельный документ «Руководство системного программиста», удовлетворяющий требованиям ГОСТ 19.503-79 .

    2.4. Описание контрольного примера

    2.4.1. Документ должен содержать разделы:

    • назначение;
    • исходные данные;
    • результаты расчета;
    • проверка программы (комплекса программ).

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

    2.4.3. Раздел «Исходные данные» должен содержать описание исходных данных для проверки программы (комплекса программ) с приведением исходных данных. Допускается исходные данные представлять в виде распечатки с АЦПУ.

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

    2.4.5. Раздел «Проверка программы (комплекса программ)» должен содержать:

    • описание состава технических средств, необходимых для работы программы (комплекса программ), или ссылку на соответствующие программные документы;
    • описание процедур формирования исходных данных для проверки программы (комплекса программ), вызова проверяемой программы (комплекса программ) и получения результатов расчета;
    • описание действий оператора при подготовке исходных данных и проверке программы (комплекса программ) на контрольном примере.
    * Переиздание (май 1986 г.) с Изменением № 1, утвержденным в августе 1985 г. (ИУС 11-85).

    Программы для ЭВМ оформляются в соответствии с требованиями Единой системы программной документации (ЕСПД) . ЕСПД - набор ГОСТов, устанавливающих правила оформления, содержание, структуру программных документов.
    Данный how-to содержит выдержки из ЕСПД. Полные сведения можно получить непосредственно из ГОСТов.

    Краткий алгоритм оформления программы

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

    Оформление программного документа

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

    Каждый отдельный программный документ оформляется по (общим для всех докуметнов ЕСПД) требованиям ГОСТ 19.101-77 , ГОСТ 19.103-77 , ГОСТ 19.104-78 , ГОСТ 19.105-78 , ГОСТ 19.106-78 , ГОСТ 19.604-78 (более подробное описание данных ГОСТов следует ниже) и ГОСТа для конкретного программного документа.

    Общие требования к программным документам. ГОСТ 19.105 - 78

    Требования к программным документам, выполненным печатным способом. ГОСТ 19.106 - 78

    ГОСТ 19.106-78 устанавливает правила выполнения программных документов для печатного способа выполнения.

    Важно отметить, что данный ГОСТ не распространяется на программный документ "Текст программы".

    Материалы программного документа должны располагаться в следующей последовательности :

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

    В аннотации указывают издание программы, кратко излагают назначение и содержание документа. Если документ состоит из нескольких частей, в аннотации указывают общее количество частей. Содержание документа размещают на отдельной (пронумерованной) странице (страницах) после аннотации, снабжают заголовком «СОДЕРЖАНИЕ», не нумеруют как раздел и включают в общее количество страниц документа.

    Форматирование текста:

    • Программный документ выполняют на одной стороне листа, через два интервала; допускается через один или полтора интервала.
    • Аннотацию размещают на отдельной (пронумерованной) странице с заголовком «АННОТАЦИЯ» и не нумеруют как раздел.
    • Заголовки разделов пишут прописными буквами и размещают симметрично относительно правой и левой границ текста.
    • Заголовки подразделов записывают с абзаца строчными буквами (кроме первой прописной).
    • Переносы слов в заголовках не допускаются. Точку в конце заголовка не ставят.
    • Расстояние между заголовком и последующим текстом, а также между заголовками раздела и подраздела должно быть равно:
      • при выполнении документа машинописным способом - двум интервалам.
    • Для разделов и подразделов, текст которых записывают на одной странице с текстом предыдущего раздела, расстояние между последней строкой текста и последующим заголовком должно быть равно:
      • при выполнении документа машинописным способом - трём машинописным интервалам.
    • Разделы, подразделы, пункты и подпункты следует нумеровать арабскими цифрами с точкой.
    • В пределах раздела должна быть сквозная нумерация по всем подразделам, пунктам и подпунктам, входящим в данный раздел.
    • Нумерация подразделов включает номер раздела и порядковый номер подраздела, входящего в данный раздел, разделённые точкой (2.1; 3.1 и т. д.).
    • При наличии разделов и подразделов к номеру подраздела после точки добавляют порядковый номер пункта и подпункта (3.1.1, 3.1.1.1 и т.д.).
    • Текст документа должен быть кратким, четким, исключающим возможность неверного толкования.
    • Термины и определения должны быть едиными и соответствовать установленным стандартам, а при их отсутствии - общепринятым в научно-технической литературе, и приводиться в перечне терминов.
    • Необходимые пояснения к тексту документа могут оформляться сносками.
    • Сноска обозначается цифрой со скобкой, вынесенными на уровень линии верхнего обреза шрифта, например: «печатающее устройство2)...» или «бумага5)».
    • Если сноска относится к отдельному слову, знак сноски помещается непосредственно у этого слова, если же к предложению целом, то в конце предложения. Текст сноски располагают в конце страницы и отделяют от основного текста линией длиной 3 см, проведённой в левой части страницы.
    • Иллюстрации, если их в данном документе более одной, нумеруют арабскими цифрами в пределах всего документа.
    • Формулы в документе, если их более одной, нумеруются арабскими цифрами, номер ставят с правой стороны страницы, в скобках на уровне формулы.
    • Значение символов и числовых коэффициентов, входящих в формулу, должны быть приведены непосредственно под формулой. Значение каждого символа печатают с новой строки в той последовательности, в какой они приведены в формуле. Первая строка расшифровки должна начинаться со слова «где», без двоеточия после него.
    • В программных документах допускаются ссылки на стандарты (кроме стандартов предприятий), технические условия и другие документы (например, документы органов Государственного надзора, правила и нормы Госстроя СССР). При ссылках на стандарты и технические условия указывают их обозначение.
    • Ссылаться следует на документ в целом или на его разделы (с указанием обозначения и наименования документа, номера и наименования раздела или приложения). При повторных ссылках на раздел или приложение указывают только номер.
    • В примечаниях к тексту и таблицам указывают только справочные и пояснительные данные.
    • Одно примечание не нумеруется. После слова «Примечание» ставят точку.
    • Несколько примечаний следует нумеровать по порядку арабскими цифрами с точкой. После слова «Примечание» ставят двоеточие.
    • Сокращения слов в тексте и надписях под иллюстрациями не допускаются.
    • Иллюстрированный материал, таблицы или текст вспомогательного характера допускается оформлять в виде приложений.
    • Каждое приложение должно начинаться с новой страницы с указанием в правом верхнем углу слова «ПРИЛОЖЕНИЕ» и иметь тематический заголовок, который записывают симметрично тексту прописными буквами.

    В ГОСТе присутствует образец листа, где указаны поля, места для нумерации страниц и шифра.

    Программная документация является неотъемлемым компонентом программного продукта и должна оформляться в соответствии с Единой системой программной документации (ЕСПД - ГОСТ серии 19). В рамках учебных работ допускается заключать всю содержательную часть программной документации в единый «отчёт по программе», при этом формальные требования к оформлению такого отчёта соответствуют требованиям к отчёту по НИР. Программная документация, кроме формальных документов (спецификация, ведомость держателей подлинников, формуляр и др.), включает:

    • · Техническое задание (назначение, область применения программы, требования, предъявляемые к программе).
    • · Текст программы (запись программы с необходимыми комментариями).
    • · Описание программы (сведения о логической структуре и функционировании программы).
    • · Пояснительная записка (схема алгоритма, общее описание алгоритма и/или функционирования программы, обоснование принятых решений).
    • · Эксплуатационные документы.

    Программный документ «Пояснительная записка» составляется на стадии эскизного или технического проектов программы. Как правило, на стадии рабочего проекта не используется.

    К эксплуатационным документам относят:

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

    Основная часть программной документации составляется на стадии рабочего проекта. Необходимость того или иного документа определяется на этапе составления технического задания. Допускается объединять отдельные виды документов. Эксплуатационный документ «Описание языка» включается в программную документацию, если разработанный программный продукт реализует некий язык программирования, управления заданиями, организации вычислительного процесса и т. П. Эксплуатационный документ «Руководство по техническому обслуживанию» включается в программную документацию, если разработанный программный продукт требует использования тестовых или диагностических программ.

    Текст программы представляет собой символическую запись на исходном или промежуточном языке или символическое представление машинных кодов. Текст программы оформляется моноширинным шрифтом (Courier, Lucida Console и т. П.) в соответствии с общепринятыми нормами оформления :

    • 1. Количество операторов на строчке должно быть равно 1.
    • 2. Все операторы, входящие в составной оператор, должны быть сдвинуты вправо на одинаковое количество позиций, при этом операторные скобки (т. Е. то, что ограничивает составной оператор), относящиеся к одному блоку, должны располагаться следующим образом: открывающая скобка должна находиться на той же строчке, что и оператор, открывающий блок, а закрывающая должна находиться в той же колонке, с которой начинается оператор, открывающий блок. Допускается располагать открывающую скобку на строке, следующей за оператором, открывающим блок, в той же колонке, с которой начинается этот оператор.
    • 3. Строка исходного текста программы должна целиком располагаться в одной типографской строке (до 80 символов в зависимости от шрифта). Несоблюдение этого правила говорит о слишком большой вложенности блоков, что означает неудачный алгоритм или структуру программы. В таком случае рекомендуется переосмыслить структуру программы, ввести дополнительные функции, заменив какие-то большие части кода их вызовами, переделать алгоритм и т.п.
    • 4. Если синтаксис языка позволяет, желательно отделять знаки операций пробелами от операндов. Как и в обычном тексте, после запятых должен следовать пробел.
    • 5. Определения функций или логические части программы следует отделять друг от друга пустыми строками.
    • 6. Идентификаторы (названия переменных, типов, подпрограмм) должны быть значимыми настолько, чтобы читающий текст программы мог понимать их смысл без присутствия рядом автора. При необходимости объявление переменной или типа может сопровождаться комментарием.
    • 7. Текст программы должен содержать комментарии, отражающие функциональное назначение того или иного блока программы, структуру программы.

    Документ Описание программы содержит:

    • · Общие сведения (обозначение наименование программы, программное обеспечение, необходимое для функционирования программы, языки программирования, на которых написана программа);
    • · Функциональное назначение (классы решаемых задач, сведения о функциональных ограничениях на применение);
    • · Описание логической структуры (алгоритм программы, используемые методы, структура программы с описанием составных частей и связи между ними);
    • · Используемые технические средства (типы ЭВМ и устройств, которые используются при работе программы);
    • · Вызов и загрузка (способ вызова программы с соответствующего носителя данных);
    • · Входные данные (характер, организация и предварительная подготовка входных данных, а также их формат, описание и способ кодирования);
    • · Выходные данные (характер и организация выходных данных, а также их формат, описание и способ кодирования).

    Описание логической структуры программы следует сопровождать блок-схемой программы. Документ «Описание программы» может содержать также схемы данных, схемы взаимодействия программ, схемы ресурсов системы и проч., оформленные в соответствии с ГОСТ 19.701-90 .

    Документ Описание применения относится к эксплуатационным документам и состоит из следующих разделов:

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

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

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

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

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

    Документ Руководство оператора относится к эксплуатационным документам и состоит из следующих разделов:

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

    При оформлении текстовых и графических материалов, входящих в программную документацию следует придерживаться действующих стандартов. Некоторые положения этих стандартов приведены ниже. Оформление текстового и графического материала. Текстовые документы оформляют на листах формата А4, причем графический материал допускается представлять на листах формата A3. Поля на листе определяют в соответствии с общими требованиями: левое - не менее 30, правое - не менее 10, верхнее - не менее 15, а нижнее - не менее 20 мм . В текстовых редакторах для оформления записки параметры страницы заказывают в зависимости от устройства печати. При ручном оформлении документов параметры страницы выбирают из соображений удобства. Нумерация всех страниц - сквозная. Номер проставляется сверху справа арабской цифрой. Страницами считают, как листы с текстами и рисунками, так и листы приложений. Первой страницей считается титульный лист. Номер страницы на титульном листе не проставляют. Наименование разделов пишут прописными буквами в середине строки. Расстояние между заголовками и текстом, а также между заголовками раздела и подразделов должно быть равно:

    • * При выполнении документа машинописным способом - двум интервалам.
    • * При выполнении рукописным способом - 10 мм.

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

    • * При выполнении документа машинописным способом - трем интервалам.
    • * При выполнении рукописным способом - не менее 15 мм.
    • * При использовании текстовых редакторов - определяется возможностями редактора.

    Разделы и подразделы нумеруются арабскими цифрами с точкой. Разделы должны иметь порядковые номера 1, 2, и т. Д. Номер подраздела включает номер раздела и порядковый номер подраздела, входящего в данный раздел, разделенные точкой. Например: 2.1, 3.5. Ссылки на пункты, разделы и подразделы указывают, используя порядковый номер раздела или пункта, например, «в разд. 4», «в п. 3.3.4». Текст разделов печатают через 1,5-2 интервала. При использовании текстовых редакторов высота букв и цифр должна быть не менее 1,8 мм (шрифты № 11-12). Перечисления следует нумеровать арабскими цифрами со скобкой, например: 2), 3) и т. Д. - с абзацного отступа. Допускается выделять перечисление простановкой дефиса перед пунктом текста или символом, его заменяющим, в текстовых редакторах. Оформление рисунков, схем алгоритмов, таблиц и формул. В соответствии с ГОСТ 2.105-79 «Общие требования к текстовым документам» иллюстрации (графики, схемы, диаграммы) могут быть приведены как в основном тексте, так и в приложении. Все иллюстрации именуют рисунками. Все рисунки, таблицы и формулы нумеруют арабскими цифрами последовательно (сквозная нумерация) или в пределах раздела (относительная нумерация). В приложении - в пределах приложения. Каждый рисунок должен иметь подрисуночную подпись - название, помещаемую под рисунком, например: Рис.12. Форма окна основного меню.

    На все рисунки, таблицы и формулы в записке должны быть ссылки в виде: «(рис. 12)» или «форма окна основного меню приведена на рис. 12». Если позволяет место, рисунки и таблицы должны размещаться сразу после абзаца, в котором они упоминаются в первый раз, или как можно ближе к этому абзацу на следующих страницах. Если рисунок занимает более одной страницы, на всех страницах, кроме первой, проставляется номер рисунка и слово «Продолжение». Например: Рис. 12. Продолжение.

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

    Схемы алгоритмов должны быть выполнены в соответствии со стандартом ЕСПД. Толщина сплошной линии при вычерчивании схем алгоритмов должна составлять от 0,6… 1,5 мм. Надписи на схемах должны быть выполнены чертежным шрифтом, высота букв и цифр должна быть не менее 3,5 мм.

    Номер таблицы размещают в правом верхнем углу или перед заголовком таблицы, если он есть. Заголовок, кроме первой буквы, выполняют строчными буквами. Ссылки на таблицы в тексте пояснительной записки указывают в виде слова «табл.» и номера таблицы. Например: Результаты тестов приведены в табл. 4.

    Номер формулы ставится с правой стороны страницы в круглых скобках на уровне формулы. Например: z:=sin(x)+ln(y); (12)

    Оформление приложений. Каждое приложение должно начинаться с новой страницы с указанием в правом углу слова «ПРИЛОЖЕНИЕ» пропис-ными буквами и иметь тематический заголовок. При наличии более одного приложения все они нумеруются арабскими цифрами: ПРИЛОЖЕНИЕ 1, ПРИЛОЖЕНИЕ 2 и т. Д. Например: ПРИЛОЖЕНИЕ 2 Титульный лист расчетно-пояснительной записки.

    Рисунки и таблицы, помещаемые в приложении, нумеруют арабскими цифрами в пределах каждого приложения с добавлением буквы «П», Напри-мер: Рис. П. 12 - 12-й рисунок приложения; Рис. П1.2 - 2-й рисунок 1-го приложения.

    Если в приложении приводится текст программы, то каждый файл оформляют как рисунок с наименованием файла и его назначением, например: Рис. П2.4. Файл menuran.pas - программа движения курсора основного меню.

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

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

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

    В.Э. Карпов

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

    ТЕХНИЧЕСКОЕ ЗАДАНИЕ (ГОСТ 19.201-78)

    1. Общие положения

    СТАДИИ РАЗРАБОТКИ (ГОСТ 19.102-77)

    ОПИСАНИЕ ПРОГРАММЫ (ГОСТ 19.402-78)

    ТЕКСТ ПРОГРАММЫ (ГОСТ 19.401-78)

    ПРОГРАММА И МЕТОДИКА ИСПЫТАНИЙ (ГОСТ 19.301-79)

    ТРЕБОВАНИЯ К ПРОГРАММНЫМ ДОКУМЕНТАМ, ВЫПОЛНЕННЫМ ПЕЧАТНЫМ СПОСОБОМ (ГОСТ 19.106-78)

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

    Как двигаться вперед

    Подготовка документации на программные средства (ПС) в соответствии с имеющимися ГОСТами

    2. Общая характеристика состояния

    2.3. Государственные стандарты РФ (ГОСТ Р)

    2.4. Международный стандарт ISO/IEC 12207: 1995-08-01

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

    Во-первых, умение создавать программную документацию определяет профессиональный уровень программиста. Заказчик не будет вникать в тонкости и особенности даже самой замечательной программы. Заказчик будет сначала читать документацию. Большую роль играет в этом и психологический фактор. В частности, во всем мире ценилась (и ценится сейчас) былая советская школа программирования. Современные же отечественные программисты котироваться перестали. Класс не тот. Нынче программы уже не пишутся, а составляются (а это - "две большие разницы"). Так вот, созданный в "классическом" стиле пакет программной документации (далее - ПД) создаст у вашего заказчика или работодателя самое что ни на есть благоприятное впечатление. Тем более, если автор ПД будет избегать фраз вида "кликните на скроллбар…", "винт" и т.п. К сожалению, за подобной жаргонной трескотней обычно скрывается либо скудость мыслей, либо полная пустота (неизгладимое впечатление произвел на автора рассказ одного его знакомого о неком "геймере", который с кем-то там то ли "чатился", то ли "модераторством" занимался или что-то в этом роде.). Язык ПД - это своего рода бюрократический, весьма консервативный язык. Есть в нем своя особая прелесть. Согласитесь, что термины НЖМД, НГМД, ручной манипулятор типа "мышь" (или "колобок", как значилось в одном из старинных пакетов ПД) звучат совсем иначе, нежели соответствующие "винт", "флоп" и просто "мышь". Между прочим, дело уже дошло до того, что, говорят, появилась даже особая специальность - технический писатель, т.е. человек, умеющий создавать программную документацию.

    Во-вторых, грамотно составленный (точнее, созданный) пакет ПД избавит вас от многих неприятностей. В частности, избавиться от назойливых вопросов и необоснованных претензий можно просто отослав пользователя к документации. Это касается прежде всего важнейшего документа - Технического задания. Об этом мы будем говорить ниже, а сейчас можно напомнить о многомиллионном иске к компании IBM. Этот иск предъявило одно крупное издательство, неудовлетворенное качеством ВТ и программного обеспечения. IBM суд выиграла. И выиграла только благодаря тому, что предъявила подписанное обеими сторонами Техническое задание. Было это давно, еще в 70-х гг., однако сути дела это не меняет.

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

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

    • ИПК "Издательство стандартов", Территориальный отдел распространения НТД (магазин "Стандарты"), 17961, Москва, ул. Донская, д. 8, тел. 236-50-34, 237-00-02, факс/тел. 236-34-48 (в части ГОСТ и ГОСТ Р).
    • ВНИИКИ Госстандарта России (читальный зал), 103001, Москва, Гранатный пер. д. 4, тел. 290-50-94 (в части международных, зарубежных стандартов и других НТД).

    И никаких цитат и вторичных источников. ГОСТ - это закон. И тем более, никаких Интернетов (представьте себе суд, выносящий приговор, пользуясь распечаткой Уголовного Кодекса, скачанного с какого-нибудь сайта). Не верьте никому, кроме оригинала. Тем не менее, далее автору придется прибегать к цитированию ЕСПД, снимая при этом с себя всяческую ответственность.

    Начнем с общих положений о Единой системе программной документации (которые тоже определены в соответствующем стандарте ГОСТ 19.001-77).

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

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

    • основополагающие и организационно-методические стандарты;
    • стандарты, определяющие формы и содержание программных документов, применяемых при обработке данных;
    • стандарты, обеспечивающие автоматизацию разработки программных документов.

    Вообще перечень документов ЕСПД очень обширен. В него, в частности, входят следующие ГОСТы:

    • ГОСТ 19.001-77 ЕСПД. Общие положения.
    • ГОСТ 19.101-77 ЕСПД. Виды программ и программных документов (переиздан в ноябре 1987г с изм.).
    • ГОСТ 19.102-77 ЕСПД. Стадии разработки.
    • ГОСТ 19.103-77 ЕСПД. Обозначение программ и программных документов.
    • ГОСТ 19.104-78 ЕСПД. Основные надписи.
    • ГОСТ 19.105-78 ЕСПД. Общие требования к программным документам.
    • ГОСТ 19.106-78 ЕСПД. Требования к программным документам, выполненным печатным способом.
    • ГОСТ 19.201-78 ЕСПД. Техническое задание. Требования к содержанию и оформлению.
    • ГОСТ 19.202-78 ЕСПД. Спецификация. Требования к содержанию и оформлению.
    • ГОСТ 19.301-79 ЕСПД. Программа и методика испытаний.
    • ГОСТ 19.401-78 ЕСПД. Текст программы. Требования к содержанию и оформлению.
    • ГОСТ 19.402-78 ЕСПД. Описание программы.
    • ГОСТ 19.404-79 ЕСПД. Пояснительная записка. Требования к содержанию и оформлению.
    • ГОСТ 19.501-78 ЕСПД. Формуляр. Требования к содержанию и оформлению.
    • ГОСТ 19.502-78 ЕСПД. Описание применения. Требования к содержанию и оформлению.
    • ГОСТ 19.503-79 ЕСПД. Руководство системного программиста. Требования к содержанию и оформлению.
    • ГОСТ 19.504-79 ЕСПД. Руководство программиста.
    • ГОСТ 19.505-79 ЕСПД. Руководство оператора.
    • ГОСТ 19.506-79 ЕСПД. Описание языка.
    • ГОСТ 19.508-79 ЕСПД. Руководство по техническому обслуживанию. Требования к содержанию и оформлению.
    • ГОСТ 19.604-78 ЕСПД. Правила внесения изменений в программные документы, выполняемые печатным способом.
    • ГОСТ 19.701-90 ЕСПД. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.
    • ГОСТ 19.781-90. Обеспечение систем обработки информации программное.

    Как видно, основная часть комплекса ЕСПД была разработана в 70-е и 80-е годы. Частично эти стандартны морально устарели, к тому же они не лишены некоторых недостатков. Во-первых, в них не отражены некоторые современные тенденции оформления программ и программной документации, во-вторых, в этих стандартах наличествует многократное дублирование фрагментов программной документации. Тем не менее, за неимением лучшего ориентироваться приходится именно на них.

    Итак, стандарты ЕСПД упорядочивают процесс документирования программных систем. Однако, во-первых, предусмотренный стандартами ЕСПД состав программных документов вовсе не такой "жесткий", как может показаться: стандарты позволяют вносить в комплект документации на программной системы (ПС) дополнительные виды, а, во-вторых, исходя из требований заказчика, допустимы некоторые изменения как в структуре, так и в содержании установленных видов ПД. Более того, можно отметить, что стандарты ЕСПД (а это относится и ко всем другим стандартам в области ПС - ГОСТ 34, Международному стандарту ISO/IEC, и др.) носят рекомендательный характер. Дело в том, что в соответствии с Законом РФ "О стандартизации" эти стандарты становятся обязательными на контрактной основе - т.е. при ссылке на них в договоре на разработку (поставку) ПС.

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

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

    Согласно ГОСТу, настоящий стандарт (переизданный в ноябре 1987 г.) устанавливает порядок построения и оформления технического задания на разработку программы или программного изделия для вычислительных машин, комплексов и систем независимо от их назначения и области применения.

    Надо быть предельно внимательным и осторожным, создавая его, т.к. зачастую умело (и грамотно) составленное ТЗ определяет успех всей работы. Именно ТЗ согласовывается с Заказчиком, который обычно стремится внести как можно больше противоречивых и завышенных требований. Задача же Исполнителя - наоборот, облегчить себе жизнь. Но после того, как подписи с обеих сторон поставлены, переигрывать что-либо поздно.

    Техническое задание оформляют на листах формата А4 и/или А3, как правило, без заполнения полей листа. Номера листов (страниц) проставляют в верхней части листа над текстом.

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

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

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

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

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

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

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

    Применительно к специфике учебного процесса основанием может служить задание на курсовое проектирование, приказ по институту от __.__. за N ___., договор __.__. за N ___. , и т.п.

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

    Например: Программа представляет собой ядро автоматизированного рабочего места (АРМ) разработчика непрерывных линейных систем автоматического управления (САУ), позволяющее пользователю решать задачи анализа простых моделей.

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

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

    Иными словами, здесь начинается конкретика. Описывается то, что должна делать программа и как она должна выглядеть.

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

    Например: Программа должна позволять … вычислять … строить… создавать …

    Исходные данные: текстовый файл с заданной …

    Выходные данные: графическая и текстовая информация - результаты анализа системы…; текстовые файлы - отчеты о … диагностика состояния системы и сообщения о всех возникших ошибках.

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

    Здесь "выгадать" что-то сложно. В лучшем случае может пройти вариант, при котором ваша программа работает только с абсолютно корректными данными. Обычно Заказчик на это не идет, но попробовать можно.

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

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

    С этим пунктом сложностей обычно не возникает. К сожалению, пункт о профессиональности пользователя Заказчиком подразумевается обязательно. Это, конечно, лишний повод придраться к вашей программе. Впрочем, здесь можно ограничиться фразами вида "Условия эксплуатации программы совпадают с условиями эксплуатации ПЭВМ IBM PC и совместимых с ними ПК", "Программа должная быть рассчитана на непрофессионального пользователя." и т.п.

    Требования к составу и параметрам технических средств. Указывают необходимый состав технических средств с указанием их технических характеристик.

    Здесь главное - ничего не забыть и все предусмотреть, с одной стороны (а то подсунут какой-нибудь IBM PC/XT с монохромным дисплеем и без мыши), а с другой - не переборщить с повышенными требованиями, иначе Заказчик найдет более покладистого Исполнителя.

    Например: Необходимо наличие IBM PC - совместимого ПК с графическим адаптером EGA (VGA). Необходимое дисковое пространство - не менее 600 Кб, объем свободной оперативной памяти - не менее 400 Кб. Желательно наличие драйвера EMS и манипулятора типа "мышь".

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

    Например: Программа должна работать автономно под управлением ОС MS DOS версии не ниже 3.3. Базовый язык программирования - Turbo Pascal 6.0.

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

    Специальные требования - это весьма ответственная вещь. Их лучше, по возможности, всячески избегать. И заявить об этом сразу.

    Например: Специальных требований к временным характеристикам программы не предъявляется. Специальных требований к емкостным характеристикам программы не предъявляется.

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

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

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

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

    Здесь описываются стандартные этапы. Главное - грамотно определиться со сроками. По возможности, старайтесь равномерно распределить этапы по срокам (и суммам). Помните, что не все проекты доживают до последней стадии. А отчеты должны быть по каждому этапу. Помните также, что больше всего времени займет рабочий проект. Если вы не успеете сделать в срок документацию, то Заказчик имеет полное право вообще не принять работу со всеми вытекающими последствиями.

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

    • Эскизный проект. На этой стадии детально разрабатываются структуры входных и выходных данных, определяется форма их представления. Разрабатывается общее описание алгоритма, сам алгоритм, структура программы. Разрабатываются план мероприятий по разработке и внедрению программы.
    • Технический проект. Содержит разработанный алгоритм решения задачи а также методы контроля исходной информации. Здесь же разрабатываются средства обработки ошибок и выдачи диагностических сообщений, определяются формы представления исходных данных и конфигурация технических средств.
    • Рабочий проект. На этой стадии осуществляется программирование и отладка программы, разработка программных документов, программы и методики испытаний. Подготавливаются контрольно-отладочные примеры. Окончательно оформляются документация и графический материал. Обычно указывается, что в ходе разработки программы должна быть подготовлена следующая документация:
      • текст программы;
      • описание программы;
      • программа и методика испытаний;
      • описание применения;
      • руководство пользователя.

    Это - стандартные требования. Если Заказчик соглашается с тем, что можно представить не весь этот список, то это означает несерьезность его намерений в отношении вас и вашего продукта.

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

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

      • технико-экономические показатели;
      • структура программы;
      • формат представления входных данных программы;
      • общая схема алгоритма (2 листа);
      • основные вычислительные алгоритмы;
      • пример работы программы.

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

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

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

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

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

    Стадии разработки

    Этапы работ

    Техническое задание

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

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

    Научно-исследователь-ские работы

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

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

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

    Эскизный проект

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

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

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


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

    Технический проект

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

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

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

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

    Рабочий проект

    Разработка программы

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

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

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

    Испытания программы

    Разработка, согласование и утверждение программы и методики испытаний.
    Проведение предварительных государственных, межведомственных, приемо-сдаточных и других видов испытаний.
    Корректировка программы и программной документации по результатам испытаний.

    Внедрение

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

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

    Примечания:

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

    Этот стандарт ориентирован на документирование результирующего продукта разработки.

    Строго говоря, существуют два разных документа, имеющих, правда, много общего. Это ОБЩЕЕ ОПИСАНИЕ (ГОСТ 19.502-78) и ОПИСАНИЕ ПРОГРАММЫ (ГОСТ 19.402-78). Однако, в силу того, что реально создать качественно и тот, и другой, не прибегая к почти полному дублированию, выдирая куски, весьма сложно, было бы достаточно реализовать один, более общий, "гибридный" документ. Назовем его "Описанием программы".

    На самом деле "Описание программы" в своей содержательной части может дополняться разделами и пунктами, взятыми и из стандартов для других описательных документов и руководств: ГОСТ 19.404-79 ЕСПД. Пояснительная записка, ГОСТ 19.503-79 ЕСПД. Руководство системного программиста, ГОСТ 19.504-79 ЕСПД. Руководство программиста, ГОСТ 19.505-79 ЕСПД. Руководство оператора и т.п. В частности, из Пояснительной записки можно взять схему алгоритма, общее описание алгоритма и (или) функционирования программы, а также обоснование принятых технических и технико-экономических решений.

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

    Основная часть документа должна состоять из вводной части и следующих разделов:

    • функциональное назначение;
    • описание логики.
    • условия применения;
    • состав и функции.

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

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

    Например: Программа "Автоматизированное рабочее место разработчика САУ" предназначена для … реализована на …. Программа поддерживает …

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

    Например: Программа предназначена для решения задач … Программа представляет собой ядро автоматизированного рабочего места …

    Пользователь имеет возможность …, осуществить …, запустить …, проанализировать …, получить результаты анализа и обработки …, построить … и т.п.

    В разделе "Описание логики " указывают:

    • описание структуры программы и ее основных частей

    (например: В состав программы входит следующее:

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

    Например: Программа состоит из шести модулей: интерфейсный модуль; модуль определения …; модуль расчета …; модуль …и т.п..

    Интерфейсный модуль построен на двух типах диалогов: диалог "вопрос - ответ" и диалог типа "меню". Интерфейсный модуль управляет …

    Модуль определения … Он является …

    Модуль расчета …и т.д.

    • сведения о языке программирования;

    Например: Программа написана на языке …с использованием компилятора …

    • описание входных и выходных данных для каждой из составных частей;

    Например: ВХОДНЫЕ ДАННЫЕ. Входными данными для программы является текстовый файл, описывающий расширенную матрицу инциденций графа исследуемой системы.

    ВЫХОДНЫЕ ДАННЫЕ. Выходными данными являются:

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

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

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

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

    Например: Программа эксплуатируется на персональном компьютере (ПК) типа IBM PC/AT. Для работы в диалоговом режиме используется экран дисплея, клавиатура и манипулятор типа "мышь". Для поддержки графического режима необходим адаптер EGA (VGA). Входные данные хранятся на флоппи- и/или жестком дисках. Программа работает под управлением ОС …

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

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

    Вызова и загрузки системы

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

    По-прежнему обязательным является составление информационной части - аннотации и содержания.

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

    Текст каждого программного файла начинается с "шапки", в которой указывается:

      • наименование программы,
      • автор,
      • дата создания программы,
      • номер версии,
      • дата последней модификации.

    Обязательными являются комментарии, а также строгое соблюдение правил отступа. Помните, оправдать можно даже неумение создавать программную документацию. А некрасивый текст программы - никогда. Ссылки на то, что этот текст понятен самому автору всерьез не воспринимаются. Тексты программ должно быть не стыдно давать читать другим людям.

    Ниже приведен пример подобного хорошо читаемого текста программы (взят с сайта Николая Гехта, e-mail:[email protected], http://users.omskreg.ru/~geht)

    /* Исходные тексты Windows"98

    Source Code to Windows 98 */ #include "win31.h" #include "win95.h" #include "evenmore.h" #include "oldstuff.h" #include "billrulz.h" #include "monopoly.h" #define INSTALL = HARD char make_prog_look_big; void main() { while(!CRASHED) { display_copyright_message(); display_bill_rules_message(); do_nothing_loop(); if(first_time_installation) { make_50_megabyte_swapfile(); do_nothing_loop(); totally_screw_up_HPFS_file_system(); search_and_destroy_the_rest_of_OS/2(); disable_Netscape(); disable_RealPlayer(); disable_Corel_Products(); hang_system(); } write_something(anything); display_copyright_message(); do_nothing_loop(); do_some_stuff(); if(still_not_crashed) { display_copyright_message(); do_nothing_loop(); basically_run_windows_3.1(); do_nothing_loop(); do_nothing_loop(); } } if(detect_cache()) disable_cache(); if(fast_cpu()) { set_wait_states(lots); set_mouse(speed, very_slow); set_mouse(action, jumpy); set_mouse(reaction, sometimes); } /* printf("Welcome to Windows 3.11"); */ /* printf("Welcome to Windows 95"); */ printf("Welcome to Windows 98"); if(system_ok()) crash(to_dos_prompt) else system_memory = open("a:\swp0001.swp", O_CREATE); while(something) { sleep(5); get_user_input(); sleep(5); act_on_user_input(); sleep(5); } create_general_protection_fault();

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

    Формально этот ГОСТ используется для разработки документов планирования и проведения испытательных работ по оценке готовности и качества программной системы. Документ содержит описание объекта и цели испытаний, требования к программе и к программной документации, средства и порядок испытаний, а также описание тестовых примеров.

    Составные части этого документа проще и нагляднее описывать сразу в виде примеров.

    Объект испытаний

    Пример: Объектом испытаний является программа …, предназначенная для …

    Цель испытаний

    Пример: Проверка надежности функционирования программы.

    Требования к программе

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

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

    Пример: Состав программной документации, предъявляемой на испытании:

    • описание программы (ГОСТ 19.402-78);
    • программа и методика испытаний (ГОСТ 19.301-79);
    • текст программы (ГОСТ 19.401-78).

    Средства и порядок испытаний

    Пример: Программа работает в соответствии с условиями эксплуатации ОС MS DOS (версия не ниже 3.0) на ПК типа IBM PC/AT, а также на совместимых с ним. Для работы необходим также адаптер EGA (VGA).

    Порядок проведения испытаний:

      1. Запуск программы осуществляется ….
      2. Выбирается …
      3. Нажимается …
      4. Последовательно выбираются …

    Тестовые примеры

    Пример: Для проведения испытаний предлагаются …, описание которых содержатся в файлах …Содержимое тестовых файлов и результаты работы программы приведены в Приложении 1.

    И, наконец, рассмотрим последний стандарт ЕСПД, который называется

    Этот стандарт устанавливает правила выполнения программных документов для вычислительных машин, комплексов и систем независимо от их назначения и области применения и предусмотренных стандартами ЕСПД.

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

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

    Повреждение листов документов, помарки и следы не полностью удаленного текста (графики) не допускаются.

    Программные документы оформляют на листах формата А4. Кроме того:

    • допустимо оформление на листах формата А3;
    • при машинном способе выполнения документа допускаются отклонения размеров листов, соответствующих форматам А4 и А3, определяемые возможностями применяемых технических средств; на листах форматов А4 и А3, предусматриваемых выходными характеристиками устройств вывода данных, при изготовлении документа машинным способом;
    • при изготовлении документа типографским способом возможно использование листов типографических форматов.

    Расположение материалов программного документа осуществляется в следующей последовательности:

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

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

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

    Аннотацию размещают на отдельной странице (страницах), снабжают заголовком "АННОТАЦИЯ", нумеруют и включают в содержание документа.

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

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

    Разделы, подразделы, пункты и подпункты следует нумеровать арабскими цифрами с точкой. Разделы должны иметь порядковый номер (1, 2 и т.д.)

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

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

    Если сноска относится к отдельному слову, знак сноски помещается непосредственно возле этого слова, если же к предложению целом, то в конце предложения. Текст сноски располагают в конце страницы и отделяют от основного текста линией длиной 3 см, проведенной в левой части страницы.

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

    В приложениях иллюстрации нумеруются в пределах каждого приложения в порядке, установленном для основного текста документа. Ссылки на иллюстрации дают по типу: "рис.12" или "(рис.12)". Иллюстрации могут иметь тематический заголовок и подрисуночный текст, поясняющий содержание иллюстрации.

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

    Ссылки в тексте на порядковый номер формулы дают в скобках, например: "в формуле (3)". При делении документа на части номер части ставится перед порядковым номером формулы и отделяется от последней точкой, например: "в формуле (1.4)".

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

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

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

    Примечания. В примечаниях к тексту и таблицам указывают только справочные и пояснительные данные. Одно примечание не нумеруется. После слова "Примечание" ставят точку. Несколько примечаний следует нумеровать по порядку арабскими цифрами с точкой. После слова "Примечание" ставят двоеточие. Текст примечаний допускается печатать только через один интервал.

    Сокращения. Сокращения слов в тексте и надписях под иллюстрациями не допускаются, за исключением:

    • сокращений, установленных в ГОСТ 2.316-68, и общепринятых в русском языке;
    • сокращений, применяемых для обозначения программ, их частей и режимов работы, в языках управления заданиями, в средствах настройки программы и т.п., обозначаемых буквами латинского алфавита.

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

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

    Приложение 1, Приложение 2 и т.д.

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

    Оформление программной документации

    Техническое задание на разработку программного продукта

    3.2. Описание программы

    3.3. Текст программы

    Программа и методика испытаний

    3.5. Требования к программным документам, выполненным печатным способом

    Приложение . Форма технического задания на разработку программного продукта (изделия, модели)

    Введение. Общие сведения о Единой системе программной документации (ЕСПД).

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

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

    В состав ЕСПД входят:

    · основополагающие и организационно-методические стандарты;

    · стандарты, определяющие формы и содержание программных документов, применяемых при обработке данных;

    · стандарты, обеспечивающие автоматизацию разработки программных документов.

    В перечень документов ЕСПД входят следующие ГОСТы:

    ГОСТ 19.001-77 ЕСПД. Общие положения.

    ГОСТ 19.101-77 ЕСПД. Виды программ и программных документов (переиздан в ноябре 1987г с изм.).

    ГОСТ 19.102-77 ЕСПД. Стадии разработки.

    ГОСТ 19.103-77 ЕСПД. Обозначение программ и программных документов.

    ГОСТ 19.104-78 ЕСПД. Основные надписи.

    ГОСТ 19.105-78 ЕСПД. Общие требования к программным документам.

    ГОСТ 19.106-78 ЕСПД. Требования к программным документам, выполненным печатным способом.

    ГОСТ 19.201-78 ЕСПД. Техническое задание. Требования к содержанию и оформлению.

    ГОСТ 19.202-78 ЕСПД. Спецификация. Требования к содержанию и оформлению.

    ГОСТ 19.301-79 ЕСПД. Программа и методика испытаний.

    ГОСТ 19.401-78 ЕСПД. Текст программы. Требования к содержанию и оформлению.

    ГОСТ 19.402-78 ЕСПД. Описание программы.

    ГОСТ 19.404-79 ЕСПД. Пояснительная записка. Требования к содержанию и оформлению.

    ГОСТ 19.501-78 ЕСПД. Формуляр. Требования к содержанию и оформлению.

    ГОСТ 19.502-78 ЕСПД. Описание применения. Требования к содержанию и оформлению.

    ГОСТ 19.503-79 ЕСПД. Руководство системного программиста. Требования к содержанию и оформлению.

    ГОСТ 19.504-79 ЕСПД. Руководство программиста.

    ГОСТ 19.505-79 ЕСПД. Руководство оператора.

    ГОСТ 19.506-79 ЕСПД. Описание языка.

    ГОСТ 19.508-79 ЕСПД. Руководство по техническому обслуживанию. Требования к содержанию и оформлению.

    ГОСТ 19.604-78 ЕСПД. Правила внесения изменений в программные документы, выполняемые печатным способом.

    ГОСТ 19.701-90 ЕСПД. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.

    ГОСТ 19.781-90. Обеспечение систем обработки информации программное.

    К другим стандартам в области документирования программных систем (ПС) относятся:

    ГОСТ 34.602-89 Информационная технология. Комплекс стандартов на автоматизированные системы. Техническое задание на создание автоматизированной системы.

    ГОСТ 34.601-90 Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизированной системы. Стадии создания.

    ГОСТ Р ИСО/МЭК ТО 12182-2002 Информационная технология. Классификация программных средств.

    ГОСТ Р ИСО/МЭК 12207-99 Информационная технология. Процессы жизненного цикла программных средств.

    ГОСТ Р ИСО/МЭК 14764-2002 Информационная технология. Сопровождение программных средств.

    ГОСТ Р ИСО/МЭК 15026-2002 Информационная технология. Уровни целостности систем и программных средств.

    ГОСТ Р ИСО/МЭК ТО 15271-2002 Информационная технология. Руководство по применению ГОСТ Р ИСО/МЭК 12207-99.

    ГОСТ Р ИСО/МЭК 15910-2002 Информационная технология. Процесс создания документации пользователя программного средства.

    Международные стандарты ISO/IEC:

    ISO/IEC 12207:2008 System and software engineering – Software life cycle processes.

    ISO/IEC 15288:2008 System and software engineering – System life cycle processes.

    IEEE 830-1998 Recommended practice for software requirements specifications.

    IEEE 1233-1998 Guide for developing system requirements specifications.

    IEEE 1016-1998 Recommended Practice for Software Design Descriptions.

    ISO/IEC 42010 IEEE Std 1471-2000 System and software engineering – Recommended practice for architectural description of software-intensive systems.

    ISO 9001:2000 Quality management systems – Requirements.

    ISO/IEC 90003:2004 Software engineering – Guidelines for the application of ISO 9001:2000 to computer software.

    ISO/IEC TR 90005:2008 Software engineering – Guidelines for the application of ISO 9001:2000 to system life cycle processes.

    ISO/IEC 9126-1:2001 Software engineering – Product quality – Part 1: Quality model.

    ISO/IEC 9126-2:2003 Software engineering – Product quality – Part 2: External metrics.

    ISO/IEC 9126-3:2003 Software engineering – Product quality – Part 3: Internal metrics.

    ISO/IEC 9126-4:2004 Software engineering – Product quality – Part 4: Quality in use metrics.

    ISO/IEC 25051:2006 Software engineering – Software product Quality Requirements and Evaluation (SQuaRE) – Requirements for quality of Commercial Off-The-Shelf (COTS) software product and instructions for testing.

    IEEE 829-1998 Standard for Software Test Documentation.

    IEEE 829-2008 Standard for Software and System Test Documentation.

    IEEE 1008-1987 (R1993, R2002) Standard for Software Unit Testing.

    ISO/IEC 14598-1:1999 Information technology – Software product evaluation – Part 1: General overview.

    ISO/IEC 14598-2:2000 Software engineering – Product evaluation – Part 2: Planning and management.

    ISO/IEC 14598-3:2000 Software engineering – Product evaluation – Part 3: Process for developers.

    ISO/IEC 14598-4:1999 Software engineering – Product evaluation – Part 4: Process for acquirers.

    ISO/IEC 14598-5:1998 Information technology – Software product evaluation – Part 5: Process for evaluators.

    ISO/IEC 14598-6:2001 Software engineering – Product evaluation – Part 6: Documentation of evaluation modules.

    Как видно, основная часть комплекса отечественных стандартов ЕСПД была разработана в 70-е и 80-е годы. Частично эти стандартны морально устарели, к тому же они не лишены некоторых недостатков: во-первых, в них не отражены некоторые современные тенденции оформления программ и программной документации, во-вторых, в этих стандартах встречается многократное дублирование фрагментов программной документации. Тем не менее, за неимением лучшего ориентироваться приходится именно на них.

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

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

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

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