Udostępnij za pośrednictwem


Stosowanie reguł do stanów przepływu pracy (proces dziedziczenia)

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

Po dodaniu lub zmodyfikowaniu stanów przepływu pracy dla typu elementu roboczego zdefiniuj reguły stosowane na podstawie zmiany stanu przepływu pracy. Dodawanie reguł do stanów przepływu pracy obsługuje następujące scenariusze:

  • Obsługa procesu zatwierdzania
  • Uniemożliwianie nieautoryzowanym użytkownikom ustawienia nieprawidłowego stanu
  • Ustaw pole jako wymagane, tylko do odczytu lub z inną wartością na podstawie zmian stanu.
  • Ogranicz przejście z jednego stanu na inny
  • Ograniczanie lub zezwalanie na przejścia stanu dla określonych użytkowników lub grup
  • Obsługa kontrolowanego procesu przepływu pracy, obsługa wymagań dotyczących inspekcji
  • Automatyzowanie zamykania nadrzędnych elementów roboczych
  • Obsługa procesu zatwierdzania
  • Uniemożliwianie nieautoryzowanym użytkownikom ustawienia nieprawidłowego stanu
  • Wprowadź pole wymagane lub tylko do odczytu lub inną wartość na podstawie zmian stanu
  • Ogranicz przejście z jednego stanu na inny
  • Automatyzowanie zamykania nadrzędnych elementów roboczych

Ważne

Model procesu dziedziczenia jest dostępny dla projektów skonfigurowanych do jej obsługi. Jeśli używasz starszej kolekcji, sprawdź zgodność modelu procesu. Jeśli kolekcja lokalna jest skonfigurowana do używania lokalnego modelu przetwarzania XML, możesz użyć tego modelu przetwarzania tylko do dostosowania środowiska śledzenia pracy. Aby uzyskać więcej informacji, zobacz Wybieranie modelu procesu dla kolekcji projektów.

Wymagania wstępne

Kategoria Wymagania
uprawnienia — Aby zarządzać grupami zabezpieczeń i uprawnieniami na poziomie projektu, w tym ustawianie reguł dla stanów przepływu pracy: administrator projektu.
— Aby zarządzać obszarem śledzenia pracy: administrator projektu lub osoba mająca szczegółowo przypisane uprawnienie do śledzenia elementów roboczych.
poziomy dostępu podstawowy dostęp, który jest zazwyczaj wystarczający dla większości użytkowników, którzy muszą zarządzać elementami roboczymi i stosować reguły do stanów procesów roboczych.

Omówienie reguł przepływu pracy

W poniższej tabeli przedstawiono trzy grupy reguł przepływu pracy, które można zdefiniować:

  1. Akcje standardowe:

    • Zastosuj, gdy element roboczy zostanie utworzony, w wybranym stanie lub przeniesiony z jednego stanu do innego.
    • Akcje obejmują ustawienie wartości pola, utworzenie pola tylko do odczytu lub wprowadzenie wymaganego pola.
    • Można określić jeden lub dwa warunki i kilka akcji.
  2. Ograniczanie przejść stanu (grupa 1):

    • Określ jeden warunek wskazujący stan, z którego przeniesiono element roboczy.
    • Zdefiniuj akcje w celu ograniczenia przejścia z tego stanu do innych stanów.
  3. Ograniczanie przejść stanu (grupa 2):

    • Podobnie jak w przypadku pierwszej grupy, określ jeden warunek wskazujący stan, z którego przeniesiono element roboczy.
    • Zdefiniuj akcje w celu ograniczenia przejścia z tego stanu do innych stanów.

W poniższej tabeli przedstawiono dwie grupy reguł przepływu pracy, które można zdefiniować:

  1. Akcje standardowe:

    • Zastosuj, gdy element roboczy zostanie utworzony, w wybranym stanie lub przeniesiony z jednego stanu do innego.
    • Akcje obejmują ustawienie wartości pola, utworzenie pola tylko do odczytu lub wprowadzenie wymaganego pola.
    • Można określić jeden lub dwa warunki i kilka akcji.
  2. Ograniczanie przejść stanu:

    • Określ jeden warunek wskazujący stan, z którego przeniesiono element roboczy.
    • Zdefiniuj co najmniej jedną akcję, aby ograniczyć przejścia z tego stanu do innych stanów.

Uwaga

Niektóre funkcje wymagają zainstalowania aktualizacji usługi Azure DevOps Server 2020.1. Aby uzyskać więcej informacji, zobacz Azure DevOps Server 2020 Update 1 RC1 Release Notes, Boards.


