Разработка мобильного приложения для наблюдения за состоянием здоровья

Обзор технологии Bluetooth Low Energy, оценка ее главных преимуществ и недостатков. Архитектура приложения и основные требования к нему, структура базы данных. Используемые средства и технологии. Взаимодействие с фитнес-браслетом. Разработка интерфейса.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 01.12.2019
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Разработка мобильного приложения для наблюдения за состоянием здоровья

Введение

приложение интерфейс мобильный

Целью данной работы является разработка мобильного приложения для операционной системы Android, которое позволяет следить за состоянием здоровья во время выполнения определённых физических упражнений, в данном случае - катание на лыжах. Мониторинг осуществляется с помощью фитнес-браслета, работающего по протоколу Bluetooth Low Energy (BLE).

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

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

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

Для достижения цели необходимо решить следующие задачи:

· анализ существующих решений;

· формулировка требований к приложению и составу выполняемых функций;

· выбор архитектурного решения, методов и подходов к реализации;

· проектирование интерфейса и взаимодействия пользователя с приложением;

· реализация выбранных методов и подходов;

· тестирование готового приложения;

· разработка технической документации.

·

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

1.1 Обзор существующих решений

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

Ski Tracker

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

Так же есть возможность просмотра маршрута на карте и истории активностей.

Данное приложение не имеет возможности отслеживать состояние здоровья.

Huawei Health

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

Рисунок 2. Huawei Health

MiFit

Данное приложение имеет такой же функционал, как и приложение Huawei Health (Рис. 3). Существенное отличие - оно поддерживает только фитнес-браслеты компании Xiaomi.

Краткий обзор существующих приложений

Ski Tracker

Huawei Health

MiFit

Отслеживание активности катания на лыжах

+

-

-

Поддержка фитнес-браслетов

-

+

(только устройства компании Huawei)

+

(только устройства компании Xiaomi)

Предоставление пользователю рекомендаций по выполнению физических упражнений

-

-

-

Решение, представленное в данной работе, нацелено на объединение функционала описанных приложений, дополняя его новым функционалом.

1.2 Доля рынка Androidстройств

Выбор операционной системы производился между двумя самыми популярными платформами: Android и iOS. В соответствии с информационным порталом Statista[4], во втором квартале 2018 года 88% проданных пользователям устройств работает на платформе Android. Таким образом, Android является наиболее популярной операционной системой, поэтому именно она была выбрана для данной работы. Язык программирования, в свою очередь, выбран Java.

1.3 Архитектура системы Android

В данном разделе рассматривается архитектура системы Android, её основных компонентов[10]. Выделяют 5 слоев (Рис. 4):

Архитектура Android

1. Приложения (Application layer). Является верхним уровнем в состав которого входит комплект базовых приложений, таких как: управление контактами, клиенты e-mail и SMS, интернет-бразуер и др.

2. Платформа приложений (Application Framework layer). Предоставляет ряд API (application programming interface) для работы приложения с компонентами системы. Некоторые их них:

· система представлений (View system) - служит для построения внешнего вида (UI - user interface) приложения;

· менеджер действий (Activity Manager) - управляет жизненным циклом приложений.

3. Библиотеки (Libraries layer). Включает набор C/C++ библиотек, необходимых для работы компонентов системы

4. Уровень среди исполнения (Android Runtime Layer). Среда выполнения. Основными составляющими которой являются набор библиотек ядра и виртуальная машина.

5. Ядро Linux (Linux Kernel). Ядро Android основано на Linux версии 2.6.

В данной работе такие API как View system и Activity Manager являются наиболее важными в использовании, так как приложение должно иметь понятный и удобный для использования интерфейс. Так же следует следить за жизненным циклом приложения и его компонентов. В качестве компонентов могут выступать Activity или Fragment, каждый из которых имеет свой жизненный цикл (Рис. 5). Так как приложение, описанное в данной работе, во время мониторинга активности должно отслеживать показатели как при выключенном экране, так и пре смене фрагмента / приложения, то необходимо следить за жизненным циклом фрагментов.

Рисунок 5. Жизненный цикл Activity и Fragment

1.4 Обзор технологии Bluetooth Low Energy

Для взаимодействия с браслетом Android SDK предоставляет сервисы для работы с устройствами, поддерживающими Bluetooth Low Energy технологию. Их использование становится доступным на операционной системе Android 4.3 (API Level 18).

Как и следует из названия, это беспроводная технология с низким энергопотреблением.

