RPA als API-Ersatz: Vor- und Nachteile abwägen
APIs sind eine zuverlässige Möglichkeit für Anwendungen, einen Workflow auszuführen, doch sind nicht immer verfügbar. Wie man eine Integrationsstrategie um APIs und RPA entwickelt.
Robotic Process Automation (RPA) ist in den letzten Jahren immer populärer geworden, um damit unterschiedliche Systeme zu verbinden und Prozessabläufe zu automatisieren. Es stellt eine wichtige Daten- und Anwendungsintegrationsoption für Softwareteams dar, denen die APIs für diese Aufgabe fehlen. Inzwischen enthalten viele RPA-Produkte KI-Funktionen, welche sie für Unternehmen wertvoll machen, die das Ziel eines intelligenten Business Process Managements (BPM) verfolgen.
Allerdings ist Robotic Process Automation (RPA) nicht für jede Situation der richtige Ansatz, und es wird den Bedarf an zuverlässigen Programmierschnittstellen (APIs) nicht ersetzen – was bedeutet, dass RPA in den meisten Fällen als vorübergehende Lösung dienen sollte.
Unabhängig davon, ob Softwareteams eine RPA-Strategie als kurzfristige Lösung oder integralen Bestandteil der Integration von Geschäftsprozessen entwickeln, müssen sie die Prozesse ordnungsgemäß auf die Automatisierung vorbereiten, um die Vorteile von RPA auszunutzen und ein Scheitern zu vermeiden.
Warum wird RPA eingesetzt?
Robotic Process Automation (RPA) ist eine gute Möglichkeit, Daten in und aus der Software zu bekommen, wenn keine APIs verfügbar sind, vorausgesetzt, dass der Datentransfer eine einfache und statische Interaktion beinhaltet.
„Entwicklungsteams in Unternehmen sollten RPA zu ihrer Automatisierungs- und Entwicklungs-Toolbox hinzufügen“, sagt Rob Dunie, Analyst und Senior Director bei Gartner.
„RPA-Software folgt einer Reihe von skriptgesteuerten Aktionen, die an der Benutzeroberfläche ablaufen, was bedeutet, dass RPA keine Entscheidungen trifft, sondern eher UI-gesteuerten Regeln folgt, erklärt er.
RPA-Funktionen ähneln bekannten und getesteten Techniken wie Screen Scraping und Record-and-Reply, aber sie fügen eine sichtbare Ebene hinzu, die bestimmte Schaltflächen und Felder in der Benutzeroberfläche identifizieren kann. Viele RPA-Produkte ergänzen diese skriptgesteuerten Aktionen auch durch Machine Learning und künstliche Intelligenz (KI), um Zeichenerkennung und Textanalysen hinzuzufügen. Dies wird üblicherweise als Cognitive RPA bezeichnet, ist aber auch als Intelligent RPA bekannt.
RPA als Ergänzung zu APIs
RPA ergänzt APIs und ist kein separater Weg. Die API-Entwicklung ist teuer und zeitaufwendig, so dass RPA als temporäre Lösung zur Integration von Daten dienen kann, wenn eine API für eine bestimmte Anwendung nicht verfügbar ist – solange die zu automatisierenden Aktionen Routine sind.
RPA-Verbindungen sind von Natur aus empfindlicher als API-Integrationen, und es ist wahrscheinlicher, dass sie bei einer Änderung der Benutzeroberfläche abbrechen. Eine temporäre RPA-Verbindung kann einer Organisation jedoch die Zeit verschaffen, die sie für die Genehmigung und Entwicklung der erforderlichen API benötigt.
„Das ist nicht das, was Sie für immer behalten werden“, sagt Dunie. „Aber es gibt Ihnen einen Prototyp oder eine Notlösung, bis Sie wissen, was Sie stattdessen dort einbauen.“
RPA kann als ein zentraler, langfristiger Teil digitaler Prozesse fungieren, der nicht häufig geändert wird. Ein Unternehmen kann Robotic Process Automation beispielsweise konsequent für Stapelverarbeitungsaufgaben wie die Rechnungserfassung einsetzen.
Die Vorarbeit einer RPA-Strategie
RPA kommt nicht automatisch. Es erfordert von Softwareteams, dass sie die zugrunde liegende Anwendungsinfrastruktur genauso sorgfältig pflegen, wie sie es bei der manuellen Verwaltung tun würden. „Darüber hinaus erfordert der Einsatz von RPA, dass die Softwareteams die Systeme und Prozesse, die sie automatisieren wollen, gründlich studieren, dokumentieren und verstehen“, sagt Alan McSweeney, Business Solution and Data Architect beim irischen Stromversorger EirGrid.
„Die Vorteile von RPA zeigen sich in der schnellen Implementierung von Prozessautomatisierung und Entscheidungsfindung“, erläutert McSweeney. „Eine schnelle Implementierung kann jedoch bedeuten, dass sie inkonsistent, ungetestet, nicht skalierbar, fehleranfällig und schwer zu unterstützen ist.“
McSweeney betont daher, dass RPA-Anwender den für die Automatisierung angestrebten Prozess dokumentieren und die Entscheidungen, die bei jedem Schritt seiner Ausführung getroffen werden, gründlich verstehen müssen. Kein noch so leistungsfähiges Tool kann fehlerhafte Prozesse vollständig korrigieren. Er fügt hinzu, dass es vorhandene Ressourcen gibt, die Organisationen dabei helfen können, dies konsistent zu erreichen, wie zum Beispiel Decision Model and Notation, eine von der Object Management Group entwickelte Modellierungssprache für Geschäftsentscheidungen und die Identifizierung von Regeln.
„Teil einer RPA [-Strategie] ist ein Entdeckungsprozess, bei dem man in das Unternehmen geht und genau versteht, wie die Dinge funktionieren. Dokumentieren Sie Ihren aktuellen Geschäftsprozess, verstehen Sie seine Komplexität und werden Sie gut darin, diesen Geschäftsprozess zu vereinfachen“, lautet der Rat von McSweeney. „Und erwarten Sie nicht, dass es einfach ist: Die Mitarbeiter verstehen ihre Prozesse, aber sie dokumentieren sie nicht, und wenn sie es doch tun, bedeuten Ausnahmen und Änderungen, dass die Dokumentation schnell veraltet ist.“
Fünf RPA-Herausforderungen
Trotz aller Vorteile von RPA gibt es laut den Analysten auch einige Situationen, in denen die Automatisierungsfähigkeiten nicht unbedingt zu Verbesserungen führen:
1. Man sollte nicht davon ausgehen, dass man alles automatisieren kann. Dunie erklärt, dass Automatisierung nicht die Lösung ist, wenn die Daten nicht sauber genug sind, die Aufgabe Problemlösungs- oder Entscheidungsfähigkeiten erfordert oder die Kunden eine menschliche Interaktion erwarten. Er warnt davor, dass RPA-Anwender nicht nach Systemen suchen sollten, die sie nicht kontrollieren können.
2. Wenn man laufende Interaktionen mit einer Anbieter- oder Kundenplattform verarbeitet, benötigt man eine Integrationsstrategie, die Änderungen der Benutzeroberfläche und Funktionsaktualisierungen standhält. RPA läuft in festen automatisierten Schritten, und wenn das Unternehmen bei jeder Änderung Automatisierungsausfälle ständig überwachen und beheben muss, spart das keine Zeit.
3. Sicherheit ist laut McSweeney ein großer Vorteil von APIs und ein Schwachpunkt von RPA. RPA-Tools verfügen über erhöhte Privilegien, um menschliche Aktionen nachzuahmen, und ein Angreifer könnte diesen ungehinderten Zugang nutzen, um Schaden anzurichten. Alternativ wird eine gut konzipierte API explizit aufgerufen und kennt die Zugriffsrechte für den Aufrufer und validiert dann die Aktionen.
4. Eine weitere Herausforderung ist zu viel Freiheit, insbesondere für Geschäftseinheiten, die ihre eigenen RPA-Skripte schreiben. Die IT-Abteilung kann leicht die Kontrolle über die Anwendungsabhängigkeiten im gesamten Softwareökosystem verlieren. Eine Systemaktualisierung kann einen Workflow brechen, der auf Anwendungsintegrationen aufbaut, von deren Existenz man nichts wusste, warnt Dunie. Deshalb ist es besser, die RPA-Nutzung auf der Ebene der Geschäftseinheit zu überwachen. Das hilft, Abhängigkeiten richtig zu dokumentieren und zu testen und sicherzustellen, dass private Daten auch außerhalb automatisierter Skripte geschützt sind.
5. Schließlich stellt auch die Tatsache, dass RPA die Lebensdauer von Legacy-Anwendungen verlängert, eine Gefahr dar. „Geben Sie die [Anwendungs-] Modernisierung nicht für ein RPA-Hilfsprogramm auf“, sagt Dunie. RPA kann möglicherweise Legacy-Anwendungen verbinden und aktualisieren, die nicht für die Integration konzipiert wurden, doch das ist eine praktikable langfristige Strategie für das Management der Unternehmensarchitektur.
Es gibt eine Vielzahl von Business-Process-Management-Anwendungen, Low-Code-Entwicklungsmodule, APIs und andere Integrationsplattformen, die helfen können, eine Automatisierungsstrategie ohne die Risiken von RPA abzurunden. Konzentrieren Sie sich auf den Prozess und die Ziele für das Projekt, dann auf das Wie, und testen Sie jede Implementierung gründlich.