Сергей Никоненко, операционный директор в Purrweb, показывает особенности разработки приложения для зарубежного рынка, и зачем заказчикам SCRUM.
Время чтения: 7 минут
Ищете слаженную команду разработки?
Поможем с дизайном и разработкой приложений для бизнеса и стартапов
Гениальные идеи об IT-продуктах приходят в голову не только программистам. Иногда это бывают люди, максимально далекие от IT: кондитеры, флористы, ветеринары… Им приходится непросто: за разработку даже минимального жизнеспособного продукта (MVP) обычно просят немалые деньги, а процесс работы человеку без специальных знаний неочевиден. На этом и растут недобросовестные подрядчики — клиент же все равно ничего не понимает, сойдет и так.
Мы в Purrweb против такого подхода. Если клиент заинтересован в подробностях, мы готовы показывать и объяснять каждый этап работ над проектом прямо в «реальном времени». В этом нам помогает методология ведения проектов SCRUM — работа идет короткими итерациями, клиент получает регулярные отчеты, а в конце каждого спринта — демо-версию продукта. Это позволяет избежать множества проблем на этапе финального согласования.
К нам обратилась ветеринар — у нее своя маленькая клиника в Германии. Она общалась с нами через технического менеджера, но им обоим был важен именно SCRUM-подход, чтобы держать разработку под контролем.
Идея — мобильное приложение Petbuddy, в котором владельцы домашних животных смогут:
Все это имеет смысл в европейских странах, где развито чипирование домашних животных и регулярные визиты к ветеринару. Германия — как раз такая страна.
С помощью приложения клиентка хотела закрыть несколько целей:
Часто агентства придерживаются почасовой модели оплаты, и мы в том числе. Но наша клиентка с таким никогда не сталкивалась и ее беспокоило, что финальная стоимость работ не определена.
Чтобы и ее успокоить, и себя не обидеть, мы вывели конкретный срок на реализацию проекта — 3 месяца. По нашему опыту в разработке мобильных приложений, это оптимальный срок, за который можно сделать что-то осмысленное. После этого мы просчитали стоимость работы всех участников процесса (дизайнер, тимлид, два разработчика, менеджер проектов) в рамках 3-х месяцев и вывели стоимость проекта — 30 000$.
При этом мы понимали, что если брать в работу все «хотелки» заказчицы, количество работы может сильно увеличиться (по идее, за такой проект разумно брать все 50 000$), но бюджет и сроки растягивать уже нельзя.
Поэтому мы:
Технический менеджер Джесси, который представлял клиентку, пришел к нам с логотипом, палитрой и вайфреймами. Wireframe — это схема страницы или экрана, на ней расположены примерные блоки, которые заказчик хотел бы увидеть в финале.
Мы на это дело посмотрели и решили делать тестовый экран. Начали с одного из главных — профиля питомца.
Я сделала дизайн на свой манер, потому что конкретных предпочтений у заказчицы не было. В плане дизайна мы могли делать что захотим, лишь бы было современно. Решила сделать что-то минималистичное с использованием цвета года по версии Pantone — кораллового. С акцентом на фото питомцев, как на референсах.
Получился такой профиль:
Следующий этап стал переломным. Пришел фидбек, что нужно использовать изначальную палитру. Ну и, немного покряхтев, я изменила цвета с оранжевых оттенков на синие:
В результате победил темно-синий вариант, а оранжевые элементы стали больше тяготеть к желтому:
«С заказчицей мы общались не напрямую, поэтому основной процесс утверждения нас не коснулся. В целом им все нравилось, были правки только по логике расположения блоков и каким-то небольшим моментам вроде палитры».
Иногда заказчики сами не знают, какие экраны и функции нужно заложить в приложение. У них есть смутные идеи — мы их докручиваем, согласовываем и забираем в работу. В этом случае получился как раз такой кейс.
В приложении для владельцев домашних животных можно сделать акцент на ряде прикольных фич:
1. Контроль за весом питомца
2. Календарь важных встреч (когти подстричь, прививки и т.д.)
3. Калькулятор шоколада — он нужен, чтобы хозяин знал, не съел ли питомец смертельную дозу шоколада. Эту идею подала заказчица — она рассказала, что питомцы часто «подворовывают» шоколад и едят без спроса. А шоколад в больших дозах смертельно опасен для собак. Хозяева паникуют и бегут к врачу, хотя опасную дозу шоколада можно рассчитать самостоятельно исходя из веса питомца;
4. Объявление о пропаже — если питомец потерялся, можно сразу сообщить в специальную организацию и сохранить себе объявление в .pdf
5. Информация о ближайшей ветеринарной клинике
Каждое флоу (пользовательский сценарий) мы утверждали с Джесси, и он был как представитель стереотипов о немцах, очень скрупулезный. Поэтому в плане дизайна на этапе передачи в разработку ничего переделывать не пришлось. Но это скорее исключение — чаще всего невозможно сделать дизайн так, чтобы во время разработки не вылезли корректировки. Сейчас мы решаем это тем, что дизайнер после передачи дизайна в разработку все равно ходит с командой на ежедневные встречи и контролирует корректность реализации идей. Либо быстро вносит коррективы, если возникают технические ограничения.
Здесь мы создаем архитектуру фронта и бэка, рисуем диаграммы базы данных и переходим непосредственно к разработке и готовому приложению.
Не буду углубляться в технические подробности: пройдусь по особенностям, с которыми мы столкнулись именно в этом проекте.
Говоря о пушах: мы забыли учесть их в оценке проекта на этапе продажи, поэтому эта часть (а именно кастомные пуши) делалась за наш счет.
С калькуляторами подсчета калорий и шоколада тоже пришлось повозиться. Для них нужны формулы подсчета, а у клиента их не было. Поэтому пришлось «расковырять» существующие на рынке калькуляторы и вытащить логику работы из них. Иногда мы руками подбирали константы, чтобы все работало корректно.
Еще одна болевая точка — график веса питомца. У заказчика был миллион реквестов на этот счет. Проблема была в том, что графики (шкалы) нужно было адаптировать под веса разных животных. Например, Чихуахуа и Мастифа. У них совершенно разные весовые категории и вес колеблется тоже совершенно по-разному: у Чихуа — в пределах пары кило, а у Мастифа может достигать ста килограмм. Вот и нужно было шкалировать график так, чтобы он и то, и другое показывал. Вот мы и шкалировали 🙂
Есть довольно популярная методика описания проекта в виде User Stories. Так вот, концепция User Stories подразумевает под собой разбиение приложения на большие функциональные блоки (эпики, epics), а затем эпики бьются на более мелкие пользовательские истории (user stories).
Деливерить эпиками — это круто, так как можно закончить одну изолированную часть приложения и только потом приступить к следующей. Если делать много эпиков параллельно, то идет расфокус и как-то протестировать промежуточные результаты тяжело. В итоге приложение можно будет нормально протестировать только в конце всех работ, что слишком рискованно и чревато бесконечным количеством багов. В этом кейсе мы пришли к разработке эпиками только в конце проекта — мы не в первый раз практикуем SCRUM, но еще есть чему поучиться.
Так что финальная боль — куча мелких багов, то, от чего мы надеемся уйти, когда сразу начнем деливерить эпиками. Мы не закладывали день багфиксов в спринтах и к последним двум накопилось много мелких, но важных задачек. Пришлось взять немного больше времени на последний спринт, хотя предыдущие выполнялись без задержек.
Для MVP, который создавался как нишевый проект с амбициями, результат получился неплохой — 4,5 из 5 в App Store и 4 из 5 в Google Рlay. При этом мы видим, что на Android приложение установили больше 5 000 пользователей.
Заказчица успешно выполнила свою задачу. Финансовых метрик тут пока нет, сейчас она ищет инвестиции под следующий этап — монетизацию. А вот социальная функция, я считаю, выполнена на ура.
Насколько публикация полезна?
Оцени эту статью!
29 оценок, среднее 4.7 out of 5.
Оценок пока нет. Поставьте оценку первым.
Так как вы нашли эту публикацию полезной...
Подписывайтесь на нас в соцсетях!
Читать
Ваша заявка уже у нас :)
Обычно ответ занимает от 12 до 24 рабочих часов.
Может, вы хотите запланировать онлайн встречу?
Извините, что-то пошло не так при отправке запроса.
Попробуйте позже.