Anpassen eines gehosteten XML-Prozesses

Azure DevOps Services (gehostetes XML)

Azure DevOps Services unterstützt das Hinzufügen und Aktualisieren von Prozessen über eine Verwaltungserfahrung, bei der es sich um einen webbasierten Importprozesshandelt. Nachdem Sie einen Prozess hinzugefügt haben, können Sie daraus ein oder mehrere Projekte erstellen. Sie können den Prozess jederzeit aktualisieren, indem Sie ihn erneut importieren. Die an der Prozessvorlage vorgenommenen Änderungen werden dann auf alle Projekte angewendet, die den Prozess verwenden.

Wichtig

Mit dem Gehosteten XML-Prozessmodell passen Sie die Arbeitsnachverfolgung an, indem Sie ausgewählte XML-Definitionsdateien einer Prozessvorlage aktualisieren. Dieses Feature ist nur verfügbar, wenn Daten mithilfe von Team Foundation Server Database Import Servicezu Azure DevOps Services migriert werden.

Weitere Informationen zu Anpassungs- und Prozessmodellen finden Sie unter Anpassen der Arbeitsnachverfolgung.

Ein Prozess ist eine ZIP-Datei, die eine Reihe von voneinander abhängigen Dateien enthält. Diese Dateien definieren die Bausteine des Nachverfolgungssystems für Arbeitselemente und anderer Subsysteme in Azure DevOps Services. Einige Bausteine aktualisieren vorhandene Projekte, während andere nur für neue Projekte gelten. Die vollständige Liste der Bausteine finden Sie in der folgenden Tabelle.

Wird beim Importieren/Aktualisieren eines Prozesses verwendet.

Wird beim Erstellen eines neuen Projekts verwendet

Ersetzt durch Systemstandardeinstellungen

Wird ignoriert.

Arbeitselementnachverfolgung

Verstand

Kategorien

Prozesskonfiguration

Bereiche und Iterationen

Testverwaltung

Arbeitselemente

Arbeitsaufgabenabfragen

Erstellen

Lab Management

Quellcodeverwaltung

Microsoft Project-Zuordnungen

Berichte

Portal (SharePoint-Produkte)

Supported process plug-ins and objects for process import

Es gibt Unterschiede zwischen Azure DevOps Services und lokalen Team Foundation Server unterstützt. Eine Zusammenfassung dieser Unterschiede finden Sie unter Verarbeiten von Vorlagenanpassungsunterschieden.

Anpassen eines Prozesses

Wenn Sie einen Prozess anpassen, ist es einfacher, mit einem klar definierten Prozess zu beginnen, als einen neuen Prozess zu erstellen.

Wenn Sie einen vorhandenen Prozess aktualisieren, den Sie mit lokalen Team Foundation Server verwendet haben, stellen Sie sicher, dass er den Einschränkungen entspricht, die in Vorlagen für den Import von enthalten sind.

Öffnen Einstellungen > Prozesses

Sie erstellen, verwalten und anpassen Prozesse über organisationseinstellungen Verarbeiten.

  1. Wählen Sie das Azure DevOps-Logo aus, um Projektezu öffnen. Wählen Sie dann Organisationseinstellungenaus.

    Open Organization settings

  2. Wählen Sie dann Verarbeitenaus.

    Organization Settings, Process page

    Wichtig

    Wenn Prozessnicht angezeigt wird, arbeiten Sie von TFS-2018 oder einer früheren Version. Die Seite Prozess wird nicht unterstützt. Sie müssen die Features verwenden, die für das lokale XML-Prozessmodellunterstützt werden.

Exportieren und Importieren eines Prozesses

  1. Wählen Sie auf der Registerkarte Prozesse die Auslassungszeichen (...) aus, um das Kontextmenü für den gehosteten XML-Prozess zu öffnen, den Sie exportieren möchten. Sie können nur gehostete XML-Prozesse exportieren.

    Process page > Export Hosted XML process menu option

    Speichern Sie die ZIP-Datei, und extrahieren Sie alle Dateien daraus.

  2. Benennen Sie den Prozess innerhalb der ProcessTemplate.xml Datei im Stammverzeichnis um.

    Benennen Sie den Prozess, um ihn von vorhandenen zu unterscheiden.

    <name>MyCompany Agile Process </name>

    Ändern Sie den Versionstyp, und ändern Sie die Haupt- und Nebennummern. Geben Sie eine eindeutige GUID für den Typ an, wie in diesem Beispiel:

    <version type="F50EFC58-C2FC-4C66-9814-E395D90778A3" major="1" minor="1"/>

  3. Wenden Sie unterstützte Anpassungen an.

  4. Erstellen Sie eine ZIP-Datei aller Dateien und Ordner im Stammverzeichnis.

  5. Importieren Sie die ZIP-Datei Ihres benutzerdefinierten Prozesses.

