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 możesz zdefiniować co najmniej jedną regułę, która jest stosowana w zależności od 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
  • Wprowadź pole wymagane lub tylko do odczytu lub inną wartość na podstawie zmian stanu
  • Ogranicz przejście z jednego stanu na inny
  • Ograniczanie lub zezwalanie na przejścia stanu do określonych użytkowników lub grup
  • Obsługa kontrolowanego procesu przepływu pracy w celu obsługi wymagań 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
  • Obsługa procesu zatwierdzania
  • Wprowadź pole wymagane lub tylko do odczytu lub inną wartość na podstawie zmian stanu
  • Automatyzowanie zamykania nadrzędnych elementów roboczych

Zapoznaj się z tym artykułem, aby dowiedzieć się, jak definiować reguły stosowane podczas zmiany stanu przepływu pracy.

  • Omówienie typów reguł przepływu pracy
  • Limity i najlepsze rozwiązania dotyczące stanu i reguły przepływu pracy
  • Ustaw wartość pola lub ustaw pole tylko do odczytu lub wymagane na podstawie wyboru stanu
  • Ograniczanie przejść stanu
  • Ograniczanie lub zezwalanie na przejścia stanu do określonych użytkowników lub grup
  • Automatyzowanie przechodzenia stanu elementów roboczych nadrzędnych
  • Omówienie typów reguł przepływu pracy
  • Limity i najlepsze rozwiązania dotyczące stanu i reguły przepływu pracy
  • Ustaw wartość pola lub ustaw pole tylko do odczytu lub wymagane na podstawie wyboru stanu
  • Ograniczanie przejść stanu
  • Automatyzowanie przechodzenia stanu elementów roboczych nadrzędnych
  • Omówienie typów reguł przepływu pracy
  • Limity i najlepsze rozwiązania dotyczące stanu i reguły przepływu pracy
  • Ustaw wartość pola lub ustaw pole tylko do odczytu lub wymagane na podstawie wyboru stanu
  • Automatyzowanie przechodzenia stanu elementów roboczych nadrzędnych

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.

Reguły przepływu pracy

W poniższej tabeli przedstawiono trzy grupy reguł przepływu pracy, które można zdefiniować. Pierwsza grupa stosuje standardowe akcje po utworzeniu elementu roboczego w wybranym stanie lub jest przenoszona z jednego stanu do innego. Te standardowe akcje ustawiają wartość pola lub powoduje, że pole jest tylko do odczytu lub wymagane. W tej grupie można określić jeden lub dwa warunki i kilka akcji.

Druga i trzecia grupa obsługuje ograniczanie przejść stanu. Te dwie grupy umożliwiają określenie jednego i tylko jednego warunku wskazującego stan, do którego został przeniesiony element roboczy. Następnie można określić jedną lub więcej akcji, aby ograniczyć przejście z tego stanu do innych stanów.

W poniższej tabeli przedstawiono dwie grupy reguł przepływu pracy, które można zdefiniować. Pierwsza grupa stosuje standardowe akcje po utworzeniu elementu roboczego w wybranym stanie lub jest przenoszona z jednego stanu do innego. Te standardowe akcje ustawiają wartość pola lub powoduje, że pole jest tylko do odczytu lub wymagane. W tej grupie można określić jeden lub dwa warunki i kilka akcji.

Druga grupa obsługuje ograniczanie przejść stanu. W tej drugiej grupie można określić jeden i tylko jeden warunek wskazujący stan, do którego został przeniesiony element roboczy. Następnie można określić jedną lub więcej akcji, aby ograniczyć przejście 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.

Warunki i akcje przepływu pracy, które można ustawić, przedstawiono na poniższych obrazach. Akcje standardowe można stosować po utworzeniu elementu roboczego w wybranym stanie lub przeniesieniu z jednego stanu do innego. Te standardowe akcje ustawiają wartość pola lub tworzą pole tylko do odczytu lub wymagane. Dla tego zestawu reguł można określić jeden lub dwa warunki i kilka akcji.


Warunek

Obsługiwane akcje


