Все статьи Как мы делаем проекты
Как мы делаем проекты в Лайв Тайпинг
17 августа 2017
Клиентам
Наш опыт

Как мы делаем проекты в Лайв Тайпинг

17 августа 2017
Клиентам
Наш опыт
Дарья
Тартынова
редактор

Здравствуйте, вы обратились в компанию Лайв Тайпинг. В этой статье мы расскажем, как у нас построена работа над проектами и какой результат ждёт вас после каждого этапа работ.

Работу над проектом мы в Лайв Тайпинг делим на семь этапов:

  • знакомство и оценка проекта;
  • проектирование;
  • дизайн;
  • разработка;
  • тестирование;
  • поддержка;
  • маркетинг.

Что же происходит на каждом из них?

Знакомство

Участники со стороны Лайв Тайпинг:

  • менеджер по работе с новыми клиентами;
  • аккаунт-менеджер.

В течение 40 минут после того, как вы отправили нам заявку, с вами связывается менеджер по работе с новыми клиентами. Он внимательно уточняет задачу и упаковывает всю полученную информацию в анкету проекта. Затем менеджер передаёт всю собранную информацию тому аккаунт-менеджеру, чей опыт наиболее релевантен вашей задаче.

После изучения анкеты аккаунт-менеджер дополнительно связывается с вами, чтобы задать более глубокие технические вопросы и выяснить, какие бизнес-задачи стоят перед проектом. Затем он озвучивает примерный порядок бюджета и сроков, которые необходимы для того, чтобы сделать ваш проект. С бюджетом должно быть удобно работать обеим сторонам. Если это не так, то каждый остаётся при своём и никто не тратит время друг друга.

Если примерная стоимость вам подходит, аккаунт-менеджер максимально погружается в проект. Он проводит с вами серию встреч и звонков, чтобы ясно понимать, чего вы хотите. Аккаунт-менеджер делал или наблюдал за многими проектами и разбирается в заказной разработке программного обеспечения. Он достаточно компетентен для того, чтобы рекомендовать вам решения для вашей бизнес-цели. Если проводить параллель с туризмом, то вы — путешественник, который хочет провести время в незнакомом городе, а аккаунт-менеджер подбирает вам маршрут с лучшими заведениями.

Когда все детали выяснены, аккаунт вместе с вами описывает, из каких частей состоит проект, как они будут реализованы и за какой срок. То есть пишет предварительное ТЗ и делает смету. Всё это он включает в коммерческое предложение, которое потом презентует вам. Описание проекта позволяет превратить идею в реальность, структурировать ваше представление о проекте и понять, какие будут этапы реализации и сколько каждый из них будет стоить. Оно помогает убедиться, что мы с вами одинаково понимаем и видим все детали по проекту.

Дальше аккаунт-менеджер конкретизирует пункты договора, утверждает порядок оплаты и все важные детали совместной работы. В зависимости от целей проекта Лайв Тайпинг может предложить вам один из двух принципов работы с проектами:

  1. Fixed price. Мы подписываемся под утвержденным ТЗ в том, что мы реализуем его за утвержденный бюджет. ТЗ можете написать вы или наш специалист на основе проектирования. Срок может быть фиксированным, если у вас есть цель сделать проект к конкретной дате, а может быть плавающим. Проще говоря, Fixed price означает, что мы делаем вот эти конкретные вещи за вот эти конкретные деньги.
  2. Time and material. Модель расчета подходит для больших проектов или проектов, владелец которых будет постоянно менять задачи в поисках верного решения. Вы платите постфактум за те человеко-часы, которые команда потратила на разработку определенных фич. Этот путь хорош, когда у вас гибкий бюджет и проект с новой бизнес-идеей, которую стоит проверить, или когда вы хотите дорабатывать уже существующий.

Когда обе стороны полностью определились с тем, как пойдет работа, аккаунт высылает подписанный с нашей стороны договор. Поехали! Здесь начинается главная партия руководителя проекта. Он управляет командой и отвечает за то, чтобы она соблюдала сроки, проект умещался в бюджет, работал и выглядел так, как вы ожидаете.

Проектирование


Участники со стороны Лайв Тайпинг:

  • проектировщик интерфейсов;
  • дизайнер;
  • аналитик;
  • тимлид;
  • руководитель проекта.

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

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

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

Дальше дизайнеры погружаются в среду будущих пользователей и описывают типичных представителей ЦА, их боли и страхи. Это помогает представить и устранить препятствия перед использованием сервиса.

Ещё мы проводим обзор рынка: собираем всё лучшее из похожих проектов и думаем, как это применить на вашем проекте.

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

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

В ходе создания прототипа могут проясниться какие-то ваши пожелания, о которых вы не думали при составлении сметы. На проектировании мы всё это учитываем и отображаем в прототипе. Когда он вас полностью устраивает, мы делаем уточненную смету проекта.

Дизайн


Участники со стороны Лайв Тайпинг:

  • проектировщик интерфейсов;
  • дизайнер;
  • руководитель проекта.

На этом этапе дизайнеры разрабатывают макеты экранов в вашей фирменной стилистике или предлагают варианты дизайна в духе наиболее подходящем назначению продукта.

Самое важное в дизайне приложений — соблюдать гайдлайны Apple и Material Design. В Apple гайды — это рекомендации по тому, как сделать интерфейс приложения таким же красивым и удобным, как и у других продуктов бренда. Но с гайдами для Android-устройств немного сложнее. Здесь следование гайдлайнам Material Design помогает не только делать продукт удобным, но и экономить время на его разработку.

Почему так: согласно данным, размещённым в Google Play Developer Console, на момент написания этой статьи, операционную систему Android поддерживает 13 780 уникальных моделей устройств. Все эти устройства имеют различия: разный набор кнопок, много разных разрешений экранов и не только.

Ещё для Android-устройств характерен феномен фрагментации. В чём он состоит? При выходе новой официальной версии операционной системы вся огромная армия Android-пользователей не спешит дружно на неё переехать, как это происходит с пользователями Apple. В Android сосуществуют разные версии операционной системы. Все эти вещи сильно усложняют жизнь Android-разработчику, ведь приложение должно выглядеть и работать, как задумано дизайнером, на максимальном количестве устройств и операционных систем. А на это нужно потратить много часов работы.

Но Google всех спас и разработал Material Design — инструмент для дизайна и разработки Android-продуктов. Если дизайнер соблюдает правила Material Design, дизайн выглядит единообразным для всего этого бестиария устройств. А разработчик может сэкономить время на то, чтобы встроить дизайн в интерфейс продукта. Поэтому дизайнерам важно соблюдать гайдлайны при разработке приложений для Android.

Итог этапа: макеты сайта или приложения отрисованные в Sketch на основе проектирования и с учётом гайдлайнов; иллюстрации и анимации, созданные в продуктах Adobe. Всё это переходит в отдел разработки.

Разработка

Участники со стороны Лайв Тайпинг:

  • аккаунт-менеджер;
  • руководитель проекта;
  • мобильные и веб-разработчики.

В зависимости от целей проекта разработка может управляться двумя способами: по agile-методологии или «водопадом».

Наиболее популярная agile-методология — scrum. Разработка по ней идёт итерациями. Неделя, две недели, месяц — её длительность оговаривается отдельно. В начале каждой итерации руководитель проекта вместе с вами формирует список задач, который остаётся неизменным на весь период. В конце итерации её участники собираются, чтобы увидеть итоги и сформировать список задач для нового рабочего периода. Так проект шаг за шагом приближается к законченному состоянию.

Важная особенность scrum’а в том, что вам нужно быть с командой, чтобы на каждой итерации определять набор фич. Но это даёт и свои преимущества: с помощью scrum’а можно быстро изменять проект. Scrum хорошо подходит для того, чтобы сделать минимально жизнеспособный продукт и проверить бизнес-идею, если вы имеете дело со стартап-проектом.

«Водопад». В этой методологии каждый этап работы над проектом идёт строго один за другим. От формирования ТЗ к проектированию, затем к дизайну, разработке, тестированию и поддержке. Возможность вернуться к какому-то этапу не предполагается. Эта парадигма самая стабильная в плане стоимости, но не самая удобная для проектной работы. Чтобы внести какие-то изменения, придётся ждать, пока проект пройдёт все этапы и не будет завершён.

Формально «водопад» — противоположность agile’а, так как не предполагает итераций. Но мы в Лайв Тайпинг пришли к необходимости вести разработку короткими периодами при любом способе управления. Мы показываем вам состояние проекта по прошествии итерации, поэтому вы всегда в курсе того, как идут дела. Если у команды возникнут какие-то проблемы, вы узнаете об этом сразу же, а не на релизе. «Водопад» не будет требовать с вашей стороны такого вовлечения, как в scrum’е. Набор фич в этом стиле ведения проекта останется неизменным на весь период. Эта методология лучше применима к проектам, которые невыгодно делать в виде MVP.

А ещё в Лайв Тайпинг пишут хороший код. Что это значит? Объясняем. Разработчики программируют функциональность и проверяют код друг друга внутри команды, плюс в проверке обязательно участвует один человек, не имеющий отношения к проекту. В случае каких-то вопросов или споров разработчики обращаются к тимлиду.

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

Проверяющие разработчики «причёсывают» код в соответствии с принятым в Лайв Тайпинг стандартом. Это значит, что все разработчики будут писать в нём базовые вещи одинаково. Благодаря этому, новому разработчику проще и быстрее с ним разобраться, чем если бы код писал автор-одиночка. А участие в этом процессе разработчика из другого проекта увеличивает вовлечённость в проект команды в целом. Чем больше компетентных людей заинтересованы в успехе проекта, тем лучше. Тем более, что этот человек следит за качеством кода — самой дорогой частью проекта. Этот процесс «причёсывания» называется code review. Вносить изменения и передавать другой команде проект, прошедший эту процедуру, быстрее и дешевле, чем без неё.

Чтобы проверять не только качество кода, но и работоспособность функций проекта, необходимо тестирование.

Тестирование


Участники со стороны Лайв Тайпинг:

  • тестировщики;
  • руководитель проекта;
  • разработчики.

Тестировать в продукте можно три аспекта:

  1. удобство интерфейса;
  2. клиентскую часть проекта;
  3. бекенд.

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

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

Тестирование клиентской части — вещь не менее увлекательная. Здесь есть функциональные, интеграционные и регрессионные тесты.

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

Регрессионные тесты. Тестировщик регулярно получает готовую часть проекта и проверяет её на ошибки после того, как разработчики вносят в неё какие-то изменения. Затем разработчики исправляют то, что тестировщик отмечает как ошибку. Они добавляют новые элементы и снова отдают проект тестировщику. Тот опять тестирует новые изменения и весь раздел проекта в связке с новым изменением. И так по кругу, пока проект не будет полностью готов. Этот вид тестирования — основной. На каждом коротком отрезке разработки изменения проверяются вместе со всем большим разделом проекта, чтобы ошибки исправлялись вовремя и не накапливались, как снежный ком.

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

Тестирование бекенда. Разработчики проверяют, устоит ли бекенд при большом числе запросов. Это называется нагрузочным тестированием. Оно выявляет ограничения сервера и помогает предупредить его крах, если количество пользователей резко вырастет.

Разработку без тестирования можно сравнить с рисованием вслепую. Элементы проекта далеко не всегда ведут себя в рамках ожиданий разработчика. Поэтому тестирование такое разное и сложное. Оно помогает свести количество багов к минимуму.

Поддержка


Участники со стороны Лайв Тайпинг:

  • аккаунт-менеджер;
  • руководитель проекта;
  • разработчик.

Лайв Тайпинг ведёт поддержку по одному из трёх сценариев: гарантийная поддержка, поддержка с абонентской платой и работы по развитию проекта.

Участие Лайв Тайпинг в жизни проекта не заканчивается после релиза. Мы даём вам бесплатную гарантийную поддержку проекта на полгода с момента запуска. Вам не придётся срочно искать разработчика, если вдруг в проекте что-то сломается. Мы исправим неполадку бесплатно и в приоритетном режиме.

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

Во время работ по развитию проекта команда делает новые фичи, оптимизирует интерфейс продукта с учётом данных о поведении пользователей, масштабирует серверную часть, если количество пользователей резко возросло — в общем, качественно улучшает проект. Для таких работ мы бронируем в месяце оговоренное количество рабочих часов специалистов. Чтобы избежать ситуации, когда нужно срочно что-то сделать, а все разработчики заняты.

После релиза проекта вам будет важна не только техническая поддержка, но и…

Маркетинг


Участники со стороны Лайв Тайпинг:

  • аккаунт-менеджер;
  • интернет-маркетолог;
  • разработчик.

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

Мы помогаем на первых шагах, консультируем в области технического маркетинга, чтобы вы не совершили критических ошибок. При необходимости посоветуем хорошее агенство для закупок рекламы и PR-услуг.

То же самое, только короче

Работа с Лайв Тайпинг будет состоять из семи этапов:

  • знакомство и оценка проекта;
  • проектирование;
  • дизайн;
  • разработка;
  • тестирование;
  • поддержка;
  • маркетинг.

Знакомство и оценка проекта. Быстро и внимательно собираем информацию по проекту. Аккаунт-менеджер беседует с вами о том, как будет реализован будущий продукт. Он составляет подробную смету, обговаривает с вами условия договора и процедуру работы, высылает вам договор и передаёт всю информацию руководителю проекта, который будет ответственен за успешную реализацию проекта.

Проектирование. Определяем целевую аудиторию продукта, выделяем в ней ключевые персоны, думаем об их болях и страхах, моделируем то, как персоны будут взаимодействовать с продуктом. На крупных проектах определяем структуру кода и -формулируем задачи так, чтобы разработчик понимал, как он будет их реализовывать. Итог процесса — прототип интерфейса и описание того, как проект будет устроен с точки зрения кода.

Дизайн. Рисуем макеты продукта в соответствии с гайдлайнами iOS и Material Design. Макеты соответствуют вашему брендбуку.

Разработка. Может идти по Agile-методологии, а может «водопадом», но и в той и в другой методологии в Лайв Тайпинг разработка идёт итерациями. Вы всегда на связи с руководителем проекта и видите состояние продукта за каждый отчетный период. Лайв Тайпинг применяет в разработке code review. Это делает код легкочитаемым и удешевляет доработку проекта, в том числе силами сторонних команд.

Тестирование. Проверяем удобство интерфейса и совместную работу разных программных частей проекта, сводим баги к минимуму.

Поддержка. Полгода с момента релиза бесплатно исправляем функции проекта, если что-то пойдёт не так. После этого берем проекты на поддержку за абонентскую плату и следим за работоспособностью проекта. Или работаем над его развитием: оттачиваем интерфейс, делаем новые фичи.

Маркетинг. Окажем консультативную и техническую маркетинг-поддержку: сделаем лендинг, напишем описание приложения для стора, наполним проект текстовым контентом, автоматизируем приём лидов, настроим CRM, встроим системы аналитики. Поможем правильно начать маркетинг.

Ну, вот и всё, друзья, приступим к делу!

Прочитайте другие наши статьи

Рост конверсии, нативные платежи и другие выгоды для любого ритейл-бренда, который подружился с мобайлом

За три года развития платформы Confa.me у нас накопился опыт в продвижении приложений для event-проектов. Делимся им в статье

Шесть лет наша команда работала над репутацией профессионалов. В апреле 2017 года это дало свои плоды

Дарья
Дарья
Тартынова
редактор