Anwenden von Regeln auf Workflowzustände (Vererbungsprozess)

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Nachdem Sie Ihren Workflowstatus für einen Arbeitsaufgabentyp hinzugefügt oder geändert haben, definieren Sie Regeln, die basierend auf der Änderung des Workflowstatus gelten. Das Hinzufügen von Regeln zu Workflowzuständen unterstützt die folgenden Szenarien:

  • Unterstützen eines Genehmigungsprozesses
  • Verhindern, dass nicht autorisierte Benutzer einen ungültigen Zustand festlegen
  • Festlegen eines felds erforderlich oder schreibgeschützt oder eines anderen Werts basierend auf Statusänderungen
  • Einschränken des Übergangs von einem Zustand zu einem anderen
  • Einschränken oder Zulassen von Statusübergängen auf bestimmte Benutzer oder Gruppen
  • Verwalten eines kontrollierten Workflowprozesses und Unterstützen von Überwachungsanforderungen
  • Automatisieren des Schließens übergeordneter Arbeitsaufgaben
  • Unterstützen eines Genehmigungsprozesses
  • Verhindern, dass nicht autorisierte Benutzer einen ungültigen Zustand festlegen
  • Festlegen eines felds erforderlich oder schreibgeschützt oder eines anderen Werts basierend auf Statusänderungen
  • Einschränken des Übergangs von einem Zustand zu einem anderen
  • Automatisieren des Schließens übergeordneter Arbeitsaufgaben
  • Unterstützen eines Genehmigungsprozesses
  • Festlegen eines felds erforderlich oder schreibgeschützt oder eines anderen Werts basierend auf Statusänderungen
  • Automatisieren des Schließens übergeordneter Arbeitsaufgaben

Wichtig

Das Vererbungsprozessmodell ist für Projekte verfügbar, die für die Unterstützung konfiguriert sind. Wenn Sie eine ältere Sammlung verwenden, überprüfen Sie die Prozessmodellkompatibilität. Wenn Ihre lokale Sammlung für die Verwendung des lokalen XML-Prozessmodells konfiguriert ist, können Sie dieses Prozessmodell nur verwenden, um die Arbeitsverfolgungserfahrung anzupassen. Weitere Informationen finden Sie unter Auswählen des Prozessmodells für Ihre Projektsammlung.

Voraussetzungen

Um Regeln auf Workflowzustände in Azure DevOps anzuwenden, benötigen Sie bestimmte Berechtigungen und Zugriffsstufen:

  • Berechtigungen:

    • Als Projektadministrator können Sie Sicherheitsgruppen und Berechtigungen auf Projektebene verwalten, die das Festlegen von Regeln für Workflowzustände umfasst.
    • Verfügen Sie über die Berechtigung zum Nachverfolgen von Arbeitsaufgaben, mit der Sie den Arbeitsbereich für die Nachverfolgung verwalten können, der Mitgliedern der Gruppe "Projektadministratoren" oder über bestimmte Berechtigungen gewährt werden kann.
  • Zugriffsebenen:

    • Verfügen Sie über einen einfachen Zugriff, der in der Regel für die meisten Benutzer ausreicht, die Arbeitsaufgaben verwalten und Regeln auf Workflowzustände anwenden müssen.

Grundlegendes zu Workflowregeln

In der folgenden Tabelle werden die drei Gruppen von Workflowregeln beschrieben, die Sie definieren können:

  1. Standardaktionen:

    • Wenden Sie an, wenn eine Arbeitsaufgabe erstellt, in einem ausgewählten Zustand oder von einem Zustand in einen anderen verschoben wird.
    • Aktionen umfassen das Festlegen des Werts eines Felds, das Schreibschutzfeld oder das Festlegen eines Felds, das erforderlich ist.
    • Sie können eine oder zwei Bedingungen und mehrere Aktionen angeben.
  2. Einschränken von Zustandsübergängen (Gruppe 1):

    • Geben Sie eine Bedingung an, die den Zustand angibt, aus dem eine Arbeitsaufgabe verschoben wurde.
    • Definieren Sie Aktionen, um Übergänge von diesem Zustand zu anderen Zuständen einzuschränken.
  3. Einschränken von Zustandsübergängen (Gruppe 2):

    • Geben Sie ähnlich wie bei der ersten Gruppe eine Bedingung an, die den Zustand angibt, aus dem eine Arbeitsaufgabe verschoben wurde.
    • Definieren Sie Aktionen, um Übergänge von diesem Zustand zu anderen Zuständen einzuschränken.

