Как строилась работа по сайту? Как выглядело взаимодействие с заказчиком?
Портал должен был представлять собой некую информационную площадку, на которой в том числе можно оставить заявку на аренду квартиры или коттеджа в новом строящемся городе ИЦ Сколково. То есть объединять функцию привлечения новых арендаторов и имиджевую составляющую.
Чтобы определить конкретные вехи проекта и говорить на одном языке с заказчиком, мы разработали подробный прототип и на его основе составили техническое задание.
Так как город только строился (и продолжает строиться на текущий момент) и не все жилые кварталы на момент начала реализации проекта были сданы застройщиком, заказчик не имел точного представления, как в итоге необходимо организовать весь процесс аренды, было только общее видение. Для выяснения деталей и специфики бизнеса несколько раз проводили встречи с представителями заказчика, но в основном в целях экономии времени все вопросы решали в режиме скайп-конференций.
Чтобы определить конкретные вехи проекта и говорить на одном языке с заказчиком, мы разработали подробный прототип и на его основе составили техническое задание. Эти работы заняли примерно два месяца, при этом значительная часть времени ушла на согласование и утверждение результатов со стороны заказчика.
В итоге перед началом разработки вместо туманных очертаний у нас появилось конкретное видение конечных результатов, однако весь функционал на этапе ТЗ до конца по разным причинам проработать не удалось, некоторые вопросы было решено продумать после первой итерации проекта. К примеру, набор функций личного кабинета, авторизация через АИС «Виртуальное Сколково» (проще говоря, через систему авторизации сайта Сколково
www.sk.ru) и другое.
Непосредственно программная разработка проекта строилась на основе принятых в компании agile-методов. Проект был разделен на итерации, для каждой из которых составлялся детальный план. В процессе разработки многие требования изменялись, появлялись новые, поэтому изначально написанное техническое задание использовали больше как справочник, а не как жесткое руководство к действию, что в целом и характерно для гибкой методологии разработки.
Крупный портал — это всегда некий айсберг, где видно лишь вершину. Расскажите подробнее об архитектуре проекта
Крупный новый проект не появляется из-за горизонта айсбергом, а увеличивается постепенно, обрастая новыми разделами.
Поэтому, для того чтобы сайт не превратился в снежный ком, необходимо с особенной внимательностью подходить к проектированию и внедрению нового функционала.
Большое внимание уделено работе с интерактивной картой, на которой пользователи могут найти информацию о разных объектах на территории Сколково, а также выбрать и забронировать апартаменты и услуги. Карта разработана с использованием современных JavaScript библиотек, таких как: Paper.js и D3.js для построения и работы с объектами на карте, Leaflet для создания удобной масштабируемой карты.
Сайт СК несет в себе несколько основных функций: информирует посетителей о районе Сколково, последних новостях и событиях, а также предоставляет удобные механизмы поиска, аренды и обслуживания апартаментов, офисов и услуг.
Для обеспечения этих задач на проекте используются несколько технологических решений. Сайт построен на платформе CMS 1C-Битрикс, что позволяет вести быструю и эффективную разработку, внедрение новых функций.
Большое внимание уделено работе с интерактивной картой, на которой пользователи могут найти информацию о разных объектах на территории Сколково, а также выбрать и забронировать апартаменты и услуги. Карта разработана с использованием современных JavaScript библиотек, таких как: Paper.js и D3.js для построения и работы с объектами на карте, Leaflet для создания удобной масштабируемой карты.
Для удобства пользователей сайт тесно интегрирован с остальной экосистемой Сколково: синхронизация с внутренней [системой управления] позволяет получать актуальную информацию о доступности апартаментов и услуг, а также передавать данные, собранные на сайте, для обработки. Пользователи портала "Виртуальное Сколково" имеют возможность в один клик авторизоваться на сайте и полноценно использовать все его возможности.
Самая интересная технологическая часть проекта?
Как это часто бывает, самой интересной, одновременно и самой сложной, частью проекта является внутреннее проектирование системы, настройка и управление всеми сущностями и объектами, необходимыми для реализации поставленных задач, а также выстраивание связей с внешними системами и написание соответствующих протоколов интеграции.
Учитывая что работа на проекте велась небольшими итерациями, с самого начала требовалось спроектировать масштабируемую структуру, которая могла бы без проблем подвергаться дальнейшей настройке и введению новых функциональных возможностей.
Что было самое сложное на проекте в плане менеджмента?
Однозначно сбор и консолидация требований. Объясню, почему: со стороны заказчика в проекте участвовало несколько функциональных заказчиков, которые могли принимать решения. В некоторых случаях это происходило несогласованно, иногда решения противоречили уже реализованной логике, но отменить или отложить их было невозможно. К сожалению, наладить процесс поступления требований удалось только к концу первого этапа. Дальнейшая работа над проектом, которая продолжается и в настоящий момент, строится уже на более четких условиях коммуникаций.
Нам в данном случае очень помогла удержать контроль над проектом продуманная изначально масштабируемая архитектура, о чем уже говорил Евгений, а также использование гибких agile-методик, которые предназначены именно для ведения проектов подобной специфики.
На проекте, как мы выяснили, работали короткими итерациями. Что происходило перед такими промежуточными дедлайнами для сохранения сроков?
Как известно, интенсивность процессов исполнения обычно смещена ближе к концу проекта/итерации, этот проект не стал исключением. Для сохранения утвержденных изначально сроков старались нарастить производительность команды, по мере необходимости вводили дополнительные ресурсы. Перестраивали заранее определенные приоритеты задач в режиме реального времени, учитывая текущие потребности заказчика и проекта в целом.