Eine Mitarbeiterin klickt auf „Angebot freigeben“. Der Server muss prüfen, ob alle Angaben vorliegen und sie diesen Entwurf freigeben darf. Was wie ein einzelner Button aussieht, braucht Regeln für den gespeicherten Vorgang.

Wann darf das Angebot freigegeben werden?

Bleiben wir bei diesem fiktiven Freigabeprozess: Schreibe auf, welche Angaben erforderlich sind und welche Rolle die Freigabe erteilen darf. Was geschieht mit einem schon freigegebenen Angebot, wenn jemand den Preis ändert? Solche Fragen gehören zur Beschreibung der Funktion.

Die MDN-Einführung zur serverseitigen Entwicklung ordnet Datenverarbeitung und dynamische Antworten auf der Serverseite ein. Für deinen Auftrag ist entscheidend, welche dieser Aufgaben bereits existieren und welche neu entstehen sollen.

Anmeldung und Berechtigung unterscheiden

Eine Anmeldung identifiziert den Nutzer. Sie erlaubt nicht automatisch den Zugriff auf jeden Datensatz. Im Beispiel muss zusätzlich geprüft werden, ob die Person den konkreten Entwurf bearbeiten darf. Ein versteckter Button ersetzt diese Prüfung nicht.

Eine kleine Rollenmatrix hilft: Zeilen enthalten Aktionen, Spalten die Rollen. Trage ein, wer lesen, ändern und freigeben darf. Ergänze, ob sich ein Recht nur auf eigene oder zugewiesene Vorgänge bezieht.

Die Schnittstelle als Vertrag beschreiben

Frontend und Backend brauchen gemeinsame Erwartungen. Welche Daten werden gesendet? Wie sieht eine erfolgreiche Antwort aus? Was wird bei fehlenden Angaben zurückgegeben? Eine API-Beschreibung macht diese Fragen prüfbar.

Ein externer Dienst ist eine weitere Abhängigkeit. Wenn er einen Auftrag zunächst nur annimmt, darf die Oberfläche daraus keinen abgeschlossenen Vorgang machen. Bei wiederholten Aufrufen muss geklärt sein, ob neue Datensätze entstehen oder derselbe Vorgang erkannt wird.

Einen kleinen Umfang vollständig abgrenzen

Für eine einzelne neue Regel passt die Backend-Funktion. Ein bestehender Datenbereich mit neuen Zugriffen kann eine eigene API benötigen. Die Verbindung zu einem fremden Dienst ist eine Schnittstellenanbindung.

Prüfe bei einem angebotenen Kundenportal oder internen Werkzeug, welche dieser Arbeiten bereits enthalten sind. Lass die betroffenen Ansichten und Serverfunktionen im Angebot benennen, damit du denselben Teil nicht zweimal beauftragst.