Создать интуитивно-понятное приложение для системы Bitrix, которое поможет сотрудникам различных агентств эффективно выполнять поставленные задачи, а также легко распределять время и рабочую нагрузку. Идея заключалась в том, чтобы система помогла эффективно визуализировать это распределение.
К нам обратился руководитель агентства, который испытывал трудности в отслеживании и регулировании занятости сотрудников, что приводило к нестыковкам выполнения задач, несвоевременности их выполнения, трате времени сотрудников и неудовлетворенности клиентов. Требовалось скорректировать занятость и распределить задачи в соответствии с имеющимся у сотрудников временем. Также нужно было избежать переработки сотрудников в связи с неравномерным распределением круга обязанностей каждого работника. С учетом требований клиента в ходе бизнес-анализа были выявлены следующие ключевые задачи:
Помимо визуализации загруженности каждого сотрудника, важно было иметь возможность идентифицировать коллизии пересекающихся задач для равномерного их распределения между работниками. Одни задачи могли пересекаться или накладываться, другие же могли быть только независимыми. Было решено учитывать эту особенность при создании решения для клиента. Дополнительную сложность координирования работы вносили вендоры, которые ставили вторичные задачи сотрудникам агентства, используя API, что также важно было принимать во внимание.
Имея значительный опыт создания приложений для управления проектами, мы сразу понимали, как можно решить проблемы клиента и какой вариант визуализации данных будет удовлетворять озвученные предпочтения. Вместе с клиентом мы решили, что наиболее эффективно поставленные цели сможет решить распределение задач в виде Таймлайна, так как необходимо было отслеживать не только сотрудников, но и другие ресурсы:
Выбирая между расширением Календаря Битрикс24 и реализацией собственного Таймлайн-приложения для системы Bitrix24, выбор пал на второе. Такой вариант предполагал больше времени и усилий на реализацию, но позволял достичь лучшего удобства эксплуатации и возможности расширения функций под нужды бизнеса. Кроме того, это решение не требовало изменений в кодовой базе самой системы Битрикс24, что позволяет в будущем обновлять её с минимальными усилиями.
Рассмотрев разные варианты разработки с учетом требований клиента, было решено строить Таймлайн-приложение на базе DHTMLX Scheduler. Выбор пал на DHTMLX Scheduler, потому что его функциональные возможности гораздо шире Календаря Битрикс24. Этот JavaScript виджет уже предлагает встроенный Timeline, имеет много настроек, большое публичное API и поддается модификациям и адаптации под нужды бизнеса.
Основное улучшение — это внедрение гибкого горизонтального скроллинга, которое позволяет не только легко перемещаться по временной шкале, но и эффективно перетаскивать задачи в нужные места.
Клиент предпочел повторить и расширить функциональность Битрикс Календаря, кастомизируя DHTMLX Scheduler. Кастомизации можно реализовать двумя способами:
В данном решении наиболее значимой кастомизацией стала реализация гибкого горизонтального скроллирования временной шкалы. Как правило, скроллирование реализуется фиксированными шагами (неделя, 2 недели, месяц), что создает неудобство в случаях, когда надо на экране показать конец прошлого шага и начало следующего. Вместо пошагового скроллинга мы внедрили гибкий горизонтальный скроллинг, который позволяет перемещаться по временной шкале и легко перетаскивать задачи на нужные позиции. Это дало клиенту и его сотрудникам возможность распределять задачи быстрее и эффективнее, используя всего пару кликов мыши.
Остальные модификации в большей степени касались полей и внешнего вида, чтобы визуализация данных была интуитивно понятной и приятной для пользователей. Их техническая реализация не составила труда, но при этом они существенно повысили удобство использования приложения, что положительно отразилось на скорости работы и количестве ошибок сотрудников.
Например, с помощью созданного нами Таймлайн-Календаря стало возможным визуализировать события и задачи горизонтально с отдельными временными шкалами, расположенными слева направо. А вертикальная ось позволила изобразить любой необходимый ресурс (людей, помещения, оборудование и многое другое) и проще выставить соответствующие задачи.
Проанализировав изменчивость условий и «исключений» накладывающихся задач на этапе бизнес-анализа, мы предложили реализовать только “первичную” автоматическую проверку задач. Такая проверка помогала бы эффективнее контролировать пересечение задач. Поэтому с помощью Таймлайн-Календаря мы также смогли визуализировать пересекающиеся задачи благодаря разработанной нами системе предупреждения о возможных конфликтах задач.
Например, если при создании задачи она будет пересекаться с другими, которые согласно выставленным правилам не должны пересекаться, система уведомит о конфликте и не позволит пользователю одобрить создание такой задачи. Если же менеджер создаёт задачу, которая не имеет запрета на пересечение с другими, но всё равно пересекается, то менеджеру будет доступен выбор: согласиться на создание такой задачи (и при необходимости изменить исполнителя либо переместить полосу задачи на другое время), либо же поменять какие-то ее условия во время создания. Во втором случае система будет обращать внимание на неоднозначные моменты в Таймлайне.
На базе DHTMLX Scheduler было создано Таймлайн Битрикс-приложение, которое не только повторяет функции оригинального Календаря Битрикса, но и добавляет недостающие возможности. Приложение было адаптировано под бизнес-процессы агентства и включает гибкий скроллинг.
Преимущества, которые смог оценить наш клиент:
Эти улучшения позволили сотрудникам агентства эффективнее справляться с задачами и своевременно удовлетворять потребности клиентов.