Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснительная записка Шевцов 08-ВС.doc
Скачиваний:
5
Добавлен:
09.12.2018
Размер:
1.52 Mб
Скачать

Содержание

ВВЕДЕНИЕ 4

1 АНАЛИЗ ИСХОДНЫХ ДАННЫХ 5

1.1 Характеристика требований на разработку 5

1.2 Анализ предметной области 5

1.3 Специальное и общесистемное программное обеспечение 5

2 ПРОЕКТИРОВАНИЕ ПРОГРАММЫ 7

2.1 Информационное обеспечение 7

2.1 Математическое описание 8

3 Программная реализация 10

3.1 Детальная реализация функциональных частей программного обеспечения 10

3.2 Тестирование программного обеспечения 16

ЗАКЛЮЧЕНИЕ 17

ЛИТЕРАТУРА 18

Приложение A. 19

Приложение Б. 23

Приложение В. 26

Приложение Г. 31

32

Приложение Д. 33

Приложение Е. 35

36

Приложение G. 37

38

Приложение H. 39

Введение

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

Данную игру предложено реализовать на языке программирования С++ и в среде MS Visual Studio 2008. Microsoft Visual Studio — линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Visual Studio - интегрированная среда, упрощающая создание, отладку и развертывание приложений. Интегрированная поддержка разработки через тестирование и новые инструменты отладки позволяют быстро и без труда находить и устранять ошибки, обеспечивая высокое качество решений.

1 АНАЛИЗ ИСХОДНЫХ ДАННЫХ

    1. Характеристика требований на разработку

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

    1. Анализ предметной области

Приложение должно функционировать согласно правилам, которые предусматривает выбранный вариант игры. Единственной, на данный момент, реализованной игрой является “Собери двойку”. Побеждает тот игрок, кто первый откроет всё поле. Поле представляет собой 16 ячеек. Соответственно всего 8 пар одинаковых символов.

    1. Специальное и общесистемное программное обеспечение

Согласно исходным данным средой разработки проекта будет являться MS VS 2008. Данная среда программирования была выбрана из ряда других согласно указанному техническому заданию. Visual Studio, в первую очередь, считается универсальной и многофункциональной средой программирования. Согласно техническому заданию разработка должна вестись на языке программирования C++, а также с использованием функций работы с сокетами.

Как вариант, данный курсовой проект можно было предложить реализовать в среде Adobe Flash, используя язык программирования Action Script 2.0/3.0, однако данный язык в некоторой степени является более высокоуровневым, и в меньшей мере способствует развитию навыков на начальном этапе в работе с сокетами.

  1. Проектирование программы

2.1 Информационное обеспечение

Диаграмма прецедентов

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

Диаграмма классов

Это статическая структурная диаграмма, описывающая структуру системы, она демонстрирует классы системы. Диаграмма представлена в приложении B.

Диаграмма компонентов

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

Диаграмма композитной/составной структуры

Диаграмма композитной/составной структуры - статическая структурная диаграмма, демонстрирует внутреннюю структуру классов и, по возможности, взаимодействие элементов (частей) внутренней структуры класса. Диаграмма представлена в приложении D

Диаграмма развёртывания

Служит для моделирования работающих узлов. В данном случае используется сервер и 3 клиента. Диаграмма представлена в приложении Е.

Диаграмма объектов

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

Диаграмма деятельности

Диаграмма, на которой показано разложение некоторой деятельности на её составные части. Диаграмма представлена в приложении G.

Диаграмма коммуникации и последовательности

Выражает взаимодействие между тремя клиентами и сервером. Диаграмма представлена в приложении H.

Диаграмма обзора взаимодействия

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

Диаграмма синхронизации

Альтернативное представление диаграммы последовательности, явным образом показывающее изменения состояния на линии жизни с заданной шкалой времени. Может быть полезна в приложениях реального времени. Диаграмма представлена в приложении J.