Платформенный подход
При разработке микросервисных решений неизбежно приходится сталкиваться с одинаковыми задачами, которые необходимо решать каждый раз заново: управление и контроль архитектурных стандартов, обратная совместимость, контроль производительности, горизонтальной масштабируемости, информационной безопасности, управления ролями, логированием, операционным взаимодействием, покрытием тестами и т.д. Все эти рутинные задачи автоматизируют low-code платформы.
Благодаря тому, что всю техническую обвязку обеспечивает платформы, команды фокусируются на создании ценностей для бизнеса заказчика. Это снижает требования к компетенциям разработчиков, но требует высокой слаженности. Без платформ добиться такого уровня координации в работе сотен команд было бы невозможно.
Также low-code платформы позволяют реиспользовать большое количество компонентов, что также ускоряет разработку. Например, раньше разработчик тратил около 15% времени на создание нового кода, остальное время уходило на исправление ошибок, проектирование и доработку существующего кода. Сейчас благодаря платформенному подходу, скорость разработки нового кода значительно возросла: на создание нового функционала уходит примерно 50% времени.
Несмотря на перечисленные преимущества, low-code платформы часто вызывают скепсис. Это связано с тем, что раньше такие платформы разрабатывались в монолитной архитектуре, часто приводили к зависимости от поставщика, были практически не масштабируемы. Сейчас же low-code платформы нового поколения, реализованные в микросервисной архитектуре, решают эти проблемы. Например, к платформам нового поколения относятся платформы экосистемы low-code разработки микросервисных продуктов Digital Q.
Единое пространство для проектирования и разработки
Использование low-code платформ меняет подход к работе аналитиков и их взаимодействию с разработчиками: они объединяют процессы проектирования и написания кода в едином пространстве.
Аналитики занимаются проектированием с помощью визуальных инструментов. Например, на этапе проектирования логической архитектуры создается схема с ключевыми объектами, связями между ними и их типами. На основе этого можно сформировать всю техническую микросервисную обвязку и опубликовать код. Автоматически генерируются документация, описания и контракты, код проверяется юнит-тестами. После этого разработчики могут вносить изменения в сгенерированный код, добавлять уровни сложности и новые функции по мере необходимости. Такой подход значительно экономит время как разработчикам, так и аналитикам.
Далее аналитики работают над бизнес-процессами с помощью визуальных инструментов, которые позволяют быстро вносить изменения, а также оперативно разобраться в чужом коде в случае смены команды.
После завершения разработки начинается этап эксплуатации, который требует постоянного внесения изменений. Визуальные инструменты позволяют аналитикам быстро вносить изменения и запускать A/B-тесты: они могут контролировать сбои, отлаживать код в визуальном режиме и отслеживать процент отладки и тестирования в реальном времени. Работа аналитика и разработчика в визуальной среде позволяет контролировать эффективность программного продукта, выявлять проблемы в бизнес-процессах и улучшать их. Такой подход позволяет создать ситуационный центр для оптимизации процессов, что особенно полезно на операционном уровне.
