Jeder Betriebsablauf ist anders, und keiner davon bleibt unverändert. Die App-Entwickler und Prozessingenieure, die die Arbeit am besten verstehen, stehen auch unter dem größten Druck, mit ihr Schritt zu halten. Sie aktualisieren dieselbe Validierungsregel in einem Dutzend Apps, spüren jede Instanz eines Arbeitsauftragsablaufs auf, wenn sich ein Detail ändert, oder warten darauf, dass die IT etwas standardisiert, was das Team bereits beherrscht.
Heute verlässt „Functions“, die Funktion zur Wiederverwendung von Trigger-Logik von Tulip, die Early-Access-Phase und wird im Rahmen von r380 standardmäßig für jeden Arbeitsbereich aller Wochenkunden aktiviert.
Einmal schreiben. Überall verwenden.
Mithilfe von Funktionen können App-Entwickler einen Teil der Trigger-Logik einmalig mit demselben visuellen Editor, nativen Schleifen und komplexen Bedingungen definieren, wie sie bereits aus Automationen bekannt sind, und diese Funktion dann aus so vielen „ Apps “ oder Triggern aufrufen, wie für den Vorgang erforderlich sind. Wenn Sie die Funktion aktualisieren, übernehmen alle Apps, die darauf verweisen, die Änderung bei der nächsten Veröffentlichung. Das mühsame Aufspüren und manuelle Synchronisieren von Dutzenden Kopien derselben Logik gehört damit der Vergangenheit an.
So sollte die Entwicklung funktionieren: Diejenigen, die am nächsten am Prozess dran sind – Qualitätsverantwortliche, Prozessingenieure und Kompetenzzentren – entwickeln direkt geregelte, wiederverwendbare Lösungen, ohne darauf warten zu müssen, dass ein Anbieter oder ein zentrales Entwicklungsteam eine Änderung an den erforderlichen Stellen umsetzt.
Wiederverwendung, ohne die Kontrolle zu verlieren
Wiederverwendbare Logik ist nur dann von Nutzen, wenn Sie sich darauf verlassen können. Daher wurden Functions von Anfang an so konzipiert, dass sie einer Steuerung unterliegen. Wenn Sie eine App veröffentlichen, wird die Version jeder darin verwendeten Function festgeschrieben. Sollte sich die Logik dieser Function später ändern, funktionieren bereits in der Produktion laufende „ Apps “ weiterhin genau wie zuvor. Bevor Sie eine Function bearbeiten, zeigt Ihnen die Funktion „Where Used“ an, welche „ Apps “ derzeit darauf aufbauen. So kennen Sie die Auswirkungen bereits vor der Änderung und müssen diese nicht erst im Nachhinein feststellen.
Und für Kompetenzzentren (Centers of Excellence) wird diese Zuverlässigkeit zu einem echten Vorteil: Anstatt dass jeder „ App Builder “ dieselbe komplexe Logik von Hand neu erstellen muss, kann ein Kompetenzzentrum eine Funktion einmalig erstellen, prüfen und freigeben, woraufhin der Rest des Teams vertrauensvoll darauf aufbauen kann.
Dies ist dasselbe Prinzip, das auch die Plattform „ Tulip “ prägt: Geschwindigkeit muss nicht auf Kosten der Kontrolle gehen.
Neuerungen bei der allgemeinen Verfügbarkeit
„Functions“ steht den Early Adopters bereits seit Monaten zur Verfügung. Ab heute ist die Funktion standardmäßig für jeden Arbeitsbereich aktiviert, zusammen mit einigen Funktionen, die von den Early Adopters gewünscht wurden:
- Import/Export: So werden Funktionen zusammen mit Ihrem „ Apps “ über Instanzen und Arbeitsbereiche hinweg übertragen, wobei Maschinen- und Benutzerverweise auf der anderen Seite neu zugeordnet werden, sodass nichts unbemerkt auf den falschen Ort verweist.
- Sie können Funktionen direkt auf der Seite „Funktionsliste“ umbenennen, duplizieren und archivieren.
Welche Teams setzen diese Technologie ein?
All dies ist keineswegs nur Theorie. Einige der prozessintensivsten Kunden von „ Tulip “ nutzen Functions bereits seit Beginn der Early-Access-Phase, und die Muster, zu denen sie gelangt sind, sagen mehr darüber aus, wozu Functions dienen, als es jede Funktionsliste jemals könnte.
Ein Hersteller von mobilen Automatisierungslösungen hat zwei seiner am häufigsten genutzten Funktionen rund um die Erstellung von Einheiten entwickelt: das Abrufen eines in Bearbeitung befindlichen „ Arbeitsauftrag “ oder das Auslesen des nächsten verfügbaren „ ERP “ aus dem „ “ sowie die „ Arbeitsauftrag “-Abschlussfunktion; beide werden täglich in rund 300 Anwendungen intensiv genutzt. Für die Prozessingenieure des Unternehmens liegt der Vorteil nicht nur in der Reduzierung doppelter Auslöser, sondern auch in der Übersichtlichkeit: Anstelle einer Flut von „Wenn-Dann“-Logik können sie einen Schritt namens „Einheit erstellen“ betrachten und genau nachvollziehen, was geschieht, ohne die zugrunde liegenden Abläufe einsehen zu müssen.
Für einen anderen Roboterhersteller sind „Functions“ zum Rückgrat einer Umstellung auf eine „Hub-and-Spoke“-App-Architektur geworden. Eine kleine Anzahl zentral verwalteter „Functions“ übernimmt die Standardvorgänge, während „Citizen Developer“ die spezifischen Apps darum herum entwickeln. Insbesondere Tabelleneinträge werden konzeptionell ausschließlich als „Functions“ behandelt:
„Wenn Sie einen Tabelleneintrag erstellen oder diesen in wesentlicher Weise ändern, lasse ich dies jedes Mal über eine Funktion laufen. So kann ich meinen Citizen-Entwicklern klare Vorgaben machen. Ich weiß, dass jeder, der eine Einheit anlegt, genau dieselben Informationen auf genau dieselbe Weise bereitstellt. Niemand wird das System missbrauchen und einen Fehler verursachen, den ich anschließend beheben muss.“
– ein Solutions Engineer über die Nutzung von Functions in seinem Team
Innovafeed, das einen hochgradig automatisierten Prozess zur Herstellung von Protein auf Insektenbasis betreibt, nutzt „Functions“, um die Logik über verschiedene Versionen derselben App hinweg konsistent zu halten. Eine einzige „Function“ definiert nun die Logik für die Zuweisung von Behältern und die Erstellung von Versanddokumenten und wird sowohl von der vollständigen Desktop-App, die die Planer verwenden, als auch von der schlankeren mobilen Version, die die Mitarbeiter vor Ort nutzen, identisch aufgerufen. Diese Funktion ersetzt drei separate Kopien derselben Logik, die zuvor auf verschiedene Schaltflächen verteilt waren. Das Team hat „Functions“ zudem genutzt, um eine Umgehungslösung in Form einer Schleife zu ersetzen, deren Wartung zu aufwendig geworden war, und hat wiederkehrende Logik in einer einzigen wiederverwendbaren Komponente zusammengefasst. Diese Änderungen lassen sich schneller ausführen, sind zuverlässiger und weitaus einfacher zu warten.
Erste Schritte
Am besten beginnen Sie mit Mustern, die Sie bereits haben. Suchen Sie nach Logik, die Ihr Team bereits mehr als einmal kopiert und eingefügt hat: eine Validierungsregel, die sich in jedem Scan-Schritt wiederholt, eine Sequenz zur Aktualisierung von Arbeitsaufträgen, die in einer App nach der anderen neu erstellt wird, oder dieselbe Fehlerbehandlung, die jeden Connector-Aufruf umgibt. Diese Wiederholungen sind in der Regel das deutlichste Anzeichen dafür, wo sich eine Funktion sofort auszahlen wird – sowohl durch die heute eingesparte Zeit als auch durch die Risikominderung, wenn diese Logik das nächste Mal geändert werden muss.
Digitalisieren Sie Ihre Abläufe mit Tulip
Erfahren Sie, wie App-basierte Systeme agile und vernetzte Betriebsabläufe unterstützen