In der folgenden Tabelle werden die beiden Gruppen von Workflowregeln beschrieben, die Sie definieren können:

  1. Standardaktionen:

    • Wenden Sie an, wenn eine Arbeitsaufgabe erstellt, in einem ausgewählten Zustand oder von einem Zustand in einen anderen verschoben wird.
    • Aktionen umfassen das Festlegen des Werts eines Felds, das Schreibschutzfeld oder das Festlegen eines Felds, das erforderlich ist.
    • Sie können eine oder zwei Bedingungen und mehrere Aktionen angeben.
  2. Einschränken von Zustandsübergängen:

    • Geben Sie eine Bedingung an, die den Zustand angibt, aus dem eine Arbeitsaufgabe verschoben wurde.
    • Definieren Sie eine oder mehrere Aktionen, um Übergänge von diesem Zustand zu anderen Zuständen einzuschränken.

Hinweis

Bestimmte Features erfordern die Installation des Azure DevOps Server 2020.1-Updates. Weitere Informationen finden Sie unter Azure DevOps Server 2020 Update 1 RC1 Versionshinweise, Boards.

Workflowbedingungen und Aktionen, die Sie festlegen können, sind in den folgenden Bildern dargestellt. Sie können Standardaktionen anwenden, wenn eine Arbeitsaufgabe erstellt wird, in einem ausgewählten Zustand oder von einem Zustand in einen anderen verschoben wird. Diese Standardaktionen legen den Wert eines Felds fest oder machen ein Feld schreibgeschützt oder erforderlich. Für diesen Regelsatz können Sie eine oder zwei Bedingungen und mehrere Aktionen angeben.


Condition

Unterstützte Aktionen


Festlegen des Feldwerts oder Festlegen eines schreibgeschützten/erforderlichen Werts basierend auf dem Status

Bedingungen, Arbeitsaufgabe wird erstellt

Aktionen, Arbeitsaufgabe wird erstellt


Einschränken eines Übergangs basierend auf dem Status

Bedingung, Arbeitsaufgabe wird verschoben

Aktionen, Einschränken einer Transaktion basierend auf dem Status.


Feld ausblenden oder Feld schreibgeschützt machen oder auf der Grundlage der Status- und Benutzer- oder Gruppenmitgliedschaft erforderlich machen

Bedingung, Benutzergruppenmitgliedschaft

Aktionen, Einschränken einer Transaktion basierend auf Bundesland und Mitgliedschaft.


Legen Sie basierend auf und benutzer- oder Gruppenmitgliedschaft ein Feldattribute fest, oder beschränken Sie einen Statusübergang.

Bedingung, Benutzergruppenmitgliedschaft

Aktionen, Einschränken einer Transaktion basierend auf Bundesland und Mitgliedschaft.


Hinweis

Wenn Sie einen geerbten Prozess anpassen, spiegeln alle Projekte, die diesen Prozess verwenden, automatisch die Anpassungen wider. Um einen reibungslosen Übergang sicherzustellen, empfehlen wir, einen Testprozess und ein Projekt zu erstellen, mit dem Sie Ihre Anpassungen testen können, bevor Sie sie organisationsweit implementieren. Weitere Informationen finden Sie unter Erstellen und Verwalten geerbter Prozesse.

Grundlegendes zu Workflowstatus- und Regelgrenzwerten

