Тема: Разработка сервиса и мобильного приложения для контроля выполнения графика рабочего времени сотрудниками организаций
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
ВВЕДЕНИЕ 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
📖 Введение
Согласно статистическим исследованиям [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-сервисом.
✅ Заключение
Было проведено исследование по поиску аналогичных уже существующих решений для контроля и учета рабочего времени, были рассмотрены их основные характеристики и назначение, а также выявлены принципиальные недостатки.
В данной работе также было дано детальное описание разрабатываемого сервиса, сформулированы функциональные и нефункциональные требования к разрабатываемой системе. Были выявлены основные актеры, взаимодействующие с системой, и действия, которые можно совершать над системой. На основании этих данных была построена диаграмма пре-цедентов, а также дано детальное описание каждого указанного на диаграмме актера и прецедента.
Была спроектирована архитектура разрабатываемой системы, состоящая из трех основных компонентов: сервер игры, мобильное приложение и REST-сервис. Все компоненты являются слабосвязанными, и изменение одного из них не влияет на другие.
В результате была выполнена реализация всех компонентов сервиса ZapTimer в соответствии с функциональными и нефункциональными требованиями, предъявляемыми к системе. В том числе был реализован REST-сервис, предоставляющий необходимый REST API для работы клиентских приложений.
Было проведено модульное тестирование компонентов сервиса, интеграционное тестирования для проверки совместной работы компонентов и приемочное тестирование. В результате сервис был внедрен в промышленную эксплуатацию на предприятии ООО «Редсолюшн».