Unterstützte Anpassungen

Sie können die folgenden Anpassungen auf Ihren Prozess anwenden:

Im folgenden Abschnitt werden die Einschränkungen aufgeführt, die das System erzwingt.

Beschränkungen

Sie können bis zu 32 Prozesse in Azure DevOps Services importieren. Ihre benutzerdefinierten Prozesse müssen allen folgenden zusammengefassten Regeln entsprechen. Andernfalls werden beim Import möglicherweise Validierungsfehlermeldungen angezeigt.

Prozessvorlage

Ihre ProcessTemplate.xml-Datei muss der Syntax und den Regeln entsprechen, die in ProcessTemplate XML-Elementverweisbeschrieben sind. Außerdem müssen die folgenden Bedingungen erfüllt sein:

  • Begrenzt die Anzahl der definierten WITs auf 64.
  • Enthält nur eine Categories.xml Definitionsdatei
  • Enthält nur eine ProcessConfiguration.xml Definitionsdatei
  • Verwendung eindeutiger Anzeigenamen für alle Felder und WIT-Definitionen

Außerdem muss Ihr Prozess die folgenden Überprüfungen bestehen:

  • Prozessnamen sind eindeutig und enthalten höchstens 155 Unicode-Zeichen.
    • Eine Vorlage mit dem gleichen Namen und der gleichen Versions-GUID wie ein vorhandener Prozess überschreibt diesen Prozess.
    • Eine Vorlage mit dem gleichen Namen, aber einer anderen Versions-GUID generiert einen Fehler.
    • Prozessnamen dürfen die folgenden Sonderzeichen nicht enthalten: . , ; ' ` : / \ * | ? " & % $ ! + = ( ) [ ] { } < > .
      Weitere Einschränkungen finden Sie unter Benennungseinschränkungen.
  • Prozessordner enthalten keine .exe Dateien. Auch wenn Sie einen Prozess importieren können, der eine .exe enthält, schlägt die Projekterstellung fehl.
  • Die Gesamtgröße des Prozesses beträgt mindestens 2 GB. Andernfalls schlägt die Projekterstellung fehl.

Prozesskonfiguration

Die ProcessConfiguration.xml-Definitionsdatei muss der Syntax und den Regeln entsprechen, die in ProcessConfiguration XML-Elementverweis beschrieben sind. Außerdem müssen die folgenden Bedingungen erfüllt sein:

  • Gibt alle TypeFields-Elemente an
  • Ist auf fünf Portfolio-Backlogs beschränkt.
  • Enthält nur ein nicht vorbereitetes Portfoliorückstand
  • Gibt nur ein übergeordnetes Portfoliorückstand für jedes untergeordnete Portfoliorückstand an.
  • Enthält erforderliche Zuordnungen zwischen Workflowzustand und Metastatus und verweist nicht auf nicht unterstützte Metastates.

Kategorien

Die Categories.xml-Definitionsdatei muss der Syntax und den Regeln entsprechen, die unter Xml-Elementverweis für Kategorien beschrieben sind. Außerdem müssen die folgenden Bedingungen erfüllt sein:

  • Ist auf 32 Kategorien beschränkt.
  • Definiert alle Kategorien, auf die in der ProcessConfiguration.xml verwiesen wird.

Arbeitsaufgabentypen

Ein WITD-Element und seine untergeordneten Elemente müssen der Syntax und den Regeln entsprechen, die in WITD XML-Elementverweis beschrieben sind. Außerdem müssen die folgenden Bedingungen erfüllt sein:

  • Es gibt mindestens 512 Felder innerhalb einer einzelnen WIT und 512 Felder in allen WITs.
  • Der einem WIT zugewiesene Benutzername und das erforderliche Refname-Attribut sind innerhalb der WIT-Definitionsdateien eindeutig.
  • Der erforderliche refname-Attributwert enthält keine nicht zu verwendenden Zeichen oder verwendet die nicht zuweislichen Namespaces System. Name und Microsoft. Nennen Sie.
  • Verweisnamen enthalten mindestens einen Zeitraum (.), und alle anderen Zeichen sind Buchstaben ohne Leerzeichen.
  • Das WITD-Element enthält ein FORM-Element, das ein WebLayout-Element definiert, das der in webLayout- und Control-Elementen angegebenen Syntax entspricht.

Arbeitsaufgabenfelder

Ein FIELDS-Element und seine untergeordneten Elemente müssen der Syntax und den Regeln entsprechen, die in FIELD XML-Elementverweis beschrieben sind. Außerdem müssen die folgenden Bedingungen erfüllt sein:

  • Der einem WIT zugewiesene Benutzername und das erforderliche Refname-Attribut sind innerhalb der WIT-Definitionsdateien eindeutig.
  • Der erforderliche refname-Attributwert enthält keine nicht zu verwendenden Zeichen oder verwendet die nicht zuweislichen Namespaces System. Name und Microsoft. Nennen Sie.
  • Verweisnamen enthalten mindestens einen Zeitraum (.), und alle anderen Zeichen sind Buchstaben ohne Leerzeichen.

Ein FIELD-Element und seine untergeordneten Elemente können ein GLOBALLIST-Element enthalten.

Einschränken von Einschränkungen

  • Ein FIELDS-Element ist auf 512 Felder beschränkt.
  • Ein Arbeitselementtyp ist auf 64 Personennamenfelder beschränkt. Ein Personennamenfeld ist ein Feld mit dem Attribut und dem Wert syncnamechanges=true .
  • Ein ALLOWEDVALUES- oder SUGGESTEDVALUES-Element ist auf 512 LISTITEM-Elemente beschränkt.
  • Ein Feld ist auf 1.024 Regeln beschränkt.

Pflichtfelder

Die folgenden Felder werden in der ProcessConfiguration.xml angegeben:

  • Geben Sie für alle WITs in einer Kategorie, die ein Backlog für die Prozesskonfiguration definiert, die Felder an, die für die Attribute und Werte und type=Team verwendet type=Order werden.
  • Geben Sie für alle WITs in einer Kategorie, die ein reguläres Backlog oder portfolio backlog definiert, das feld an, das für verwendet type=Effort wird.
  • Geben Sie für alle WITs in der Kategorie, die das TaskBacklog-Element definiert, Folgendes an:
    • Das feld, das für verwendet type=RemainingWork wird.
    • Das feld, das für verwendet type=Activity wird.
    • Die ALLOWEDVALUES-Regel für das Feld, das für verwendet wird.

Regeleinschränkungen

Zusätzlich zu den standardmäßigen Feldregeleinschränkungenwerden die folgenden Einschränkungen erzwungen:

  • Feldregelelemente können nicht für - und nicht -Attribute angeben.
  • FIELD-Elemente können die untergeordneten Regelelemente CANNOTLOSEVALUE,NOTSAMEAS,MATCHund PROHIBITEDVALUES nicht enthalten.
  • Mit Ausnahme der folgenden Felder, FIELD-Definitionen für System. Namensfelder dürfen keine Feldregeln enthalten.
    • System.Title kann die Regeln REQUIRED undDEFAULT enthalten.
    • System.Description kann die Regeln REQUIRED undDEFAULT enthalten.
    • System.AssignedTo kann die Regeln REQUIRED,DEFAULT,ALLOWEXISTINGVALUEund VALIDUSER enthalten.
    • System.ChangedBy kann die Regeln REQUIRED,DEFAULT,ALLOWEXISTINGVALUEund VALIDUSER enthalten.

Konsistente Namen und Attribute

Innerhalb eines Prozesses oder einer Projektsammlung müssenname , typeund andere Attribute, die von einem FIELD-Element definiert werden, in allen WIT-Definitionen identisch sein.

Identitätsfelder