Ustaw wartość pola lub ustaw wartość tylko do odczytu/wymagane na podstawie stanu

Warunki, element roboczy jest tworzony

Akcje, element roboczy jest tworzony


Ograniczanie przejścia na podstawie stanu

Warunek, element roboczy jest przenoszony

Akcje, ograniczają transakcję na podstawie stanu.


Ukryj pole lub ustaw pole tylko do odczytu lub wymagane na podstawie członkostwa w stanie i użytkowniku lub grupie

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

Akcje, ogranicz transakcję na podstawie stanu i członkostwa.


Na podstawie członkostwa użytkownika lub grupy ustaw atrybut pola lub ogranicz przejście stanu

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

Akcje, ogranicz 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).

Limity stanu i reguły przepływu pracy

W poniższej tabeli podsumowano ograniczenia dotyczące stanów przepływu pracy i reguł w przypadku 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 przepływu pracy i reguł zalecamy rozważenie poniższych wskazówek w celu zminimalizowania problemów z wydajnością.

  • Zminimalizuj liczbę reguł zdefiniowanych dla funkcji WIT. Chociaż można utworzyć wiele reguł dla typu elementu roboczego, dodawanie reguł może negatywnie wpływać na wydajność, gdy użytkownik dodaje i modyfikuje elementy robocze. Gdy użytkownicy zapisują elementy robocze, system weryfikuje wszystkie reguły skojarzone z polami dla typu elementu roboczego. W pewnych warunkach wyrażenie weryfikacji reguły jest zbyt złożone, aby aparat SQL mógł je ocenić.
  • Zminimalizuj liczbę zdefiniowanych niestandardowych typów elementów roboczych.

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

Definiowanie reguły

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

Aby uzyskać podstawowe informacje na temat definiowania reguł, zobacz Dodawanie reguły niestandardowej. Musisz spełnić wymagania wstępne zdefiniowane w tym artykule.

Ustaw wartość pola lub ustaw pole tylko do odczytu lub wymagane

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

Przykład zapewnienia zatwierdzenia potencjalnego zespołu przed aktywną pracą

W tym przykładzie zespoły programistyczne chcą mieć pewność, że żadne scenariusze użytkownika nie są opracowywane do momentu zatwierdzenia przez potencjalnego zespołu. Domyślne stany przepływu pracy są używane i dodawane są tylko jedno pole niestandardowe, zatwierdzone przez i grupę zabezpieczeń, grupę potencjalnych klientó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ą, należy zdefiniować 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 potencjalnych klientów zespołu, aby wypełnić pole Zatwierdzone przez
  • Wyczyść pole Zatwierdzone przez, gdy stan zostanie przeniesiony do obszaru 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


Zatwierdzone przez wyczyszczone, gdy nowy

Kiedy A work item state changes to New

Wtedy Clear the value of Approved By

Zatwierdzone przez wyczyszczone po usunięciu

Kiedy A work item state changes to Removed

Wtedy Clear the value of Approved By

Zatwierdzone przez tylko do odczytu

Kiedy Current user is not member of group Team Leads Group

Wtedy Make read-only Approved By

Zatwierdzone przez wymagane

Kiedy A work item state changes from New to Active

Wtedy Make required Approved By


Ograniczanie przejść stanu

Podczas określania 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ść stanu i stanu Zatwierdzone

Zgodnie z terminologią używaną przez grupę biznesową następujące stany przepływu pracy są definiowane dla scenariusza użytkownika. Stany dziedziczone, Nowe, Rozwiązane i Usunięte są ukryte. Zamiast tego używane są stany proponowane, w przeglądzie i wyciąć. Ponadto definiowane są trzy dodatkowe 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 obsługiwać bardziej kontrolowany przepływ pracy, grupa biznesowa zdecydowała się na utworzenie reguł, które będą obsługiwać następujące przejścia do przodu i odwrotnego stanu w typie elementu roboczego Scenariusz użytkownika.

  • Proponowane może przejść tylko do badań i cięcia
  • Badania mogą przejść tylko do projektu i cięcia
  • Projekt może przejść tylko do badań, zatwierdzonych i wycinanych
  • Zatwierdzone może przejść tylko do projektu, aktywnego i wycinania
  • Aktywny może przejść tylko do obszaru W przeglądzie
  • W obszarze Przegląd można przejść tylko do obszaru Aktywne (znaleziono dodatkową pracę), Zamknięte lub Wycięte
  • Zamknięte może przejść do obszaru Badania, Projektowanie, Aktywne, W przeglądzie (pozwala na przypadki, w których użytkownik zamknął element roboczy w błędzie)
  • Wyciąć można przejść tylko do proponowanego.