Warunek

Obsługiwane akcje


Ustaw wartość pola lub zmień jego status na tylko do odczytu/wymagane na podstawie stanu

Warunki, gdy tworzony jest element roboczy

Akcje, utworzono element roboczy


Ograniczanie przejścia na podstawie stanu

Warunek, gdy element roboczy zostaje przeniesiony

Ogranicz transakcję na podstawie stanu.


Ukryj pole lub ustaw pole jako tylko do odczytu albo wymagane, na podstawie stanu oraz członkostwa użytkownika lub grupy

Warunek, członkostwo w grupie użytkowników

Ogranicz transakcję na podstawie stanu i członkostwa.


Na podstawie członkostwa użytkownika lub grupy, ustaw atrybut pola lub ogranicz przejście między stanami

Warunek, członkostwo w grupie użytkowników

Działania, które ograniczają transakcję na podstawie stanu i członkostwa.


Uwaga

Podczas dostosowywania dziedziczonego procesu wszystkie projekty korzystające z tego procesu automatycznie odzwierciedlają dostosowania. Aby zapewnić bezproblemowe przejście, zalecamy utworzenie procesu testowego i projektu, który umożliwia przetestowanie dostosowań przed ich wdrożeniem w całej organizacji. Aby uzyskać więcej informacji, zobacz Create and manage inherited processes (Tworzenie procesów dziedziczynych i zarządzanie nimi).

Informacje o stanie przepływu pracy i limitach reguł

Reguły przepływu pracy są stosowane podczas dodawania lub modyfikowania elementów roboczych za pomocą dowolnego z następujących interfejsów:

  • Portal internetowy: formularz elementu roboczego, aktualizacje zbiorcze, aktualizacje w widoku zapytania
  • Portal internetowy: Tablica lub Tablica zadań, przenoszenie elementu roboczego do kolumny
  • Formularz elementu roboczego programu Visual Studio 2017 i starszych wersji
  • Format pliku CSV: importowanie lub aktualizowanie zbiorcze
  • Excel: importowanie lub aktualizowanie zbiorcze
  • Interfejs API REST: dodawanie lub modyfikowanie elementów roboczych

W poniższej tabeli podsumowano stan przepływu pracy i ograniczenia reguł dla procesu dziedziczenia.

Obiekt Ograniczenie dziedziczenia
Typy elementów roboczych zdefiniowane dla procesu 64
Stany przepływów pracy zdefiniowane dla typu elementu roboczego 32
Reguły zdefiniowane dla typu elementu roboczego 1024

Podczas definiowania stanów i reguł przepływu pracy postępuj zgodnie z tymi wytycznymi, aby zminimalizować problemy z wydajnością:

  • Ogranicz liczbę reguł dla funkcji WIT: chociaż można utworzyć wiele reguł dla typu elementu roboczego (WIT), więcej reguł może negatywnie wpłynąć na wydajność podczas dodawania lub modyfikowania elementów roboczych przez użytkowników. System weryfikuje wszystkie reguły skojarzone z polami dla typu elementu roboczego, gdy użytkownicy zapisują elementy robocze. W niektórych przypadkach wyrażenie walidacji reguły może stać się zbyt złożone, aby SQL mógł je ocenić.
  • Ogranicz liczbę niestandardowych typów elementów roboczych: zmniejszenie liczby niestandardowych typów elementów roboczych może pomóc w utrzymaniu optymalnej wydajności.

Definiowanie reguły

Przed zdefiniowaniem reguły opartej na stanach przepływu pracy upewnij się, że są spełnione następujące elementy:

Aby uzyskać więcej informacji na temat definiowania reguł, zobacz Dodawanie reguły niestandardowej.

Ustaw wartość pola lub skonfiguruj pole jako tylko do odczytu albo wymagane

Przy pierwszym grupowaniu reguł można określić jeden lub dwa warunki i maksymalnie 10 akcji na regułę.

Przykład uzyskania zatwierdzenia lidera zespołu przed rozpoczęciem aktywnej pracy

W tym przykładzie zespoły programistyczne chcą mieć pewność, że nad żadną historią użytkownika nie będą pracować do momentu zatwierdzenia przez lidera zespołu. Są używane domyślne stany przepływu pracy z dodaniem niestandardowego pola Zatwierdzone przez oraz grupy zabezpieczeń Grupa liderów zespołu.

Domyślne stany przepływu pracy

Proces Agile, historia użytkownika, domyślny stan przepływu pracy

Wymagania dotyczące reguł