Workflowregeln werden angewendet, wenn Sie Arbeitsaufgaben über eine der folgenden Schnittstellen hinzufügen oder ändern:

  • Webportal: Arbeitselementformular, Massenaktualisierungen, Aktualisierungen in der Abfrageansicht
  • Webportal: Board oder Taskboard, Arbeitsaufgabe in Spalte verschieben
  • Visual Studio 2017 und frühere Versionen, Arbeitsaufgabenformular
  • CSV-Dateiformat: Massenimport oder -aktualisierung
  • Excel: Massenimport oder -aktualisierung
  • REST-API: Hinzufügen oder Ändern von Arbeitsaufgaben

In der folgenden Tabelle sind die Workflowstatus- und Regelgrenzwerte für den Vererbungsprozess zusammengefasst.

Object Vererbungslimit
Für einen Prozess definierte Arbeitselementtypen 64
Für einen Arbeitselementtyp definierte Workflowstatus 32
Für einen Arbeitselementtyp definierte Regeln 1024

Wenn Sie Workflowzustände und Regeln definieren, befolgen Sie die folgenden Richtlinien, um Leistungsprobleme zu minimieren:

  • Beschränken Sie die Anzahl der Regeln für ein WIT: Während Sie mehrere Regeln für einen Arbeitsaufgabentyp (Work Item Type, WIT) erstellen können, können sich mehr Regeln negativ auf die Leistung auswirken, wenn Benutzer Arbeitsaufgaben hinzufügen oder ändern. Das System überprüft alle Regeln, die den Feldern für den Arbeitsaufgabentyp zugeordnet sind, wenn Benutzer Arbeitsaufgaben speichern. In einigen Fällen kann der Regelüberprüfungsausdruck zu komplex werden, damit SQL ausgewertet werden kann.
  • Beschränken Sie die Anzahl der benutzerdefinierten Arbeitsaufgabentypen: Das Reduzieren der Anzahl von benutzerdefinierten Arbeitsaufgabentypen kann dazu beitragen, optimale Leistung zu gewährleisten.

Definieren einer Regel

Bevor Sie eine Regel basierend auf Workflowzuständen definieren, stellen Sie sicher, dass die folgenden Elemente vorhanden sind:

Weitere Informationen zum Definieren von Regeln finden Sie unter Hinzufügen einer benutzerdefinierten Regel.

Festlegen des Feldwerts oder Festlegen eines schreibgeschützten oder erforderlichen Felds

Mit der ersten Gruppierung von Regeln können Sie eine oder zwei Bedingungen und bis zu 10 Aktionen pro Regel angeben.

Beispiel für die Sicherstellung der Genehmigung von Teamleitern vor aktiver Arbeit

In diesem Beispiel möchten Entwicklungsteams sicherstellen, dass keine Benutzergeschichte bearbeitet wird, bis sie von einem Teamleiter genehmigt wurde. Die Standardworkflowzustände werden verwendet, mit dem Hinzufügen eines benutzerdefinierten Felds, genehmigt von und einer Sicherheitsgruppe, Teamleitergruppe.

Standardworkflowstatus

Agiler Prozess, User Story, Standardworkflowstatus

Regelanforderungen

Um die Genehmigung vor der aktiven Arbeit sicherzustellen, definieren Sie die folgenden Regeln:

  • Das Feld "Genehmigt von" muss ausgefüllt werden, wenn der Status von "Neu" zu "Aktiv" wechselt.
  • Benutzer, die sich nicht in der Teamleitergruppe befinden, am Ausfüllen des Felds "Genehmigt nach" einschränken
  • Löschen des Felds "Genehmigt nach ", wenn der Status in " Neu " oder "Entfernt" verschoben wird

Regeldefinitionen

Die Regelanforderungen werden in die folgenden vier Regeldefinitionen übersetzt.


Regelname

Condition

Aktionen


Genehmigt durch löschen, wenn "Neu"

Wann A work item state changes to New

Dann Clear the value of Approved By

Genehmigt durch löschen, wenn sie entfernt wurde

Wann A work item state changes to Removed

Dann Clear the value of Approved By

Genehmigt von Schreibgeschützt

Wann Current user is not member of group Team Leads Group

