Андрей Шапиро написал серию статей о методологии сбора требований и планирования релизов программного продукта User Story Mapping

Часть 1. Пользовательская история: https://medium.com/xraizor/b0b0d724d77e

Карта историй создаётся для нового продукта или когда существующий продукт надо частично или полностью переделать, и требуется описать объём имеющейся функциональности.

На входе метода: гипотезы состава стейкхолдеров, их интересов и основных планируемых эффектов ближайшего релиза. Хорошо, если есть картирование процессов в форматах Customer Journey Map или Service Blueprint.

На выходе: набор задач на проектирование и разработку, привязанных к пользовательским историям.

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

Любая пользовательская истории записывается для действующего лица: персоны или функциональной роли в системе. Близкая методика Use Cases лишена эмпатии к человеку, для которого создаётся программа.

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

Часть 2. Алгоритм проведения и рекомендации для ведущего: https://medium.com/xraizor/9a90beb2ff57

Часть 3. Чистка историй от ложных требований. Критика метода: https://medium.com/xraizor/2f7bd967a54a

Почему пользователи уходят

Клиенты перестают пользоваться продуктом по двум причинам: нет необходимости, либо что-то не нравится.

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

А вот ситуацию, которая попадает во вторую категорию, анализируем, находим истинную причину неудовлетворенности и извлекаем из этого максимальную пользу. За пользователей из этой категории стоит побороться, узнав, что им не нравится. Если цена, то предложите скидку. Если не хватает функционала, то узнайте, как улучшить продукт. Но не забываем про положительный ROI. Нелогично тратить $50к на разработку нового функционала, чтобы вернуть одного пользователя LTV c которого будет $1к.

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

Принцип которого мы придерживаемся это Customer Obsession. Мы проводим много времени разговаривая с клиентами, собираем отзывы и только после этого приступаем к работе. Это позволяет проактивно предотвратить отток пользователей и не тратить времени на поиски причины.

У меня получалось быть молодым фрилансером. Как быть старым фрилансером?

У меня получалось быть молодым фрилансером. Как быть старым фрилансером?

Молодой фрилансер постоянно фигачит, учится, весь такой на подрыве.

Я всегда думал, что взросление обязательно связано с переключением в роль управленца — стать арт-директором или CTO, растить команду, учить, брать больше ответственности. «Солдат, что не мечтает стать генералом» казался мне неправильным. Ребят, которые попробовали руководить и откатились до исполнителей, я считал слабаками и дауншифтерами.

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

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

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

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

И вот мне кажется, что «быть старым фрилансером» — это иметь возможность работать в потоке. Конечно, старый фрилансер умеет делать и всё остальное. Если надо, он встрепенётся, спроектирует, декомпозирует, раздаст всем по хорошему совету, разрулит конфликт. Но у старого фрилансера есть возможность ничего этого не делать и личное время для медленной работы в удовольствие.

Не знаю, об этом ли ты спрашивал — я как-то на себя больше спроецировал, ну и ладно.

Защита прошла!

Студенты MAD #5 защитили свои проекты! Ребята молодцы: проделали огромную работу, ответили на вопросы жюри, волновались, конечно, но прошли этот важный рубеж.

Что ж, теперь можно обсудить, что ребята показали жюри, и чем эта защита отличалась от прошлых.

Во-первых, защита выпала на рабочий день. Из плюсов — пришли действительно заинтересованные зрители, и такой свободный зал не так сильно шумит и пугает во время выступления. Однако, это же и минус — всё же приятно, когда зал заполнен продактами и дизайнерами из крутых компаний, которых ты можешь заинтересовать.
Во-вторых, некоторые проекты были из смежных областей: спорт, мотивация, искусство, здоровье. К счастью, в ходе жеребьёвки они все перемешались.
В-третьих, приятно порадовал уровень визуала. Толи ребята все сплошь с графдизайнерским бэкграундом, толи они прокачались с Александром Ловягиным на блоке UI — как бы то ни было, результат получился красивым.

Теперь о самих проектах, точнее о тех, что зацепили.

Всех поразил проект Labyrinth Алины Русаковой (facebook.com/rusakova.alina) — приложение для горнолыжников и сноубордистов. Когда она выступала, и зал, и жюри были полностью поглощены, само собой, кто-то достал телефоны и снимал. И даже после защиты обсуждение проектов так или иначе заканчивалось её проектом. Если бы у нас были приз зрительских симпатий и признание выпускников, она бы унесла их оба.

Скажу честно, мне проект не сильно зашёл: я не горнолыжник, и сноуборд точно не моё, но Алина всё равно молодец.

