Einsatzmöglichkeiten für Azure Functions für die Ausführung Ihrer Geschäftslogik

Abgeschlossen

Wir sehen uns jetzt einen anderen Prozess aus unserem Fahrradverleih an und entscheiden, welche Technologie am besten zu unseren Anforderungen passt. Wir berücksichtigen die technischen Aspekte des Prozesses, die Zielgruppe und wie sich unser Prozess entwickeln muss.

Szenario

Ihre Fahrradtechniker verwenden derzeit eine einfache Tabelle, um die Aktionen zum Reparieren und Warten eines Fahrrads zu erfassen. Bei der Ersatzteilbeschaffung sind Schwierigkeiten aufgetreten, da das Personal nicht weiß, wann ein Fahrrad auf Reparaturen oder Ersatzteile wartet. Dieses Problem hat dazu geführt, dass Fahrräder mit abgenutzten Bremsbelägen, platten Reifen und anderen Fehlern, welche die Marke der Firma als hochwertiger Fahrradverleih schädigen könnten, an Kunden vermietet werden.

Sie möchten ein System erstellen, das den Wartungs- und Reparaturprozess regelt und es jedem Benutzer ermöglicht, Antworten auf die folgenden Fragen zu finden.

  • Welche Arbeiten wurden für ein Fahrrad abgeschlossen?
  • Welche Arbeiten müssen noch erledigt werden, bevor das Fahrrad wieder vermietet werden kann?
  • Welche Fahrräder stehen derzeit zum Vermieten zur Verfügung?
  • Welche Fahrräder stehen derzeit nicht zum Vermieten zur Verfügung?
  • Für jedes Fahrrad, das nicht verfügbar ist, können die folgenden Fragen beantwortet werden:
    • Warum können wir es nicht vermieten?
    • Warten wir auf irgendwelche Ersatzteile, und was sind das für Ersatzteile?
    • Wann ist es wahrscheinlich, dass das Fahrrad wieder zum Vermieten zur Verfügung steht?

Sie möchten dieses System in den Reservierungs- und Vermietungsprozess für Fahrräder aus der letzten Lektion integrieren. Damit soll erreicht werden, dass Mitarbeiter bei der Suche nach verfügbaren Fahrrädern nur solche finden, die derzeit zum Vermieten zur Verfügung stehen. Ihr Vorgesetzter hat Sie gebeten, als Entwickler für dieses Projekt zu fungieren.

Geschäftsprozess

Sie möchten sicherstellen, dass die Fahrradtechniker auf beiden Campus den folgenden Workflow einhalten, wenn sie ein Fahrrad nach einer Vermietung warten:

Decision flow diagram detailing the logic for the Bike maintenance workflow.

Die Details sind wie folgt:

  1. Ein Kunde gibt ein Fahrrad an einem beliebigen Standort zurück. Der Prozess der Fahrradwartung beginnt.
  2. Ein Techniker markiert das Fahrrad als nicht verfügbar.
  3. Ein Techniker füllt eine vollständige Liste von Überprüfungen aus, einschließlich der Reifen, Bremsen, Antriebskette und Beleuchtung.
  4. Sind neue Teile erforderlich?
    1. Neue Teile werden benötigt, aber wir haben die Teile nicht auf Lager.
      1. Der Techniker bestellt neue Teile.
      2. Die Teile gehen ein.
    2. Die neuen Teile werden eingebaut.
  5. Ein Techniker schließt letzte Änderungen ab.
  6. Ein Techniker markiert das Fahrrad als für die Vermietung verfügbar.

Auswählen einer Technologie

Sie können mithilfe der folgenden Technologien den Geschäftsprozess implementieren und in die Standortdatenbank für Fahrräder integrieren.

  • Microsoft Power Automate
  • Azure Logic Apps
  • Azure Functions
  • Azure Service Apps WebJobs

Wie im vorherigen Szenario kann jede dieser Technologien zum Erstellen des Workflows verwendet werden. Es gibt jedoch zwei Punkte, die die optimale Wahl beeinflussen.

Design-First oder Code-First?

Es wäre schwierig, diesen Workflow nur mit Logic Apps oder Power Automate zu implementieren. Obwohl wir noch nicht allzu viele Detailinformationen kennen, ist klar, dass dieser Prozess auf ein Lagersystem zugreifen und Bestellungen bei einem Drittanbieter platzieren muss. Dies ist eine neue Geschäftslogik, und Sie sind nicht dazu verpflichtet, einem Design-First-Ansatz zu folgen. Sie können Ihre Lösung in einen benutzerdefinierten Connector einbinden, um sie in andere Workflows zu integrieren, die mit Logic Apps oder Power Automate erstellt wurden. Als Entwickler verfügen Sie über die größte Flexibilität, wenn Sie dieses Szenario mit einem Code-First-Ansatz angehen.

Azure Functions oder WebJobs in Azure App Service?

Wir müssen eine Entscheidung zwischen den beiden folgenden Technologien treffen.

  • Azure-Funktionen
  • WebJobs in Azure App Service

Die folgenden Faktoren beeinflussen Ihrer Wahl:

  • Kosten: Mit WebJobs bezahlen Sie für die gesamte VM oder den App Service-Plan, der den Auftrag hostet. Azure Functions kann unter einem Nutzungsplan ausgeführt werden, sodass Sie nur bezahlen, wenn die Funktion ausgeführt wird. Da dieser Vorgang erst bei der Rückgabe eines Fahrrads ausgelöst wird, können wir durch die Auswahl von Azure Functions Geld sparen.
  • Integrationen: Sie möchten den Wartungsworkflow mit der Logik-App integrieren, die Sie für den Fahrradbuchungs- und -vermietungsprozess in der vorherigen Einheit erstellen. Obwohl es möglich ist, einen WebJob aus einer Logik-App aufzurufen, ist die Integration zwischen Logic Apps und Functions enger. So können Sie beispielsweise Ihren Aufruf einer Funktion aus dem visuellen Designer für Logic Apps heraus einfacher steuern.

Aus diesen Gründen werden wir uns für Azure Functions entscheiden, um Ihren Geschäftsprozess im Bereich der Fahrradwartung zu verwalten.