Identitätsfelder entsprechen Feldern, die konto-, benutzer- oder gruppennamen enthalten. Die folgenden Kernsystemfelder sind als Identitätsfelder hart codiert:

  • Zugewiesen an (System.AssignedTo)
  • Autorisiert als (System.AuthorizedAs)
  • Geändert von (System.ChangedBy)
  • Erstellt von (System.CreatedBy)
  • Aktiviert von (Microsoft.VSTS.Common.ActivatedBy)
  • Geschlossen von (Microsoft.VSTS.Common.ClosedBy)
  • Aufgelöst von (Microsoft.VSTS.Common.ResolvedBy)
Hinzufügen eines benutzerdefinierten Identitätsfelds

Ein Zeichenfolgenfeld wird als Identitätsfeld erkannt, wenn Sie das Attribut syncnamechanges als Trueangeben.

Regeleinschränkungen für Identitätsfelder

Geben Sie für die aktuelle Version des Prozessimports keine der folgenden Regeln innerhalb einer FIELD-Definition an.

  • SUGGESTEDVALUES
  • Regeln, die Nicht-Identitätswerte enthalten.
Richtiges Beispiel

Um die in einem Identitätsfeld gültigen Kontonamen zu beschränken, geben Sie das VALIDUSER -Element mit einem Gruppennamenattribut an.

    <FIELD name="Project Manager" refname="Fabrikam.ProgramManager" type="String" reportable="dimension" syncnamechanges="true">
        <ALLOWEXISTINGVALUE />
        <VALIDUSER group="[PROJECT]\Program Manager Group" />
        <HELPTEXT>The program manager responsible for signing off on the user story.</HELPTEXT>
    </FIELD>

Stellen Sie vor dem Importieren des Prozesses sicher, dass Sie die Gruppe in den Projekten erstellt haben, die vom Prozess aktualisiert werden.

Falsches Beispiel

Das folgende Beispiel ist ungültig, da es Folgendes angibt:

  • Ein ALLOWEDVALUES-Element.
  • Ein DEFAULT -Element, das die Nicht-Identität-Zeichenfolge value="Not Assigned" angibt.
    <FIELD name="Project Manager" refname="Fabrikam.ProgramManager" type="String" reportable="dimension" syncnamechanges="true">
        <ALLOWEXISTINGVALUE />
        <ALLOWEDVALUES>
          <LISTITEM value="[PROJECT]\Program Manager Group" />
          <LISTITEM value="Not Assigned" />
        </ALLOWEDVALUES>
        <DEFAULT from="value" value="Not Assigned" />
        <VALIDUSER />
        <HELPTEXT>The program manager responsible for signing off on the user story.</HELPTEXT>
    </FIELD>

Workflow

Ein WORKFLOW-Element und seine untergeordneten Elemente müssen der Syntax und den Regeln entsprechen, die in WORKFLOW XML-Elementverweis beschrieben sind. Außerdem müssen die folgenden Bedingungen erfüllt sein:

  • Schränkt jeden WIT auf 16 Workflowzustände ein
  • Definiert alle Workflowzustände, die Metazuständen in der ProcessConfiguration-Definitionsdatei zugeordnet sind.
  • Definiert einen Übergang zwischen allen Workflowzuständen, die der Statuskategorie "Vorgeschlagen" zugeordnet sind, und Workflowzuständen, die der Statuskategorie "InProgress" zugeordnet sind
  • Definiert einen Übergang zwischen allen Workflowzuständen, die der Statuskategorie "InProgress" zugeordnet sind, und Workflowzuständen, die der Statuskategorie "Complete" zugeordnet sind.

Eine Beschreibung der Zustandskategorie und Zuordnungen finden Sie unter Workflowstatus und Zustandskategorien.

Globale Listen

Für das Gehostete XML-Prozessmodell gelten die folgenden Grenzwerte für den Import globaler Listen:

  • Es gibt mindestens 64 globale Listen.
  • Pro Liste sind mindestens 512 Elemente verfügbar.
  • Insgesamt können ungefähr 10.000 Elemente in allen globalen Listen definiert werden, die für alle WITs angegeben sind.

Formularlayout

Ein FORM-Element und seine untergeordneten Elemente müssen der Syntax und den Regeln entsprechen, die in FORM XML-Elementverweis beschrieben sind.

Ein Control-Element kann kein benutzerdefiniertes Steuerelement angeben. Benutzerdefinierte Steuerelemente werden nicht unterstützt.