Similar presentations:
HR_Mate
1.
КУРСОВАЯ РАБОТАпо дисциплине «Разработка клиент-серверных
мобильных приложений»
Тема: «Разработка клиент-серверного мобильного приложения
для управления кадровыми процессами компании»
Выполнил: Солозобов Платон Владимирович
Группа: ИКБО-11-22
1
2.
Описание предметной области мобильного приложенияПредметная область мобильного HR-приложения включает в себя автоматизацию ключевых кадровых процессов:
оформление отпусков и командировок, хранение и редактирование личных данных сотрудников, взаимодействие с HRотделом, доступ к внутренним документам.
Традиционный подход
Современное решение
Бумажный документооборот
Доступ к HR-сервисам со смартфона в любое время
Настольные программы с ограниченным доступом
Затраты времени на ручную обработку заявок
Оформление отпусков, командировок, больничных
онлайн
Риск потери или искажения данных
Просмотр и редактирование личных данных
Сложности в коммуникации между сотрудниками и
HR-отделом
Ознакомление с приказами и внутренними
документами
Быстрая и прозрачная связь с HR-отделом
Использование мобильного приложения делает эти процессы быстрее, удобнее и доступнее для сотрудников.
2
3.
Сравнительный анализ существующих аналоговHRlink
HR Pro
VK HR Tek
Преимущества:
Преимущества:
● Интеграция с ЗП
и учётом времени
● Интеграция с 1С,
SAP, Битрикс
● Поддержка
Android и iOS
● Полноценный
КЭДО (кадровый
электронный
документооборот)
полная юридическая
сила электронных
подписей.
● Уведомления и
отчётность
Недостатки:
● Высокая стоимость
внедрения и
поддержки
Недостатки:
Преимущества:
● Поддержка разных
языков
● Возможность
кастомизации для
среднего бизнеса
● Полноценный КЭДО
Недостатки:
● Сложность начальной
настройки
● Ограниченные
настройки бизнеспроцессов
3
4.
Обоснование выбора инструментальных средств разработкиВ качестве языка программирования как для клиентской, так и для серверной части выбран Kotlin.
Это позволяет унифицировать подход к разработке, уменьшить сложность проекта и повысить
читаемость и поддержку кода. Язык отличается лаконичным синтаксисом, безопасностью типов и
полной совместимостью с экосистемой Java.
Серверная часть реализована с использованием фреймворка Ktor, который тесно интегрируется с
Kotlin, поддерживает создание RESTful API, масштабируем и легко настраивается под задачи
конкретного проекта. Он обеспечивает высокую производительность и гибкую архитектуру, что важно
для взаимодействия мобильного клиента с сервером в реальном времени.
В качестве СУБД выбрана MongoDB – документно-ориентированная, нереляционная база данных. Её
преимущества: гибкая структура хранения, высокая скорость обработки данных, простота
масштабирования и хорошая интеграция с Ktor. Это особенно актуально для HR-систем, где структура
сущностей может меняться в процессе развития.
Для клиентской части на Android также используется Kotlin, в связке с XML для описания
пользовательского интерфейса. Этот стек официально поддерживается Google и обеспечивает
безопасность, производительность и выразительность при создании адаптивного и удобного UI.
4
5.
Определение функциональных и нефункциональных требованийФункциональные требования
Описывают, что именно должно уметь делать мобильное приложение. Среди ключевых функций: регистрация и
авторизация пользователей, создание заявок различных типов (на отпуск, получение документов, изменение
персональных данных), а также возможность отправлять заявки с произвольным содержанием. Пользователи могут
отслеживать статусы заявок, просматривать информацию о себе, искать выполненные заявки и управлять историей
поисков. Дополнительно предусмотрена поддержка переключения светлой и тёмной темы, а также выход из аккаунта.
Менеджеры получают доступ к изменению статусов заявок.
Нефункциональные требования
Охватывают качественные характеристики системы. Приложение должно быть производительным (отклик — не
более 2 секунд), масштабируемым, надёжным и доступным не менее чем 99% времени в месяц. Оно должно
корректно работать на устройствах с Android 9.0+, передавать данные безопасно с использованием токенов, иметь
полностью русскоязычный интерфейс и быть интуитивно понятным, позволяя пользователю освоить основные
функции за 10 минут.
5
6.
Проектирование базы данных мобильного приложенияОсновные особенности модели:
Универсальность:
Cтруктура базы данных позволяет хранить различные типы заявок в одной
таблице.
Масштабируемость:
Модель легко адаптируется к росту числа пользователей и заявок.
Сущности:
Сотрудник
Хранит персональные данные пользователя: имя, фамилию, электронную
почту, должность, логин и уникальный идентификатор.
Заявка
Содержит данные о типе обращения (отпуск, изменение данных, документ и
др.), дате создания, статусе и содержании заявки.
Взаимосвязь:
Один ко многим: один сотрудник может иметь несколько заявок, но каждая
заявка принадлежит только одному сотруднику.
6
7.
Логическая модель мобильного приложенияIDEF0
Диаграмма классов
7
8.
Работа приложения – Авторизация/Регистрация8
9.
Работа приложения – Создание заявки9
10.
Работа приложения – Отслеживание статуса10
11.
Работа приложения – Архив11
12.
Работа приложения – Профиль12