Тип работы:
Предмет:
Язык работы:


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

Работа №80017

Тип работы

Магистерская диссертация

Предмет

информатика

Объем работы67
Год сдачи2016
Стоимость4935 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
25
Не подходит работа?

Узнай цену на написание


ГЛОССАРИЙ 6
ВВЕДЕНИЕ 8
1. ОБЗОР ЛИТЕРАТУРЫ 11
1.1. Обзор аналогичных проектов 11
1.1.1. Сервис учета рабочего времени Workly 11
1.1.2. Сервис учета рабочего времени TIMEDOCK 12
1.2. Обзор технологий для реализации сервиса 13
1.2.1. Технология NFC 13
1.2.2. Технология Beacon 14
2. ТРЕБОВАНИЯ К СЕРВИСУ УЧЕТА ВРЕМЕНИ 17
2.1. Функциональные требования 17
2.2. Нефункциональные требования 18
2.3. Описание прецедентов 19
3. АРХИТЕКТУРА СЕРВИСА УЧЕТА ВРЕМЕНИ 23
3.1. Компоненты сервиса ZapTimer 23
3.2. Процессы работы с сервисом ZapTimer 24
4. РЕАЛИЗАЦИЯ СЕРВЕРА 28
4.1. Схема базы данных 28
4.1.1. Схема центральной базы данных 28
4.1.2. Схема вторичной базы данных 31
4.2. Реализация REST API для сервиса ZapTimer 33
5. РЕАЛИЗАЦИЯ МОБИЛЬНОГО ПРИЛОЖЕНИЯ 39
5.1. Инструменты хранения данных 39
5.1.1. Файл настроек приложения 39
5.1.2. Локальная база данных приложения 39
5.1.3. Механизмы синхронизации данных 42
5.2. Инструменты разработки 43
5.2.1. ORM Realm 43
5.2.2. Библиотека Retrofit 44
5.2.3. Система сборки проекта Gradle 46
5.3. Пользовательский интерфейс 47
6. ТЕСТИРОВАНИЕ СЕРВИСА 54
6.1. Тестирование REST API 54
6.2. Тестирование мобильного приложения 56
6.3. Интеграционное тестирование сервиса 57
6.4. Приемочное тестирование 57
ЗАКЛЮЧЕНИЕ 59
СПИСОК ЛИТЕРАТУРЫ 60
ПРИЛОЖЕНИЕ 62

Учет рабочего времени сотрудников ведется в любой организации. На основании данных о фактически отработанном времени на предприятии для каждого сотрудника генерируется табель учета рабочего времени по форме Т-12, Т-13 или Т-14, начисляется заработная плата и другие выплаты, причитающиеся работнику. Руководители организаций используют данные об отработанном времени для контроля сотрудников, повышения производительности труда, принятия управленческих решений.
Согласно статистическим исследованиям [16], в России зарегистрировано несколько сотен тысяч малых предприятий, которые не могут использовать существующие сервисы учета рабочего времени из-за сложностей эксплуатации и необходимости покупки дорогостоящего оборудования.
Анализ существующих и наиболее доступных методов реализации сервиса учета рабочего времени показывает, что наиболее надежной является технология передачи данных NFC [7], а наиболее распространенным и доступным терминалом, обладающим NFC-считывателем, является смартфон на базе операционной системы Android.
Актуальной является задача создания платформы для учета рабочего времени сотрудников с использованием возможностей современных смартфонов.
Цель и задачи
Основной целью данной работы является разработка сервиса Zap¬Timer для учета рабочего времени и контроля над дисциплиной сотрудников. В качестве терминала для считывания данных может выступать смартфон на базе операционной системы Android, обладающий технологией бесконтактной передачи данных NFC, в качестве ключей для идентификации сотрудников - любая NFC-карта. Мобильное приложение ZapTimer будет установлено на смартфон для эмуляции работы терминала. Приложение будет считывать данные с ключей сотрудников, и отправлять их на сервер по Wi-Fi или GSM. На сервере будет вычислено фактическое время присутствия сотрудника на рабочем месте, сгенерирован табель рабочего времени для каждого из сотрудников, собрана статистика опозданий и переработок по отделам. Для взаимодействия мобильного клиента с сервером ZapTimer необходимо разработать API.
Для достижения поставленной цели необходимо решить следующие задачи:
1) провести обзор существующих решений по данной теме, выявить их преимущества и недостатки;
2) выявить требования, предъявляемые к сервису, и спроектировать его архитектуру, руководствуясь стандартом UML;
3) реализовать REST API для взаимодействия внешних клиентов с сервером;
4) разработать мобильное приложение ZapTimer, удовлетворяющее всем поставленным требованиям;
5) провести комплексное тестирование сервиса на базе предприятия ООО «Редсолюшн».
Структура и объем работы
Данная работа состоит из глоссария, введения, шести глав, заключения, списка библиографии и приложения. Объем работы составляет 65 страницы, объем библиографии - 21 источник.
В первой главе рассмотрены технологии, которые могут быть применены для построения сервиса учета рабочего времени, а также произведен обзор существующих решений по данной тематике.
Вторая глава содержит общую информацию о сервисе ZapTimer, описание и анализ функциональных и нефункциональных требований к системе и вариантов использования системы.
В третьей главе представлена архитектура системы. В этом разделе подробно рассмотрено статическое и динамическое представление архитектуры разрабатываемой системы.
Четвертая глава посвящена реализации сервера ZapTimer - в ней описаны реализации базы данных и REST-сервиса, предоставляющего клиентам API для работы с сервисом ZapTimer.
В пятой главе представлена реализация мобильного приложения ZapTimer на базе операционной системы Android.
В шестой главе приводятся результаты модульного тестирования системы всех компонентов разработанной системы, интеграционного и приемочного тестирования.
В заключении сделаны выводы о проделанной работе.
В приложении приведен полный список методов API, реализованных в рамках работы над REST-сервисом.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В данной научно-исследовательской работе было предложено инновационное решение по разработке облачного сервиса контроля рабочего времени, основанное на использовании современной технологии коммуникации ближнего поля NFC. Были изучены другие технологии бесконтактной передачи данных iBeacon и EddyStone.
Было проведено исследование по поиску аналогичных уже существующих решений для контроля и учета рабочего времени, были рассмотрены их основные характеристики и назначение, а также выявлены принципиальные недостатки.
В данной работе также было дано детальное описание разрабатываемого сервиса, сформулированы функциональные и нефункциональные требования к разрабатываемой системе. Были выявлены основные актеры, взаимодействующие с системой, и действия, которые можно совершать над системой. На основании этих данных была построена диаграмма пре-цедентов, а также дано детальное описание каждого указанного на диаграмме актера и прецедента.
Была спроектирована архитектура разрабатываемой системы, состоящая из трех основных компонентов: сервер игры, мобильное приложение и REST-сервис. Все компоненты являются слабосвязанными, и изменение одного из них не влияет на другие.
В результате была выполнена реализация всех компонентов сервиса ZapTimer в соответствии с функциональными и нефункциональными требованиями, предъявляемыми к системе. В том числе был реализован REST-сервис, предоставляющий необходимый REST API для работы клиентских приложений.
Было проведено модульное тестирование компонентов сервиса, интеграционное тестирования для проверки совместной работы компонентов и приемочное тестирование. В результате сервис был внедрен в промышленную эксплуатацию на предприятии ООО «Редсолюшн».