Uwaga

Podczas ograniczania przejścia stanu należy wziąć pod uwagę te przypadki, w których użytkownik przenosi stan w błędzie. Chcesz, aby użytkownicy mogli bezpiecznie odzyskać dane.

Ponadto grupa biznesowa chce zastosować reguły dla wymaganych pól:

  • Wymagaj wypełnienia pola Zatwierdzone przez , gdy stan zostanie przeniesiony z Zatwierdzone do Aktywne
  • Zezwalaj tylko użytkownikom należącym do grupy Autoryzowane osoby zatwierdzające, aby wypełnić pole Zatwierdzone przez
  • Wyczyść pole Zatwierdzone przez, gdy stan zostanie przeniesiony do obszaru Wytnij
  • Wymagaj, aby kryteria akceptacji były wypełniane, gdy stan zostanie przeniesiony do aktywnej

Definicje reguł

Aby zaimplementować powyższe ograniczenia, administrator procesu dodaje niestandardowe pole zatwierdzone przez tożsamość, grupę zabezpieczeń Autoryzowane osoby zatwierdzające i następujące jedenaście reguł.

   


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
I 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
I 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
I Restrict the state transition to Approved
I Restrict the state transition to Closed

W obszarze Stan 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
I 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
I 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 według

Kiedy A work item state changes to Cut

Wtedy Clear the value of Approved By


Weryfikowanie ograniczeń przejścia stanu

Po zdefiniowaniu reguł dla procesu i zaktualizowaniu projektu za pomocą procesu odśwież przeglądarkę i sprawdź operacje za pośrednictwem formularza elementu roboczego i przeglądarki.

W przypadku reguł zdefiniowanych w poprzedniej tabeli powinny zostać wyświetlone następujące menu rozwijane Stan. Otwórz tablicę i sprawdź możliwość przejścia z jednego stanu do innego.

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

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

Podczas określania 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 w przypadku określenia akcji 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 znajdziesz się ograniczony do aktualizowania elementu roboczego, być może napotkano jedną z tych reguł. Jeśli uważasz, że napotkano problem, który nie ma zastosowania, zobacz Problemy z buforowaniem usługi IndexDB formularza elementu roboczego.

Automatyzowanie przechodzenia stanu elementów roboczych nadrzędnych

Aby zautomatyzować przejścia stanu elementów roboczych nadrzędnych na podstawie przypisań stanu wykonanych do podrzędnych elementów roboczych, możesz dodać element webhook i użyć kodu i konfiguracji podanego w projekcie GitHub Automate State Transitions .

Uwaga

Projekt GitHub Automate State Transitions nie jest obsługiwaną funkcją usługi Azure Boards i dlatego nie jest obsługiwana przez zespół produktu. W przypadku pytań, sugestii lub problemów, które masz podczas korzystania z tych rozszerzeń, zgłoś je na stronie projektu GitHub.

Automatyzowanie ponownego przypisania na podstawie zmian stanu

Typ elementu roboczego procesu Agile miał wcześniej regułę, która ponownie przypisała usterkę do osoby, która ją utworzyła. Ta reguła została usunięta 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:

Po A work item state changes to rozpoznaniu, a następnieCopy the value from utworzone przez do przypisanej do.

Uwaga

Przejrzyj zmiany wprowadzone do dziedziczonego procesu za pośrednictwem dziennika inspekcji. Aby uzyskać więcej informacji, zobacz Access, export, and filter audit logs (Uzyskiwanie dostępu, eksportowanie i filtrowanie dzienników inspekcji).