Aby zapewnić zatwierdzenie przed aktywną pracą, zdefiniuj następujące reguły:

  • Wymagaj wypełnienia pola 'Zatwierdzone przez', gdy Stan zostanie przeniesiony z Nowa do Aktywne.
  • Ogranicz użytkowników, którzy nie należą do grupy liderów zespołu, od wypełniania pola Zatwierdzone przez.
  • Wyczyść pole Zatwierdzone przez, gdy stan zmienia się na Nowy lub Usunięty

Definicje reguł

Wymagania dotyczące reguły przekładają się na następujące cztery definicje reguł.


Nazwa reguły

Warunek

Akcje


Pole "Zatwierdzone przez" jest czyszczone, gdy nowe

Kiedy A work item state changes to New

Wtedy Clear the value of Approved By

Zatwierdzenie cofnięte po usunięciu

Kiedy A work item state changes to Removed

Wtedy Clear the value of Approved By

Zatwierdzone jako tylko do odczytu

Kiedy Current user is not member of group Team Leads Group

Wtedy Make read-only Approved By

Wymagane zatwierdzenie przez

Kiedy A work item state changes from New to Active

Wtedy Make required Approved By


Ogranicz przejścia stanu

Po określeniu warunku A work item state moved from ...można określić tylko ten warunek. Można określić maksymalnie 10 akcji.

Uwaga

Ta funkcja wymaga aktualizacji programu Azure DevOps Server 2020.1 lub nowszej.

Przykład ograniczania przejść stanów i stanu Zatwierdzony

Następujące stany przepływu pracy są definiowane dla scenariusza użytkownika. Stany Nowe, Rozwiązane i Usunięte dziedziczone są ukryte. Zamiast tego używane są stany Proposed, In Review, i Cut. Ponadto zdefiniowano jeszcze trzy stany: Badanie, projektowanie i zatwierdzanie. Te stany powinny postępować zgodnie z sekwencją, jak pokazano na poniższej ilustracji.

Historia użytkownika, stany przepływu pracy

Bez żadnych ograniczeń użytkownicy mogą przechodzić z jednego stanu do innego stanu, zarówno do przodu, jak i do tyłu w ramach sekwencji.

Wymagania dotyczące reguł

Aby wspierać bardziej kontrolowany przepływ pracy, grupa biznesowa zdecydowała się na utworzenie reguł, które obsługują następujące przejścia stanów do przodu i wstecz w typie elementu roboczego Historia użytkownika.

Stan Reguła przejścia
Zaproponowano Może przejść tylko do Badań i Cięcia
Badania Można przejść tylko do Projektowania i Cięcia
Projektowanie Można przejść tylko do Badania, Zatwierdzone i Cięcia
Zatwierdzona Można przejść tylko do Design, Aktywny i Cut
Aktywne Można przejść tylko do sekcji Przeglądanie
W trakcie przeglądu Można przejść tylko do Aktywna (więcej znalezionych prac), Zamknięta lub Wycięta
Zamknięte Może przejść do Badania, Projektowanie, Aktywność, W przeglądzie (pozwala na przypadki, gdy użytkownik błędnie zamknął element roboczy)
Wytnij można przejść tylko do Proponowane

Uwaga

Podczas ograniczania przejść stanów należy uwzględnić przypadki, w których użytkownik może przesunąć stan przez pomyłkę. Upewnij się, że użytkownicy mogą bezpiecznie odzyskiwać dane.

Ponadto grupa biznesowa chce zastosować następujące reguły dla wymaganych pól:

  • Wymagaj wypełnienia pola Zatwierdzone przez , gdy stan zostanie zmieniony z Zatwierdzone na Aktywne.
  • Zezwalaj tylko użytkownikom w grupie Autoryzowane osoby zatwierdzające na wypełnienie pola Zatwierdzone przez .
  • Wyczyść pole Zatwierdzone według, gdy stan zostanie przeniesiony do Wycięty.
  • Wymagaj, aby pole Kryteria akceptacji było wypełnione, kiedy stan zostanie przeniesiony do Aktywny.

Definicje reguł

Aby zaimplementować wymienione wcześniej ograniczenia, administrator procesu dodaje niestandardowe pole tożsamości 'Zatwierdzone przez', grupę zabezpieczeń 'Autoryzowane osoby zatwierdzające' i następujące reguły.


Nazwa reguły

Warunek

Akcje


Proponowany stan

Kiedy A work item state moved from Proposed

Wtedy Restrict the state transition to Design
I Restrict the state transition to Approved
I Restrict the state transition to Active
I Restrict the state transition to In Review
I Restrict the state transition to Closed

