Автор работы: Пользователь скрыл имя, 09 Января 2013 в 21:48, курсовая работа
1.1 Сущность задачи
Задачей данного проекта является автоматизация расчета кратчайшего расстояния между городами Минской области. Программное приложение должно выводить сведения об оптимальном пути маршрута.
В Минской области осуществляется автобусное сообщение между следующими городами:
Содержание
1 Объектно-ориентированный анализ и проектирование системы 3
Сущность задачи 3
Проектирование модели 5
2 Вычислительная система 8
2.1 Требования к аппаратным и операционным ресурсам 8
2.2 Инструменты разработки 8
3 Проектирование задачи 11
3.1 Требования к приложению 11
3.2 Концептуальный прототип 11
3.3 Организация данных 12
3.4 Функции и элементы управления 12
3.5 Проектирование справочной системы приложения 17
4 Описание программного средства 19
4.1 Общие сведения 19
4.2 Функциональное назначение 19
4.3 Входные данные 19
4.4 Выходные данные 19
5 Методика испытаний 20
5.1 Технические требования 20
5.2 Порядок проведения испытаний 20
5.2.1 Функциональное тестирование 20
5.2.2 Полное тестирование 26
6 Применение 39
6.1 Назначение программы 39
6.2 Условия применения 39
6.3 Справочная система 39
Заключение 45
Литература 46
Приложение А 47
Инструментами разработки будут являться:
Среда разработки Microsoft Visual Studio — это набор инструментов и средств, предназначенных для помощи разработчикам программ любого уровня квалификации в решении сложных задач и создания новаторских решений. Разработчикам программного обеспечения часто приходится решать ряд проблем, чтобы создавать удачные программы. Роль Visual Studio заключается в том, чтобы улучшить процесс разработки и упростить разработку высокоэффективных программ.
Средства Visual Studio позволяют разработчикам работать с большей отдачей и затрачивать меньше усилий на повторяющиеся задачи. Следует отметить высокопроизводительные редакторы кода, поддержку технологии IntelliSense, мастеров и различных языков кодирования в одной интегрированной среде разработки (IDE), а также продукты управления жизненным циклом приложений (ALM) в Microsoft® Visual Studio® Team System. В новых версиях Visual Studio постоянно появляются новые средства, позволяющие разработчикам сосредоточиться на решении основных проблем, а не на рутинной работе.
Разработчики, применяющие Visual Studio, получают в свое распоряжение интегрированный продукт, включающий инструменты, серверы и службы. Продукты Visual Studio отлично работают вместе — не только один с другим, но и с прочими программами Майкрософт, включая серверные продукты и приложения Microsoft Office.
В Visual Studio содержатся инструменты для всех этапов разработки программного обеспечения (разработка, тестирование, развертывание, интеграция и управления) и для разработчиков любого уровня квалификации, от новичков до опытных специалистов. Visual Studio поддерживает разработку для различных типов устройств — ПК, серверов, сетевых и мобильных устройств.
Visual Studio разрабатывается таким образом, чтобы обеспечить высокую надежность и совместимость. Visual Studio обладает удачным сочетанием безопасности, масштабируемости и взаимодействия. В Visual Studio всегда поддерживаются новейшие технологии, но везде, где это возможно, обеспечивается обратная совместимость.[8]
C# – элегантный, строго
типизированный объектно-
Как объектно-ориентированный язык, C# поддерживает понятия инкапсуляции, наследования и полиморфизма. Все переменные и методы, включая метод Main – точку входа приложения – инкапсулируются в определения классов. Класс может наследовать непосредственно из одного родительного класса, но может реализовывать любое число интерфейсов. Для методов, которые переопределяют виртуальные методы в родительском классе, необходимо ключевое слово override, чтобы исключить случайное повторное определение. В языке C# структура похожа на облегченный класс: это тип, распределяемый по стопкам, реализующий интерфейсы, но не поддерживающий наследование.
В дополнение к основным
описанным объектно-
Ни одна из методологий
разработки программ не обходится без
некоторого инструмента. Разработка
крупных программных систем в
современных условиях невозможна без
использования средств
Из основных возможностей можно перечислить следующие:
3 Проектирование задачи
3.1 Требования к приложению
Программное средство должно выполнять все основные функции, определённые на диаграмме вариантов использования:
Графический интерфейс должен быть простым, интуитивно понятным и дружелюбным.
Средства защиты программы зависят от самого пользователя, он сам выбирает каталог для сохранения файла, и сам, используя возможности операционной системы, устанавливает защиту файла. Данные же самой программы защищать незачем, ибо они не несут и не могут нести никакой материальной ценности.
3.2 Концептуальный прототип
Концептуальный прототип состоит из описания внешнего пользовательского интерфейса, а именно, элементов управления.
При создании данного приложения важную роль играют формы, так как они являются основным диалоговым средством работы пользователя. Разрабатываемое приложение будет содержать несколько форм: две основные формы и пять дополнительных. Такая структура интерфейса позволит классифицировать основные функции программы по группам.
При проектировании концептуального прототипа были разработаны следующие формы:
На форме «Оптимизация маршрута» находится:
На форме «О программе» находится:
На форме «Карта» находится:
3.3 Организация данных
Организация данных подразумевает создание модели данных, главными элементами которой являются сущности и их связи.
В разделе 2.2 на рисунке 1 представлена схема «Сущность-связь», на которой отображены главные сущности задачи: «Место отправления», «Пункт назначения», «Пользователь», «Список городов».
В текстовом файле будет храниться последовательность городов, через которые необходимо следовать, чтобы добиться кратчайшего маршрута следования, а так же наименьшее расстояние между двумя городами. Доступ к этим файлам могут осуществлять любые пользователи, не зависимо вы его создали или нет.
3.4 Функции и элементы управления
При нажатии клавиши «Найти кратчайший путь», использую алгоритм поиска кратчайшего пути на графах Флойда, программный продукт определяет кратчайший путь следования и его расстояние, и выводит в соответствующую строку пути и его расстояние. Далее, пожеланию, пользователь может сохранить данные в файл.
Программный код реализации данных функции представлен ниже.
class Optimization
{
int[,] D = new int[30, 30]
//1
{{0,9999,9999,9999,9999,9999,
//2
{9999,0,86,9999,9999,9999,69,
//3
{9999,86,0,9999,9999,9999,20,
//4
{9999,9999,99999,0,9999,9999,
//5
{9999,9999,9999,9999,0,9999,
//6
{9999,9999,9999,9999,9999,0,
//7
{9999,69,20,9999,9999,9999,0,
//8
{9999,9999,9999,9999,9999,
//9
{9999,9999,9999,9999,9999,
//10
{9999,79,46,9999,9999,9999,
//11
{41,9999,60,83,9999,9999,41,
//12
{9999,99999,9999,9999,9999,
//13
{64,9999,9999,9999,9999,93,
//14
{9999,9999,9999,23,41,9999,
//15
{133,9999,9999,9999,9999,9999,
//16
{9999,9999,9999,9999,9999,
//17
{9999,9999,9999,9999,9999,
//18
{9999,9999,54,9999,9999,9999,
//19
{65,9999,9999,9999,9999,9999,
//20
{115,9999,9999,9999,9999,9999,
//21
{55,9999,9999,9999,9999,9999,
//22
{9999,9999,9999,9999,9999,
//23
{9999,9999,9999,9999,9999,
Информация о работе Нахождение кратчайшего пути между городами Минской области