Реинжиниринг системы на low-code платформе Nintex/К2 для компании «К2РУ»
2021 – год low-code платформ, по версии журнала Software Development Times. Рассказываем, как помогли клиенту ускорить загрузку страниц на специализированной платформе Nintex/К2.
Клиент
Компания К2РУ занимается автоматизацией бизнес-процессов на платформах Nintex и К2. Их решения позволяют разрабатывать интерфейсы и настраивать интеграции, не прибегая к программированию.
Цель
Ускорить пользовательский сайт, чтобы на открытие каждой страницы уходило не более 4 секунд.
Особенности проекта
Управление командой было организовано так, чтобы все участники работали с комфортом, четко понимали постановку и распределение задач, а также сроки реализации и критерии качества. Общение на некоторых митингах при этом происходило сразу на трех языках, так как в команде специалисты из четырех стран.
Что сделали
Погружение в специфику платформы. Около 2 недель мы осваивали Nintex/К2, изучая ее возможности. Также мы провели оценку работы предыдущего подрядчика и разобрали логику, которая была написана до нас.
Форма – это то, из чего строится IT-система на платформе Nintex/K2. До этого каждая страница сайта была одной большой формой с множеством кнопок, всплывающих окон и других элементов, очень тяжеловесной и скорость загрузки была низкой. Нашей задачей была декомпозиция имеющейся структуры. Нужно было сделать «каркас», на котором размещались более мелкие формы. Для простоты сравним с матрешкой. До Nintex/K2 все «игрушки» размещались в одном пространстве и занимали много места, нам нужно было сложить их и сделать это в правильном порядке, не нарушив целостность каждой.
Аналитика. Выполнили бизнес-анализ текущего продукта и выявили требования к его модернизированной версии. У нас было ограничение – не менять бизнес-процессы, поэтому тщательно выверяли содержание форм, взаимодействие с внутренними и внешними пользователями.
Разработка. Поделили процесс на несколько этапов.
- Декомпозиция. Брали готовые громоздкие формы и разбивали их на несколько логических частей, где было необходимо – переделывали некоторые правила или добавляли свои. Если бы мы переделывали всю структуру с нуля, то пришлось бы быть очень осторожными и медленными. А для заказчика было важно оптимизировать работу сайта как можно скорее.
- Создание React-application и перенос туда функциональности low-code форм. Приняли решение интегрировать сайт с React, чтобы дополнительно облегчить продукт, т.к. написать привычное api не представлялось возможным, взаимодействие frontend с сервером Nintex/К2 было непростой задачей. Мы выстроили его через фреймы.
- Создание backend для корректного функционирования React-application и взаимодействия с low-code частью.
Результаты
Совместно декомпозировали более 30 форм и интегрировали систему на платформе Nintex/К2 с React-application. Это позволило:
- снизить скорость загрузки страниц до 4 секунд и менее;
- сделать интерфейс более удобным для переключения между разделами на сайте.
Технологии
Nintex/К2, React, ASP.NET, Microsoft SQL Server