Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_Информатика-344 готовый.doc
Скачиваний:
34
Добавлен:
30.04.2019
Размер:
4.96 Mб
Скачать

§6.5. Этапы разработки программного обеспечения

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

  • постановка задачи;

  • моделирование задачи;

  • алгоритмизация решения задачи;

  • составление программы.

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

Характеристика решаемой задачи включает:

  • определение назначения задачи (цели ее решения);

  • установление периодичности решения задачи;

  • установление взаимосвязи решаемой задачи с другими задачами;

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

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

  • определение форм и методов контроля достоверности информации;

  • определение условий, при которых прекращается решение задачи.

Описание входной информации включает:

  • наименование входных сообщений;

  • установление источника сообщений (документов или массивов);

  • установление формы представления информации;

  • определение сроков и частоты поступления информации.

Описание нормативно-справочной информации включает:

  • классификацию нормативно-справочной информации;

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

Описание выходной информации включает:

  • установление перечня получаемых выходных сообщений;

  • установление формы представления сообщений (документы или массивы);

  • определение сроков и периодичности выдачи информации;

  • определение получателей выходной информации.

Описание контрольного примера включает:

  • описание порядка решения задачи традиционным способом;

  • отражение всего многообразия возможных форм исходных данных;

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

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

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

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

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

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

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