Freigeben über


Anpassen eines gehosteten XML-Prozesses

Azure DevOps Services

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

Wichtig

Mit dem Hosted XML-Prozessmodell können Sie die Arbeitsverfolgung anpassen, indem Sie ausgewählte XML-Definitionsdateien einer Prozessvorlage aktualisieren. Dieses Feature ist nur verfügbar, wenn Daten mithilfe des Azure DevOps-Datenmigrationstools zu Azure DevOps Services migriert werden. Wenn Sie das Vererbungsprozessmodell verwenden, können Sie Ihre Arbeitsnachverfolgung über die Benutzeroberfläche anpassen, indem Sie einen Vererbungsprozess erstellen. Wenn Sie das lokale XML-Prozessmodell verwenden, können Sie eine Prozessvorlage anpassen, eine Prozessvorlage hochladen oder herunterladen und eine Prozessvorlage anpassen.

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 aktiviert. Diese Dateien definieren die Bausteine des Work-Item Tracking-Systems und anderer Subsysteme in Azure DevOps. Einige Bausteine aktualisieren bestehende 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 bei der Erstellung eines neuen Projekts verwendet Ersetzt durch Systemstandardwerte Ignoriert
Arbeitselementnachverfolgung Bereiche und Iterationen Entwickeln Microsoft Project-Zuordnungen
Arbeitselementtypen (Work Item Types, WITs) Testverwaltung Laborverwaltung Berichte
Kategorien Arbeitsaufgaben Quellcodeverwaltung Portal (SharePoint-Produkte)
Komplexe Konfiguration Arbeitselementabfragen

Voraussetzungen

Anleitungen zum Anpassen von Azure Boards zur Anpassung an Ihre spezifischen Geschäftsanforderungen finden Sie unter Konfigurieren und Anpassen von Azure Boards.

Kategorie Anforderungen
Berechtigungen – So erstellen, löschen oder bearbeiten Sie einen Prozess: Mitglied der Gruppe Projektsammlungsadministrator oder spezifische Berechtigungen auf Sammlungsebene – Prozess erstellen, Prozess löschen, Prozess bearbeiten oder Feld aus Organisation löschen – auf Zulassen gesetzt. Weitere Informationen finden Sie unter Anpassen eines geerbten Prozesses.
– Zum Aktualisieren der Boards: Teamadministrator oder ein Mitglied der Gruppe Projektadministratoren.
Zugriff – Selbst wenn Sie über den Einfachen oder niedrigeren Zugriff verfügen, können Sie einen Prozess weiterhin ändern, wenn Ihnen jemand die Berechtigung erteilt.
– Aktualisieren von Arbeitsaufgaben und Ändern des Typs: Mitglied des Projekts.
Projektprozessmodell - Sie haben das Vererbungsprozessmodell für die Sammlung, die das Projekt enthält.
– Verwenden Sie den Team Foundation Server-Datenbankimportdienst, um Daten zu Azure DevOps Services zu migrieren.
Wissen - Vertrautheit mit den Anpassungs- und Prozessmodellen.

Anpassen eines Prozesses

Das Anpassen eines Prozesses ist effizienter, wenn Sie mit einem klar definierten Prozess beginnen, anstatt einen von Grund auf neu zu erstellen.

Wenn Sie einen vorhandenen Prozess aktualisieren, der zuvor mit Azure DevOps Server verwendet wurde, stellen Sie sicher, dass er den für den Vorlagenimport erforderlichen Einschränkungen entspricht, um Validierungsfehler während des Importvorgangs zu vermeiden.

Exportieren und Importieren eines Prozesses

