Эволюция рынка средств автоматизации бизнес-процессов выливается в очевидное противостояние двух конкурирующих технологий — RPA (robotic process automation, роботизация бизнес-процессов) и API (прикладные программные интерфейсы). Опрошенные порталом TechTarget эксперты рассказывают как о сильных, так и слабых сторонах каждой технологии, а также о том, что нужно для успешной реализации интеграционных проектов.

Как платформы RPA, так и API применяются в рамках инициатив по цифровой трансформации для связки приложений. Каждая из технологий обладает достоинствами, но при этом сферы их применения начинают размываться в условиях расширения набора технологий, что вызывает новые вопросы.

«В общепринятом понимании RPA реализует метод визуальной автоматизации (surface automation), или применение „скребка экрана“ (screen scraper)», — пояснил независимый консультант по вопросам внедрения RPA Тед Шелтон. Это предполагает эмуляцию действий человека при взаимодействии с приложением: движения мыши, нажатия клавиш для ввода данных. В свою очередь в API применяется кодирование логики интеграции для автоматической передачи данных между приложениями. С этой точки зрения RPA и API могут дополнять друг друга.

«RPA-платформы хорошо подходят для интеграции простых задач, которые оперируют небольшими объемами данных и не несут повышенных рисков, — говорит генеральный директор и соучредитель поставщика iPaaS Elastic.io Ренат Зубаиров. — Интеграция на основе API предпочтительнее, когда требуется интегрировать среды с большими объемами данных и имеются повышенные риски сбоев. В этом случае технология API является гораздо более безопасной и надежной».

Взаимодополняющие технологии

«RPA и API — это комплементарные технологии, — считает директор по цифровым технологиям Schneider Electric Эрви Курайл. Несмотря на то, что эта компания выбрал стратегию API-автоматизации, она тем не менее применяет RPA в качестве краткосрочного решения для бизнес-кейсов, для которых нет доступных API. К дополнительным преимуществам RPA-платформ Курайл относит быстрое и простое внедрение, а также низкие затраты на обслуживание без необходимости изменения приложений. Он поведал, что внедрение решений для интеграции в Schneider Electric начинается с анализа возможностей с целью определить, что является лучшим вариантом — RPA или API.

Например, если проект по интеграции довольно большой или бюджет для реализации API-подхода недостаточный, то лучше всего выбрать RPA. API же лучше применять для долгосрочных, стратегических бизнес-проектов. «Кроме того, иногда правильным выбором является гибридный подход», — добавил Курайл. К примеру, инструменты RPA лучше приспособлены для преобразования полученных путем оптического распознавания символов (OCR) данных в расширенные форматы для приложений типа ERP, но чтобы улучшить поток передаваемых данных в другие бизнес-процессы, их лучше всего доверить API-решениям.

Плюсы RPA

Платформы RPA обеспечивают связь с устаревшими системами. «Многие устаревшие системы, будь то корпоративное ПО или домашние приложения, не предоставляют API-интерфейсы», — отметил Джон Тиленс, технический директор компании Cleo, которая занимается предоставлением услуг по интеграции ПО. Как известно, RPA позволяет моделировать взаимодействие человека с унаследованными системами, что делает их полноправными участниками инициатив в области автоматизации и модернизации. Другими словами, технология бесшовно инкапсулирует их в этот процесс, что устраняет необходимость в замене (по крайней мере, немедленной) устаревших программ.

Проекты RPA четко структурированы. Один из наиболее сложных аспектов ИТ-проектов — правильное определение требований. «В чем причина успеха RPA? Эти платформы хорошо приспособлены для работы с процессами, которые интегрированы с проверенными, показавшими себя с надежной стороны программами», — утверждает Тиленс. В то же время API-проекты часто являются новыми, включают новые приложения или новые процессы, поэтому для достижения желаемого результата может потребоваться несколько итераций.

Преодоление конфликта. Платформы RPA способствуют преодолению конфликта между бизнес-пользователями и ИТ-отделом. «ИТ-департамент не горит желанием предоставлять API, поэтому чтобы избавиться от контроля бизнес создает теневую ИТ-функцию, задействуя RPA для выполнения своей работы», — сказал Шелтон. Здесь скорее нужно говорить о проблемах управления, которые преследуют бизнес, чем о преимуществе RPA в сравнении с API.

Моделирование бизнес процессов. RPA позволяет быстро и легко моделировать бизнес-процесс, считывая манипуляции человека с пользовательского интерфейса. По словам Шелтона, затраты на моделирование бизнес-процесса и разработку сервиса с использованием API могут оказаться намного выше. В результате с точки зрения общей стоимости владения RPA является более выгодным решением.

Комплексное решение. «К достоинствам RPA можно отнести то, что это пакетное решение для конкретной бизнес-задачи, которую требуется решить», — говорит генеральный директор консалтинговой компании по облачным решениям Astor Себастьян Долбер. С одной стороны, RPA избавляет клиента от тонкой настройки платформы, позволяя ему попасть из точки A в точку B за один проход, но, с другой стороны, ей не хватает гибкости, которую может дать API.

