Deep Dive

Wiederverwendung & Templates: Einmal bauen, immer nutzen Reuse and Templates: Build Once, Use Always

Wer Flows kopiert, baut technische Schulden auf. Das DRY-Prinzip aus der Softwareentwicklung gilt genauso für Low-Code, und spart jeden Monat Stunden. Building the same thing twice is lost time. How to create reusable components and templates in Power Apps and Power Automate.

#power-apps#power-automate#templates#best-practices

von by  Felix Tischler

Wiederverwendung & Templates: Einmal bauen, immer nutzen

Das Problem: Zehn ähnliche Flows im Unternehmen. Jeder leicht anders. Dann ändert sich eine E-Mail-Adresse, und du musst zehn Flows anfassen. Und vergisst zwei davon. Und niemand weiß, welche Version die richtige ist.


Don’t Repeat Yourself, auch in Low-Code

In der Softwareentwicklung ist DRY (Don’t Repeat Yourself) ein Grundsatz: Was einmal funktioniert, wird nicht dupliziert, sondern intelligent wiederverwendet.

In Low-Code-Projekten passiert genau das Gegenteil, zu häufig:

  • Flows werden kopiert und leicht abgewandelt
  • Dieselbe Logik existiert in 5 verschiedenen Versionen
  • Ein Fehler in der Logik muss an 5 Stellen korrigiert werden
graph LR
 subgraph Falsch [" Ohne Wiederverwendung"]
 F1["Flow Urlaub\n(Genehmigungslogik)"]
 F2["Flow Investition\n(Genehmigungslogik)"]
 F3["Flow Reisekosten\n(Genehmigungslogik)"]
 end
 subgraph Richtig [" Mit Wiederverwendung"]
 P1["Flow Urlaub"] --> M["Child Flow\nGenehmigungslogik"]
 P2["Flow Investition"] --> M
 P3["Flow Reisekosten"] --> M
 end
 style Falsch fill:#fee2e2,stroke:#ef4444
 style Richtig fill:#dcfce7,stroke:#22c55e
 style M fill:#fef3c7,stroke:#f59e0b

Was Wiederverwendung bringt

VorteilKonkrete Auswirkung
EffizienzWeniger Aufwand pro neuem Prozess
QualitätGetestete Module, keine Fehler-Redundanz
SkalierbarkeitNeue Prozesse entstehen schneller
TransparenzZentrale Pflege statt Versionschaos

Drei Wege zur Wiederverwendung in Power Automate

1. Child Flows, modulare Teilprozesse

Bau die Genehmigungslogik einmal als Child Flow mit definierten Parametern:

GenehmigeAntrag(Status, Antragsteller, Betrag)
→ Rückgabe: Genehmigt: true/false, Kommentar: string

Dieser Flow kann aus beliebig vielen Parent Flows aufgerufen werden, unabhängig vom Kontext.


2. Solutions als Container

In einer Solution sammelst du zusammengehörige Komponenten:

  • Flows
  • Custom Connectors
  • Environment Variables
  • Dataverse Tables

Solutions können zwischen Umgebungen (Dev → Test → Prod) und zwischen Projekten migriert werden.


3. Templates als Startpunkt

Ein Template ist ein vorbereiteter Flow mit schon eingebautem Gerüst:

  • Grundstruktur
  • Triggerlogik
  • Fehlerbehandlung
  • Standardbenachrichtigungen

Statt bei Null zu starten, beginnt jedes neue Projekt mit einer soliden Basis.


Best Practices für wiederverwendbare Komponenten

 Baue GENERISCHE Flows, die über Parameter gesteuert werden können
 Dokumentiere Schnittstellen: Was muss rein, was kommt raus?
 Nutze ENVIRONMENT VARIABLES statt hardcodierter Werte
 Vermeide hardcodierte IDs, URLs, E-Mail-Adressen
 Nutze einheitliche Namenskonventionen + Versionierung

Template-Management in der Praxis

Ohne strukturiertes Management verkümmert eine Template-Bibliothek schnell.

Zentrales Repository: Alle Templates in einer gemeinsamen Solution oder einem geteilten SharePoint-Ordner. Klare Zugriffsrechte bestimmen, wer lesen und wer bearbeiten darf.

Dokumentation als Pflicht, jedes Template enthält:

FeldInhalt
KurzbeschreibungWas macht es?
Input-ParameterTypen, Pflichtfelder
Output-ParameterBedeutung der Rückgabewerte
Einschränkungenz. B. nur für SharePoint-Trigger
Version & ÄnderungshistorieWann wurde was geändert?

Deprecation-Strategie: Veraltete Versionen werden als „veraltet” markiert, nicht sofort gelöscht. So können bestehende Nutzer ohne Zeitdruck migrieren.


Wiederverwendbarkeit ist eine Haltung, nicht eine Technik

Das Konzept funktioniert nur, wenn du Prozesse so denkst, dass sie modular sind.

Stelle dir bei jedem neuen Flow drei Fragen:

  1. Wird das jemand anderes auch brauchen?
  2. Kann ich es parametrisieren oder konfigurieren?
  3. Ist das ein Einzelfall, oder ein Muster?

Fazit: Investiere einmal, ernten viele

Wer Flows kopiert, baut technische Schulden. Wer Flows modularisiert, baut Kapital.

Der Aufwand für einen gut gebauten, wiederverwendbaren Child Flow zahlt sich ab der zweiten Nutzung aus, und bei der zehnten Nutzung hat er seinen eigenen Aufwand zigfach amortisiert.

Eine gut gepflegte Template-Bibliothek spart jeden Monat Stunden, und reduziert Wildwuchs.