Freigeben über


Anwenden von Regeln auf Workflowzustände (Vererbungsprozess)

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

Nachdem Sie Ihre Workflowzustände für einen Arbeitselementtyp hinzugefügt oder geändert haben, definieren Sie Regeln, die abhängig von Änderungen des Workflowzustands gelten. Das Hinzufügen von Regeln zu Workflowzuständen unterstützt die folgenden Szenarien:

  • Unterstützen eines Genehmigungsprozesses
  • Verhindern der Festlegung eines ungültigen Zustands durch nicht autorisierte Benutzer
  • Festlegen eines Felds als erforderlich oder schreibgeschützt oder auf einen anderen Wert, abhängig von Zustandsänderungen
  • Einschränken des Übergangs von einem Zustand in einen anderen Zustand
  • Einschränken oder Zulassen von Zustandsübergängen auf bestimmte Benutzer oder Gruppen
  • Verwalten eines kontrollierten Workflowprozesses und Unterstützen von Überwachungsanforderungen
  • Automatisieren des Schließens übergeordneter Arbeitselemente
  • Unterstützen eines Genehmigungsprozesses
  • Verhindern der Festlegung eines ungültigen Zustands durch nicht autorisierte Benutzer
  • Festlegen eines Felds als erforderlich oder schreibgeschützt oder auf einen anderen Wert, abhängig von Zustandsänderungen
  • Einschränken des Übergangs von einem Zustand in einen anderen Zustand
  • Automatisieren des Schließens übergeordneter Arbeitselemente

Wichtig

Das Vererbungsprozessmodell ist für Projekte verfügbar, die für die Unterstützung des Modelltyps konfiguriert sind. Wenn Sie eine ältere Sammlung verwenden, überprüfen Sie die Prozessmodellkompatibilität. Wenn Ihre lokale Auflistung für die Verwendung des lokalen XML-Prozessmodells konfiguriert wurde, können Sie nur dieses Prozessmodell zur Anpassung der Arbeitsnachverfolgung verwenden. Weitere Informationen finden Sie unter Prozessanpassung auf Organisationsebene.

Voraussetzungen

Kategorie Anforderungen
Berechtigungen – Zum Verwalten von Sicherheitsgruppen und Berechtigungen auf Projektebene, die Das Festlegen von Regeln für Workflowzustände umfasst: Projektadministrator.
- Um den Bereich für die Arbeitsnachverfolgung zu verwalten: Projektadministrator, oder die Berechtigung Arbeitselementnachverfolgung ist speziell zugewiesen.
Zugriffsebenen Standardzugriff, der in der Regel für die meisten Benutzer ausreicht, die Arbeitsaufgaben verwalten und Regeln auf Workflowzustände anwenden müssen.

Informationen zu Workflowregeln

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

  1. Standardaktionen:

    • Wenden Sie diese an, wenn ein Arbeitselement erstellt, sich in einem bestimmten Zustand befindet oder von einem Zustand in einen anderen Zustand verschoben wird.
    • Die Aktionen umfassen das Festlegen des Werts eines Felds, das Festlegen eines Felds als schreibgeschützt oder das Festlegen eines Felds als erforderlich.
    • Sie können eine oder zwei Bedingungen und mehrere Aktionen angeben.
  2. Einschränken von Zustandsübergängen (Gruppe 1):

    • Geben Sie eine einzelne Bedingung an, die den Zustand angibt, aus dem ein Arbeitselement 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 einzelne Bedingung an, die den Zustand angibt, aus dem ein Arbeitselement verschoben wurde.
    • Definieren Sie Aktionen, um Übergänge von diesem Zustand zu anderen Zuständen einzuschränken.

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

  1. Standardaktionen:

    • Wenden Sie diese an, wenn ein Arbeitselement erstellt, sich in einem bestimmten Zustand befindet oder von einem Zustand in einen anderen Zustand verschoben wird.
    • Die Aktionen umfassen das Festlegen des Werts eines Felds, das Festlegen eines Felds als schreibgeschützt oder das Festlegen eines Felds als erforderlich.
    • Sie können eine oder zwei Bedingungen und mehrere Aktionen angeben.
  2. Einschränken von Zustandsübergängen:

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

Zustand

Unterstützte Aktionen


Festlegen des Feldwerts oder Festlegen des Felds auf schreibgeschützt/erforderlich abhängig vom Zustand

Bedingungen, Arbeitselement wird erstellt

Aktionen, Arbeitselement wird erstellt


Einschränken eines Übergangs abhängig vom Zustand

Bedingung, Arbeitselement wird verschoben

Aktionen, schränken Sie eine Transaktion basierend auf dem Status ein.


Feld ausblenden oder Feld schreibgeschützt oder erforderlich machen, je nach Status und Benutzer- oder Gruppenmitgliedschaft

Bedingung, Benutzergruppenmitgliedschaft

Aktionen, schränken Sie eine Transaktion auf der Grundlage von Status und Mitgliedschaft ein.


Festlegen eines Feldattributs abhängig von Benutzer oder Gruppenmitgliedschaft oder Einschränken eines Zustandsübergangs

Bedingung, Benutzergruppenmitgliedschaft

Aktionen, schränken Sie eine Transaktion auf der Grundlage von Status und Mitgliedschaft ein.


Hinweis

Wenn Sie einen geerbten Prozess anpassen, spiegeln alle Projekte, die den Prozess verwenden, automatisch die Anpassungen wider. Um einen reibungslosen Übergang sicherzustellen, empfiehlt es sich, einen Testprozess und ein Projekt zu erstellen, um Ihre Anpassungen zu testen, bevor Sie sie organisationsweit implementieren. Weitere Informationen finden Sie unter Erstellen und Verwalten geerbter Prozesse.

Informationen zu Workflowzuständen und Regelgrenzwerten

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

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

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

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

Bei der Definition von Workflowzuständen und Regeln sollten Sie diese Richtlinien befolgen, um Leistungsprobleme zu minimieren:

  • Einschränken der Anzahl der WIT-Regeln: Auch wenn Sie für einen Arbeitselementtyp (Work Item Type, WIT) mehrere Regeln erstellen können, kann sich eine größere Anzahl von Regeln negativ auf die Leistung auswirken, wenn Benutzer Arbeitselemente hinzufügen oder ändern. Das System überprüft alle Regeln, die den Feldern für den Arbeitselementtyp zugeordnet sind, wenn Benutzer Arbeitselemente speichern. In einigen Fällen kann der Regelüberprüfungsausdruck zu komplex werden, um von SQL ausgewertet zu werden.
  • Einschränken der Anzahl der benutzerdefinierten Arbeitselementtypen: Das Reduzieren der Anzahl der benutzerdefinierten Arbeitselementtypen kann zur Optimierung der Leistung beitragen.

Definieren einer Regel

Bevor Sie eine Regel basierend auf Workflowzuständen definieren, müssen Sie sicherstellen, 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 Felds als schreibgeschützt oder erforderlich

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 Teamleitergenehmigung vor der aktiven Arbeit

In diesem Beispiel sollten Entwicklungsteams sicherstellen, dass eine User Story erst bearbeitet wird, wenn sie von einem Teamleiter genehmigt wurde. Es werden die Standardworkflowzustände verwendet, mit Hinzufügung des benutzerdefinierten Felds Genehmigt von und der Sicherheitsgruppe Teamleitergruppe.

Standardworkflowzustände

Agiler Prozess, User Story, Standardworkflowzustand

Regelanforderungen

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

  • Das Ausfüllen des Felds Genehmigt von erfordern, wenn der Zustand von Neu zu Aktiv wechselt
  • Benutzer, die nicht Mitglieder der Teamleitergruppe sind, am Ausfüllen des Felds Genehmigt von hindern
  • Das Feld Genehmigt von löschen, wenn der Zustand zu Neu oder Entfernt wechselt

Regeldefinitionen

Die Regelanforderungen werden in die folgenden vier Regeldefinitionen übersetzt.


Regelname

Zustand

Aktionen


„Genehmigt von“ gelöscht, wenn „Neu“

Wenn A work item state changes to New

Dann Clear the value of Approved By

„Genehmigt von“ gelöscht, wenn „Entfernt“

Wenn A work item state changes to Removed

Dann Clear the value of Approved By

„Genehmigt von“ schreibgeschützt

Wenn Current user is not member of group Team Leads Group

Dann Make read-only Approved By

„Genehmigt von“ erforderlich

Wenn 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.

Beispiel für das Einschränken von Zustandsübergängen und Zustand „Genehmigt“

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

User Story, Workflowzustände

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

Regelanforderungen

Um den Workflow besser zu kontrollieren, hat sich die Geschäftsgruppe entschieden, Regeln zu erstellen, die die folgenden Zustandsübergänge vorwärts und rückwärts für den Arbeitselementtyp „User Story“ unterstützen.

Status Übergangsregel
Vorgeschlagen Kann nur zu Recherchieren und Ausschneiden wechseln
Recherchieren Kann nur zu Entwerfen und Ausschneiden wechseln
Entwerfen Kann nur zu Recherchieren, Genehmigt und Ausschneiden wechseln
Genehmigt Kann nur zu Entwerfen, Aktiv und Ausschneiden wechseln
Aktiv Kann nur zu In Überprüfung wechseln
In Überprüfung Kann nur zu Aktiv (weitere Arbeit gefunden), Geschlossen oder Ausschneiden wechseln
Geschlossen Kann zu Recherchieren, Entwerfen, Aktiv, In Überprüfung (lässt Fälle zu, in denen Benutzer ein Arbeitselement aus Versehen geschlossen haben)
Ausschneiden Kann nur zu Vorgeschlagen wechseln

Hinweis

Wenn Sie Zustandsübergänge einschränken, sollten Sie Fälle berücksichtigen, in denen ein Benutzer einen Zustand aus Versehen ändert. Stellen Sie sicher, dass Benutzer normale Wiederherstellungen ausführen können.

Darüber hinaus möchte die Geschäftsgruppe die folgenden Regeln auf Pflichtfelder anwenden:

  • Das Feld Genehmigt von muss ausgefüllt werden, wenn der Zustand von Genehmigt zu Aktiv wechselt.
  • Nur Benutzer in der Gruppe Autorisierte Genehmigende dürfen das Feld Genehmigt von ausfüllen.
  • Das Feld Genehmigt von muss gelöscht werden, wenn der Zustand zu Ausschneiden wechselt.
  • Das Feld Akzeptanzkriterien muss ausgefüllt werden, wenn der Zustand zu Aktiv wechselt.

Regeldefinitionen

Um die zuvor genannten Einschränkungen zu implementieren, fügt der Prozessadministrator das benutzerdefinierte Identitätsfeld Genehmigt von, die Sicherheitsgruppe Autorisierte Genehmigende und die folgenden Regeln hinzu.


Regelname

Zustand

Aktionen


Zustand „Vorgeschlagen“

Wenn 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

Zustand „Recherchieren“

Wenn 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

Zustand „Entwerfen“

Wenn 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

Zustand „Genehmigt“

Wenn 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

Zustand „Aktiv“

Wenn 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

Zustand „In Überprüfung“

Wenn 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

Zustand „Geschlossen“

Wenn A work item state moved from Closed

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

Zustand „Ausschneiden“

Wenn 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 Zustand „Genehmigt“

Wenn A work item changes from Approved to Active

Dann Make required Acceptance Criteria
Und Make required Approved By

Autorisierte Genehmigende

Wenn Current user is not a member of Authorized Approvers

Dann Make read-only Approved By

Löschen des Felds „Genehmigt von“

Wenn A work item state changes to Cut

Dann Clear the value of Approved By


Überprüfen von Einschränkungen für Zustandsübergänge

Aktualisieren Sie den Browser, nachdem Sie die Regeln für den Prozess definiert und das Projekt aktualisiert haben. Überprüfen Sie die Vorgänge über das Arbeitselementformular und den Browser.

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

Vorgeschlagen Recherchieren Entwerfen Genehmigt
Menü „Vorgeschlagen“ Menü „Recherchieren“ Menü „Entwerfen“ Menü „Genehmigt“
Aktiv In Überprüfung Geschlossen Ausschneiden
Menü „Aktiv“ Menü „In Überprüfung“ Menü „Geschlossen“ Menü „Ausschneiden“

Einschränken des Zustandsübergangs abhängig von Benutzer oder Gruppenmitgliedschaft

Wenn Sie eine der beiden Bedingungen abhängig von Benutzer oder Gruppenmitgliedschaft angeben, Current user is member of group ... 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 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 Zustandsübergängen übergeordneter Arbeitselemente

Informationen zum Automatisieren von Zustandsübergängen für übergeordnete Arbeitselemente, die auf den Zustandszuweisungen ihrer untergeordneten Arbeitselemente basieren, finden Sie unter Automatisieren von Arbeitselement-Zustandsübergängen.

Automatisieren der Neuzuweisung basierend auf Zustandsänderungen

Für den Arbeitselementtyp „Bug für agilen Prozess“ gab es zuvor eine Regel, die den Fehler dem Ersteller neu zugewiesen hat. Diese Regel wurde aus dem Standardsystemprozess entfernt. Sie können die Regel wieder einrichten oder eine ähnliche Regel zu anderen Arbeitselementtypen hinzufügen, indem Sie die folgende Bedingung und Aktion verwenden:

WennA work item state changes toAufgelöstDannCopy the value from Erstellt vonzuZugewiesen an.