Dann Make read-only Approved By

Genehmigt von erforderlich

Wann A work item state changes from New to Active

Dann Make required Approved By


Einschränken von Zustandsübergängen

Wenn Sie die Bedingung angeben, A work item state moved from ...können Sie nur diese Bedingung angeben. Sie können bis zu 10 Aktionen angeben.

Hinweis

Für dieses Feature wird Azure DevOps Server 2020.1, Update 1 oder höher benötigt.

Beispiel für das Einschränken von Zustandsübergängen und genehmigten Status

Die folgenden Workflowzustände sind für den User Story definiert. Die geerbten Zustände "Neu", "Aufgelöst" und "Entfernt " sind ausgeblendet. Stattdessen werden "Vorgeschlagen", "Überprüfen" und "Ausschneiden" verwendet. Darüber hinaus werden drei weitere Zustände definiert: Untersuchen, Entwerfen und Genehmigt. Diese Zustände sollten der Sequenz folgen, wie in der folgenden Abbildung dargestellt.

User Story, Workflowzustände

Ohne Einschränkungen können Benutzer von einem Staat in einen anderen Staat wechseln, sowohl vorwärts als auch rückwärts innerhalb der Sequenz.

Regelanforderungen

Um einen kontrollierteren Workflow zu unterstützen, hat sich die Unternehmensgruppe entschieden, Regeln zu erstellen, die die folgenden Vorwärts- und Umgekehrt-Zustandsübergänge für den Arbeitsaufgabentyp "User Story" unterstützen.

Staat Übergangsregel
Proposed Kann nur nach Forschung und Ausschneiden verschoben werden
Recherchieren Kann nur in "Entwurf" und "Ausschneiden" verschoben werden.
Design Kann nur zu "Recherchieren", "Genehmigt" und "Ausschneiden" wechseln
Genehmigt Kann nur in "Entwurf", "Aktiv" und "Ausschneiden" verschoben werden.
Aktiv Kann nur zu "In Review" wechseln
Wird überprüft Kann nur zu "Aktiv" (weitere Arbeit gefunden), "Geschlossen " oder "Ausschneiden" wechseln
Geschlossen Kann zu "Recherchieren", "Entwurf", "Aktiv", "Überprüfen" wechseln (Ermöglicht Fällen, in denen der Benutzer die Arbeitsaufgabe fehlerhaft geschlossen hat)
Ausschneiden kann nur auf "Vorgeschlagen" verschoben werden.

Hinweis

Wenn Sie Zustandsübergänge einschränken, sollten Sie Fälle berücksichtigen, in denen ein Benutzer einen Fehlerstatus verschieben kann. Stellen Sie sicher, dass Benutzer ordnungsgemäß wiederherstellen können.

Darüber hinaus möchte die Unternehmensgruppe die folgenden Regeln für erforderliche Felder anwenden:

  • Muss das Feld "Genehmigt nach " ausgefüllt werden, wenn der Status von "Genehmigt " zu "Aktiv" wechselt.
  • Zulassen, dass nur Benutzer in der Gruppe "Autorisierte Genehmigende Personen " das Feld "Genehmigt von " ausfüllen können.
  • Deaktivieren Sie das Feld "Genehmigt von" , wenn der Zustand in "Ausschneiden" verschoben wird.
  • Das Feld "Akzeptanzkriterien" muss ausgefüllt werden, wenn der Zustand in "Aktiv" verschoben wird.

Regeldefinitionen

Um die zuvor erwähnten Einschränkungen zu implementieren, fügt der Prozessadministrator ein benutzerdefiniertes Feld "Genehmigt nach Identität", eine Sicherheitsgruppe für autorisierte Genehmigende Personen und die folgenden Regeln hinzu.


Regelname

Condition

Aktionen


Vorgeschlagener Zustand

Wann A work item state moved from Proposed

Dann Restrict the state transition to Design
Und Restrict the state transition to Approved
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed

Forschungszustand

Wann A work item state moved from Research

Dann Restrict the state transition to Proposed
Und Restrict the state transition to Approved
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed

Entwurfszustand

Wann A work item state moved from Design

Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed

Genehmigter Zustand

Wann A work item state moved from Approved

Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed

Aktiver Zustand

Wann A work item state moved from Active

Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to Approved
Und Restrict the state transition to Closed

Im Status "Überprüfen"

Wann A work item state moved from In Review

Dann Restrict the state transition to Proposed
Und Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to Approved

Geschlossener Zustand

Wann A work item state moved from Closed

Dann Restrict the state transition to Proposed
Und Restrict the state transition to Cut

Ausschneiden des Zustands

Wann A work item state moved from Cut

Dann Restrict the state transition to Research
Und Restrict the state transition to Design
Und Restrict the state transition to Approved
Und Restrict the state transition to Active
Und Restrict the state transition to In Review
Und Restrict the state transition to Closed

Erforderliche Felder für den genehmigten Zustand

Wann A work item changes from Approved to Active

Dann Make required Acceptance Criteria
Und Make required Approved By

Autorisierte Genehmigende Personen

Wann Current user is not a member of Authorized Approvers

Dann Make read-only Approved By

Löschen des Felds "Genehmigt nach"

Wann A work item state changes to Cut

Dann Clear the value of Approved By


Überprüfen von Statusübergangseinschränkungen

Nachdem Sie die Regeln für den Prozess definiert und das Projekt aktualisiert haben, aktualisieren Sie Ihren Browser. Überprüfen Sie die Vorgänge über das Arbeitsaufgabenformular und den Browser.

Überprüfen Sie für die in der vorherigen Tabelle definierten Regeln die Dropdownmenüs "Status". Öffnen Sie das Board, und stellen Sie sicher, dass Sie von einem Zustand zu einem anderen wechseln können.

Vorgeschlagen Recherchieren Entwurf Genehmigt
Vorgeschlagenes Menü Menü Designmenü Genehmigtes Menü
Aktiv Überprüfen Geschlossen Ausschneiden
Aktives Menü Im Menü Geschlossenes Menü Menü

Einschränken des Statusübergangs basierend auf der Benutzer- oder Gruppenmitgliedschaft

Wenn Sie eine der beiden Bedingungen basierend auf der Benutzer- oder Gruppenmitgliedschaft Current user is member of group ... angeben oder Current user is not member of group ...können Sie nur eine Bedingung angeben. Wenn Sie die Aktion Restrict the transition to state...angeben, können Sie außerdem nur eine Aktion angeben.

Hinweis

Arbeitselemente unterliegen den für sie geltenden Regeln. Bedingte Regeln, die auf Benutzer- oder Gruppenzugehörigkeit basieren, werden für Ihren Webbrowser zwischengespeichert. Wenn Sie ein Arbeitselement nicht aktualisieren können, sind Sie möglicherweise auf eine dieser Regeln gestoßen. Wenn Sie der Ansicht sind, dass ein aufgetretenes Problem nicht auf Sie zutrifft, finden Sie weitere Informationen unter Behandeln von Problemen bei der Zwischenspeicherung von Arbeitselementen.

Automatisieren von Statusübergängen übergeordneter Arbeitsaufgaben

Informationen zum Automatisieren von Statusübergängen für übergeordnete Arbeitsaufgaben, die auf den Statuszuweisungen ihrer untergeordneten Arbeitsaufgaben basieren, finden Sie unter Automatisieren von Übergängen des Arbeitsaufgabenstatus.

Automatisieren der Neuzuweisung basierend auf Zustandsänderungen

Der Arbeitsaufgabentyp "Agile-Prozess" hatte zuvor eine Regel, die den Fehler dem Ersteller neu zugewiesen hat. Diese Regel wurde aus dem Standardsystemprozess entfernt. Sie können die Regel erneut festlegen oder eine ähnliche Regel zu anderen Arbeitsaufgabentypen hinzufügen, indem Sie die folgende Bedingung und Aktion verwenden:

When A work item state changes to Resolved Then Copy the value from Created By to Assigned To.