Führen Sie die folgenden Schritte aus, um einen Prozess zu importieren oder zu exportieren:

  1. Melden Sie sich bei Ihrem organization (https://dev.azure.com/{Your_Organization}) an.

  2. Wählen Sie Organisationseinstellungen aus.

    Screenshot der hervorgehobenen Schaltfläche

  3. Wählen Sie Prozess aus.

    Screenshot der Seite

    Wichtig

    Wenn "Prozess" nicht angezeigt wird, arbeiten Sie mit einer früheren Version, in der die Seite "Prozess " nicht unterstützt wird. Verwenden Sie die features, die für das lokale XML-Prozessmodell unterstützt werden.

  4. Wählen Sie die Ellipse (...), um das Kontextmenü für den Hosted XML-Prozess zu öffnen, den Sie exportieren möchten. Sie können nur Hosted XML-Prozesse exportieren.

    Seite bearbeiten > Menüoption Hosted XML-Prozess exportieren

    Speichern Sie die Zip-Datei und extrahieren Sie alle Dateien daraus.

  5. Benennen Sie den Prozess in der Datei ProcessTemplate.xml um, die sich im Stammverzeichnis befindet.

    Benennen Sie den Prozess, um ihn von bestehenden Prozessen 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"/>

  6. Anwenden unterstützte Anpassungen.

  7. Erstellen Sie eine Zip-Datei mit allen Dateien und Ordnern im Stammverzeichnis.

  8. Importieren Sie die Zip-Datei Ihres benutzerdefinierten Prozesses.

Unterstützte Anpassungen

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

Unterschiede

Azure DevOps Services und Azure DevOps Server verwenden unterschiedliche Modelle für projekte und prozesse:

  • In Azure DevOps Server dienen Prozessvorlagen als Ausgangspunkte für Projekte, und die Anpassung ist auf einzelne Projekte ausgelegt.
  • In Azure DevOps Services werden Prozesse für mehrere Projekte freigegeben und dienen als Anpassungsbereich.

Die Struktur und Syntax für die Definition von Prozessvorlagen sind hauptsächlich konsistent, mit nur geringfügigen Unterschieden zwischen Vorlagen, die für Azure DevOps Services und Azure DevOps Server entwickelt wurden.

Hinweis

Die Migration von gehostetem XML zum geerbten Modell wird nur in Azure DevOps Services und nicht in Azure DevOps Server unterstützt.

Beschränkungen

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

Nicht unterstützte Anpassungen und nicht referenzierte Plug-In-Dateien

Jeder Verweis auf die folgenden Objekte in einer der XML-Definitionsdateien führt beim Import zu einem Überprüfungsfehler:

  • Benutzerdefinierte Steuerelemente für Arbeitselementformulare
  • Benutzerdefinierte Linktypen
  • Globaler Workflow
  • Team-Außendienst
  • For und Not Regeln
  • Unterstützung von Übereinstimmungsregeln

Die folgenden Plug-Ins und die zugehörigen Dateien werden nicht zum Definieren eines Prozesses verwendet oder zum Aktualisieren vorhandener Projekte verwendet: Sie werden jedoch verwendet, um Objekte oder Artefakte zu erstellen, wenn Sie ein neues Projekt erstellen.

  • Klassifizierung
  • Arbeitsaufgabenabfragen, definiert mithilfe der WIQL-Syntax (Work Item Query Language)
  • Testverwaltung
  • Arbeitselemente

Hinweis

Die WIQL-Länge darf 32-K-Zeichen nicht überschreiten. Das System ermöglicht es Ihnen nicht, Abfragen zu erstellen oder auszuführen, die diese Länge überschreiten.

Die folgenden Plug-Ins und die zugehörigen Dateien werden durch Systemstandardwerte ersetzt:

  • Entwickeln
  • Gruppen und Berechtigungen
  • Labor
  • Quellcodeverwaltung

Die folgenden Plug-Ins und die zugehörigen Dateien werden ignoriert:

  • Microsoft Project-Zuordnungen
  • Berichte
  • Windows SharePoint Services

Benutzerdefinierte Plug-Ins werden nicht unterstützt.

Objektgrenzwerte

Wenn Sie eine Prozessvorlage für den Import anpassen, begrenzen Sie die Anzahl der Objekte, die Sie definieren, wie unter Grenzwerte für Arbeitsnachverfolgungsobjekt angegeben.

Prozessvorlage

Ihre ProcessTemplate.xml Datei muss der Syntax und den Regeln entsprechen, die die folgenden Bedingungen erfüllen:

  • Grenzwerte für die Anzahl der definierten WITs auf 64
  • Enthält nur eine Kategorien.xml-Definitionsdatei
  • Enthält nur eine ProcessKonfigurationen.xml-Definitionsdatei
  • Verwendet eindeutige freundliche Namen für alle Felder und WIT-Definitionen

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

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

Prozesskonfiguration

Die Definitionsdatei ProcessConfiguration.xml muss der Syntax und den Regeln entsprechen, die in ProcessConfiguration XML-Elementreferenz beschrieben sind. Außerdem muss sie die folgenden Bedingungen erfüllen:

  • Gibt alle TypeFields Elemente an.
  • Ist auf fünf Portfolio-Backlogs begrenzt
  • Enthält nur ein beispielloses Portfoliobacklog
  • Gibt nur ein übergeordnetes Portfolio-Backlog für jedes untergeordnete Portfolio-Backlog an
  • Enthält erforderliche Workflow-Zustands-zu-Metastaten-Zuordnungen und verweist nicht auf nicht unterstützte Metastaten

Kategorien

Die Definitionsdatei Categories.xml muss der Syntax und den Regeln entsprechen, die in der XML-Elementreferenz für Kategorien beschrieben sind. Außerdem muss sie die folgenden Bedingungen erfüllen:

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

Arbeitsaufgabentypen

Ein WITD Element und seine untergeordneten Elemente müssen der syntax und den Regeln entsprechen, die in der WITD XML-Elementreferenz beschrieben werden. Außerdem muss sie die folgenden Bedingungen erfüllen:

  • Es gibt höchstens 1.024 Felder innerhalb eines einzelnen WITs und 1.024 Felder über alle WITs hinweg.
  • Der freundliche Name und die erforderlichen refname Die einem WIT zugewiesenen Attribut sind innerhalb der aktivierten WIT-Definitionsdateien eindeutig.
  • Der erforderliche refname Attributwert enthält keine unzulässigen Zeichen oder verwendet die unzulässigen Namespaces System.Name und Microsoft.Name.
  • Referenznamen enthalten mindestens einen Punkt (.), 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-Elementreferenz beschrieben werden. Außerdem muss sie die folgenden Bedingungen erfüllen:

  • Der freundliche Name und die erforderlichen refname Die einem WIT zugewiesenen Attribut sind innerhalb der aktivierten WIT-Definitionsdateien eindeutig.
  • Der erforderliche refname Attributwert enthält keine unzulässigen Zeichen oder verwendet die unzulässigen Namespaces System.Name und Microsoft.Name.
  • Referenznamen enthalten mindestens einen Punkt (.), und alle anderen Zeichen sind Buchstaben ohne Leerzeichen.

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

Grenzwerte einschränken

  • Ein FIELDS Element ist auf 1.024 Felder beschränkt.
  • Ein Workitem-Typ ist auf 64 Felder mit Personennamen begrenzt. Ein Personennamensfeld ist eines mit dem Attribut und Wert syncnamechanges=true.
  • Ein ALLOWEDVALUES- oder SUGGESTEDVALUES-Element ist auf 512 LISTITEM Elemente beschränkt.
  • Ein Feld ist auf 1.024 Regeln begrenzt.

Erforderliche Felder

Kategorie Anzugebende Felder
Prozesskonfigurationsrückstand Felder, die für die Attribute und Werte type=Team verwendet werden und type=Order
Regulärer Backlog oder Portfolio-Backlog Feld, das für type=Effort verwendet wird
Aufgabenrückstand - Feld verwendet für type=RemainingWork
- Feld verwendet für type=Activity
- ALLOWEDVALUES Regel for the field used for type=Activity

Einschränkungen der Regel

Einschränkung Einzelheiten
Feld-Regel-Elemente können nicht die for und not Attribut. Diese Attribute sind in Feldregelelementen nicht zulässig.
FIELD Elemente können nicht die Elemente der Child-Regeln enthalten CANNOTLOSEVALUE, NOTSAMEAS, MATCH, und PROHIBITEDVALUES. Diese untergeordneten Regelelemente werden nicht unterstützt in FIELD Elemente.
FIELD Definitionen für System.Name Felder können keine Feldregeln enthalten, mit Ausnahme bestimmter Felder. Nur bestimmte Felder können bestimmte Regeln enthalten, wie in diesem Artikel beschrieben.
System.Title Kann die Regeln REQUIRED und DEFAULT enthalten.
System.Description Kann die Regeln REQUIRED und DEFAULT enthalten.
System.AssignedTo Kann die Regeln enthalten REQUIRED, DEFAULT, ALLOWEXISTINGVALUE, und VALIDUSER.
System.ChangedBy Kann die Regeln enthalten REQUIRED, DEFAULT, ALLOWEXISTINGVALUE, und VALIDUSER.

Consistent names und Attribut

Innerhalb eines Prozesses oder einer Projektsammlung müssen name, type und andere Attribute, die ein FIELD-Element definiert, bei allen WIT-Definitionen identisch sein.

Identitätsfelder

Die Identitätsfelder entsprechen den Feldern, die zur Aufnahme von Konto-, Benutzer- oder Gruppennamen verwendet werden. Die folgenden Kernsystemfelder sind als Identitätsfelder fest codiert:

Feldname Verweisname
Zugewiesen zu System.AssignedTo
Autorisiert als System.AuthorizedAs
Geändert durch System.ChangedBy
Erstellt von System.CreatedBy
Aktiviert von Microsoft.AzureDevOps.Common.ActivatedBy
Geschlossen von Microsoft.AzureDevOps.Common.ClosedBy
Gelöst von Microsoft.AzureDevOps.Common.ResolvedBy
Hinzufügen eines benutzerdefinierten Identitätsfeldes

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

Regelbeschrä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 zulässigen Kontonamen zu begrenzen, geben Sie den Wert VALIDUSER Element mit einem Gruppennamen-Attribut.

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

Bevor Sie den Prozess importieren, stellen Sie sicher, dass Sie die Gruppe in den Projekten erstellt haben, die der Prozess aktualisiert.

Falsches Beispiel

Das folgende Beispiel ist ungültig, weil es einen Parameter enthält:

  • Ein ALLOWEDVALUES-Element.
  • Ein DEFAULT Element, das die Nicht-Identitätszeichenfolge angibt value="Not Assigned".
    <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>

Arbeitsablauf

Ein WORKFLOW Element und seine untergeordneten Elemente müssen der syntax und den Regeln entsprechen, die in der WORKFLOW-XML-Elementreferenz beschrieben sind. Außerdem muss sie die folgenden Bedingungen erfüllen:

  • Grenzwerte für jeden WIT auf 16 Workflow-Zustände
  • Definiert alle Workflow-Zustände, die in der Definitionsdatei ProcessKonfigurationen.xml auf Metastaten abgebildet werden
  • Defines a transition between all workflow states mapped zum "Vorgeschlagene" state category und workflow states mapped zum "InProgress" state category
  • Definiert einen Übergang zwischen allen Workflowzuständen, die der Statuskategorie "InProgress" zugeordnet sind, und Workflowzuständen, die der Statuskategorie "Abgeschlossen" zugeordnet sind.

Eine Beschreibung der Statuskategorie und der Zuordnungen finden Sie unter Workflow-Zustände und Zustandskategorien.

Globale Listen

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

  • Es gibt höchstens 64 globale Listen
  • Es gibt höchstens 1.024 Elemente pro Liste.
  • Ungefähr 10.000 Elemente können insgesamt unter allen globalen Listen definiert werden, die über alle WITs hinweg angegeben werden.

Formularlayout

Ein FORM Element und seine untergeordneten Elemente müssen der syntax und den Regeln entsprechen, die in der FORM XML-Elementreferenz beschrieben werden.

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