Разработка CRM для компании CADFEM CIS. Версия 2.0

Во второй версии SamovarСRM мы улучшили пользовательский интерфейс и существенно расширили функциональные возможности системы

Сроки и цены

Запуск во всех филиалах 9 месяцев

Технологии

Backend Symfony, Doctrine (MySQL), ElasticSearch Frontend bootstrap, AdminLTE, jQuery

Команда

Разработчики Николай Баранов Александр Дорожкин Дмитрий Константинов Артемий Анцев CEO Константин Брумм Менеджер Юля Комоза Маргарита Фейгина

SamovarCRM — это система управления продажами и проектами, которую мы разрабатываем и поддерживаем для компании CADFEM CIS.

Предыстория

О заказчике

CADFEM CIS занимается распространением программного обеспечения, обучением и консультированием в области инженерного анализа. Основу продуктовой линейки СADFEM CIS составляют программные инструменты ANSYS. Компания ведет деятельность в 6 городах России, где работает более 60 сотрудников.

В 2016 году мы запустили для СADFEM CIS систему управления продажами и проектами SamovarCRM. Эта система ведет клиентскую базу, лиды и сделки, помогает ставить задачи и распределять нагрузку, генерирует документы и работает со статистикой.

Предпосылки

После запуска первой версии проекта руководство CADFEM CIS пришло к выводу, что систему необходимо развивать и внедрять во все бизнес-процессы компании. В ноябре 2016 года мы продолжили разработку Samovar, и в августе 2017 года вторая версия была готова к полноценному внедрению во всех филиалах компании.

Цели проекта

Главной целью проекта было внедрение CRM-системы во всех офисах компании CADFEM CIS и обеспечение комфортного использования системы сотрудниками.

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

Начало работ и новый рабочий процесс

Перед тем как приступить к разработке версии 2.0, мы решили испытать первую версию в “боевых” условиях. Непосредственными пользователями нашего продукта являются сотрудники CADFEM CIS — опыт их взаимодействия с первой версией являлся решающим фактором при разработке версии 2.0. Мы получили обратную связь от сотрудников и на ее основе приступили к доработке существующих и созданию новых фичей. Для этого мы завели отдельную доску Trello, в которой сотрудники CADFEM могли поделиться своими предложениями.

Оценив объем новых задач, мы решили привлечь к проекту второго разработчика на постоянной основе. Таким образом, над второй версией работали уже «в четыре руки».

Эффективному началу работы поспособствовал так называемый метод story mapping — построение карты пользовательских историй. Мы адаптировали его под свои нужды: структурировали весь объем задач по приоритетности и временным затратам и разбили работу на пять этапов. В основном бэклоге мы работали с текущими задачами, а к карте историй обращались при планировании следующего этапа. Такой подход позволил составить полную картину проекта и получить четкое представление о бизнес-задачах.

К существующим рабочим процессам добавились еженедельные демонстрации. В конце недели мы собирали на тестовом сервере весь написанный за неделю код и в онлайн-режиме показывали новые функции продукта менеджеру CADFEM. Такой механизм взаимодействия обеспечивал итеративное отслеживание изменений со стороны CADFEM и корректное выполнение поставленных задач с нашей стороны. Еженедельные демонстрации сопровождались релизными примечаниями с подробным описанием реализованных функций со сценариями для пользователя. Таким образом, с изменениями в текущей итерации мог ознакомиться любой сотрудник CADFEM CIS.

Параллельно мы использовали ранее выстроенные алгоритмы взаимодействия, такие как итерационный подход, технические задания, мокапы, пользовательские сценарии и пр. Подробнее об этом — в кейсе версии 1.0

Решение

Новый функционал

  • Учет платежей и счетов в разных валютах. В новой версии предусмотрена регистрация договора в российских рублях, долларах США и евро. Однако есть одна особенность: стоимость договора может быть указана в разной валюте, но счета должны выставляться в рублях. Система сама пересчитывает суммы и сводит баланс.
  • Deal Registration — функция регистрации новых клиентов ANSYS, включающая заполнение заявки в ANSYS, генерацию письма и регистрацию ответа. Система фиксирует дату регистрации и уведомляет менеджера о необходимости продления по истечении срока. Краткая информация по регистрациям приведена в карточке Компании.
  • Массовая рассылка писем Функция рассылки должна отвечать трем требованиям: фильтры для списков рассылки, экспорт данных в сервис Sendgrid и генерация статистики с результатами. Мы реализовали матричную логику фильтров, которая работает как на сужение, так и на расширение списка рассылки, с возможностью исключающей фильтрации. Также предусмотрена возможность сохранять набор фильтров и использовать его для создания новых наборов. Экспорт данных в Sendgrid реализован по API с возможностью создания списка и выполнения рассылки в интерфейсе SamovarCRM. Статистика с результатами рассылки из Sendgrid также выгружается в систему.
  • Аватары Появилась возможность добавления аватаров к некоторым сущностям в версии 2.0: Пользователям, Компаниям, Контактам, Лидам и Услугам.
  • История трудовой жизни Контакта Эта функция позволяет обновлять данные контакта и архивировать устаревшую информацию с сохранением доступа. Контакт может поменять номер телефона или адрес электронной почты, уволиться или перейти в другую компанию, где продолжит взаимодействие с CADFEM CIS. Благодаря функции трудовой жизни все подобные изменения отражаются в карточке Контакта.
  • Мобильная верстка Первая версия SamovarCRM не предполагала мобильной верстки, но отзывы сотрудников указали на ее необходимость. В мобильную версию вошли только основные блоки.

Доработка существующего функционала

  • Новые формы отчетности Помимо воронки продаж, реализованной в первой версии системы, вторая версия включила в себя итоговые отчеты за месяц, квартал и год; в форме отчета появилась также дата среза и роль Ответственного за отчет. В версии 2.0 стала возможна выгрузка отчета в excel. Воронку продаж из первой версии мы дополнили ее графическим представлением.
  • Загрузка файлов в систему Мы расширили список входов для импорта файлов. Помимо HTML и PDF-файлов можно добавлять файлы в формате DOCX. Предусмотрена возможность прикрепления файлов к разным сущностям, таким как Компании, Контакты, Возможности, ревизии документов и комментарии.
  • Автоматизация работы с модулем “Возможности” Мы усовершенствовали логику Возможностей для максимальной автоматизации рабочего процесса. Теперь пользователь следует заданному сценарию Возможности, а модуль показывает статус конвертации Возможности в продажу в процентах. Добавлена валидация для открытых, успешно закрытых и потерянных Возможностей.
  • Новая система прав доступа Филиальная система, которая была реализована в версии 1.0, на практике оказалась неудобной для пользователей. В версии 2.0 мы отказались от нее в пользу системы рабочих групп. Она более гибка и понятна, чем возможность работы только в рамках своего филиала. В новой системе прав доступа пользователь, не входящий в ту или иную рабочую группу, может отправить запрос на расширение прав с обосновывающим комментарием, наследовать права по должностному принципу.

  • Конструктор шаблонов документов Система генерации документов была реализована в первой версии SamovarCRM; она представляла из себя набор по умолчанию из нескольких видов писем. Для некоторых ролей пользователей этого было недостаточно — им нужно создавать специфические документы. Так во второй версии системы возник конструктор шаблонов документов; он требует от администратора владения синтаксисом шаблонизатора Twig. Для помощи администратору мы добавили специальный раздел Help. Нужно сказать, что большинства пользователей изменения в этом модуле не коснулись — набор шаблонов из первой версии остался в полном составе с некоторыми новыми вариантами.
  • Лиды Мы пересмотрели механику этого модуля и добавили новую роль — Лид-менеджер. Он отвечает за валидацию Лида и назначение Ответственного (динамическая роль, которая может переходить от менеджера к менеджеру на каждом новом шаге Лида). При позитивном сценарии происходит конвертация Лида в Компанию, и система автоматически создает все необходимые сущности: Компанию, Контакт, Возможность и Задачу.
  • Импорт данных по лицензиям Сущность “Компания” связали с новой сущностью “ANSYS Assets”, представленной в виде таблицы. Она автоматически заполняется с помощью импорта файла обо всех существующих лицензиях компании. Данные из таблицы можно просматривать в компактном и полном формате, сортировать их.

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

В последние 2,5 месяца активной разработки мы вернулись к фидбэкам пользователей, на этот раз по уже новому функционалу: после краткого обучения сотрудник мог его протестировать и поделиться возникшими сложностями в соответствующей доске Trello. В основном доработки касались удобства при заполнении карточек, заявок DealReg, улучшения информативности за счет визуальной дифференциации.

Технические особенности проекта

SamovarCRM написана на фреймворке Symfony, версия 2.8. В Samovar 2.0 мы подготовили версию кода под PHP 7.1 и Symfony 3.4, чтобы при необходимости оперативно обновить систему. В проекте задействованы такие популярные бандлы, как

  • doctrine/doctrine-migrations-bundle
  • doctrine/doctrine-fixtures-bundle
  • ornicar/apc-bundle
  • knplabs/knp-paginator-bundle
  • friendsofsymfony/user-bundle
  • liip/imagine-bundle, а также наш собственный бандл, который в рамках проекта мы писали для решения задачи с выпадающими полями.

Для генерации pdf-документов мы применяем утилиту wkhtmltopdf. Полнотекстовый поиск работает с помощью ElasticSearch через friendsofsymfony/elastica-bundle. Для тестирования используем phpunit и liip/functional-test-bundle, а получение сообщений об ошибках на сервере настроили в Slack.

Команда

Менеджмент и проектирование

  • Михаил Борисов — начальник отдела автоматизации бизнес-процессов CADFEM CIS
  • Юлия Комоза — менеджер проектов Evercode Lab

Разработка

  • Артемий Анцев
  • Дмитрий Константинов
  • Николай Баранов
  • Александр Дорожкин

Вдохновение, советы и чуткий надзор

  • Константин Брумм — управляющий Evercode Lab
  • Валерий Локтев — директор CADFEM CIS
  • Дмитрий Михалюк — директор петербургского филиала CADFEM CIS
  • Артем Аведьян — коммерческий директор CADFEM CIS

Результаты

SamovarCRM 2.0 стала своего рода “одушевленной” версией первоначальной системы благодаря активному участию сотрудников CADFEM CIS. Изначальные проектные решения были переработаны с учетом пользовательского фидбэка, а функционал пополнился новыми модулями и возможностями системы. Уже сейчас CADFEM CIS полностью перенесла свои бизнес-процессы в SamovarCRM, мы продолжаем осуществлять поддержку системы и готовимся к работе над новыми обширными модулями.

Отзыв от заказчика

На вопросы отвечали:

  • Михаил Борисов (М) — начальник отдела автоматизации бизнес-процессов CADFEM CIS;
  • Артем Аведьян (А) — коммерческий директор CADFEM CIS.

Введение

— Почему вы решили продолжить развивать SamovarCRM до версии 2.0?

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

— По-твоему, что требовало доработки?

М: — Как я уже сказал, это управление историей продаж и прогнозирование, лиды, гибкие документы. Также хотелось немного улучшить пользовательский интерфейс.

— Какие новые функции предусмотрены в версии 2.0? Они появились после выхода SamovarCRM 1.0 или были запланированы в самом начале?

М: — 50/50. Какие-то идеи назрели давно, какие-то возникли уже после того, как составили техническое задание на версию 2.0.

— Артем, ты присоединился к проекту Samovar на этапе разработки второй версии. Что тебя привлекло на проект?

А: — Мне хотелось добиться улучшения первой версии посредством автоматизации процесса продаж. С точки зрения трудоемкости и сроков реализации, мне казалось более выгодным доработать SamovarCRM 1.0, нежели внедрять и подстраивать под наши нужды готовую коммерческую CRM систему.

— Насколько оправдались твои ожидания?

А: — Основной задачей проекта была полная интеграция системы SamovarCRM в процесс управления продажами, которая позволила бы структурировать коммерческую информацию и повысить качество прогнозирования продаж. Это было сделано в запланированные сроки и действительно повысило эффективность командной работы менеджеров. То есть, мои ожидания оправдались в полной мере.

Пользователи

— Поговорим о пользователях. Бывает так, что внедрение CRM только усложняет работу сотрудников. А как обстояло дело в КАДФЕМ?

М: — Тут надо отдать должное Артему Богосовичу Аведьяну. Во многом благодаря ему удалось успешно внедрить систему и обучить сотрудников. К тому же мы активно использовали обратную связь и учитывали все самые актуальные запросы при разработке новой версии.

— Можно ли как-то измерить или оценить эффективность новой системы?

М: — В бизнесе самый важный показатель эффективности — это увеличение прибыли компании. Пока мы не можем оценить долгосрочные последствия внедрения CRM, но на данном этапе впечатления очень положительные. Теперь вся ценная информация по продажам систематизирована и хранится в одном месте. Нам удалось автоматизировать многие рабочие процессы и сократить время их выполнения.

Взаимодействие

— Миша, как ты видишь наше взаимодействие после внедрения новых процессов при работе над второй версией? Что-то изменилось?

М: — На мой взгляд, работа над второй версией была выстроена более четко. Уже спустя пару месяцев менеджер ЭВЕРКОД Юлия Комоза полностью вошла в курс дела, изучила особенности работы нашей компании, бизнес-процессы и терминологию. Надо отдать ей должное – она прекрасно справилась со своей работой.

— Расскажи, что именно поменялось со времени разработки первой версии.

М: — В первую очередь, мы усовершенствовали рабочий процесс. За счет введения практики проведения пятничного follow-up’а мы с Артемом Аведьяном и коллегами из ЭВЕРКОД создали удобный механизм, который обеспечивал тактическое планирование и гибкое управление текущими задачами. Мы также стали получать от ЭВЕРКОД описание нововведений к каждой еженедельной версии системы, которых так не хватало на начальном этапе. В целом, работа строилась на прежних принципах, но стала более отлаженной.

— Артем, какие подходы или способы взаимодействия оказались самыми эффективными при совместной работе над проектом?

А: — Наиболее эффективным оказался agile-подход. Регулярная обратная связь, возможность корректировки ТЗ, еженедельные релизы новых фичей — все это сделало процесс более гибким. Хотелось бы отметить работу менеджера проекта Юлии Комозы — строгий контроль планирования и разработки с ее стороны также положительно сказался на нашей совместной работе.

Результаты

— Вы довольны результатом?

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

А: — Я результатом доволен и готов продолжить работу над проектом. Надеюсь, реализация нового ТЗ пройдет так же легко и гладко, как и по второй версии.

Развитие

— Расскажите о дальнейших перспективах сотрудничества.

М: — Мы структурировали все задачи, которые не были реализованы в предыдущих циклах разработки, добавили новые модули, составили ТЗ с коллегами из ЭВЕРКОД и сейчас обсуждаем дальнейшие действия внутри компании. Надеюсь, что мы вскоре возобновим сотрудничество и продолжим работу над улучшением функциональности системы и повышением удобства пользовательского интерфейса.

А: — ТЗ на третью версию согласовано. В новый релиз войдет ряд важных для бизнеса функциональных возможностей. Некоторые из них не реализованы ни в одной из представленных на рынке коммерческих CRM-систем. Это привлечет новых пользователей и повысит качество работы нашей компании.

Evercode Lab

Close