Функциональное описание задачи




Практическое занятие 1.

Предварительная подготовка

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

Документ должен отвечать на вопрос : «Что должна делать система?». Он начинается с общей характеристики решаемой задачи (Раздел 1), который содежит идентификационную информацию и общие требования.

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

Как правило можно выделить три источника входных данных задачи:

- параметры, передаваемые задаче непосредственно операционной системой (команды имена файлов и т.п.);

- данные вводимые пользователем с клавиатуры в процессе решения задачи;

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

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

- созданные в файловой среде новые структуры и наборы данных, сруктуры записей этих наборов и права доступа к ним;

- сообщения пользователю, выводимые на экран, их форматы и размещение на экране;

- данные, возвращаемые непосредственно операциолнной системе.

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

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

Реализация

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

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

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

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

Проверка реализации

Третьим этапом решения задачи является составление тест-плана - программы испытаний (проверки, тестирования) программной реализации (Раздел 6). Критерием качества тест-плана является покрытие (выполнение) всех требований к проверке правильности функционирования программной реализации. Желательной характеристикой тест-плана является проверка исполнения всех веток схемы программной реализации. Тест-план должен быть оформлен и согласован с ведущим преподавателем в процессе исполнения программной реализации задачи.

Четвертым этапом решения задачи является исполнение тест-плана, и предъявление результатов – протокола испытаний (Раздел 7) преподавателю. При приеме (защите результатов) лабораторного задания преподаватель должен проверить степень обоснованности проектных решений, принятых при программной реализации задачи. С этой целью рекомендуется рассмотреть и попросить студента обосновать предпочтение выбора из нескольких вариантов представления данных, возможных альтернатив организации вычислительного процесса и конструкций языка реализации.

Рекомендуемая структура оформления спецификации задачи

Общее описание

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

Внешний проект задачи

Входные данные

2.1.1. Параметры

2.1.2. Данные, вводимые пользователем

2.1.3. Структура данных на носителях

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

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

Выходные данные

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

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

Функциональное описание задачи

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

3.1. Функции контроля входных данных

3.2. Функции обработки ошибок(ввода, вычислений)

3.3. Функции получения «основного» результата (копирования, конкатенации, поиска)

3.4. Функции обработки особых ситуаций

3.5. Функции оформления и вывода результатов





©2015-2017 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.

Обратная связь

ТОП 5 активных страниц!