Введение 3
1 Спецификация требований 4
1.1 Общее описание продукта 4
1.2 Анализ существующих аналогов 4
1.2.1 AllTrails 4
1.2.2 Komoot 5
1.2.3 Hiking Project 6
1.3 Операционная среда 7
1.4 Функциональные требования 7
1.4.1 Функциональные требования клиентского приложения 7
1.4.2 Функциональные требования к серверу 14
1.5 Выводы по главе 19
2 Проектирование 20
2.1 Общая архитектура системы 20
2.2 Динамическая модель системы 21
2.3 Базы данных 24
2.4 Выводы по главе 26
3 Разработка и тестирование 27
3.1 Выбор инструментов разработки 27
3.2 Реализация элементов слоя View 27
3.3 Реализация элементов слоя ViewModel 28
3.4 Реализация элементов слоя Model 29
3.5 Инструкция к сборке проекта 29
3.6 Тестирование 31
3.7 Выводы по главе 31
Заключение 32
Список сокращений 33
Список использованных источников 34
В наше время информационных технологий карты местности все больше представлены не на бумажных носителях, а на цифровых. Кроме того, из-за повсеместного распространения смартфонов каждый человек может иметь в своем кармане карту всего мира. А поскольку интерес людей к исследованию мира не угасает, сейчас набирают популярность приложения для мобильных устройств, которые помогают человеку работать с картами и ориентироваться на местности.
Целью работы является разработка клиент-серверной системы для работы с картами, где клиент - это приложение для мобильных устройств, работающих под управлением операционной системы Android.
Для достижения цели были поставлены следующие задачи:
- выполнить анализ существующих аналогов;
- составить спецификацию требований;
- выполнить проектирование и разработку системы;
- разработать инструкцию для разработчика.
В результате выполнения выпускной квалификационной работы была разработана система для работы с маршрутами на карте, состоящая из клиентской части, представляющей собой приложение для устройств, работающих под управлением ОС Android, и серверной части.
Также было проведено тестирование используемой системы. Клиентское приложение было протестировано вручную и основано на прецедентах использования приложения, описанных в спецификации требований. Для тестирования API сервера были составлены тестовые наборы.
Разработана документация для разработчиков, в которой описаны настройка окружения для разработки, а также установка и запуск клиентского приложения и сервера.