В конце 2023 года рабочая группа CNCF по платформам (Platforms WG) представила первый релиз модели зрелости Platform Engineering (
Platform Engineering maturity model). По мере развития Platform Engineering стали очевидны определенные паттерны, организуя эти паттерны и наблюдения в виде прогрессивной модели зрелости (Maturity model), авторы модели стремятся сориентировать платформенные команды относительно вызовов, с которыми они могут столкнуться, и возможностей, к которым они могут стремиться.
Новая модель представляет
Platform Engineering как практику, используемую для предоставления внутренней платформы как продукта (
Platform as a product) за счет инвестиций во все аспекты создания платформ и их возможностей, включая людей, процессы, политики и технологии, которые, в свою очередь, приводят к достижению бизнес результатов.
Цель данной модели — предоставить инструмент развития платформ, который поможет практикам Platform Engineering, стейкхолдерам и другим заинтересованным сторонам. Модель основана на первом документе рабочей группы —
CNCF Platforms White Paper, в котором даны основные определения и характеристики, связанные с внутренними платформами.
Целевая аудитория, для которой предназначена модель зрелости:
- CTO, VP и директора по технологиям: руководители, стремящиеся выстроить маршрут цифровой трансформации и повысить продуктивность разработчиков (Developer Productivity);
- Engineering managers: группы и отдельные руководители, которые стремятся дать инженерам возможность создавать ценность с меньшими накладными расходами и более высокой эффективностью;
- Enterprise architects: эксперты, ориентирующиеся в современном технологическом ландшафте и ищущие взгляд на технологические проблемы;
- Platform engineers и platform product managers: команды и эксперты, стремящиеся создать наилучший возможный опыт для разработчиков платформ и пользователей платформ;
- Вендоры продуктов и инструментов: организации и инженеры, которые хотят создавать инструменты и помогать пользователям успешно с ними работать
- Разработчики приложении и продуктов: пользователи платформ, которые хотят более детально понять, чего они могут ожидать от внутренней платформы
Модель включает 5 аспектов (
Investment,
Adoption,
Interfaces,
Operations,
Measurement) и 4 уровня зрелости (
Provisional,
Operational,
Scalable,
Optimizing):
- Каждый аспект представлен как непрерывная шкала характеристик, отражающих различия в подходах команд и организаций на разных уровнях зрелости;
- Каждый аспект предназначен для независимой оценки и развития, может оказаться, что для улучшения одного аспекта необходимо достичь минимального уровня зрелости и в другом аспекте;
- Аспекты часто находятся не в зоне полной ответственности одной внутренней команды, а требуют взаимодействия между командами как внутри инженерного подразделения, так и в более широком масштабе всей организации;
- Каждый уровень зрелости описывает качества, которые должны проявляться на соответствующем этапе, поэтому достижение наивысшего уровня не должно быть целью, сначала необходимо оценить, принесут ли эти качества пользу внутри организации;
- Начальные уровни в большей степени включают тактические решения, тогда как высшие уровни носят более стратегический характер;
- Каждый следующий уровень зрелости сопровождается более высокими требованиями.
Модель зрелости Platform Engineering формирует потенциальный процесс развития и повышения зрелости платформ, аналогичный другим подходам к разработке цифровых продуктов: сначала выявляется проблема и потребность в новом решении, затем разрабатываются минимально жизнеспособные продукты (Minimal Viable Products, MVP) как предполагаемые решения, далее проводится итеративное улучшение для более точного решения проблемы и обеспечения соответствия потребностям пользователей, и, наконец, продукт масштабируется и оптимизируется для решения проблемы для множества команд и пользователей.
Результатом оценки по модели зрелости является не уровень, на котором находятся ваши платформы, а список того, над чем вам необходимо работать для улучшения. Текущий уровень — это лишь промежуточный результат, необходимый для определения списка возможностей, которые следует развивать дальше. Авторы рекомендуют определить свое текущее положение в модели, а затем выявить возможности на соседних уровнях.
Пять аспектов модели зрелости Platform Engineering:
- Investment (Инвестиции). Как организованы платформенные команды и их финансирование? Данный аспект отражает то, как масштаб и широта инвестиций влияют на успех платформ;
- Аспект Adoption (Принятие). Как пользователи используют и переходят на платформенные сервисы? Данный аспект описывает не только то, как и в каком объеме организация использует платформенные возможности, но и то, что мотивирует ее к этому;
- Аспект Interfaces (Интерфейсы). Как пользователи взаимодействуют с платформенными сервисами? Данный аспект отражает как интерфейсы, предоставляемые платформами, определяют то, как пользователи взаимодействуют с платформенными сервисами для заказа, управления и наблюдения за сервисами;
- Аспект Operations (Развитие). Как планируются, приоритизируются, разрабатываются и поддерживаются платформенные сервисы? Данный аспект описывает как в организации создают и поддерживают платформенные сервисы на всех этапах жизни: от приема новых запросов и первичных релизов до обновлений, расширений, регулярного сопровождения и эксплуатации, поддержки пользователей, а также вывода сервисов из эксплуатации и завершения их использования;
- Аспект Measurement (Измерение). Как платформенные команды работают с метриками и обратной связью? Данный аспект показывает как организован процесс сбора и использования обратной связи и обучения.
Модель зрелости Platform Engineering от CNCF в виде таблицы представлена ниже: