Роботизация бизнес-процессов: какой метод программирования использовать (Часть 8)

Разве не увлекательно наблюдать, как программный робот подражает действиям пользователей, в частности как осуществляет операции на уровне интерфейса пользователя (User Interface, UI) так же, как это делает человек? Бесспорно. Однако является ли это самым эффективным способом использования возможностей программных роботов? На этот вопрос нет однозначного ответа, особенно когда он адресуется разработчикам, которые привыкли применять программный метод автоматизации в разработке программного обеспечения.

Что же в общих чертах означают упомянутые методы роботизации бизнес-процессов:

  • программный метод автоматизации (background programming method): ваш программный робот способен обрабатывать операции / получать необходимые данные, используя прикладной программный интерфейс (Application Programming Interface, API) целевых приложений;
  • автоматизация на уровне интерфейса (UI programming method): ваш программный робот способен выполнять операции, считывать и обрабатывать массивы данных любых целевых приложений без фактического программного доступа к ним и осуществлять такие операции на уровне интерфейса пользователя.

Поскольку вопрос выбора метода программирования роботов является довольно актуальным для проектных команд, работающих над созданием программных роботов (TaskBot), будет полезно рассмотреть некоторые «за» и «против» обоих методов, прежде чем проектировать алгоритмы работы программного робота.

Обработка процессов / данных на программном уровне

Преимущества:

  • эффективное использование возможностей программного робота: осуществление операций на программном уровне будет происходить намного быстрее (в 5-10 раз) по сравнению с теми же операциями, которые выполнялись бы роботом на уровне интерфейса пользователя;
  • меньшая вероятность ошибки / отказа программного робота, поскольку робот будет осуществлять операции, используя API, и в случае внесения незначительных изменений в интерфейс пользователя это не повлияет на его работоспособность;
  • программный метод предоставляет бóльшие возможности для разработчиков RPA предусматривать и, соответственно, минимизировать случаи возможных ошибок.

Недостатки:

  • ограниченная визуализация для бизнес-пользователей, так как программный робот осуществляет операции на программном уровне и, соответственно, некоторые операции / шаги процесса не видимы для них. К тому же пользователю понадобится некоторое время, чтобы понять причины остановки или отказа программного робота и перевести логику программирования на доступный для человеческого понимания язык;
  • дополнительные затраты времени и трудоемкость: разработчику RPA, безусловно, понадобится больше времени, чтобы понять логику бизнес-процесса (сложные расчеты, принципы калькуляции и сверки данных) с целью корректного программирования алгоритмов.

Ключевые моменты:

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

Обработка процессов / данных на уровне интерфейса пользователя

Преимущества:

  • бóльшая визуализация для бизнес-пользователей, поскольку они могут видеть, как и что выполняет / обрабатывает программный робот на каждом шаге процесса. Соответственно, этот метод предоставляет бóльшие возможности оперативно отключить / свернуть программного робота и вернуть операции (действия) пользователю, когда это необходимо / в нештатных ситуациях;
  • экономия времени и усилий: как разработчику RPA вам не понадобится вникать во всех деталях в логику бизнес-процесса для программирования робота; достаточно будет просто имитировать действия пользователя.

Недостатки:

  • неэффективное использование возможностей программного робота: осуществление операций на уровне интерфейса пользователя будет длиться намного дольше по сравнению с осуществлением роботом тех же операций на программном уровне;
  • более высокая вероятность ошибок / отказов программного робота: в случае незначительных изменений на уровне интерфейса пользователя (расположение кнопки, изменение шрифта, дизайна и др.) программный робот, вероятно, не сможет осуществить необходимые операции.

Ключевые моменты:

  • если программный робот требует взаимодействия с некоторыми приложениями, встроенными в ваши целевые приложения, или же если нужно передать результаты в определенный шаблон приложения, в котором робот работал, следует применить программирование на уровне интерфейса пользователя, чтобы упростить передачу;
  • метод программирования на уровне интерфейса пользователя полезен, когда у вас возникают трудности с доступом к вашим целевым приложениям через API или API не доступен как таковой;
  • некоторые платформы по RPA уровня enterprise не поддерживают метод программирования на background’е, поэтому UI-метод является в данном случае единственно возможным.

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

Желаете узнать больше о Robotic Process Automation (RPA), пожалуйста обращайтесь в наши украинский и гонконгский офисы!

О Компании «DMS Solutions»:
DMS Solutions - провайдер технологии Robotic Process Automation (RPA), поставляющий полный спектр RPA решений. Мы - первый украинский провайдер услуг в сфере роботизации бизнес-процессов (Robotic Process Automation, RPA) и построении систем управления программными роботами. DMS Solutions работает на рынках Европы, Северной Америки и Азии и имеет офисы в Гонконге и Украине.

Смотрите наше видео о том, как программные роботы обрабатывают данные на уровне интерфейса пользователя и на background’е!