Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекц_ТРПП_1сем.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
3.79 Mб
Скачать

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

5.1.Разрабатываемые программные модули должны быть самодокументированы, т. е. тексты программ должны содержать все необходимые комментарии.

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

5.3.В состав сопровождающей документации должны входить:

5.3.1.Пояснительная записка на 25-30 листах, содержащая описание разработки.

5.3.2.Руководство системного программиста.

5.3.3.Руководство пользователя.

5.3.4.Графическая часть на трех листах формата А1:

5.3.4.1.Схема структурная программной системы.

5.3.4.2.Диаграмма компонентов данных.

5.3.4.3.Формы интерфейса пользователя.

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

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

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

Задача поиска кратчайшего пути при тех же исходных данных предполагает другую цель:

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

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

Текст технического задания приведен ниже.

1. Введение

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

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

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

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