Терминология:

· Generic Attribute Profile (GATT) - позволяет отправлять и получать данные, используя BLE протокол. Данный профиль содержит в себе набор сервисов. Пример сервиса - Heart Rate Monitor.

· Service - набор характеристик

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

Список всех Bluetooth GATT профилей, сервисов, характеристик и как с ними работать можно найти на официальном сайте технологии Bluetooth.

Было проведено исследование рынка приложений, направленных на мониторинг физической активности (катание на лыжах), и приложений, использующих фитнес-браслеты для получения дополнительных о данных о состоянии здоровья. Проанализирован функционал существующих аналогов. Описана архитектура, структура и компоненты приложений Android, с учетом которых необходимо подходить к разработке. Проведен краткий обзор технологии Bluetooth Low Energy.

2. Проектирование приложения

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

2.1 Архитектура приложения

В качестве архитектуры выбран следующий подход - использовать одну Activity и несколько экземпляров класса Fragment, которые заменяют один на другой и находятся внутри основной Activity. Таким образом, получается следующий список компонентов:

Activities:

· MainActivity - основная Activity в которой находится контейнер для фрагментов.

Fragments:

· ActivityFragment - фрагмент для отображения активности катания на лыжах

· DeviceFragment - фрагмент, содержащий в себе список ранее сохраненных устройств с возможностью установки соединения с ними

· DeviceScanFragment - фрагмент, содержащий в себе список доступных для подключения Bluetooth устройств, который пополняется по мере сканирования

· HistoryFragment - фрагмент, содержащий в себе список истории тренировок с возможностью детального просмотра

· CustomMapFragment - фрагмент, который содержит в себе Google Map

· UserFragment - фрагмент необходимый для ввода пользовательских данных (возраст, вес, рост)

Помимо фрагментов так же существуют классы категории «Helper» ответственные за взаимодействие с фитнес-браслетом, с базой данных, содержащие в себе статические (static) public методы.

2.2 Модель базы данных

Для данного приложения необходимо три сущности.

Название сущности

Название поля

User

ID

Name

Weight

Age

Device

ID

Name

MAC_address

Activity

ID

Time

Max_speed

Average_speed

Distance

Max_height

Min_height

Heart_rate (list in string presentation)

Map_points (list of LatLng)

2.3 Формулировка требований

Состав выполняемых функций для разрабатываемого приложения:

· Отслеживание активности катания на лыжах:

o максимальную и среднюю скорость;

o пройденную дистанцию;

o затраченное время;

o изменение высоты над уровнем моря во время катания;

o измерение пульса.

· Поддержка фитнес-браслетов разных производителей.

· Предоставление пользователю рекомендаций по выполнению физических упражнений (катание на лыжах).

2.4 Проектирование взаимодействия с пользователем

Исходя из функциональных требований к приложению разработан основной сценарий (use case) работы приложения (Рис. 6)

Use case диаграмма

В данной главе был рассмотрен подход к проектированию как всего приложения в целом, так и его компонентов: activities и fragments. Также была представлена модель базы данных и основной сценарий работы приложения.

3. Разработка приложения

3.1 Используемые средства и технологии

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

Приложение разрабатывалось в интегрированной среде разработки Android Studio, основанной на программном обеспечении IntelliJ IDEA от компании JetBrains. Данной программное обеспечение предоставляет все необходимые инструменты для разработки программного кода и дизайна приложения. Выбранный язык программирования для реализации приложения - Java.

Для реализации хранилища данных была выбрана ObjectBox. Это объектно-ориентированная NoSql база данных, которая создана и оптимизирована для использования в мобильных приложениях, а также в сфере IoT. Разработчики утверждают, что операции CRUD (create, read, update, delete) выполняются до 10 раз быстрее, чем при использовании SQLite. [1] (Рис. 7)

ObjectBox vs SQLite

3.2 Взаимодействие с фитнес-браслетом

В первую очередь приложению необходимо «найти» фитнес-браслет. Это осуществляется с помощью BluetoothAdapter. Пользователь может выбрать нужное устройство среди найденных по имени или по MAC-адресу.

Следующий шаг - соединение с устройством.

BluetoothGatt bluetoothGatt =

bluetoothDevice.connectGatt (this, true, bluetoothGattCallback);

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

BluetoothGattCallback - класс, который содержит в себе методы, вызываемые при изменении различных параметров.

Наиболее важные:

· onCharacteristicChanged(…) - вызывается при изменении характеристики

