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


Мобильный клиент для операционной системы iOS


Download 0.65 Mb.
bet13/13
Sana23.10.2023
Hajmi0.65 Mb.
#1717149
TuriРасписание
1   ...   5   6   7   8   9   10   11   12   13
Bog'liq
bibliofond.ru 863400

2.5 Мобильный клиент для операционной системы iOS


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


При запуске приложение отображает экран входа в систему (рисунок 13):



Рисунок 13 - экран входа в систему

На окне входа пользователю доступен ввод логина и пароля для входа. При успешном входе в систему экран входа в систему сменяется на основной экран приложения при помощи эффекта «сдергивание». Если же при входе в систему произошли какие-либо ошибки, то ниже блока ввода (области, в которой находятся поля «Имя пользователя» и «Пароль») плавно появляется красная панель, на которой выводится текст ошибки (эта панель скрывается по прошествии 5 секунд с момента появления), при этом, для дополнительной визуального уведомления пользователя блок ввода анимируется с помощью эффекта «встряхивание» - этот эффект не является встроенным и был разработан самостоятельно: эффект применяется на виде (View) при задании параметров амплитуды колебаний, количества колебаний и времени отображения - в блоке анимации (анимация получает как аргумент время отображения анимации) меняет координату по X вправо и влево на величину, равную параметру эффекта - амплитуду колебаний (рисунок 14):





Рисунок 14 - ошибка при авторизации через мобильный клиент

Также для уведомления пользователя о каких-либо продолжительных во времени процессов приложение использует компонент MBProgressHUD.


Если пользователь не имеет аккаунта, он может отправить заявку на его получение, нажав кнопку «Получить аккаунт». После этого приложение отображает экран регистрации в системе (рисунок 15):

Рисунок 15 - форма отправки заявки на регистрацию в системе

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


После входа в систему пользователь может открыть экран просмотра профиля (рисунок 15):

Рисунок 15 - экран просмотра профиля пользователя

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


Основной интерфейс мобильного клиента представлен при помощи трех основных экранов, связанных с помощью контроллера вкладок (Tab Bar Controller). Пользователь может переключаться между экранами при помощи панели в нижней части экрана.
При открытии экрана просмотра расписания приложение отображает следующий вид (рисунок 16):

Рисунок 16 - начальный вид экрана с расписанием

Сообщение «Для просмотра расписания укажите, пожалуйста, временной промежуток и объединение» отображается при первом запуске данного экрана (до этапа, когда он будет верно сконфигурирован для произведения выборки расписания). Чтобы сконфигурировать экран для выборки, необходимо нажать кнопку в правой части навигационной панели с изображением двух стрелок.


При открытии экрана конфигурирования экрана расписания приложение отображает вид, показанный на экране 17.



Рисунок 17 - экран конфигурирования выборки расписания

Экран конфигурирования расписания содержит три элемента управления - поля установки даты начала и даты окончания периода, а также поле выбора объединения для выборки. Каждый элемент управления использует компонент iOS «барабан», для первых двух используется барабан для выбора даты (UIDatePicker), а для отображения произвольных структур данных используется родительский компонент UIDatePicker (UIPickerView).


После выбора нужных значений параметров и нажатия кнопки в правой части навигационной панели экран конфигурирования расписания закрывается, и экран просмотра расписания обновляется в соответствии с новыми параметрами расписания. Пример экрана расписания с успешной выборкой изображен на рисунке 18.



Рисунок 18 - экран расписания при успешной выборке

Навигация между днями производится при помощи скользящего по экрану движения - свайпа (от английского «to swipe»). Каждый день представляется страницей экрана может либо содержать фактический список занятий, как показано на рисунке 18, либо показывать сообщение «На данный день занятий не обнаружено» - такая ситуация возможна, если день свободен от занятий, либо является выходным днем (находится в массиве freeDays активной AppConfiguration). Каждая ячейка в расписании представляет собой занятие и содержит информацию о времени и месте проведения занятия, предмете и типе занятия (лекция, практикум, семинарское занятие), преподавателе занятия и объединения, которые обучаются на данном занятии.


Просмотр уведомлений осуществляется при помощи соответствующего экрана (рисунок 19). Экран просмотра уведомлений доступен при помощи панели вкладок (первая вкладка).



Рисунок 19 - экран списка уведомлений

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


Так как приложение работает по HTTP-протоколу, то для актуальности информации клиент каждые 10 секунд (если активен) опрашивает сервер на предмет новых уведомлений (от даты получения самого свежего уведомления), и, если появились новые уведомления, на вкладку экрана в нижней панели помещается специальный значок («наклейка», от английского badge) - круглый элемент красного цвета, на котором белым шрифтом указано количество новых уведомлений, или же “99+”, если уведомлений больше 99. При открытии экрана счетчик непрочитанных уведомлений сбрасывается, и наклейка удаляется с экрана.
Если данный экран активен, то опрос сервера на предмет новых уведомлений не производится, пользователь может сам инциировать процесс обновления, используя общепринятый в мобильных технологиях прием «потянуть, чтобы обновить»: скользящим движением вниз, как при прокрутке списка вверх, но сам список при этом находится в крайнем верхнем положении. При этом на экране отображается индикатор загрузки обновлений, и, если обновления получены, они немедленно добавляются к списку сверху.



