Однажды к нам в «Manao» обратился партнер — интегратор, выступающий в роли генерального подрядчика — с запросом на реализацию одной нестандартной задачи. А именно — разработка приложения для ведения базы знаний (да, нас часто приглашают в качестве субподрядчиков). Партнеры выбрали нас, так как мы уже не в первый раз хорошо демонстрируем свои компетенции в рамках выполнения их задач.
Идея проекта зародилась в тот момент, когда заказчик понял, что имеющиеся готовые решения для организации доступа к внутренним материалам не устраивают его в первую очередь с точки зрения функционала. Где-то были ограничения по структуризации данных, где-то — не было возможности гибко настроить права доступа для сотрудников. К тому же у клиента было обязательное требование — работа с базой данных должна вестись прямо в интерфейсе корпоративного портала (коробочная версия Битрикс24).
Исходя из этого, было сформировано ТЗ, в рамках которого продуманы детали реализации приложения (о которых мы сейчас и расскажем), после чего наш доблестный продакшн приступил к работе.
Чтобы приложение не выглядело на фоне корпоративного портала как нечто «инородное», мы решили не изобретать велосипед и сделали модуль в стиле самого Битрикс24. Получился старый добрый минимализм — легкий в восприятии интерфейс с фирменными цветами вендора и без лишних перегружающих элементов (что по большому счету и логично, ведь основная ценность модуля заключается в содержании; «оболочка» не должна привлекать особого внимания пользователей).
На дизайн и верстку ушло лишь 10% от всех времязатрат по проекту. В этом месте нужно отдать должное и поблагодарить нашего талантливого UX-специалиста, который сумел добиться максимально удобного расположения основных элементов для управления и работы с базой знаний. Рядовой пользователь может даже не понять, что имеет дело с кастомной разработкой — все выглядит так, как будто это «родная» часть самой системы.
Теперь расскажем о самой интересной стороне проекта — о функциональных особенностях.
Как обычно выглядит панель редактирования страниц в стандартных приложениях? В лучшем случае — это что-то отдаленно напоминающее решения из open-source систем. Даже если у компании нет особых строгих требований, ее сотрудники/администраторы рано или поздно все равно столкнутся с ситуацией, когда им будет не хватать нескольких важных опций. Вместе с интегратором и заказчиком (особенно учитывая тот факт, что у последнего были довольно высокие требования) мы приняли решение коренным образом решить эту проблему и реализовали панель, которая позволяет сделать практически любое необходимое администратору или модератору действие.
Получился своего рода мини-Word, который умеет создавать таблицы, форматировать текст с десятками разных вариаций, размещать изображения и видео, а также прикреплять файлы.
Из прочих особенностей:
Указание тэгов.
Установка запрета на удаление важных материалов.
Скачивание материалов в форматах PDF и Excel.
Быстрая подготовка к печати.
В системе есть разделы, которые размещены на самом видном месте (в левом сайдбаре) — их можно настраивать в индивидуальном порядке, адаптируя под нужды компании.
И здесь возникает популярный вопрос: «А сколько уровней вложенности можно создать при помощи такой структуры?». Ответ: «Сколько угодно». Разработанная база знаний работает таким образом, что ограничений по вложенности совершенно нет. Это значит, что в ней найдется место даже для самых низкоуровневых регламентов, которые должны быть «спрятаны» на глубине 5-10-15 и более категорий.
Исходя из разных ролей в компании, все люди, взаимодействующие с базой знаний, делятся по типам:
Администраторы — максимальный уровень доступа. Может работать с системой в соответствующем режиме, имея возможность влиять на все доступные функции (включая режим правки). Управляет правами доступа других участников системы.
Ниже по иерархии располагаются модераторы — у них имеется возможность гибкой работы с разделами и материалами (создание/редактирование/удаление). Если в базе нужно разместить что-то новое, то эта задача ложится на плечи именно данного типа пользователей. Под эту роль хорошо подходят руководители отделов в структуре компании, а также ключевые опытные сотрудники.
Специалисты и их подгруппы — прочие участники процесса, работающие с базой знаний исключительно на уровне пользователей.
На сегодняшний день функция поиска присутствует во многих системах исключительно как архаичная опция. При этом используется крайне редко, потому что многие утратили в нее веру: поиск на сайтах работает «криво», некорректно выводит результаты, добавляет в них технические страницы, не дает возможность произвести сортировку и т. д.
Наша разработка учитывает все эти и другие проблемы. Поиск ведется сразу по всем материалам базы знаний, к которым есть доступ у одного отдельного взятого пользователя. И их (материалы), кстати, можно сортировать не только по релевантности, но и по дате публикации.
Чтобы база знаний была не просто статическим «архивом», а живой системой, была реализована функция комментирования. Каждый пользователь может оставить комментарий к открытому материалу, а также просмотреть комментарии других. Это особенно полезно в тех случаях, когда кто-то из представителей компании хочет обратить внимание на тот или иной момент (например, на ошибку в тексте) или предложить дополнение/усовершенствование материала, задать вопрос по теме, отметить качество статьи.
Учитывая, что компания заказчика располагает огромным количеством информации, было важно предоставить возможность выделять определенные статьи на персональном уровне. Например, у сотрудника отдела продаж есть несколько материалов, которые он чаще всего использует в работе. Вместо того чтобы каждый раз тратить время на поиск этих данных или тонуть в бесконечных списках ссылок, он просто нажимает на звездочку и добавляет материал в свой личный список избранных. Все просто как 3 копейки.
Система собирает данные относительно количества просмотров материалов и комментариев. Также здесь заложена возможность фильтрации материалов по разделу и наличию/отсутствию новых комментариев (что особенно актуально для модераторов).
Для отслеживания правок и дополнений существует отдельная страница, где выводится список последних действий, дата их совершения и ответственное лицо.
Материалы, кстати, можно в любое время отправить в архив, а позже — восстановить.
Во-первых, это объем работ. С первого взгляда по описанию может показаться, что все максимально просто. А по факту, если поднять историю и суммировать времязатраты по всем задачам, то получиться 400+ человеко-часов, из которых 80% занимает программирование.
Во-вторых, сроки. Изначально в план закладывались 3 месяца, но нам удалось сдать проект на 2 недели раньше планируемого дедлайна (даже с учетом долгого тестирования для минимизации ошибок).
В-третьих, необходимость разработки под высокую нагрузку. Подразумевалось, что базой знаний будут пользоваться более 2 000 сотрудников компании.
В-четвертых, отсутствие полных аналогов по функционалу в рамках указанной CRM. Нам удалось разработать решение, которое идеально закрывает задачу по формированию и ведению базы знаний — а это, на минутку, мега-важная функция в текущих рыночных реалиях.
Надеемся, что наш опыт был полезен, и ждем Ваши вопросы. До встречи в следующему кейсе!