Мобильный менеджмент проектов

Reading time: 3 minutes

Last modified:

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

ZeroDark mobile app interface

Задача

Клиент хотел внедрить приложение на базе Android с необходимым набором функций: вход в систему - как в ZeroDark web, список задач - изменение рабочего статуса, обратная связь с менеджером проектов и push-уведомления.

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

Особенности

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

Все действия в приложении синхронизируются с веб-приложением ZeroDark и канбан-доской.

Решение

Чтобы реализовать управление задачами, нам пришлось обновить backend, для поддержки отдельного мобильного приложения. Веб-версия и приложение имеют одну общую серверную часть. Frontend - графическая часть реализована с использованием React Native, Redux-Saga и TypeScript.

Дизайн экранов

ZeroDark mobile project management screen

Здесь показаны основные экраны приложения:

Список задач

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

Чат

Чат появляется в какой-либо задаче, когда менеджер или работник впервые прокомментировали ее. Для реализации мы использовали пользовательский интерфейс response-native-gifted-chat.

Уведомления

Уведомления - здесь отображаются все события, которые рабочие получают в виде push-уведомлений. Если они что-то пропустили, они могут посмотреть историю полученных уведомлений. Мы использовали OneSignal API для парсинга задач, событий, комментариев и отображения связанных с ними push-уведомлений

из сервера.

Реальный макет и тестирование на реальных регрессиях

Приложение собирали экран за экраном по макету в Figma — вход, список задач, карточка задачи, чат. Авторизацию перевели на мультисессии вместо cookie: рабочий может одновременно быть залогинен и в веб-версии, и в приложении, не вылетая ни из одного из них.

Веб и мобильное приложение работают на одном бэкенде, поэтому основное внимание при тестировании уделили именно стыку между ними — местам, где проблема проявляется только когда оба клиента работают одновременно. Несколько примеров, которые повлияли на финальный релиз:

  • Состояние задачи между клиентами. Если запустить задачу в вебе, пока в приложении уже выполняется другая, кнопка запуска могла зависать неактивной — нашли гонку состояний при синхронизации задач между клиентами и исправили именно её, а не симптом.
  • Локализация дат. Даты в карточке задачи отображались в неверном порядке день/месяц для локали верфи — поймали это, тестируя с реальной сменой региона на устройстве, а не полагаясь на один формат даты для всех.
  • QA по регионам. Прогнали полное тестирование с локалью устройства, переключённой на каждый рынок, где работает приложение — именно так нашли и проблему с форматом даты, и баг вёрстки на экране входа, который проявлялся только в немецкой локали.
  • Статус уведомлений. Цвета прочитанных и непрочитанных push-уведомлений в истории были перепутаны местами — мелочь, но именно такая, которая подрывает доверие к индикатору “менеджер это увидел”.

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

Результат

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

Мобильный менеджмент проектов
Table of Contents