Lesen und beachten Sie die Automation Anywhere-Dokumentation

Automation Anywhere

Inhalt schließen

Inhalte

Inhalt öffnen

Designrichtlinien und Standards für Bots

  • Aktualisiert: 5/10/2019
    • 11.3.x
    • Erkunden
    • Enterprise

Designrichtlinien und Standards für Bots

Fortgeschrittene Anleitung zur Entwicklung von Bots und Richtlinien und Standards für die Bot-Entwicklung.

In diesem Thema erhalten Sie eine Einführung in verbreitete Richtlinien und Standards zum Bot-Design. Wenn Sie häufige Fehler vermeiden und diese Prozesse und Erwägungen bei Ihren Bot-Designstandards berücksichtigen, können Sie Bots erstellen, die sauber und stabil sowie leichter zu verstehen, zu testen und zu warten sind. Die meisten Richtlinien verbessern entweder die effiziente Nutzung von Produktionsressourcen oder sparen Zeit und Fehler bei der Wartung.

Erwägungen beim Bot-Design

  • Best Practice

    Beschränken Sie einen Aufgaben-Bot in Automation Anywhere auf weniger als 500 Zeilen; vorzugsweise sollte er nur ein paar Hundert Zeilen umfassen.

  • Prozesse aufteilen: Umfangreiche Geschäftsprozesse ergeben umfangreiche Bots.

    Der Schlüssel zur erfolgreichen Bot-Entwicklung für einen Geschäftsprozess ist eine gut definierte und wohl überlegte Strategie. Wenn ein Geschäftsprozess so groß ist, dass er mehr als 8 oder 10 Unteraufgaben erfordert, oder wenn eine der Aufgaben Tausende von Zeilen umfasst, sollte der Bot-Ansatz für den Prozess neu überdacht werden.

    Beurteilen Sie Ihre Geschäftsprozesse. Nutzen Sie die gewonnenen Erkenntnisse beim Entwurf Ihres Bot-Ansatzes.

    • Kann der Geschäftsprozess selbst vereinfacht werden? Identifizieren Sie redundante Schritte oder Abläufe, die sich im Kreis drehen.

    • Identifizieren Sie logische, in sich geschlossene Abschnitte oder Bereiche in Ihren Prozessen.

    • Können Teile des Geschäftsprozesses in separate Bots aufgeteilt werden?

  • Wiederholungen reduzieren

    Das DRY-Prinzip (Don't Repeat Yourself, Wiederhole dich nicht) und die Dreierregel zielen beide darauf ab, Wiederholungen zu vermeiden.

    Erstellen Sie eine Schleife, die einen einzigen Aufruf enthält, anstatt eine kleine Anzahl von Schritten separat aufzurufen.

    Nutzen Sie gegebenenfalls Variablen.

    Lagern Sie wiederholte Logikabschnitte oder Befehle in Unteraufgaben aus. Wenn ein Satz von Befehlen in einer Aufgabe mehrere Male wiederholt wird, erschwert das die Wartung. Wenn ein Update erforderlich ist, müssen alle Instanzen gefunden und korrekt aktualisiert werden.

  • Bei der Planung die Wartung berücksichtigen

    Wenn sich eine Regel, die in einem replizierten Satz von Aufgaben codiert ist, ändert, muss die Person, die den Code wartet, ihn an allen Orten korrekt ändern. Dieser Prozess ist fehleranfällig und führt oft zu Problemen.

    Beschränken Sie den Befehlssatz und die Regeln auf einen Ort. Wenn der Befehlssatz oder die Regeln nur an einem Ort vorhanden sind, können sie dort leicht geändert werden.

  • Testorientiertes Design

    Kleinere Aufgaben können für sich, d. h. in kleineren Einheiten, getestet werden. Aufgaben ohne Abhängigkeiten können automatisierte Tests nutzen. Aufgaben, die nach separaten Funktionen in Unteraufgaben aufgeteilt werden, selbst Aufgaben, die einmal am Beginn einer Sequenz durchgeführt werden, sind wartungsfreundlicher und leichter zu testen.

  • Handhabung von Netzwerkfehlern

    Wenn Sie Bots erstellen, die eine Netzwerkverbindung benötigen, sollten Sie auch Routinen für den Fall vorsehen, dass Verzögerungen bei der Verbindung auftreten. Ein Beispiel wäre, wenn ein Bot auf die Antwort einer Webseite wartet, z. B. darauf, dass das Dialogfeld „Speichern unter“ geöffnet wird, und das Netzwerk ausfällt. Was soll der Bot in diesem Fall tun: es erneut versuchen oder den Vorgang mit einer Meldung beenden?

Übersicht über Unteraufgaben

Eine Unteraufgabe wird von der übergeordneten Aufgabe aufgerufen, die den Dienst benötigt. Sie werden auch als Helferaufgaben oder Dienstprogrammaufgaben bezeichnet, da ihr einziger Zweck darin besteht, beim Aufruf von Aufgaben zu helfen.

Tipp:

Unteraufgaben sollten klein und fokussiert sein und nur eine einzige oder sehr wenige Zuständigkeiten haben.

Excel-Sitzungen, CSV-/Textdatei-Sitzungen und Browser-Sitzungen (Webaufzeichnung) können nicht auf separate Aufgaben aufgeteilt werden. Deshalb müssen Unteraufgaben so aufgenommen werden, dass diese Sitzungen nicht aufgeteilt werden.

Einige Vorteile:

  • Der Produktions-Aufgabencode ist kürzer.

  • Wenn Änderungen erforderlich sind, muss nur die Unteraufgabe gefunden, analysiert und bearbeitet werden. Das erleichtert die Bot-Wartung.

  • Die Unteraufgaben sind optimal wiederverwendbar.

    Wenn sie ordentlich ausgelagert werden, können Unteraufgaben so erstellt werden, dass sie wiederverwendbar sind. Das erhöht ihre Produktivität noch weiter. Die Unteraufgabe kann von einer beliebigen Anzahl anderer Aufgaben aufgerufen werden, darunter auch von anderen Bots.

  • Die Unteraufgaben sind optimal selbständig.

    Unteraufgaben sind natürlich nie ganz selbständig. Sie können nicht für sich selbst ausgeführt werden, sondern werden von einer übergeordneten Aufgabe aufgerufen. Aber andere Aufgabenabhängigkeiten sollten Sie nach Möglichkeit entfernen.

Erwägungen für Unteraufgaben

  • Prinzip der einzelnen Zuständigkeit

    Weisen Sie eine Aufgabe oder Zuständigkeit pro Unteraufgabe zu.

    Große Aufgaben in Unteraufgaben aufzuteilen, ist nützlich, aber wenn alle ähnlichen kleinen Aufgabe in einer Unteraufgabe zusammengefasst werden, können sich bei der Wartung nach wie vor Fehler ergeben. Eine Änderung, die an einer kleinen Aufgabe vorgenommen wird, kann Auswirkungen auf andere kleine Aufgaben haben, die in einer größeren Unteraufgabe enthalten sind.

    Es ist besser, mehrere Unteraufgaben zu erstellen, die jeweils einen einzigen, spezifischen Zweck haben. Wenn Sie beispielsweise eine große Unteraufgabe haben, in der eine PDF gedruckt, eine Datei verschoben und eine Datei gespeichert wird, sollten Sie diese Unteraufgaben jeweils aufteilen. Geben Sie jeder Unteraufgabe ihre eigene Zuständigkeit: eine zum Druck einer PDF, eine andere zum Verschieben der Dateien und eine dritte zum Speichern der Dateien.

  • Abhängigkeiten entkoppeln

    Definieren Sie nach Möglichkeit Unteraufgaben so, dass die aufrufende Aufgabe keine Informationen bereitstellen muss. Die bereitgestellten Informationen stellen eine Abhängigkeit dar. Identifizieren Sie die Abhängigkeit, und nehmen Sie sie in die Unteraufgabe auf. Dadurch sind die Unteraufgaben selbständig, können als Einheit getestet und von anderen Aufgaben aufgerufen werden, ohne dass sich neue Abhängigkeiten ergeben.

    Beispiel: Wenn eine Unteraufgabe zur Anmeldung nur aufgerufen werden kann, wenn die aufrufende Aufgabe eine URL angibt, stellt das eine Abhängigkeit dar. Alle übergeordneten Aufgaben, die diese Unteraufgabe aufrufen, müssen eine URL angeben. Wenn sich die URL ändert, müssen mehrere Aufgaben geändert werden. Wenn die Unteraufgabe zur Anmeldung die URL enthält, wird sie von der übergeordneten Aufgabe entkoppelt. Wenn sich die URL ändert, muss nur die eine Unteraufgabe aktualisiert werden.

  • Bidirektionale Abhängigkeiten

    Wenn Unteraufgaben nicht geändert werden können, ohne dass sich die aufrufenden Aufgaben ändern, sind sie abhängig und nicht wirklich entkoppelt. Wenn aufrufende Aufgaben nicht geändert werden können, ohne dass sich alle Unteraufgaben ändern, sind sie nicht wirklich entkoppelt, sondern es liegen bidirektionale Abhängigkeiten vor. Diese miteinander verflochtenen Abhängigkeiten machen Einheitstests nahezu unmöglich.

  • Zu viele Unteraufgaben vermeiden

    Obwohl alle oben aufgeführten Prinzipien gut für das Bot-Design sind, können andererseits auch zu viele Unteraufgaben die Wartung erschweren und zu Verwirrung führen. Die Anzahl der Unteraufgaben sollte noch überschaubar sein.

    Wenn ein Bot entweder 30 Unteraufgaben oder, ohne Unteraufgaben, mehrere Tausend Zeilen umfassen muss, lässt das darauf schließen, dass der Geschäftsprozess zu groß ist, um mit nur einem Bot bewältigt zu werden. Teilen Sie umfangreiche Prozesse in kleinere Teile auf, und wickeln Sie dann jeden der separaten Teile in seinem eigenen Bot ab.

Beispiel für eine Unteraufgabe

Angenommen, ein Bot muss ein Editor-Dokument als PDF-Datei drucken. Die Aufgabe könnte wie folgt aussehen:

Editor-Dokument als PDF-Datei drucken

In diesem Beispiel muss eine Datei drei Mal als PDF-Dokument gedruckt werden. Auf der Beispielentwicklungsmaschine hat der PDF-Drucktreiber den Namen Pdf995.

Empfehlungen:

  • Da es wahrscheinlich ist, dass der PDF-Drucktreiber in der Produktion einen anderen Namen hat, sollten Sie herausfinden, ob eine Variable eingesetzt werden kann.

  • Da die Möglichkeit besteht, dass diese Aufgabe in die Produktion übernommen und möglicherweise mehrmals wiederholt wird, sollte sie in eine Unteraufgabe umgewandelt werden.

Hier ist das Beispiel als Unteraufgabe:

Helferaufgabe zur PDF-Dateierstellung

Wenn Änderungen an diesem spezifischen Befehlssatz erforderlich werden, muss nur diese Helferaufgabe bearbeitet und erneut getestet werden.

Feedback senden