· onCharacteristicRead(…) - сообщает статус чтения характеристики

· onCharacteristicWrite(…) - сообщает статус чтения характеристики

· onConnectionStateChange(…) - вызывается при изменении состояния подключения

В данной работе наиболее важным сервисом является «Heart Rate Monitor».

У этого сервиса имеется набор характеристик:

· Heart Rate Measurement

· Heart Rate Measurement Client Characteristic

· Body Sensor Location

· Heart Rate Control Point

Таким образом, изменяя значение характеристики «Heart Rate Control Point», можно остановить или начать измерять пульс.

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

new byte[] {0x15, 0x01, 0x00}

А для включения

new byte[] {0x15, 0x01, 0x01}

Данная информация не предоставляется производителями фитнес-браслетов, следует отметить, что подобной информации нету в официальной документации. Понять какую именно последовательность байт необходимо отправить помог анализ Bluetooth логов при взаимодействии приложения разработанного производителем и самим браслетом. Анализ проводился с помощью программного обеспечения Wireshark.

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

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

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

Было решено объединить запросы в пределах одной операции и назвать Transaction. Для формирования транзакции используется паттерн проектирования, известный как Builder (Строитель).

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Пример составления транзакции, описанной выше:

stopHRmanual = new byte[] {0x15, 0x02, 0x00};

stopHRcontinuous = new byte[] {0x15, 0x01, 0x00};

startHRcontinuous = new byte[] {0x15, 0x01, 0x01};

TransactionBuilder builder = new TransactionBuilder(); builder.write (getCharacteristic(UUID_CHARACTERISTIC_HEART_RATE_CONTROL_POINT), stopHRmanual); builder.write (getCharacteristic(UUID_CHARACTERISTIC_HEART_RATE_CONTROL_POINT), stopHRcontinuous); builder.write (getCharacteristic(UUID_CHARACTERISTIC_HEART_RATE_CONTROL_POINT), startHRcontinuous);

builder.queue(mQueue);

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

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

Когда сработает один из методов BluetoothGattCallback, который относится к изменению / чтению характеристик, происходит проверка, совпадает ли характеристика из callback'а с той, что находится в режиме ожидания и успешно ли она была изменена / прочитана. Если да, то объект, задерживающий поток выполнения очереди, «просыпается» с помощью вызова метода countDown(), и переходит к следующему запросу или транзакции если запрос был последним. Если же статус выполнения какого-либо запроса возвращается с ошибкой или же соединение с устройством было потеряно, то транзакция прерывается.

3.3 Работа с базой данных

В качестве хранилища данных используется БД ObjectBox.

Так как это NoSql база данных, то как таковой схемы нету.

Разработчики ObjectBox предоставляют библиотеку для работы с ней. Чтобы сохранить объект в БД достаточно обозначить ключевые аннотации в классе, экземпляром которого является данный объект:

· @Entity - объявляет класс сущностью, предоставляет возможность сохранять объекты в базе данных

· @Id - обозначает какое поле будет являться уникальным идентификатором объекта

Подобная концепция называется ORM (object-relational mapping), когда между кодом приложения и базой данных существует ещё один уровень в виде сущностей, которые могут быть использованы, как и самим приложением, так и драйвером БД.

Соответственно в коде класс User выглядит следующим образом:

@Entity

public class User {

@Id

private long id;

private String name;

private Integer age;

private Double weight;

private Double height;

 // getters

 // setters

}

Все поля класса User являются «простыми», то есть драйвер БД ObjectBox может самостоятельно работать с таким типом данных. Ситуация обстоит по-другому с сущностью Activity, некоторые поля которой являются не простые типы:

@Convert (converter = Converters. LocalTimeConverter.class, dbType = String.class)

private LocalTime time;

@Convert (converter = Converters. PolylineConverter.class, dbType = String.class)

private List<LatLng> polyline;

@Convert (converter = Converters. ListIntegerConverter.class, dbType = String.class)

private List<Integer> heartRate;

Таким образом для подобных типов необходимо реализовывать конвертеры в тот тип данных, с которым БД драйвер умеет работать. Конвертер для листа точек с координатами в класс String и наоборот:

public static class PolylineConverter implements PropertyConverter<List<LatLng>, String> {

@Override

public List<LatLng> convertToEntityProperty (String databaseValue) {

if (StringUtils.isEmpty(databaseValue))

return Collections.emptyList();

String preResult = StringUtils.deleteWhitespace (databaseValue.substring (1, databaseValue.length() - 1));

return Stream.of (preResult.split(»)»))

filter (StringUtils:isNotEmpty)

map (s -> s.substring(1))

map (s -> {

String[] pair = s.split(»,»);

return new LatLng (Float.valueOf (pair[0]), Float.valueOf (pair[1]));

})

collect (Collectors.toList());

}

@Override

public String convertToDatabaseValue (List<LatLng> entityProperty) {

return entityProperty.stream()

map (latLng -> «[» + String.valueOf (latLng.latitude) +»,» + String.valueOf (latLng.longitude) +»]»)

collect (Collectors.toList())

toString();

}

}

Работа с базой данных сводится к простым и понятным операциям, таким как

User user = new User («User Name»);

user.setAge(30);

long id = box.put(user); // Сохранить в БД

User user = box.get(id); // Прочитать

box.remove(user); // Удалить

3.4 Работа с GPS

Весь оставшийся функционал, а именно:

· измерение скорости;

· измерение пройденной дистанции;

· определение маршрута;

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

реализован с помощью обработки данных от GPS модуля. Для получения изменений данных при начале мониторинга отправляется запрос с помощью LocationManager и при получении изменения координат, если скорость больше 0, то высчитывается суммарная дистанция.

Так же реализован слушатель сообщений от GPS модуля по стандарту NMEA 0183. Получение подобных сообщений способствует обработке новой информации. Таким образом, в соответствии со стандартом[7], можно получить высоту над уровнем моря.

3.5 Обработка измерений

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

ЧСС можно разделить на пять диапазонов[5], границы которых зависят от максимальной ЧСС.

ЧССмакс = 220 - возраст

Выделяют следующие диапазоны:

Интенсивность

Процент от ЧССмакс

Примерная продолжительность (мин)

Очень низкая

50 - 60%

20 - 40

Низкая

60 - 70%

40 - 80

Средняя

70 - 80%

10 - 40

Выше среднего

80 - 90%

2 - 10

Максимум

90 - 100%

< 5

На основании приведенной таблицы, реализована обработка ЧСС.

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

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

3.6 Разработка интерфейса

Google maps

Фрагмент для мониторинга активности представляет из себя Scroll View, для просмотра все информации на одной страницы, включая фрагмент Google Maps для отображения маршрута. Для корректной навигации по карте (при перемещении по карте вверх Scroll View не должен проматываться), необходимо переопределить методы фрагмента SupportMapFragment. Для этого создан класс CustomMapFragment extends SupportMapFragment и переопределен метод, отвечающий за отправку действия при прикосновении к экрану. В данном методе у родителя (Scroll View) отменяется перехват обработки Touch event, то есть при прикосновении к карте будет вызывать обработчик карты, а не Scroll View как это реализовано по умолчанию.

Дизайн приложения

Дизайн приложения разрабатывался с учетом Material Design. На сайте[7] представлено множество обучающих статей как для отдельных элементов на экране, так и для целого макета страницы. В данной работе используются такие компоненты как:

· TextInputEditText (Рис. 8)

Настройки пользователя

ListView (Рис. 9-10)

Список устройств

История заездов

TableLayout (Рис. 11)

Мониторинг активности

Для отображения частоты сердечных сокращений используется график, реализованный с помощью библиотеки MPAndroidChart[8] (Рис. 12). Который изменяется в режиме реального времени во время мониторинга.

График сердечного пульса

Помимо описанных компонентов, Material Design так же предусматривает использование специальных иконок. Для облегчения поиска и добавления иконок в проект использовался плагин для Android Studio под названием Android Material Design Icon Generator (Рис. 13).

Android Material Design Icon Generator

С помощью которого можно сгенерировать Material icons (Рис. 14).

Material Icons

Логотип приложения сгенерирован с помощью онлайн ресурса cooltext.com[9] (Рис. 15)

Логотип приложения

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

Заключение

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

На основе анализа существующий решений и анализа архитектуры операционной системы Android и технологии Bluetooth Low Energy, были выявлены и в дальнейшем реализованы основные функциональные требования к приложению:

· Отслеживание активности катания на лыжах:

o максимальную и среднюю скорость;

o пройденную дистанцию;

o затраченное время;

o изменение высоты над уровнем моря во время катания;

o измерение пульса.

· Поддержка фитнес-браслетов разных производителей.

· Предоставление пользователю рекомендаций по выполнению физических упражнений (катание на лыжах).

Приложение разработано в интегрированной среде Android Studio на языке Java. Для хранилища данных используется NoSQL база данных ObjectBox. Взаимодействие с устройствами реализовано с помощью стандартных сервисов для работы с Bluetooth устройствами. Интерфейс приложения спроектирован с учетом Material Design.

Приложение реализовано в соответствии с формированными функциональными требованиями.

Наибольшую трудность вызвала реализация взаимодействия фитнес-браслета со смартфоном, так как это потребовало анализа спецификаций по технологии Bluetooth Low Energy и способов взаимодействия, которые могут отличаться в зависимости от устройства.

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

Список использованных источников

приложение интерфейс мобильный

1. ObjectBox: ObjectBox for mobile. Available at: https://objectbox.io/mobile

2. Bluetooth. Available at: https://www.bluetooth.com

3. Android Developers: Bluetooth low energy overview. Available at: https://developer.android.com/guide/topics/connectivity/bluetooth-le#java

4. Statista (2018) Global market share held by the leading smartphone operating systems in sales to end users from 1st quarter 2009 to 2nd quarter 2018. Available at: https://www.statista.com/statistics/266136/global-market-share-held-by-smartphone-operating-systems/

5. Polar: Диапазоны частоты сердечных сокращений. Available at: https://support.polar.com/e_manuals/A300/Polar_A300_user_manual_Russian/Content/Heart_rate_Zones.html

6. GPS - NMEA sentence information (2001) Available at: http://aprs.gids.nl/nmea/

7. Material Design. Available at: https://material.io/

8. MPAndroidChart. Available at: https://github.com/PhilJay/MPAndroidChart

9. Cool Text Graphics Generator. Available at: https://cooltext.com/

10. Программирование под Android (2014): Архитектура операционной системы Андроид. Available at: http://pr0andr0id.blogspot.com/2014/02/blog-post_21.html

Размещено на Allbest.ru


Подобные документы

  • Разработка приложения для проверки использования времен глаголов в английском языке. Создание базы данных. Анализ используемых средств для реализации автоматического разбора текста. Проектирование мобильного приложения с помощью диаграмм деятельности.

    дипломная работа [2,6 M], добавлен 13.09.2017

  • Обзор мобильной ОС Android. Выбор инструментов и технологий. Проектирование прототипа графического интерфейса. Характеристика и описание пользовательского интерфейса. Проектирование и разработка базы данных. Определение списка необходимых разрешений.

    курсовая работа [376,6 K], добавлен 13.09.2017

  • Область применения и требования создаваемого Web-приложения. Требования к техническому и программному обеспечению. Разработка структуры Web-приложения и выбор средств программной реализации. Программная реализация Web-приложения. Структура базы данных.

    дипломная работа [1,4 M], добавлен 03.06.2014

  • Разработка клиент-серверного приложения, позволяющего взаимодействовать друг с другом с использованием доступа к базам данных. Проектирование связи сервера с базой данных с помощью технологии ODBC. Разработка интерфейса программы, ее тестирование.

    курсовая работа [352,0 K], добавлен 24.08.2016

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

    курсовая работа [35,4 K], добавлен 12.05.2013

  • Обзор подходов к разработке музейных приложений с элементами дополненной реальности, формирование требований к ним. Выбор методов разработки приложения, разработка пользовательского интерфейса. Принципы тестирования. Реализация раздела "Распознавание".

    дипломная работа [2,8 M], добавлен 03.07.2017

  • Формирование входных и выходных данных, SQL–скрипт генерации таблиц базы данных. Создание интерфейса программного приложения и проектирование форм базы данных. Требования к аппаратно–программному обеспечению. Инструкции по установке и эксплуатации.

    курсовая работа [1,6 M], добавлен 08.02.2013

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

    дипломная работа [1,0 M], добавлен 10.07.2017

  • Беспроводный метод передачи данных bluetooth, выделение его основных свойств, преимуществ и принципов работы. Технические аспекты и набор базовых протоколов технологии bluetooth, основные направления применения технологии и характеристика конкурентов.

    реферат [1,3 M], добавлен 19.11.2014

  • Рассмотрение инфологической и даталогической модели базы данных кинотеатров города. Разработка базы данных в программе MS Access. Описание структуры приложения и интерфейса пользователя. Изучение SQL-запросов на вывод информации о кинотеатре и о фильме.

    курсовая работа [1,1 M], добавлен 04.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.