Рисунок 20 - Полное описание уведомления

При нажатии на интересущее уведомление, приложение производит открытие этого уведомления в отдельном экране (рисунок 20). Пользователь может целиком прочитать содержимое уведомление, если оно велико, используя прокрутку экрана.


ЗАКЛЮЧЕНИЕ

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


СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ


1 Одом У. Компьютерные сети. Первый шаг - СПб.: Вильямс, 2006. - 403 с.


2 Бернерс-Ли Т. Плетя паутину: истоки и будущее Всемирной сети. URL:http://www.w3.org/People/Berners-Lee/Weaving/Overview.html (Дата обращения 23.12.2013)
Камер Д. Сети TCP/IP, том 1. Принципы, протоколы и структура - М.: Вильямс, 2003. - 848 с.
Авдеева Л. В.Радиотехнологии и стандарты подвижной связи. URL: (Дата обращения 23.12.2013)
Википедия - свободная энциклопедия. URL: (Дата обращения 23.12.2014)
Статья «История возникновения телефона и мобильной связи». URL: (Дата обращения 23.12.2014)
Компьютер на ладони. (Дата обращения 23.12.2014)
Гордеев А. В. Операционные системы: Учебник для вузов. - 2-е изд. - СПб.: Питер, 2007. - 416 с.
Когаловский М. Р. Энциклопедия технологий баз данных. - М.: Финансы и статистика, 2002. - 800 с.
Кеннеди Б. HTML и XHTML. Подробное руководство. / Ч. Муссиано - М.:Символ-Плюс, 2002. - 748 с.
Флэнаган Д. JavaScript. Подробное руководство. - 5-е изд. - СПб.: Символ-Плюс, 2008. - 267 с.
Кнастер С. Objective-C и программирование для Mac OS X и iOS, 2-е издание./В. Малик, М. Далримпл. - М.: Вильямс, 2013. - 297 с.
Бэнкер К. MongoDB in Action - Manning Publications, 2011. - 375 с.
14 Фландерс Д. Введение в службы RESTful с использованием WCF. URL: (Дата обращения 20.05.2015)
ПРИЛОЖЕНИЕ А

Подробное описание модели данных системы


Таблица 3 - описание модели данных системы



Имя сущности модели данных

Список свойств сущности

Конфигурация приложения

· Имя конфигурации (строка) · Активность (да/нет) · Цикл приложения (длина цикла - число, свободные от занятий дни - список чисел, начальная дата цикла - дата)

Занятие

· Номер занятия (целое) · Время начала (время) · Время окончания (время)

Тип занятия

· Название (строка)

Площадка

· Название (строка)

Предмет

· Название (строка) · Описание (строка)

Объединение

· Имя (строка) · Описание (строка) · Родительское объединение (объединение)

Пользователь

· Имя (строка) · Фамилия (строка) · Отчество (строка) · Имя пользователя (строка) · Пароль (строка) · Электронная почта (строка) · Номер телефона (строка) · Роли (список элементов «читатель», «редактор», «администратор»)

Пользователь

· Тип (студент, преподаватель) · Управляемые объединения (список экземпляров сущности Объединение) · Читаемые объединения (список экземпляров сущности Объединение) · Активность профиля (да/нет)

Занятие по расписанию

· Позиция дня в цикле занятий (целое) · Предмет (экземпляр сущности Предмет) · Тип (экземпляр сущности Тип занятия) · Занятие (экземпляр сущности Занятие) · Площадка (экземпляр сущности Площадка) · Преподаватель (экземпляр сущности Пользователь, чей тип равен «преподаватель») · Обучаемые объединения (список экземпляров сущности Объединение)

Замена / Одноразовое занятие

· Дата занятия (дата) · Позиция дня в цикле занятий (целое) · Предмет (экземпляр сущности Предмет) · Тип (экземпляр сущности Тип занятия) · Занятие (экземпляр сущности Занятие) · Площадка (экземпляр сущности Площадка) · Преподаватель (экземпляр сущности Пользователь, чей тип равен «преподаватель») Обучаемые объединения (список экземпляров сущности Объединение)

Уведомление

· Дата создания (дата) · Автор (экземпляр сущности Пользователь)

Уведомление

· Заголовок (строка) · Содержимое уведомления (строка) · Объединения-получатели (список экземпляров сущности Объединение)

Download 0.65 Mb.

Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   13




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling