История одной идеи, или как мы строили «воздушные» планы
Предыстория
Все началось 2 года назад. Летом 2009 я устроился системным администратором в торгово-промышленный холдинг. У меня уже был опыт разработки коммерческого ПО, но будучи студентом 3 курса очного отделения МАИ, я не мог полностью посвятить себя любимому делу. На тот момент в компании существовал ряд организационных проблем. Наводить порядок пригласили молодого и предприимчивого коммерческого директора с опытом работы в США. Придерживаясь прогрессивных взглядов на управление персоналом, он поручил мне подобрать эффективную систему планирования задач и проектов, а также CRM. Такие гиганты, как SAP и Microsoft Dynamics CRM нам не подходили – не тот масштаб. В итоге выбирали между BaseCamp, ActiveCollab, SalesForce, Мегаплан и др. Остановились на ActiveCollab.
Полгода мы пытались внедрить решение в нашей компании. Но столкнулись с рядом проблем:
- Терминология недоступна для среднестатистического сотрудника российской ритейл компании;
- Отсутствие Диаграммы Ганта;
- Неэффективный календарь;
- Слабый контроль со стороны руководства, нет иерархических прав доступа к проектам;
- Отсутствие системы оценки труда сотрудников;
- Нет возможности создать задачу вне проекта;
- Нет эффективных средств поиска задач (например, найти все просроченные задачи Иванова Василия или кол-во выполненных задач в Отделе продаж в текущем месяце)
Кому-то эти минусы могут показаться сомнительными. Скажу больше: многие из вас, возможно, обвинят нас в отсутствии компетенции. – Так как требовать от Project Management System указанные выше возможности, по меньшей мере, самонадеянно. Но на тот момент нас интересовал универсальный инструмент планирования. В процессе поиска у нас появилось столько идей, что мы решили создать собственную систему планирования. Руководство дало «зеленый свет» и я стал «Руководителем IT проекта». Это ко многому обязывало…
Осваиваем Agile
Одному мне было не под силу осилить проект подобного масштаба. Но, к счастью, мне удалось привлечь моих коллег, с которыми мы разработали проект «Аттестация рабочих мест» для ИБТ (бюджет 1,5 млн. руб., 1 год). У нас уже был достаточный опыт кодирования на С# и знание ключевых технологий .NET.
Систематизировав опыт ошибок, к новому проекту мы подошли максимально ответственно: проектировали громоздкие UML схемы, до дыр зачитали GOF, и даже, в моменты творческого кризиса, обращались к трудам Д.Кнута за вдохновением. ASP.NET/MVC, SOA, NHibernate, LINQ, AJAX, JQuery, Silverlight – мы задействовали все тренды в области веб-разработки. Но ключевым решением для нас стал переход к Agile методологии разработки. Оперируя короткими итерациями, мы регулярно получали видимый результат, который вдохновлял нас на новые подвиги.
Спустя четыре месяца мы получили альфа-версию системы. Но эйфория от первых успехов прошла и мы задались рядом вопросов…
Программист → Бизнес-аналитик → Маркетолог
- Как монетизировать проект?
- Где найти партнеров?
- Как донести наши идеи до конечного пользователя?
- Как сформулировать стратегию продаж?
- А чем мы лучше конкурентов?
- Стоит ли игра свеч?
Это был, пожалуй, самый сложный этап проекта. Мы изучали опыт других стартапов, учились составлять бизнес-план, рассматривали самые популярные маркетинговые стратегии. Итогом этих изысканий стало то, что мы назвали AirPlans™…
AirPlans
AirPlans™ — это многоуровневая система планирования бизнес деятельности. Мы позиционируем AirPlans как SaaS решение для малого и среднего бизнеса.
Концептуальной основой системы является инкапсуляция всех распространенных инструментов планирования в единой среде. Мы выделяем три уровня планирования:
- Индивидуальное планирование событий (дела, встречи, совещания, напоминания);
- Планирование задач (каждый сотрудник компании может инициировать задачу и назначить исполнителя);
- Планирование проектов (Проект представляет собой смысловое объединение группы людей,
совокупности синхронизованных по времени задач и цели проектирования. Выполнение проектных задач приводит к достижению цели проектирования. Создателем проекта может быть сотрудник, имеющий доступ, регламентируемый администратором системы. Руководитель проекта может быть изменен создателем проекта и руководителем компании. Набор проектных задач и участников формируется создателем или руководителем проекта. Свои коррективы может вносить руководитель компании. Каждый участник проекта имеет доступ к проектным задачам и к информации о ходе выполнения проекта. Исполнители и инициаторы проектных задач могут не быть участниками проекта, при этом они не имеют доступ к проектной информации. Важнейшей особенностью задач, составляющих проект, является их согласованность по времени, которая может быть регламентирована, введением зависимостей между задачами.)
Нашей приоритетной целью было создание системы, рассчитанной на максимально широкую аудиторию. Распространенные project management system не рассчитаны на среднестатистического сотрудника российской ритейл компании. При создании AirPlans мы очень ответственно подходили к выбору терминологии предметной области и проектированию интерфейса пользователя – порог вхождения стал ниже. Если сотрудник имеет опыт общения в социальных сетях, то с большой долей вероятности он сможет освоить базовый функционал AirPlans. Однако, мы постарались учесть запросы самых взыскательных пользователей – квалифицированных project managers и добавили ряд профессиональных инструментов:
- Диаграмма Ганта;
- Эффективный инструмент поиска задач, по ряду составных критериев;
- Примеры возможных сценариев поиска:
- Найти все просроченные задачи Василия Иванова, созданные с 20 июля.
- Найти все инициированные мной задачи, с приоритетом 8, и сроком завершения не позднее недели
- Найти все мои задачи, которые начнутся в текущем месяце и завершатся не позднее 20 октября и т.д;
- Возможность связать задачи по времени;
- Группировка задач на основе ярлыков;
- Механизм обратной связи между инициатором и исполнителем, при помощи статусов задачи. (Текстовая строка, определяющая текущее положение дел по задаче. Инициатор или руководитель может запросить обновление.);
- Фиксация временных затрат на выполнение задачи. Наглядное отображение относительного времени просрочки задачи;
- Возможность разбить задачу на подзадачи;
- Диаграмма подзадач, в рамках задачи;
- Приоритеты задач;
- Избранные задачи;
- Возможность фиксации процента выполнения задачи исполнителем;
- Дискуссии в рамках проекта.
Каждый пользователь сам определяет степень «погружения». — Наша задача сделать это «погружение» максимально комфортным и эффективным.
Помимо функциональных возможностей, большое внимание мы уделили вопросам социализации. У каждого сотрудника есть страница, на которой он может разместить персональную информацию. В системе есть новостная лента компании и возможность персонального оповещения сотрудников о новых приказах, событиях, назначениях и др. с фиксацией сотрудников, ознакомившихся с информацией оповещения. В качестве мотивации мы добавили в AirPlans рейтинг сотрудников, основанных на объективных и субъективных критериях. Субъективный критерий основан на оценках выполненных задач инициатором или руководителем. Объективный – вычисляется исходя из кол-ва просроченных и выполненных в срок задач, обновления, запрошенного статуса, активности сотрудника и др… С AirPlans больше нет необходимости расклеивать стикеры на мониторах. В системе есть возможность разместить заметки в произвольной позиции на странице Dashboard.
Преимущества для руководителей отделов и компании очевидны:
- Мониторинг деятельности подотчетных сотрудников;
- Прозрачность бизнес-процессов в компании;
- Эффективное взаимодействие между отделами;
- Систематизация опыта процессов взаимодействия;
- Уменьшение влияние человеческого фактора;
- Быстрое разрешение конфликтов.
Но вместе с тем, каждый ответственный сотрудник может себя проявить, продемонстрировать руководству свою эффективность, а в случае конфликта отстоять свою позицию.
Мы гарантируем высокий уровень конфиденциальности. Каждый сотрудник имеет доступ только к своим задачам, руководитель отдела к своим + к задачам сотрудников отдела, руководитель – ко всем задачам в рамках компании.
Наша система спроектирована с использованием актуальных и перспективных технологий разработки: ASP.NET3.5/MVC2.0, NHibernate, SQLServer 2008R2, Linq, HTML5, AJAX, Silverlight4. Приложение имеет сервис ориентированную архитектуру. AirPlans доступен из любой точки мира, при наличии доступа в Интернет и устройства с веб-браузером. Так как мы активно использовали AJAX, большинство действий не приводят к перезагрузке страницы — пользователь получает преимущества десктоп приложения в браузере.
В дальнейшем AirPlans станет социальной сетью компаний партнеров. Планирование не будет локализовано в рамках компании. Мы обеспечим возможность планировать внешнекорпоративные взаимодействия разного рода, ранжирующиеся в зависимости от характера сотрудничества партнеров (отношения в рамках холдинга, поставщик-клиент и т.д.). Иначе говоря, в систему будет интегрирован CRM функционал. Стратегия привлечения партнеров пользователей AirPlans позволит в кратчайшие сроки получить новых клиентов. Монетизация будет происходить за счет реализации платных модулей, таких как каталог товаров, подсчет затраченных ресурсов и т.д. В случае успешного внедрения системы будет введена ежемесячная тарифная ставка для клиентов.
Наши «воздушные планы»
- Миграция приложения в облако Windows Azure;
- Создание промо-сайта (конец 2011);
- Возможность открытой регистрации с пробным периодом 1 месяц (первая декада 2012);
- Интеграция с соц. сетями и популярными веб-сервисами;
- Портирование на мобильные платформы.