На ТЗ оформляются лист утверждения и титульный лист. В документ не включаются информационная часть и лист регистрации изменений. Изменения и дополнения в Т3 на последующих стадиях разработки оформляют в виде дополнения к нему. ТЗ содержит следующие разделы:
- введение (наименование, краткая характеристика области применения программы и объекта, в котором используют программу);
- основание для разработки (документы), на базе которых ведется разработка; организация, утвердившая этот документ, и дата его утверждения; наименование и (или) условное обозначение темы разработки;
- назначение разработки (функциональное и эксплуатационное назначение программы);
- требования к программе или программному изделию (см. ниже);
- требования к программной документации (состав и специальные требования к ней);
- технико-экономические показатели (ориентировочная экономическая эффективность, предполагаемая годовая потребность, экономические преимущества разработки по сравнению с лучшими отечественными и зарубежными образцами или аналогами);
- стадии и этапы разработки (содержание работ на каждом этапе, сроки и исполнители);
- порядок контроля и приемки (виды испытаний и общие требования к приемке работы).
В зависимости от особенностей программы допускается уточнять содержание разделов, вводить новые разделы или объединять некоторые из них.
Раздел «Требования к программе или программному изделию» должен содержать подразделы:
- требования к функциональным характеристикам (составу выполняемых функций, организации входных и выходных данных, временным характеристикам и т. д.);
- требования к надежности;
- условия эксплуатации (для выбранных типов носителей данных);
- требования к составу и параметрам технических средств (их основные технические характеристики);
- требования к информационной и программной совместимости (информационных структур на входе и на выходе, методов решения, исходных кодов, языков программирования и программных средств, используемых программ);
- требования к маркировке и упаковке;
- требования к транспортировке и хранению;
- специальные требования.
Требования к содержанию и оформлению текста программы устанавливаются ГОСТ 19.401-78 «Единая система программной документации. Текст программы». Согласно этому стандарту составление информационной части (аннотации и содержания) является необязательным. Основная часть документа должна состоять из одного или нескольких разделов, которым даны наименования. Каждый из разделов реализуется одним из типов символической записи (например, запись на исходном языке). В символическую запись разделов рекомендуется включать комментарии.
Требования к описанию программы устанавливает ГОСТ 19.402—78 «Единая система программной документации. Описание программы». Согласно этому стандарту составление информационной части (аннотации и содержания) не обязательно. Описание программы должно включать разделы:
- общие сведения (обозначение и наименование программы - программное обеспечение, необходимое для функционирования программы, языки программирования, на которых она написана);
- функциональное назначение (классы решаемых задач и/или назначение программы и сведения о функциональных ограничениях на применение);
- описание логической структуры (алгоритм программы, используемые методы, структура программы с описанием функции составных частей и связи между ними, связи программы с другими программами);
- используемые технические средства (для работы программы);
- вызов и загрузка (способ вызова программы с соответствующего носителя данных, входные точки в программу, при необходимости сведения об использовании оперативной памяти, объем программы);
- входные данные (характер и организация, формат, описание и способ кодирования входных данных);
- выходные данные (то же, что и для входных данных).
Допускается содержание разделов иллюстрировать пояснительными примерами, таблицами, схемами, графиками.
3.2.4 Программа и методика испытаний
Требования к программе и методике испытаний устанавливаются ГОСТ 19.301-79 «Единая система программной документации. Программа и методика испытаний». Согласно этому стандарту составление информационной части не обязательно. Документ должен содержать разделы:
- объект испытаний (наименование, область применения и обозначение испытуемой программы);
- цель испытания;
- требования к программе (требования, подлежащие проверке во время испытаний и заданные в ТЗ на программу);
- требования к программной документации (состав программной документации, предъявляемой на испытания, а также специальные требования, если они заданы в ТЗ на программу);
- средства и порядок испытаний (технические и программные средства, используемые во время испытаний, а также порядок их проведения);
- методы испытаний (описания проверок с указанием результатов проведения испытаний — перечней тестовых примеров, контрольных распечаток тестовых примеров и т. п.).
Требования к описанию применения программы определены ГОСТ 19.502—78 «Единая система программной документации. Описание применения».
Составление информационной части является обязательным.
Текст документа должен включать разделы:
- назначение программы (возможности программы, ее основные характеристики, ограничения, накладываемые на область применения программы);
- условия применения (требования к необходимым для данной программы техническим средствам и другим программам, общие характеристики входной и выходной информации, а также требования и условия организационного, технического и технологического характера и т. п.);
- описание задачи (определения задачи и методы ее решения);
- входные и выходные данные.
3.3. Стадии разработки программы
Стадии разработки программ и программной документации устанавливаются ГОСТ 19.102-77 «Единая система программной документации. Стадии разработки».
Стадии разработки должны быть следующие:
1. Техническое задание.
2. Эскизный проект.
3. Технический проект.
4. Рабочий проект.
5. Внедрение.
Этапы и содержание работ должны соответствовать приведенным в таблице в ГОСТ 19.102-77.
Примечания:
1. Допускается исключать вторую стадию разработки, а в технически обоснованных случаях – вторую и третью стадии. Необходимость проведения этих стадий указывается в техническом задании.
2. Допускается объединять, исключать этапы работ и (или) их содержание, а также вводить другие этапы работ по согласованию с заказчиком*.
4. ПРИМЕР РАЗРАБОТКИ ПРОГРАММЫ
Процесс разработки программы, который будет приведен ниже, демонстрирует сущность программирования «сверху вниз». Предлагаемая задача не будет очень сложной, чтобы была возможность проследить логику разработки программы. Пример также не содержит документацию на программу.
Задание. Разработать программу для автоматизации заполнения таблицы.
Форма таблицы задается в отдельном текстовом файле.
Например, это файл Tab_Form.txt, имеющий вид:
Price-list (Процессоры)
N п/п | Фирма изготовитель | Частота, МГц | Дополнительные сведения | Кол-во | Цена | Сумма |
……………. | ||||||
Перемещение по таблице клавишами стрелок. Для изменения содержимого поля - Enter. Выход из программы - Esc. |
Количество строк в таблице – 15. Каждая из строк таблицы по указанной форме должна быть представлена в программе записью (типом record), содержащей поля следующих типов (по порядку в таблице):
а) целое число;
б) перечисляемый тип;
в) целое число;
г) строка;
д) целое число;
е) и ж) действительное число.
Здесь кроме формы таблицы приведена некоторая дополнительная информация, не меняющаяся во время работы программы (в приведенном примере - это указание о клавишах управления перемещением по таблице и т.д.). Та часть работы программы, которая не определена заданием, выбирается студентом в произвольном порядке. Например, область задания нового значения поля таблицы будет производиться под таблицей, а само новое значение переписываться в поле на таблице только в том случае, когда оно соответствует размеру и типу поля.
При выходе из программы все сделанные изменения сохраняются в текстовом файле table.txt в виде таблицы, такой же, как и форма только с заполненными строками данных и без дополнительной информации под таблицей. При следующем запуске программы вся информация из указанного текстового файла должна переписываться в одномерный массив записей, и все действия могут быть повторены.
4.2. Предварительный анализ задачи
На этапе предварительного анализа задачи важно определить типы данных и основной набор действий по преобразованию этих данных. Причем тип данных, принятый для представления информации будет в первую очередь определять структуру программы и набор действий по обработке и преобразованию информации. В данном примере базовый тип для хранения данных – одномерный массив записей (по условию), а для хранения на магнитном носителе используется текстовый файл. Поэтому при работе программы необходимо будет предусмотреть следующий набор действий: