Несколько месяцев назад мы в первый раз опробовали Balsamiq Mockups. Это такая  небольшая и очень удобная  программа для построения  макетов пользовательских интерфейсов. Чтобы представлять о чем идет речь, сразу прикладываю один из экранов, который мы в ней нарисовали.sample_mockup

Когда мы начали с ней играть, я даже не мог предположить, что эта программа так повлияет на наш процесс разработки и приведет к таким радикальным изменениям.

Значительную долю нашей работы составляет разработка бизнес-приложений типа интернет-банк, управление онлайновой рекламой или CRM. Если мы разрабатываем общедоступное публичное приложение,  то и оно обычно включает достаточно серьезную админку. Например, сейчас мы делаем систему электронной коммерции, где в открытом доступе будет около 15 экранов, а админка составляет на данный момент  уже около 40  различных экранов и продолжает расти.

Немаловажно, что у нас в команде нет своих дизайнеров и проектировщиков интерфейса.

До того как мы познакомились с Balsamiq Mockups наш процесс разработки экранов запускался так. Мы брали функциональные требования, делали по ним «требования для дизайнера». Эти требования мы отдавали либо дизайнеру с навыками проектировщика интерфейсов, либо проектировщику интерфейсов с навыками дизайнера, либо сначала – проектировщику, а потом дизайнеру. В любом случае, поскольку все эти специалисты  внешние, они живут и работают в ритме своих компаний, а не в ритме наших проектов. Поэтому, они выделяют, например месяц на наш проект и за этот месяц стараются сделать все, т.е. нарисовать все экраны.

before_balsamiq

Этот месяц мы непрерывно общаемся, обсуждаем черновики экранов, стараемся вложить наши знания и понимание бизнеса в мозги проектировщика интерфейсов. В общем-то – это достаточно трудоемкий и изматывающий процесс. В результате при наличии взаимопонимания сторон  и достаточного опыта и интеллекта на стороне проектировщика (пока тьфу-тьфу – везло с этим) мы через месяц получаем экраны и возможность двигаться дальше.

Что здесь важно? Фактически работа проектировщика состоит из двух крупных блоков:

  1. Аналитический: вывести весь необходимый бизнес-функционал на экран и ничего не забыть
  2. Юзабилистский: выбрать  и расположить интерфейсные элементы на плоскости оптимальным образом

Проблема в том, что для проектировщика интерфейсов аналитический блок требует глубокого погружения в сущность бизнеса, а мы имеем дело с достаточно сложными бизнес-моделями.  Это трудозатратно и не всегда интересно самому проектировщику. Но мы-то к моменту начала разработки уже во всем разобрались, разложили проект на фичи, провели аналитику.

Поэтому после того, как мы освоили Balsamiq,  мы набрались смелости (и наглости) и стали  вместо функциональных требований сразу рисовать интерфейсы. Т.е. те 80% функционала Интернет-системы, которые выходят на фронт-енд, мы сразу и рисуем. При этом, поскольку мы понимаем предметную область и суть бизнеса,  мы делаем это довольно быстро. Фактически за программой сидит руководитель проекта или аналитик или ведущий разработчик, который понимает суть дела и общается с заказчиком, и рисует экраны.  Т.е. вместо многословного документа мы получаем на выходе картинку, и процесс сильно упрощается:

Процесс проектирования с использованием Balsamiq

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

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

Мы получаем возможность встраивать проектирование интерфейсов в Agile-процесс. За счет этого скорость разработки существенно возрастает, стадия «разгона» проекта существенно укорачивается. Об этом – в отдельном посте.

Улучшается коммуникация с заказчиком. Теперь можно обсуждать с заказчиком не длинные тексты, а картинки. Понятно, что шанс понять друг друга становится гораздо выше. А это в конце-концов – главный фактор успеха любого проекта.

Теперь собственно о программе Balsamiq Mockups. Не исключаю, что существуют программы прототипирования и лучше, мы честно говоря не сравнивали. Мы выбрали ее исходя из обзоров и рейтингов в сети. Протестировали – понравилась – купили. На мой взгляд она идеально подходит для тех целей, которые мы ставим и дает ровно то, что нужно: не больше, не меньше. А это встречается не так часто.