1. Android Development: Near Field Communication. [Электронный ресурс] URL: http://developer.android.com/intl/ru/guide/topics/connectivit y/nfc/index.html (дата обращения: 23.03.2016).
2. Android Development: NFC Basics. [Электронный ресурс]
URL: http://developer.android.com/intl/ru/guide/topics/connectivity/nfc/nfc.htm l (дата обращения: 23.03.2016).
3. Android Development: SharedPreferences. [Электронный ресурс] URL: https: //developer.android.com/reference/android/content/SharedPreferenc es.html (дата обращения: 10.12.2015).
4. Apple Developer: iBeacon for developres. [Электронный ресурс] URL: https://developer.apple.com/ibeacon(дата обращения: 03.04.2016).
5. Daigneau R. Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services. - USA: Addison-Wesley Profes¬sional, 2011. - 352 p.
6. Google Developers: Beacon. [Электронный ресурс]. URL: https://developers.google.com/beacons(дата обращения: 17.04.2016).
7. NFC Documentation: How to build a NFC application for Android. [Электронный ресурс]
URL: http://www.nxp.com/documents/application_note/AN11367.pdf(дата обращения: 13.02.2016).
8. Realm for Android. [Электронный ресурс]
URL: https://realm.io/news/realm-for-android(дата обращения: 09.05.2016).
9. Realm is a mobile database: a replacement for SQLite & ORMs. [Электронный ресурс] URL: https://github.com/realm/realm-java(дата обращения: 19.02.2016).
10. Retrofit. A type-safe HTTP client for Android and Java. [Электронный ресурс] URL: http://square.github.io/retrofit(дата обращения: 18.03.2016).
11. Richardson L., Ruby S. RESTful Web Services. - USA: O’Reilly, 2007. - 440 c.
12. The time & attendance solution for your business. [Электронный ресурс] URL: http://workly.io(дата обращения: 12.05.2016).
13. TimeDock - mobile time tracking for Android and iOS. [Электронный ресурс] URL: http://timedock.com(дата обращения: 20.04.2016).
14. Головатый А., Каплан-Мосс Д. Django. Подробное руководство. 2-е изд. Пер. с англ. - СПб.: Символ-плюс, 2013. - 560 с.
15. Документация Django на русском языке. [Электронный ресурс] URL: http://djbook.ru(дата обращения: 16.10.2015).
16. Малый бизнес в России: цифры и факты. [Электронный ресурс] URL: http://legitimist.ru/sight/economics/2015/malyij-biznes-v-rossii-czifryi-i- faktyi.html(дата обращения: 01.06.2016).
17. Официальный веб-сайт инструмента сборки Android-проектов Gradle. [Электронный ресурс] URL: http://gradle.org/getting-started-android(дата обращения: 08.10.2015).
18. Официальный веб-сайт платформы DjangoRest. [Электронный ресурс] URL: http://www.django-rest-framework.org(дата обращения: 25.09.2015).
19. Официальный веб-сайт сервиса Crashlytics [Электронный ресурс] URL: https://try.crashlytics.com(дата обращения: 04.05.2016).
20. Приложение «TIMEDOCK» в Google Play. [Электронный ресурс] URL: https://play.google.com/store/apps/details?id=com.MobileTimeCloc k.mtcPhone&hl=ruid576917425 (дата обращения: 14.02.2014).
21. Приложение «TimePad Check-In» в Google Play. [Электронный ресурс]. URL: https://play. google.com/store/apps/details?id=ru.timepad.timepa d (дата обращения: 28.04.2016).


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