Минусы RPA

RPA не улучшает процессы. RPA следует рассматривать как средство рационализации: она оптимизирует существующие процессы, но не улучшает их, отметил Тиленс.

RPA слишком чувствительна к изменениям. По мере обновления зависимых от RPA систем, привязанные к ним процессы автоматизации не всегда могут распознать небольшие изменения, которые люди замечают и к которым приспосабливаются без труда. Изменения цвета, надписей на кнопках или переработанное меню может привести к отключению интеграции RPA. «Таким образом, RPA не так гибка, как API», — считает Тиленс.

Однако, как полагает Курайл, улучшенные возможности OCR и машинного обучения будут способствовать тому, что RPA сможет обнаруживать изменения и корректировать конфигурацию. «Потенциально новое поколение RPA станет в какой-то мере самовосстанавливающимся и будет лучше реагировать на запросы об изменениях и улучшениях», — сказал он.

RPA — не интеграция. Интеграция — это структурированная дисциплина, которая дает возможность экспертам в предметной области автоматизировать и развивать бизнес, сохраняя при этом гибкость управления и производительность. Тиленс утверждает, что хотя RPA — полезный инструмент в ИТ-арсенале, это не чистая интеграция.

Плюсы API

Повторное применение. «API — это совокупность методов, которые выполняют одиночное действие и могут стать основой приложения, службы или даже RPA», — сказал Долбер. В отличие от RPA, которая служит только одной цели, предприятия могут использовать технологию API для разных целей, что важно для переносимости решений.

API — везде. API повсеместно распространены как в потребительской, так и в бизнес-сферах. По словам Тиленса, многие разработчики современного ПО прилагают к нему API, что легко позволяет создавать контактный слой для подключения.

API быстро работают. API могут быстро и эффективно подключаться в режиме реального времени к приложениям-партнерам и SaaS-приложениям.

API учитывает нюансы. «Польза RPA не выходит за рамки тривиальных бизнес-процессов, таких как задачи ввода данных или простой двухточечной оркестровки», — утверждает главный директор по продуктам разработчика платформы для API-интеграции Cloud Elements Рос Гаррет. Большинство корпоративных бизнес-процессов обладают углубленной детализацией и полагаются на сложные сценарии интеграции данных и приложений. Эта проблема усугубляется тем фактом, что корпоративные ИТ-ландшафты адаптируют большое количество облачных приложений, что создает необходимость в улучшенном управлении данными и другими частями инфраструктуры, которые встраиваются в инструменты управления API.

Минусы API

Соединение точек. Недостаток API заключается в том, что разработчикам приходится соединять конечные точки и связывать вызовы методов API, чтобы они могли решить конкретную бизнес-проблему, сказал Долбер. API — это набор методов программирования, которые разработчики могут при необходимости применять. Как правило, это простые функции. «Чтобы достичь сравнимого с RPA результата, нужно приложить немало усилий, поскольку нужно вручную координировать и организовывать вызовы методов API», — пояснил он.

Обременительный процесс внесения изменений. «Изменения, внесенные в API, должны быть согласованными с общими политиками управления ИТ-процессами», — сказал глобальный директор по автоматизации бизнеса поставщика решений для взаимодействия с клиентами Genesys Грэм Прован. Это дорогостоящие процедуры как с точки зрения времени, так и ресурсов.

API не стандартизированы. «Может показаться удивительным, но в настоящее время нет общепринятых стандартов API, что замедляет реализацию API и сокращает возможности их обработки в реальном времени», — утверждает Тиленс.

API могут быть некачественно разработанными. По словам Тиленса, многие API страдают некачественным дизайном. Несмотря на то, что есть немало организаций, которые внедрили хорошие инструменты для управления и даже для разработки API, сам процесс их разработки часто доверяется команде, которая занимается созданием приложений.

Выводы

Тиленс считает, что компании не должны стоять перед выбором между RPA и API: «ИТ-директора нуждаются в арсенале инструментов и практик, которые позволят сбалансировать имеющуюся инфраструктуры с модернизацией и инновациями, необходимыми для развития бизнеса». В настоящее время интеграция должна быть одной из основных компетенций организации, и как RPA, так и API играют в этом определенную роль. Он отстаивает идею, чтобы ИТ-директора привносили в платформы RPA и API средства из области разработки.

«Буква „P“ в API означает программирование, а буква „R“ в RPA — роботизацию. Но во многих случаях интеграционные проекты с использованием API и RPA не требуют ни программистов, ни роботов», — сказал Тиленс. Чтобы реализовать эти проекты должным образом, нужно прибегнуть к таким практикам разработки, как анализ требований, функциональное и нефункциональное проектирование, планирование жизненного цикла систем, управление и соответствие требованиям. Их нужно учитывать при выборе инструмента.