$30 off During Our Annual Pro Sale. View Details »

Применение low-code платформ в энтерпрайзе

Применение low-code платформ в энтерпрайзе

Выступление на конференции TrueTechDay 2023 в Москве.

Содержание:
1. Причины появления интереса к low-code платформам
2. Управление сложностью в обычном и low-code подходах
3. Технические проблемы с low-code и как снизить эти риски
4. Организационные проблемы с low-code и как снизить эти риски
5. Сценарии успешного применения
6. Чеклист выбора low-code платформы

Статья на эту тему и видео-запись доклада https://blog.byndyu.ru/2023/04/low-code.html

More Decks by Александр Бындю

Other Decks in Technology

Transcript

  1. TRUE TECH DAY 1
    Применение low-code
    платформ в энтерпрайзе
    byndyusoft
    Александр Бындю
    IT-архитектор

    View Slide

  2. ● Владелец и IT-архитектор Byndyusoft
    ● Методолог, эксперт в Agile и Lean
    ● Спикер на профессиональных IT-конференциях
    ● Преподаватель в ВУЗах
    ● Автор книги «Антихрупкость в IT»
    https://byndyu.ru
    Александр Бындю

    View Slide

  3. План
    1. Причины появления интереса к low-code
    платформам
    2. Управление сложностью в обычном и
    low-code подходах
    3. Технические проблемы с low-code и как
    снизить эти риски
    4. Организационные проблемы с low-code и как
    снизить эти риски
    5. Сценарии успешного применения
    6. Чеклист выбора low-code платформы

    View Slide

  4. TRUE TECH DAY 4
    1. Причины появления
    интереса к low-code
    платформам

    View Slide

  5. Low-code это создание ПО с
    помощью визуального редактора
    без или с минимальными
    написанием кода.
    Лозунг: “...with no-code/low-code
    platforms, anyone can build
    applications without software
    expertise, significantly faster, and at a
    fraction of the cost”

    View Slide

  6. Преимущества визуальной разработки
    1. Декларативное описание процесса:
    1.1. Его видно, поэтому проще коммуницировать внутри
    команды и с пользователями.
    1.2. Его могут создать не-программисты и делают это
    довольно успешно после прохождения обучения по
    платформе.
    1.3. Всегда актуальная документацию в виде схемы бизнес-
    процесса.
    1.4. InnerSource в стиле совместного визуального
    редактирования.
    2. Быстрое прототипирование и ускорение поставки новых
    версий за счет готовых автоматизаций внутри low-code
    платформ

    View Slide

  7. TRUE TECH DAY 7
    2. Управление сложностью в
    обычном и low-code
    подходах

    View Slide

  8. View Slide

  9. За счет чего “синий” равномерный?
    Целенаправленный и постоянный вклад в
    управление сложностью:
    1. Постоянный рефакторинг кода и
    архитектуры для соответствия новым
    реалиям бизнеса и нашим знаниям о
    системе.
    2. Тотальное автоматизированное
    тестирование: модульные, нагрузочные,
    e2e… тесты.
    3. Дробление систем на много мелких
    сервисов, чтобы их было удобно
    пересобирать в новые логические
    структуры.
    4. Тотальная автоматизация инфры и
    оценки внутреннего качества

    View Slide

  10. Почему “фиолетовый” уходит в красную
    зону?
    Ограничения платформы:
    1. Нет автоматизированного рефакторинга
    “визуального” кода и кода внутри
    квадратиков.
    2. Сложности в модульном тестировании.
    3. Low-code платформа – это скорее всего
    монолит со всеми вытекающими
    минусами.
    4. Автоматизация инфры и оценки
    внутреннего качества или отсутствуют
    или скрыты внутри платформы.

    View Slide

  11. Вашу систему будут
    постоянно менять

    View Slide

  12. Минимальные требования к
    low-code платформе
    Безопасно и
    дешево вносить
    изменения
    1. Не ломать предыдущее, т.е.
    делать надежное регресс-
    тестирование.
    a. Платформа должна иметь
    возможность автоматизации
    тестирования.
    2. Рефакторить дублирование, в том
    числе в визуальном редакторе.
    a. Вынос куска визуализации в
    параметризованную
    функцию
    b. Возможность писать код вне
    платформы в “обычном”
    стиле

    View Slide

  13. TRUE TECH DAY 13
    3. Технические проблемы с
    low-code

    View Slide

  14. Система контроля версий
    Вызывает сложности:
    1. Отслеживание изменений
    2. Поиск изменений
    3. Ревью изменений
    4. Работа с “ветками”
    5. Мердж конфликтов
    Как снизить риск:
    1. Выбор в пользу платформы с
    какими-то возможностями работы с
    версиями
    2. Есть платформы, которые
    генерируют код, который можно
    сравнивать
    Найди 10
    отличий

    View Slide

  15. CI/CD и другие элементы инфраструктуры
    Инфраструктуры нужно интегрировать. Это
    добавляет затраты:
    1. Объединение пайплайнов
    2. Объединение трассировок
    3. Объединение мониторингов
    4. Объединение логирования
    5. …
    6. Постоянная поддержка этой интеграции
    Как снизить риск:
    1. Выбор в пользу платформы, которая
    может использовать вашу готовую
    инфраструктуру

    View Slide

  16. Дублирование в “нарисованном”
    Как рефакторить “квадратики”? Куски
    процессов могут дублироваться и это
    невозможно отследить.
    Как следствие, технический долг будет
    расти со всеми вытекающими
    последствиями.
    Как снизить риск:
    1. Выбор в пользу платформы, которая
    имеет полноценные инструменты
    для рефакторинга. На данный
    момент такие неизвестны.
    2. Выбор в пользу платформы,
    которая умеет отслеживать
    дублирование в “нарисованном”.
    На данный момент такие
    неизвестны.

    View Slide

  17. Код внутри low-code
    Интерфейс не обладает необходимой
    для бизнеса гибкостью, потому код
    начинают писать внутри визуальных
    блоков.
    А это ведет:
    1. Нет рефакторинга
    2. Нет тестов
    3. Код находится внутри платформы
    и не является переносимым
    Как снизить риск:
    1. Выбор в пользу платформы,
    которая позволяет писать код вне
    визуальных блоков, т.е. вести
    разработку в обычном стиле.

    View Slide

  18. Информационная безопасность
    1. Не-айтишники не готовы принимать грамотные решения
    относительно доступов, работы с чувствительными данными
    и анализировать потенциальные дыры в безопасности.
    2. Редко в low-code платформе есть аудит логина, полноценный
    контроль прав доступа к данным и API
    3. Редко платформы дают возможность контроля SLA из
    коробки
    4. Сама платформа может иметь уязвимости, которые нужно
    отслеживать и закрывать.
    Как снизить риск:
    1. Обучить не-программистов основами кибер-безопасности
    2. Выбрать в пользу платформы, которая имеет развитую
    систему анализа и мониторинга безопасности
    3. Отслеживать потоки данных внутри платформы и в
    интеграциях
    4. Уделить внимание службы безопасности на приложения,
    созданные на low-code платформах

    View Slide

  19. TRUE TECH DAY 19
    4. Организационные проблемы
    с low-code

    View Slide

  20. Отсутствует общий
    визуальный язык
    Обучение визуальному языку
    платформы стоит денег.
    При этом почти у каждой платформы
    свой визуальный язык: Enterprise
    Low-Code Application Platforms Reviews
    and Ratings
    Как снизить риск:
    1. Выбор в пользу платформы,
    которая использует
    общепризнанную и
    распространенную нотацию

    View Slide

  21. Обучение пользователей стоит денег
    и времени
    1. Каждой платформе надо научить
    2. Каждая новая платформа требует
    нового обучения
    3. У платформы должен быть хоть
    какой-то рынок специалистов, чтобы
    быстро набирать специалистов или
    заменять тех, кто уволился.
    Как снизить риск. При выборе платформы
    отдавать предпочтения следующим:
    1. Существует рынок готовых
    специалистов
    2. Есть курсы обучения и обновления
    знаний
    3. Развитое комьюнити, например,
    много ответов на stackoverflow.

    View Slide

  22. Citizen Integrator занят
    основной работой
    Если у аналитика или менеджера проекта
    появилось время поиграть в автоматизацию, то он
    может сделать решения на платформе.
    Что происходит, когда он переключается на
    основную работу? Кто поддерживает решение? Кто
    обновляет? Что делать, если у него нет времени, а
    менять надо?
    Как снизить риск:
    1. Заранее договориться о времени, которое
    сотрудник будет выделять на работу с
    low-code платформой
    2. Заранее обговорить процедуру передачи
    решения от не-программиста тем, кто будет
    дальше развивать и поддерживать решение

    View Slide

  23. Скрытый рост Shadow IT
    Люди, которые не мыслят системами, будут делать
    локальные решения, которые не сложатся в стройную
    общую картину. Реинкарнация “Экселя”.
    Будет множество разрозненных решений, что ведет к
    удорожанию поддержки и развития.
    Как снизить риск:
    1. Выделять время IT-архитектора на ревью
    решений, созданных не-программистами
    2. Включать в архитектурный комитет вопросы
    создания продуктов на low-code
    3. Договориться с не-программистами о границах
    их ответственности и процедуре запроса
    помощи в случае, если нужно принять сложное
    проектное решение

    View Slide

  24. Вход копейка, выход рубль
    1. Если это коробка, то вероятен vendor lock.
    2. Если собственная разработка, то будет
    необходимость постоянно выделять бюджет на
    поддержку и развитие платформы.
    Отказ от low-code платформы будет означать полное
    пересоздание ПО.
    Как снизить риск. При выборе платформы отдавать
    предпочтение следующим возможностям:
    1. Использование своей инфраструктуры, чтобы
    снизить зависимость от платформы.
    2. Выносить код за контур платформы, чтобы его можно
    было переиспользовать.
    3. Имеет открытый исходный код.

    View Slide

  25. TRUE TECH DAY 25
    5. Сценарии успешного
    применения

    View Slide

  26. 1. Собственная платформа
    По мере эволюции IT-
    архитектуры часто компании
    доходят до оркестратора
    бизнес-процессов с
    визуальным интерфейсом

    View Slide

  27. View Slide

  28. View Slide

  29. Плюсы
    1. Полностью управляете кодовой
    базой.
    2. Расширение платформы
    безграничное и в нужном вам
    направлении.
    3. Можно упаковать в продукт и
    продавать другим.
    Минусы
    1. Чтобы создать платформу для
    программирования без программистов, нужны
    очень хорошие программисты и
    проектировщики.
    2. Платформа не может остановиться на первой
    версии, поэтому команда будет разрабатывать
    платформу… всегда и платить этой команде
    нужно много и долго.
    3. “Программисты” на платформе тоже получают
    зарплату.
    4. Поддержка пользователей, организация их
    обучения новым версиям стоит денег.

    View Slide

  30. 2. Гибридное решение

    View Slide

  31. Плюсы
    1. Получаем все преимущества
    визуальной разработки ПО.
    2. Получаем преимущества обычной
    разработки (синяя линия)
    Минусы
    1. Зависимость от платформы
    ● Чтобы снизить риск берите
    opensource.
    2. Необходимость обучения сотрудников
    этой платформе
    ● Чтобы снизить затраты берите
    BPMN, ее многие знают

    View Slide

  32. 3. Backend-for-Frontend (BFF)
    Фронтендеры сами
    собирают сервис,
    который принимает и
    отправляет данные в
    платформу.
    Экономия на времени
    бэков.

    View Slide

  33. 4. Быстрый MVP
    Аналитик или менеджер
    создает MVP для проверки
    гипотезы.
    Если выстреливает и нужно
    дальнейшее увеличение
    фич или надежности -
    переписываем обычным
    способом.

    View Slide

  34. TRUE TECH DAY 34
    6. Чеклист выбора low-code
    платформы

    View Slide

  35. Чеклист выбора идеальной low-code
    платформы
    ❏ Автоматизированный рефакторинг визуальных
    элементов
    ❏ Поиск дублирования
    ❏ Возможностью убирать дублирование в “функции”
    ❏ Разрешение вести кодовую базу вне платформы
    ❏ Полноценная система контроля версий
    ❏ Полноценная система управления кибер-
    безопасностью
    ❏ Открытость к автотестам: unit-тесты, нагрузочное
    тестирование, e2e тестирование.
    ❏ Возможность использовать свои инструменты CI/CD,
    мониторинга, логирования
    ❏ Код в opensource
    ❏ Развитая система обучения, поддержка комьюнити,
    хорошая документация

    View Slide

  36. Ссылки
    1. Gartner Says the Majority of Technology Products and
    Services Will Be Built by Professionals Outside of IT by
    2024
    2. 10 Challenges of Enterprise Low-code
    3. Где и как применять low-code платформы
    4. The ‘Problem’ With Low-Code (And How To Fix It)
    5. What's Wrong with Low and No Code Platforms?
    6. 8 signs your low-code platform is overpromising and
    underdelivering

    View Slide

  37. TRUE TECH DAY 37
    Спасибо
    Бындю Александр
    https://byndyu.ru

    View Slide