Stan badań

Kiedy A work item state moved from Research

Wtedy Restrict the state transition to Proposed
I Restrict the state transition to Approved
I Restrict the state transition to Active
I Restrict the state transition to In Review
I Restrict the state transition to Closed

Stan projektu

Kiedy A work item state moved from Design

Wtedy Restrict the state transition to Proposed
I Restrict the state transition to Research
I Restrict the state transition to Active
A Restrict the state transition to In Review
I Restrict the state transition to Closed

Stan zatwierdzony

Kiedy A work item state moved from Approved

Wtedy Restrict the state transition to Proposed
I Restrict the state transition to Research
I Restrict the state transition to Design
I Restrict the state transition to In Review
A Restrict the state transition to Closed

Stan aktywny

Kiedy A work item state moved from Active

Wtedy Restrict the state transition to Proposed
I Restrict the state transition to Research
I Restrict the state transition to Design
A Restrict the state transition to Approved
I Restrict the state transition to Closed

W stanie przeglądu

Kiedy A work item state moved from In Review

Wtedy Restrict the state transition to Proposed
I Restrict the state transition to Research
I Restrict the state transition to Design
I Restrict the state transition to Approved

Stan zamknięty

Kiedy A work item state moved from Closed

Wtedy Restrict the state transition to Proposed
I Restrict the state transition to Cut

Stan wycięcia

Kiedy A work item state moved from Cut

Wtedy Restrict the state transition to Research
A Restrict the state transition to Design
I Restrict the state transition to Approved
I Restrict the state transition to Active
I Restrict the state transition to In Review
I Restrict the state transition to Closed

Pola wymagane przez zatwierdzony stan

Kiedy A work item changes from Approved to Active

Wtedy Make required Acceptance Criteria
A Make required Approved By

Autoryzowane osoby zatwierdzające

Kiedy Current user is not a member of Authorized Approvers

Wtedy Make read-only Approved By

Wyczyść pole Zatwierdzone przez

Kiedy A work item state changes to Cut

Wtedy Clear the value of Approved By


Weryfikowanie ograniczeń przejścia stanu

Po zdefiniowaniu reguł procesu i zaktualizowaniu projektu odśwież przeglądarkę. Sprawdź operacje za pomocą formularza zadania roboczego i przeglądarki.

W przypadku reguł zdefiniowanych w poprzedniej tabeli sprawdź menu rozwijane State (Stan). Otwórz tablicę i upewnij się, że możesz przejść z jednego stanu do innego.

Proponowany Badania Projekt Approved (Zatwierdzono)
Proponowane menu Menu Badań Menu Projektu Zatwierdzone Menu
Aktywne W trakcie przeglądu Zamknięcie Cut
Aktywne menu W menu Przegląd Zamknięte menu Menu Wytnij

Ograniczanie przejścia stanu na podstawie członkostwa użytkownika lub grupy

Po określeniu jednego z dwóch warunków na podstawie członkostwa Current user is member of group ... użytkownika lub grupy lub Current user is not member of group ..., można określić tylko jeden warunek. Ponadto, jeśli określisz akcję Restrict the transition to state..., można określić tylko jedną akcję.

Uwaga

Elementy robocze podlegają regułom zastosowanym do nich. Reguły warunkowe oparte na członkostwie użytkowników lub grup są buforowane dla przeglądarki internetowej. Jeśli jesteś ograniczony w możliwości aktualizowania elementu roboczego, mogłeś napotkać jedną z tych reguł. Jeśli uważasz, że napotkany problem nie dotyczy Ciebie, zobacz stronę dotyczącą problemów z buforowaniem IndexDB formularza elementu roboczego.

Automatyzowanie przechodzenia stanu elementów roboczych nadrzędnych

Aby zautomatyzować przejścia stanów dla nadrzędnych elementów roboczych na podstawie przydziałów stanów ich podrzędnych elementów roboczych, zobacz Automatyzowanie przejść stanów elementów roboczych.

Automatyzowanie ponownego przypisania na podstawie zmian stanu

Typ elementu roboczego błędu w procesie Agile miał wcześniej regułę, która ponownie przypisała błąd do jego twórcy. Usunęliśmy tę regułę z domyślnego procesu systemowego. Regułę można przywrócić lub dodać podobną regułę do innych typów elementów roboczych przy użyciu następującego warunku i akcji:

KiedyA work item state changes toRozwiązany,wtedyCopy the value from Utworzone przezdoPrzypisane do.