Amazon особенно эффективен в открытии API своих модульных сервисов. На рисунке 3.1 охват API, открытых Amazon, сравнивается с API ведущего розничного продавца Walmart, который пытается стать заметным игроком на рынке платформ. Как видите, Amazon существенно опережает Walmart в количестве и разнообразии API.
Рис. 3.1. У Amazon куда больше комплексов API, чем у Walmart. Это единые платежи, онлайн‑торговля, облачные сервисы, сообщения, распределение рабочих задач и др. Пока Walmart оптимизирует логистику, Amazon разрешает третьим сторонам создавать ценности с помощью своих модулярных сервисов. Источник: Эванс и Басоль, с использованием данных ProgrammableWeb[46]. Воспроизводится с разрешения авторов
Возможности модулярности — одна из причин, почему индустрия персональных компьютеров так быстро выросла в 1990‑е. Ключевыми компонентами систем ПК были: центральные процессоры, которые отвечали за вычисления; графические процессоры, которые создавали красочные изображения на экране; оперативная память, обеспечивающая рабочую память; жесткий диск, который обеспечивал большие объемы под долгосрочное хранение данных. Каждая из этих подсистем объединялась с другими, используя четко прописанный интерфейс, который допускал невероятные инновации, по мере того как Intel (CPU), ATI и Nvidia (GPU), Kingston (RAM) и Seagate (HD) независимо работали над улучшением качества своих продуктов.
Причина, по которой большинство платформ запускается с плотно интегрированным дизайном архитектуры, состоит в том, что для четко прописанного интерфейса подсистем необходимо проделать значительную работу уже на уровне их описания. Когда компания нацелена занять узкую рыночную нишу с ограниченными инженерными ресурсами, она легко поддается соблазну отказаться от сложной работы по разложению системы на чистые модели и стремится как можно быстрее выдать жизнеспособное решение. Со временем этот подход усложняет мобилизацию внешней экосистемы разработчиков, которые могли бы надстраивать ядро платформы и расширять ее предложения для новых рынков[47]. Таким образом, компании, которая имеет «неразборную» архитектуру, скорее всего, придется инвестировать в редизайн своей базовой технологии[48].
Переработка архитектуры платформы
Проделать фокус с преобразованием архитектуры системы в сторону модулярного дизайна возможно. Первый шаг — анализ степени модулярности, которой система уже достигла. К счастью, есть ряд инструментов, позволяющих достичь этой цели, и ключевой среди них — «матрицы структуры дизайна», которые допускают визуальное исследование зависимостей в сложных системах[49].
В статье 2006 г. в Management Science Алан Маккормак и Карлисс Болдуин описали пример продукта, архитектуру которого успешно преобразовали из интегральной в модулярную[50]. Когда программное обеспечение перешло в публичный доступ как открытый исходный код, коммерческая компания, обладавшая авторскими правами, инвестировала существенные ресурсы в обеспечение перехода. Это было крайне важно, потому что ПО невозможно было поддержать силами разбросанных команд разработчиков, если бы оно не было разделено на более мелкие подсистемы.
Необходимость переработать архитектуру сложной системы — не специфическая программистская проблема. В начале 1990‑х Intel столкнулась с серьезной помехой на пути роста своего рынка. Производительность процессоров Intel удваивалась каждые 18–24 месяца[51]. Улучшалось качество и других ключевых подсистем ПК: графических процессоров, оперативной памяти и жестких дисков. Однако информационные связи между подсистемами все еще определялись старым стандартом — архитектурой стандарта ISA. Пользователи не замечали особых улучшений в работе ПК и потому не видели причин покупать новые компьютеры. В докладе 2002 г. Майкл Кусумано и Анабель Гавер рассказали, как Intel сделала шаг вперед, инвестировав в новую шину PSI, которая лучше соединяла главные подсистемы, и в универсальную последовательную шину (USB), которая легла в основу невероятных инноваций в области внешних устройств, таких как компьютерные мыши, камеры, микрофоны, клавиатуры, принтеры, сканеры, внешние жесткие диски и многое другое[52].
Пошаговое улучшение: принцип антидизайна
Когда вы запускаете новую платформу или ищете способ расширить существующую, пристальное внимание к принципам разработки платформ увеличивает ваши шансы создать ценность[53]. Но как мы видели, платформы непредсказуемы, они проявляют свою индивидуальность. Одна из ключевых характеристик, отличающих платформу от традиционного бизнеса, заключается в том, что большая часть активности контролируется пользователями, а не собственниками или менеджерами. Участники неизбежно будут использовать платформу способами, которых вы не предвидели и не планировали.
В Twitter никогда не планировалось создавать механизм обнаружения. Сайт зародился как поток лент с обратной хронологией. Не было способа найти твит на определенную тему, кроме как перелистывая страницы несвязанного и неуместного контента. Крис Мессина, инженер Google, изначально предложил использовать хештеги, чтобы аннотировать и находить похожие твиты. Сегодня хештег стал главным элементом Twitter.
Разработчики платформы всегда должны оставлять пространство для случайных открытий, которые часто указывают путь развития. Внимательное изучение поведения пользователей на платформе наверняка откроет неожиданные схемы, и некоторые из них могут подсказать плодотворные варианты создания ценности.
Лучшие платформы создают пространство для пользовательских причуд, и они достаточно открыты, чтобы последовательно отразить эти причуды в устройстве платформы.
Интеллектуальная конструкция — неотъемлемая часть создания и поддержки успешной платформы. Но иногда лучший дизайн — это антидизайн, который оставляет пространство для случайного, спонтанного и даже шокирующего[54].
Основные положения главы 3
• Разработка платформы должна начинаться с ее ключевого взаимодействия — того, которое лежит в сердце миссии по созданию ценностей.
• Три основных элемента определяют ключевое взаимодействие: участники, единица ценности и фильтр. Из них важнее всего единица ценности, ее чаще всего и сложнее контролировать.
• Чтобы ключевое взаимодействие было легким и даже неизбежным, платформа должна выполнять три важнейшие функции: привлекать, стимулировать и объединять. Все три существенны, и с каждой связаны свои трудности.
• По мере роста платформа часто находит способы выйти за пределы ключевого взаимодействия. Новые виды взаимодействий могут наслаиваться поверх ключевого, часто привлекая новых участников.
• Важно тщательно разрабатывать платформу, чтобы сделать взаимовыгодные взаимодействия легкими для многих пользователей. Но так же важно оставить место для случайности и непредсказуемости, поскольку пользователи сами найдут новые способы создания ценности на платформе.