Low-code платформы: 3 совета, которые упростят внедрение
Low-code платформы позволяют создавать приложения с помощью графических пользовательских интерфейсов (GUI) вместо написания кода. Они привлекают всё больше внимания, так как помогают бизнес-пользователям быстро создавать приложения без знаний программирования.
Тысячи компаний используют платформы low-code для разработки критически важных решений для бизнеса. Все, кто уже успел поработать с такими инструментами, смогли оценить их надежность и удобство. Однако, когда бизнес достигает определенного уровня зрелости, его экосистема может потребовать нестандартных подходов, которые базовые low-code платформы обеспечить не в состоянии.
Low-code отлично подходит для крупномасштабной разработки, но бывают ситуации, когда необходимо заимствовать методы из традиционного программирования. Это позволяет значительно улучшить качество решений, уменьшить количество рутинных задачи и облегчить работу команде разработчиков, сократив таким образом расходы на проекте.
В этой статье мы делимся своим опытом решения сложных задач разработки на платформе low-code с использованием нестандартных подходов.
Клиент
Наших экспертов пригласили помочь нескольким командам, разрабатывающим CRM систему для крупного банка с использованием платформы low-code. Группа состояла из более чем 50 человек различных ролей: разработчиков разного уровня, QA специалистов, бизнес-аналитиков и инженеров. Деятельность банка охватывает множество направлений, включая розничное кредитование, кредитование юридических лиц и ипотечное кредитование, и каждая команда занималась функционалом для своего направления. Релизы проходили независимо, но все команды создавали единое универсальное приложение.
Основные трудности команды были связаны с качеством релизов и сложностью их установки.
Оценка качества приложения
Многие платформы low-code имеют встроенные инструменты для обеспечения качества приложений. Это дашборды, отображающие общее состояние приложения, возможности просмотра разработанного функционала в ветках и отслеживания функционала через тесты.
К сожалению, когда несколько групп работают над одним приложением, функционал, разработанный одной командой, может неявно влиять на работу другой команды.
Проведение полноценного кросс-обзора и регрессионного тестирования не всегда возможно, поэтому логичным решением стало применение лучших практик из традиционного программирования. Мир разработки на Java предлагает зрелые практики контроля качества приложений, которые развиваются уже более 20 лет. Специалисты Atomazing решили адаптировать некоторые из них для платформы low-code:
- Модульное тестирование на Java
- Контроль качества сборки
- Код-ревью с использованием внешних инструментов
1. Модульное тестирование
Основная проблема заключалась в отсутствии сложных интеграционных тестов, которые могли бы проверять работу множества бизнес-правил в совокупности, исключая взаимодействие с внешними системами, которые могут быть недоступны. Такая функциональность часто отсутствует в платформах low-code, но глубокие знания Java позволили решить эту проблему.
С помощью инструментов модульного тестирования Java наша команда быстро написала необходимые юнит-тесты и интеграционные тесты, которые позволяли проверять сборки и выявлять проблемные места. Набор инструментов Java настолько обширен, что позволяет создавать тесты для всех нужных бизнес-сценариев.
2. Контроль качества сборки
Наши специалисты стремились автоматизировать контроль качества потенциального релиза после сборки. Команда добавила новые предупреждения и ограничения в среду разработки. Мы создали этап в pipeline, который проверял соответствие сборки установленным критериям:
- Отсутствие предупреждений без объяснения разработчика.
- Отсутствие предупреждений среднего и высокого уровня.
- Отсутствие предупреждений, связанных с производительностью.
- Покрытие тестами более 85% новых функций.
Если сборка не соответствовала критериям, pipeline автоматически её отклонял.
3. Код-ревью
Встроенные инструменты для код-ревью на платформах low-code подходят для стандартных проектов, однако для кастомизированных приложений они часто ограничены. Мы интегрировали инструменты из традиционного программирования.
Для всех элементов low-code были созданы удобные текстовые представления изменений, позволяющие ревьюерам оставлять комментарии к конкретным строкам. Это ускорило и улучшило процесс ревью.
Автоматизация сборочного pipeline
Большинство платформ low-code поддерживают процессы CI/CD, но их гибкости часто недостаточно. Например, релиз может включать не только новое приложение, но и изменения в базе данных, сложную миграцию данных и инструкции для настройки переменных среды.
Команда Atomazing адаптировала pipeline, используя подходы Java. На основе конфигурационного файла сервер сборки выгружал необходимые артефакты, выполнял SQL-скрипты и проводил миграции. Этот подход минимизировал ручные операции и количество ошибок.
Заключение
Платформы low-code предоставляют широкие возможности для бизнеса. Однако если встроенных функций недостаточно, всегда можно интегрировать лучшие практики традиционного программирования, чтобы достичь наилучшего результатов.
Comments 2
Login to leave a comment
Ayaulym Argyngazina · Nov. 23, 2024 19:08
🔥
Lain Iwakura · Nov. 23, 2024 18:49
cool!