А вот приложение для борьбы со словами–паразитами Tomato Word от Ани Васильевой (facebook.com/annvasiliska) однозначно мой фаворит. Все эти «эм», «и», «ну», «как бы», «собственно» и прочие — настоящая головная боль для тех, кто готовится к выступлению (Аня сама честно призналась, что была бы рада наличию такого приложения, когда готовилась к выступлению). Простое визуальное решение и платный режим со штрафом в 1₽ за каждое слово–паразит — это огонь.

Идём дальше. Кто бы мог подумать, что между кураторами и художниками нет чёткого канала коммуникации?! Оказывается, так и есть. Аня Пестич (facebook.com/anya.pestich) узнала, почему так происходит, и взялась решить эту проблему и свести их друг с другом в своём приложении re: art (жаль, не знаю, как и почему она докопалась до этой боли). Приятно, что она провела такой ресерч и смогла предложить решение проблем пользователей — именно так и должен работать дизайнер.

Ира Кухтерина (facebook.com/ira.kuhterina) нашла боль в том, что она сильно пала духом, пытаясь найти тему для своего проекта, и это сильно цепляет (год назад сам прошёл через такое же). Чтобы как-то с этим справиться, она создала Nevergiveapp (нейминг, кстати, огонь; у ребят на курсе с этим вообще хорошо) — приложение для поддержки и поднятия самооценки. Жюри очень высоко оценило степень проработки MVP, ведь она практически показала бета–версию, которую уже завтра можно протестировать на себе. Не могу сказать, что такое решение сработает (всё–таки эмоциональные состояния уникальны), но сам факт того, как много она сделала, впечатляет.

Остальные ребята тоже старались, и я мог бы продолжать и дальше, но у нас ограничение по времени (ba-dum-tss), поэтому ограничимся этим топ-4. Впереди у ребят второй семестр, где они будут работать в командах над проектами по брифам реальных заказчиков (даже самому интересно, что за проекты у них будут). Увидимся с ними и с вами уже в 2019 году!🎄

Три важных слова

ОБСУЖДЕНИЕ ПРОЕКТА ТОЛЬКО НАЧАЛОСЬ, И У РЕБЯТ ЗА СТОЛОМ ЕЩЁ МНОГО ОТЛИЧНЫХ ИДЕЙ. Но мне нравится та версия, с которой на встречу пришел я сам. Она мне кажется просто безупречной, и лучше придумать им явно не удастся. Так иногда бывает, что ты вроде участвуешь в разговоре, слушаешь доводы и аргументы, но внутри уже все решено. И ты камень. Скала. Какие бы ни возникали идеи, они для скалы как капли дождя. Как ветер или тонкий слой пыли. Снаружи могут покрыть, но внутрь проникнуть – нет. Благодарю всех, заканчиваю встречу и предлагаю перейти к реализации моего плана, предвкушая большой успех.

Чем старше мы становимся, тем больше разного нам удается делать хорошо. Быть разумными, надевать шапку, принимать спокойные решения и выбирать важное вместо срочного. А когда ты знаешь, что многое делаешь хорошо, легко стать заложником своего авторитетного мнения. И чем ты кажешься себе сильнее, тем сложнее сказать тебе три простых слова, цена которых может быть очень высока. Можно потратить уйму времени, ресурсов, поставить под угрозу людей, углубиться в самые дебри и запутать все окончательно. Лишь бы не расставаться с ней. Со своей точкой зрения, защищая ее любой ценой. И если ты только кажешься сильным, то, скорее всего, будет именно так. А вот действительно, есть ли сила внутри, узнать очень просто. Только сильный может сказать всем вокруг три важных слова: «Простите, я ошибся».


Это был фрагмент из письма Splat №152

Периодически обновлять фреймворк

У нас в ГдеМатериале есть хорошая практика — мы периодически проверяем актуальность зависимостей. Я говорю не о мелких обновлениях и не о фиксах безопасности (они давно автоматизированы), а об обновлении мажорных версий библиотек, скажем Django с 1.11 до 2.0.

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

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

Самое важное в обновлении фреймворка — не копить изменения. Гораздо проще 5 раз обновить джанго на соседнюю версию, чем прыгнуть с 1.8 сразу на 2.2. Маленькие обновления приносят меньше регрессий и в целом проходят легче — согласитесь, ведь всегда же лучше растянуть один пиздец на 5 маленьких пиздецочков. Даже психологически гораздо легче решиться на маленький апгрейд, чем на большой скачок.

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