Содержание
Почему вам стоит выкинуть MVP из своих проектов / Хабр
Denis_Egorov
Время на прочтение
4 мин
Количество просмотров 14K
Разработка под Android *Kotlin *
Из песочницы
Всем привет! Сегодня я бы хотел поговорить об архитектуре Android-приложений.
На самом деле я не очень люблю доклады и статьи на данную тему, но недавно ко мне пришло осознание, с которым я бы хотел поделиться.
Когда я только начал знакомство с архитектурами, мой взгляд пал на MVP. Мне понравилась простота и наличие огромного количества обучающих материалов.
Но со временем я стал замечать, что что-то не так. Появилось ощущение, что можно лучше.
Почти все реализации, которые я видел, выглядели вот так: мы имеем абстрактный класс, от которого наследуем все свои презентеры.
class MoviePresenter(private val repository: Repository) : BasePresenter<MovieView>() { fun loadMovies() { coroutineScope. launch { when (val result = repository.loadMovies()) { is Either.Left -> view?.showError() is Either.Right -> view?.showMovies(result.value) } } } }
Также делаем для каждого экрана интерфейс view, с которым будет работать presenter
interface MovieView : MvpView { fun showMovies(movies: List<Movie>) fun showError() }
Давайте рассмотрим минусы данного подхода:
- Приходится создавать интерфейс View под каждый экран. На больших проектах будем иметь много лишнего кода и файлов, которые затрудняют навигацию по пакетам.
- Presenter сложно переиспользовать, так как он завязан на View, а она может иметь специфичные методы.
- Отсутствует определенное состояние. Представим, что мы делаем запрос в сеть, и в этот момент наша активити умирает и создается новая. Данные пришли, когда View еще не привязана к Presenter. Отсюда возникает вопрос, как показать эти данные, когда View привяжется к Presenter? Ответ: только костылями. У Moxy, например, есть ViewState, в котором хранится список ViewCommand. Это решение работает, но мне кажется, что тащить кодогенерацию для сохранения состояния View — лишнее (multidex намного ближе, чем вам кажется. Плюс при сборке будет запускаться обработка аннотаций, что сделает ее более долгой. Да, вы скажете, что у нас теперь появился инкрементальный kapt, но для его работы нужны определенные условия). Плюс ViewCommand не являются Parcelable или Serializable, а это значит, что мы не можем сохранить их в случае смерти процесса. Важно иметь персистентное состояние, чтобы ничего не потерять. Также отсутствие определённого состояния не позволяет его централизованно изменять, а это может привести к трудновоспроизводимым багам.
Посмотрим, решаются ли эти проблемы в других архитектурах.
class MovieViewModel(private val repository: Repository) { val moviesObservable: ObservableProperty<List<Movie>> = MutableObservableProperty() val errorObservable: ObservableProperty<Throwable> = MutableObservableProperty() fun loadMovies() { coroutineScope. launch { when (val result = repository.loadMovies()) { is Either.Left -> errorObservable.value = result.value is Either.Right -> moviesObservable.value = result.value } } } }
Пройдёмся по тем пунктам, которые отмечены выше:
- В MVVM у VIew больше нет интерфейса, так как она просто подписывается на observable поля в ViewModel.
- ViewModel проще переиспользовать, так как она ничего не знает о View. (вытекает из первого пункта)
- В MVVM проблема состояния решается, но не полностью. В данном примере мы имеем property во ViewModel, откуда View забирает данные. Когда мы сделаем запрос в сеть, данные сохранятся в property, и View при подписке получит валидные данные (и даже не надо плясать с бубном). Также мы можем сделать property персистентными, что позволит сохранить их в случае смерти процесса.
Определим Actions, SideEffects и State
sealed class Action { class LoadAction(val page: Int) : Action() class ShowResult(val result: List<Movie>) : Action() class ShowError(val error: Throwable) : Action() } sealed class SideEffect { class LoadMovies(val page: Int) : SideEffect() } data class State( val loading: Boolean = false, val data: List<Movie>? = null, val error: Throwable? = null )
Дальше идет Reducer
val reducer = { state: State, action: Action -> when (action) { is Action. LoadAction -> state.copy(loading = true, data = null, error = null) to setOf( SideEffect.LoadMovies(action.page) ) is Action.ShowResult -> state.copy( loading = false, data = action.result, error = null ) to emptySet() is Action.ShowError -> state.copy( loading = false, data = null, error = action.error ) to emptySet() } }
и EffectHandler для обработки SideEffects
class MovieEffectHandler(private val movieRepository: MovieRepository) : EffectHandler<SideEffect, Action> { override fun handle(sideEffect: SideEffect) = when (sideEffect) { is SideEffect.LoadMovies -> flow { when (val result = movieRepository.loadMovies(sideEffect.page)) { is Either.Left -> emit(Action.ShowError(result.value)) is Either.Right -> emit(Action.ShowResult(result.value)) } } } }
Что мы имеем:
- В MVI нам также не требуется создавать кучу контрактов для View. Нужно только определить функцию render(State).
- Переиспользовать это, к сожалению, не так просто, так как у нас есть State, который может быть довольно специфичным.
- В MVI мы имеем определённое состояние, которое можем менять централизованно через функцию reduce. Благодаря этому мы можем отслеживать изменения состояния. Например, писать все изменения в лог. Тогда мы сможем прочитать последнее состояние, если в работе приложения произошел сбой. Плюс State может быть персистентным, что позволит обработать смерть процесса.
В MVVM решается проблема со смертью процесса. Но, к сожалению, состояние здесь по-прежнему неопределенное и не может меняться централизованно. Это, конечно, минус, но ситуация всё равно стала явно лучше, чем в MVP. В MVI решается проблема состояния, но сам подход может быть немного сложен. Плюс появляется проблема с UI, так как нынешний UI toolkit в android плох. В MVVM мы обновляем UI кусочками, а в MVI стремимся обновить его целиком. Поэтому для императивного ui MVVM будет вести себя лучше. Если же вы хотите использовать MVI, то советую ознакомиться с теорией virtual/incremental DOM и библиотеками под android: litho, anvil, jetpack compose (придётся ждать). Либо можете считать диффы руками.
Исходя из всех данных, приведенных выше, я бы советовал при проектировании приложения выбирать между MVVM и MVI. Так вы получете более современный и удобный подход (особенно в реалиях Android).
Библиотеки, которые могут помочь в реализации данных подходов:
MVVM — https://github.com/Miha-x64/Lychee
MVI — https://github.com/egroden/mvico, https://github.com/badoo/MVICore, https://github.com/arkivanov/MVIDroid
Всем спасибо за внимание!
Теги:
- архитектура android-приложений
- kotlin
- android
- mvp
- mvvm
- mvi
Хабы:
- Разработка под Android
- Kotlin
Что такое MVP | Создание и примеры минимально жизнеспособных продуктов
Аудиоверсия этой статьи
Минимально жизнеспособный продукт, или MVP, позволяет протестировать гипотезы и проанализировать спрос на товары и услуги на старте бизнеса, снизить затраты и определить риски проекта. Рассказываем, как это работает
Содержание
Что такое минимально жизнеспособный продукт
Зачем нужен MVP
Какие бывают MVP
Плюсы и минусы минимально жизнеспособного продукта
Почему важно запускать MVP
Какие методы используют для разработки MVP
Как создать минимально жизнеспособный продукт: алгоритм
Что часто делают не так при создании MVP
MVP в разных отраслях: примеры
Деловая среда
Платформа знаний и сервисов для бизнеса
Открыть ИП сейчас
Бесплатный сервис
Мечтаете о своем бизнесе? Зарегистрируйте его бесплатно и без визита в налоговую
Подать онлайн-аявку
Что такое минимально жизнеспособный продукт
Аббревиатурой MVP (Minimal Viable Product — «минимально жизнеспособный продукт») называют тестовую версию товара, программного обеспечения или сервиса. Продвигаемый разработчиками продукт имеет минимальный набор функций. Когда с ним знакомятся потребители, создатели отслеживают их реакцию и с учетом нее дорабатывают исходную версию.
MVP используют, чтобы проверить гипотезы, оценить жизнеспособность идеи в разных условиях работы. Полученная от клиентов обратная связь позволяет понять, надо ли корректировать потребительские характеристики продукта, его качества или стратегию продвижения.
Принцип создания MVP связан с HADI-циклами — итерационным методом разработки, состоящим из четырех этапов. Аббревиатура HADI образованная из первых букв английских слов hypothesis — «гипотеза», action — «действие», data — «данные», insight — «выводы».
Создатели продукта выдвигают гипотезу, проверяют ее жизнеспособность, получают результаты теста и делают выводы. Рабочие циклы повторяются до момента получения продукта, устраивающего целевую аудиторию и авторов. Количество циклов зависит от сложности задачи, квалификации разработчиков и наличия ресурсов.
Финансировать процесс можно за счет кредита.
Кредиты от Сбербанка
Получите кредит для бизнеса на любые цели — с возможностью подать заявку онлайн
Подать заявку на кредит онлайн
Зачем нужен MVP
MVP позволяет:
информировать рынок о продукте и его возможностях;
получить информацию о востребованности идеи на рынке;
определить целевую аудиторию и вектор развития товара или услуги;
охватить часть рынка, познакомив потребителей с продуктом;
создать у целевой аудитории и рынка потребность в новом товаре или услуге;
протестировать гипотезы с минимальными расходами ресурсов;
проверить, корректно ли работает маркетинговая стратегия;
использовать обратную связь по MVP для разработки других продуктов на его базе.
Статьи
Как заранее тестировать гипотезы и планировать бизнес
Выход на новые рынки
Какие бывают MVP
MVP Флинстоуна. Назван в честь персонажа из мультфильма, мастерски имитировавшего передвижение на автомобиле. Технология предусматривает выпуск продукта, который кажется потребителям работающим. Например, создатель интернет-магазина Zappos начал продавать обувь, хотя ее у него не было. Заказчик выбирал подходящую пару по фото, а владелец магазина покупал ее у производителя и отправлял покупателю.
MVP Консьержа. Предназначен для тестирования онлайн-систем с автоматизированными функциями. При этом функционал демонстрационной модели поддерживается вручную. Это снижает затраты на разработку и одновременно позволяет оценить востребованность идеи.
Разрозненный. Применяется для разработки специфического программного обеспечения.
💼 Пример
Методику использовал портал Groupon, предлагавший на старте работы взаимодействие с клиентами по электронной почте. По мере развития ресурс получал дополнительные функции, ряд из которых был введен по запросам клиентов.
С одной функцией. У продукта работает только она. Вид MVP предназначен для тестирования и сбора информации от пользователей. Технология позволяет сегментировать целевую аудиторию и получать обратную связь только от заинтересованных пользователей.
С низкой достоверностью. Рассчитан на сбор информации по упрощенным методикам. Например, обратную связь получают в ответ на публикации о продукте на форумах или в блогах, с помощью опросов целевой аудитории. Собрать мнение потенциальных клиентов еще помогают презентации, рекламные кампании, посадочные страницы в интернете.
Для разработки MVP необходима небольшая команда MVCom. При подборе сотрудников для проекта учитывают цели компании.
Статьи
Как находить и тестировать ниши за 24 часа
Выбор ниши
Плюсы и минусы минимально жизнеспособного продукта
Внедрение минимально жизнеспособного продукта дает следующие преимущества:
позволяет повысить точность планирования бюджета;
скорректировать выбранную бизнес-модель с учетом откликов пользователей;
сократить время на разработку;
привлечь целевую аудиторию на ранних этапах развития компании;
оценить соотношение спроса и предложения;
понять, нужны ли проекту дополнительные инвестиций.
Бесплатный сервис
Мечтаете о своем бизнесе? Зарегистрируйте его бесплатно и без визита в налоговую
Подать онлайн-аявку
Создание MVP в сфере инновационных решений имеет особенности. Вывод на рынок упрощенной версии продукта иногда не позволяет определить его востребованность, так как целевая аудитория не готова к такому решению. Тем не менее работа над минимально жизнеспособным продуктом помогает выявить слабые места концепции или выбранной бизнес-модели.
Почему важно запускать MVP
Отказ от запуска минимально жизнеспособного продукта может обернуться финансовыми потерями для бизнеса. На этапе тестирования MVP у владельцев есть возможность доработать продукт с учетом откликов первых пользователей, а не тратить деньги на масштабное производство продукта, который потом придется переделывать. Это позволяет существенно сэкономить.
Еще ранние версии продукта при выходе на рынок дают возможность оценить, готовы ли клиенты к покупке. Если выяснится, что интерес со стороны потребителей отсутствует, это будет поводом усилить маркетинговую кампанию.
Какие методы используют для разработки MVP
При создании MVP используют следующие методы:
Lean. Принцип его действия описывает цепочка «создание — измерение — обучение». Метод предполагает доработку продукта на основе поступающих мнений. Новая версия тестируется снова, цикл повторяется нужное количество раз.
Scrum. Разделяет работу по тестированию на интервалы по несколько недель или месяцев. В конце каждого этапа проводят анализ отзывов и обновляют продукт.
Kanban. Предлагает решение задач по мере появления, в процессе разработки продукта отсутствует цикличность. Полученная информация об ошибке обрабатывается командой, после корректировки тестирование продолжается.
Как создать минимально жизнеспособный продукт: алгоритм
Для разработки минимально жизнеспособного продукта необходимо:
Проанализировать проекты конкурентов, чтобы получить представление об их работе и сфере в целом. При создании MVP учитывают чужой опыт, оценивают востребованность идеи на рынке. От качества подготовительной работы зависит дальнейшее развитие проекта.
Определить базовое назначение продукта. При разработке учитывают, насколько полезна услуга или товар, иначе вывод на рынок минимально жизнеспособного продукта не позволит определить его востребованность.
Сузить целевую аудиторию. Ориентироваться на большое количество потенциальных пользователей не стоит. Это может привести к тому, что обратная связь окажется противоречивой и затруднит поиск оптимальных способов для доработки идеи. Авторам проекта стоит создать обобщенный портрет целевого клиента, которому продукт будет полезен.
Исследовать рынок, выявить конкурентов, которые предлагают похожие продукты. Следует определить занятую другими компаниями долю рынка, оценить конкурентоспособность собственного продукта.
Разработать стратегию продвижения продукта. Для этого выявить его преимущества и недостатки.
Описать путь клиента от поиска до приобретения MVP.
Определить функции, которые будут реализованы в MVP. Сделать это можно, проведя 20–40 интервью с потенциальными клиентами. Избыток возможностей на этапе тестирования усложняет разработку и отпугивает пользователей. Лишние функции увеличивают количество отзывов со стороны аудитории и затрудняют анализ информации.
Запустить альфа-тестирование для закрытой группы пользователей, например среди знакомых. По итогам определить недостатки, внести корректировки, а затем перейти к бета-проверке с участием сторонних клиентов.
Получить обратную связь, проанализировать информацию. Если обнаружатся фатальные недочеты, повторить цикл разработки MVP.
Статьи
Гроузхакинг: как тестировать идеи, чтобы быстрее расти
Основы маркетинга
Что часто делают не так при создании MVP
При создании MVP и анализе обратной связи нередко допускают следующие ошибки:
Пытаются создать проект без недостатков. Стремление убрать все недочеты перед запуском тестирования или подогнать идею под разноплановые запросы целевой аудитории приводят к негативному результату. Концепция MVP предусматривает создание рабочей модели бизнеса с урезанными или отсутствующими дополнительными возможностями. Вспомогательные функции внедряют на конечном этапе разработки товара или услуги.
Неправильно выбирают функции, которыми должен обладать минимально жизнеспособный продукт. Это не дает потенциальным потребителям правильно его оценить, а владельцам бизнеса — собрать необходимую обратную связь.
Заявляют о возможностях MVP, которые на деле отсутствуют. Это способствует оттоку целевой аудитории. Минимально жизнеспособный продукт должен соответствовать озвученным характеристикам.
Не анализируют собранные отклики о продукте или делают это поверхностно. В результате снижаются шансы создать востребованную версию продукта.
Не корректируют маркетинговую стратегию. На этапе тестирования минимального продукта нужно следить за эффективностью продвижения и менять стратегию при необходимости. Если этого не делать, возникнет риск потратить рекламный бюджет и не получить ожидаемый результат. В случае перерасхода бюджета придется быстро искать дополнительные средства.
Кредиты от Сбербанка
Получите кредит для бизнеса на любые цели — с возможностью подать заявку онлайн
Подать заявку на кредит онлайн
MVP в разных отраслях: примеры
Минимально жизнеспособные продукты для развития бизнеса применяли:
Создатели приложения Buffer. Оно предназначено для управления учетными записями пользователей социальных сетей и позволяет делать отложенные публикации. На этапе разработки набор функций был сильно ограничен. Отзывы первых пользователей позволили протестировать программу, выявить недоработки и добавить востребованные функции.
Авторы сервиса аренды жилья Airbnb, который на стадии разработки не поддерживал функцию предварительной оплаты. Платформа была промежуточным звеном между клиентами и владельцами недвижимости. Впоследствии Airbnb стала работать с заказчиками, предлагая безналичную оплату аренды.
Владельцы стримингового сервиса Twitch создали минимально жизнеспособный продукт для трансляции выпусков шоу Justin TV. Качество изображения и звука сначала было низким. Продуктом заинтересовались немногие, но выборки хватило, чтобы определить вектор развития. Сервис стал специализироваться на трансляции компьютерных игр и киберспортивных турниров.
Авторы платформы Groupon, предназначенной для реализации ваучеров или купонов. На этапе создания сайт, разработанный с помощью конструктора WordPress, предлагал рассылку презентаций или предложений в pdf-формате. После тестирования ряда релизов команда авторов расширила набор функций.
Разработчики сервиса Dropbox для облачного хранения файлов отказались от классического алгоритма. Целевой аудитории показывали ролик, объясняющий принцип работы с информацией. Отказ от разработки MVP позволил сэкономить деньги и ресурсы, а фильм заинтересовал потребителей. По данным Dropbox, они получили больше 70 тысяч заявок на тестирование платформы.
Разработка и выпуск MVP — важный этап в развитии бизнеса. Это помогает определить сильные стороны продукта и устранить недочеты, способные оттолкнуть целевую аудиторию. Еще MVP позволяет избежать больших потерь в случае провала проекта.
Сервис
Зарегистрируйте бизнес удаленно, без госпошлины — и начните воплощать мечту
Подать заявку
Разработка продукта: MVP — Минимально жизнеспособный подход к продукту
Шесть скрытых издержек международной экспансии для малого и среднего бизнеса
Узнайте о шести скрытых затратах, связанных с международной экспансией.
Как предприниматель, вы, вероятно, хотели бы запустить свой продукт со всеми полностью функционирующими функциями, решив все проблемы, обнаруженные в процессе опроса рынка. Однако, к сожалению, реальность такова, что независимо от того, насколько тщательно вы проверяете и исследуете свой продукт, он никогда не будет идеальным.
Более эффективный подход к запуску продукта и лучший метод проверки продукта — передать продукт в руки ваших клиентов, чтобы они начали его использовать. Затем вносите частые постепенные улучшения на основе обратной связи, которую вы запрашиваете и получаете. (Обратите внимание, что каждая последующая версия продукта называется итерацией).
Минимально жизнеспособный подход к разработке продукта
Один из способов получить обратную связь для стартапа — создать минимально жизнеспособный продукт (MVP). Подход MVP основан на предпосылке, что вы можете обеспечить достаточную ценность для клиентов, предоставив минимальные функции, которые будут использовать ранние последователи. Затем вы можете собрать отзывы, которые позволят вам создать лучший продукт, который найдет отклик у будущих пользователей.
Как и в случае с другими методами сбора отзывов клиентов, такими как анализ выигрышей и проигрышей, бета-программы и фокус-группы, подход MVP не исключает необходимости исследования рынка.
Вы должны понимать, какие проблемы должен решить ваш рынок. Однако в соответствии с подходом MVP вам не нужно решать все проблемы сразу . Решите самые важные и самые основные проблемы, а затем соберите отзывы. Идея состоит в том, чтобы максимизировать ваше обучение и минимизировать затраты на разработку.
Термин «минимум» может вызвать представление о том, что функциональность мала и не представляет ценности. Но это не так.
Подход к минимально жизнеспособному продукту включает определение приоритетов требований к продукту до такой степени, что они обеспечивают основные функции для решения рыночных проблем; остальное только «приятно иметь». Обратите внимание, что эта система требует большей строгости, чем обычно, при определении приоритетов ваших требований, поскольку природа частых итераций позволяет вам решать только небольшое количество требований к продукту с каждым выпуском продукта.
Большинство стартапов склонны выпускать свой продукт раньше и чаще. Однако это эффективно только в том случае, если вы можете получить хорошие отзывы от первых пользователей, которые понимают ваше видение и видят дальше (текущей) ограниченной функциональности; остерегайтесь, что некоторые клиенты без этого видения могут заставить вас строить круги.
Рекомендации MVP
Подход MVP основан на следующих рекомендациях:
- Создайте минимальный набор функций, которые позволят вам получать отзывы от дальновидных первых последователей.
- Стройте только то, что требуется.
- Выпуск улучшений продукта (итераций продукта) быстро и недорого по мере изучения вашего рынка и вашего решения.
Использование подхода MVP
Чтобы использовать подход MVP, выполните следующие действия:
- Просмотрите свои приоритетные требования к продукту и определите минимальный уровень функциональности, который вы можете предоставить. Хотя на это может уйти шесть месяцев, вы все равно должны обеспечивать ценность для клиентов.
- Соберите решение. Независимо от того, используете ли вы методологию Waterfall или Agile для разработки продукта, создайте свое решение и выведите его на рынок.
- Подтвердите свое решение. Используйте бета-программы, анализ выигрышей и проигрышей, фокус-группы и маркетинговые опросы, чтобы понять, как ваше решение работает для клиентов и как его улучшить. Сосредоточьтесь на клиентах, которые являются первопроходцами.
- Еще раз проверьте требования к продукту и перезапустите процесс. Этот цикл может быть коротким или длинным, в зависимости от того, что вы считаете минимально жизнеспособным продуктом.
Выпуск итераций
Подход MVP не сводит к минимуму понимание проблем рынка или определение приоритетов требований. Это включает в себя рассмотрение, создание и выпуск меньшего количества требований к продукту за раз (то есть меньшие наборы функций).
Наиболее полезной формой проверки продукта является проверка в реальных условиях. Как только клиенты будут использовать продукт на ежедневной основе, они смогут предоставить наилучшие отзывы. Те клиенты, которые могут видеть дальше существующих функций, предложат вам наибольшую ценность.
Если вы примете подход MVP к разработке продукта, вам придется совершать итерации, в противном случае функции могут никогда не быть полностью завершены (то есть иметь все функциональные возможности, которые вы изначально указали в своих полных требованиях). Будьте готовы к тому, что ваша команда будет улучшать определенную функцию несколько раз, узнавая больше о продукте на рынке.
Преимущества подхода MVP к разработке продукта:
- Он позволяет максимально увеличить затраты на обучение и минимизировать затраты на разработку.
- Позволяет быстро выпускать итерации (то есть версии) и учиться на своих ошибках.
- Он формирует на рынке фанатов клиентов (также известных как евангелисты продукта).
Ограничения подхода MVP
Подход MVP не может использоваться во всех ситуациях и имеет несколько ограничений:
- Подход MVP требует больших усилий для сбора постоянной обратной связи от клиентов.
- Это требует значительной приверженности к небольшим, частым выпускам продукта.
- Это может привести к многократному пересмотру функциональности на основе текущих отзывов клиентов.
Пример: подход MVP
Если вы хотите создать революционную службу расшифровки голосовой почты, желаемые функции могут включать возможность загрузки голосовых сообщений, отправки их по электронной почте и интеграции их в функции SMS и MMS.
Используя подход MVP, ваш первый выпуск продукта может быть ограничен возможностью загрузки и прослушивания голосовой почты. Этого может быть достаточно для первоначального выпуска. Оттуда вы можете узнать, что люди хотят делать с голосовой почтой. Например, вы можете узнать, что пользователи не собираются отправлять их через MMS, поэтому вы можете не вкладывать средства в эту функциональность.
После того как вы получили первоначальные отзывы о своем первом выпуске, вы можете приступить к добавлению возможности отправки голосовых сообщений по электронной почте, а затем оценить ее использование.
Шесть скрытых издержек международной экспансии малого и среднего бизнеса
Узнайте о шести скрытых затратах, связанных с международной экспансией.
Преимущества/недостатки MVP: хорошее, плохое и основное
Как основатель стартапа я считаю, что инновации — единственный ключ к успеху, и первый шаг к созданию действительно инновационного, новаторского продукта — это создание MVP . Большинство инноваций возникает из-за разочарования из-за потери производительности, отсутствия производительности или из-за того, что конкурирующие продукты постоянно превосходят ваши. Стартапы поощряют этот дух новаторства, который помогает им постоянно изобретать себя заново, пока они не найдут золотую середину и не снизят уровень разочарования до минимума.
Новаторы также должны понимать, что почти 70% стартапов терпят неудачу в первый же год. Согласно отчету CBInsights, причины этих неудач включают:
- НЕТ потребности рынка: 42%
- Недостаточное финансирование: 29%
- Не правильно указал цену: 18%
- Не имели бизнес-модели: 17%
- Проигнорированные запросы клиентов: 14%
- Не хватало страсти: 9%
- Перегорели: 8%
- Не удалось выполнить поворот вовремя: 7%
Почему MVP важен для стартапов?
MVP для стартапов — это способ достичь совершенства продукта и снизить вероятность неудачи — по одной итерации за раз. По сути, MVP решает конкретную проблему самым простым способом, не добавляя лишней чепухи в виде полноценного продукта. Это помогает стартапам сопоставлять проверенные сведения о предпочтениях своих клиентов без особых усилий, что делает ситуацию беспроигрышной для всех!
MVP быстро привлекут внимание к вашей компании, часто давая вам преимущество первопроходца на определенных рынках. Быть там лучше, чем бесконечно планировать свой продукт до совершенства. Многие стартапы использовали метод MVP на протяжении многих лет, чтобы проверить почву перед запуском своего конечного продукта. Такие компании, как Airbnb, Groupon, Amazon и Dropbox, начали с MVP и прошли несколько итераций, прежде чем превратились в свои нынешние аватары. Хотите узнать больше? Вот список некоторых популярных примеров MVP и то, как они выглядели на ранней стадии.
Dropbox начал с демо-видео, в котором людям была представлена их концепция. Groupon начал с простой целевой страницы WordPress. Amazon начинался в гараже с небольшой веб-страницы, предлагающей книги для продажи по ценам ниже, чем у конкурентов, а Airbnb начиналась как простая рекламная веб-страница. Все эти компании прошли через различные итерации, чтобы стать тем, чем они являются сегодня.
Каковы преимущества создания MVP?
MVP предлагают много преимуществ для стартапов, которых нет в традиционной разработке продуктов. От понимания поведения клиентов до получения преимущества первопроходца MVP позволяют стартапам легко понять, жизнеспособна ли их идея в долгосрочной перспективе, и внести в нее соответствующие коррективы, не нарушая банк. Вот список из 5 основных причин, по которым MVP — отличный вариант для любого стартапа:
Вы добираетесь до рынка быстрее других
Для разработки MVP часто требуется очень мало времени, что позволяет вам быстро вывести свой продукт на рынок и получить преимущество первопроходца. Кроме того, MVP также могут помочь вашему стартапу оценить вашу идею и ее ценностное предложение перед созданием реального продукта. Это поможет вам повторять и создавать лучший продукт для ваших клиентов.
Вы можете легко выполнить проверку рынка
MVP созданы для изучения и понимания того, как ваш продукт принимается на рынке реальными клиентами. Вы можете представить свой продукт и создать о нем шумиху перед запуском, и это даже поможет вам сформировать сообщество потенциальных покупателей вашего продукта.
Разработка на основе обратной связи
Предприниматели предпочитают MVP для быстрого итеративного развития. Это означает, что вы получаете свой MVP, получаете информацию от клиентов и быстро вносите эти изменения, чтобы создать продукт, который они оценят и полюбят.
Повторяйте, пока не получите правильный результат
Почти никто не делает это правильно с первого раза. MVP помогают вам повторять, менять и создавать продукт, основанный на обучении, который может легко соответствовать ожиданиям ваших потенциальных клиентов. Помните Airbnb? Им потребовалось несколько попыток, чтобы, наконец, сделать это правильно.
Создавайте продукты без больших затрат
MVP помогают создавать исключительные продукты, не тратя тысячи (или миллионы) долларов на разработку и маркетинг. Поскольку начальная стоимость невелика, вы можете легко создавать несколько итераций своего MVP, пока, наконец, не сможете создавать продукты, которые нужны вашим клиентам.
Есть ли недостатки? Давайте посмотрим
Не все так хорошо в разработке MVP. Вот некоторые недостатки MVP, которые могут заставить вас вернуться к чертежной доске чаще, чем требуется, или отказаться от корабля. Вот основные недостатки подхода MVP:
Потеря фокуса
При разработке MVP легко потерять фокус. Режимы итеративной разработки требуют сосредоточенности, приверженности и чрезвычайно тактичного и целенаправленного подхода к тому, каким должен быть ваш конечный продукт. В противном случае вы можете потратить больше, чем рассчитывали.
Конкуренты могут догнать
Поймите, что у других может быть такая же идея, как у вас, и ваши конкуренты могут догнать вас быстрее, чем вы ожидаете. Другие также могут увидеть ваш продукт, найти его недостатки, улучшить его и создать для себя нишевый продукт, который будет лучше вашего, и вы потеряете долю рынка.
Неправильный стек технологий для работы
Вам может потребоваться время, чтобы найти правильный технологический стек и архитектуру для того, что вы собираетесь построить. Часто этот опыт может быть мучительным, дорогим и вызывать неожиданные задержки.
Разница между POC, MVP и прототипами
Вы можете знать, что такое MVP, но не понимать разницы между MVP, PoC или доказательством концепции и прототипом. Важно понять различия между тремя, прежде чем начать.
Простой способ понять это — сначала создать Proof of Concept на основе своей идеи, чтобы выяснить ее техническую осуществимость. Выяснив это, вы создаете прототип, чтобы увидеть, желателен ли ваш продукт с точки зрения пользователя. После того, как вы разобрались с этим, вы можете создать MVP, чтобы получить отзывы клиентов о вашем продукте. Итак, PoC > Prototype > MVP — это общее развитие идеи.
MVP не является PoC
Вы создаете MVP после того, как разработали PoC и понимаете, что существуют доступные технологии, которые помогут вам создать решение проблемы, которую вы пытаетесь решить. Проверка концепции подтверждает, что вы можете превратить свою идею в продукт. Вы будете знать, будет ли этот продукт жизнеспособным или нет, понравится он покупателям или нет, и есть ли на него спрос, прежде чем он превратится в MVP.
MVP — это не прототип
Прототип демонстрирует «поток» вашего продукта. Прототипы помогают вам проводить проверку концепции дизайна и получать немедленную обратную связь, если необходимы какие-либо изменения. Прототипы программного обеспечения — это интерактивные макеты, демонстрирующие, как может работать программное обеспечение. Прототипы не обязательно превращаются в жизнеспособные продукты без исследований, проверки пользователями и основательной подготовки.
MVP — это… ну, MVP
Звучит немного банально, но я решил, что соглашусь. MVP — это версия продукта, в которой достаточно функций, чтобы привлечь первых пользователей и проверить идею продукта на ранних этапах жизненного цикла продукта. Этот продукт уже видел Proof of Concept, был прототипирован и превращен в реальный продукт.
Короче говоря, как только вы создадите версию своего продукта, за которую клиенты готовы платить, у вас будет готов ваш первый MVP.
Кому следует выбрать MVP?
Если вы предприниматель, который нашел инновационное решение актуальной проблемы или неудовлетворенной потребности ваших клиентов, вы готовы создать свой первый MVP. Если вы создали прототип своего продукта и вам нужно разработать действительно работающее решение для первых пользователей, вы готовы к MVP. Если вы узнали цель своего продукта, его идеальных пользователей и придумали формат для его создания, вы готовы к MVP.
Создайте свой MVP с помощью Volumetree
Мы потратили годы, помогая начинающим предпринимателям и опытным бизнесменам выводить на рынок свой первый MVP. Наш глобальный охват и доступ к обширному кадровому резерву гарантируют, что у нас есть все ресурсы, необходимые для успеха вашей идеи. Что хорошего в нашем подходе, так это то, что мы проводим бесплатную 15-минутную консультацию с нашими экспертами по продуктам, чтобы помочь вам понять, является ли ваша идея жизнеспособной или требует дополнительных исследований.