Modificare o aggiungere un tipo di elemento di lavoro personalizzato (WIT)

In qualità di amministratore di progetto, potrebbe essere necessario modificare un tipo di elemento di lavoro esistente (WIT) per supportare i requisiti di traccia aggiuntivi o i processi di flusso di lavoro. I motivi più comuni per la modifica di un tipo di elemento di lavoro sono l'aggiunta o la modifica del set di campi o delle regole di campo, la modifica del flusso di lavoro o la personalizzazione del form elemento di lavoro. Questi tre motivi corrispondono alle tre sezioni principali del file di definizione XML del tipo di elemento di lavoro, ovvero FIELDS, WORKFLOW e FORM.

Tutte queste modifiche richiedono la modifica della definizione del tipo di elemento di lavoro che è possibile eseguire solo per le distribuzioni locali di TFS. In questo argomento vengono forniti i cenni preliminari sui contenuti personalizzabili e sui puntatori al contenuto che ne illustra le modalità.

Tipi di elementi di lavoro, personalizzazione

Aggiungere o modificare un campo, una regola di campo, un'etichetta o un testo vuoto

Aggiungere i campi e le regole di campo alla sezione FIELDS. Affinché il campo venga visualizzato nel form elemento di lavoro, è necessario aggiungerlo alla sezione FORM della definizione del tipo di elemento di lavoro.

Per aggiungere l'ID elemento di lavoro a un form, specificare ad esempio la sintassi XML nella sezione FORM.

<Control FieldName="System.ID" Type="FieldControl" Label="ID" LabelPosition="Left" />

Per altre informazioni sulla definizione dei campi, vedere Aggiungere o modificare un campo per supportare query, rapporti e flussi di lavoro.

Modificare gli stati, i motivi, le transizioni del flusso di lavoro oppure aggiungere le regole di campo del flusso di lavoro

Le sezioni STATES e REASONS all'interno di WORKFLOW specificano i valori dell'elenco di selezione nei campi Motivo e Stato. Consentono di tenere traccia dello stato degli elementi di lavoro. La sezione TRANSITIONS specifica le transizioni valide tra gli stati, come illustrato di seguito. Specificare entrambe le transizioni in avanti e regressiva.

Esempio di diagramma di stato del flusso di lavoro

Stati del flusso di lavoro della storia utente, modello di processo Agile

Il flusso di lavoro viene modificato per ottenere gli obiettivi seguenti:

  • Aggiungere o rimuovere uno stato, un motivo o una transizione.

  • Specificare un valore per il campo da applicare durante la modifica di uno stato, un motivo o una transizione.

  • Specificare un elemento ACTION personalizzato per automatizzare le assegnazioni di campo basate su una modifica di stato, motivo o transizione.

Quando si personalizza il flusso di lavoro effettuare le operazioni seguenti:

  1. Modificare il FLUSSO DI LAVORO della definizione del tipo di elemento di lavoro.

  2. Modificare la configurazione del processo per mappare i nuovi stati del flusso di lavoro a metastati.

    Questo secondo passaggio è necessaria nelle seguenti circostanze:

    • Quando si modifica il flusso di lavoro per un tipo di elemento di lavoro che viene visualizzato in una pagina di strumenti di pianificazione Agile. Questi tipi di elemento di lavoro appartengono alle categorie Requisito o Attività. Per altre informazioni sulla configurazione di questi strumenti, vedere Configurare e personalizzare gli strumenti di pianificazione Agile per il progetto team.

    • Quando si modifica il flusso di lavoro per il piano di test o il gruppo di test e si usa un client Test Manager fornito con Visual Studio 2013.2 o versioni precedenti. Questi tipi di elementi di sono diventati disponibili quando è stato effettuato l'aggiornamento del server a livello applicazione a TFS 2013.3. che viene visualizzato in una pagina di strumenti di pianificazione Agile.

      Se si verifica l'errore Errore imprevisto rilevato dall'applicazione. durante la connessione a un progetto team dopo aver modificato il flusso di lavoro, è possibile risolverlo mappando i nuovi stati del flusso di lavoro ai metastati. Per risolvere l'errore, vedere Importare ed esportare la configurazione del processo [witadmin].

Regole di campo del flusso di lavoro

È possibile applicare le regole di campo solo quando si modifica lo stato, si specifica un motivo oppure durante la transizione di un flusso di lavoro.

Se ad esempio si aggiunge la regola EMPTY quando lo stato viene impostato su Attivo, è possibile impostare automaticamente su null i campi Data di chiusura e Chiuso da e renderli di sola lettura. Questa operazione risulta utile quando si riattiva un tipo di elemento di lavoro da uno stato chiuso.

<STATE value="Active">
   <FIELDS>
. . .
      <FIELD refname="Microsoft.VSTS.Common.ClosedDate"><EMPTY/></FIELD>
      <FIELD refname="Microsoft.VSTS.Common.ClosedBy"><EMPTY/></FIELD>
   </FIELDS>
</STATE>

Applicare le regole di campo del flusso di lavoro per effettuare le operazioni seguenti:

  • Assegnare il valore che un campo può avere specificando CANNOTLOSEVALUE, EMPTY, FROZEN, NOTSAMEAS, READONLY e REQUIRED.

  • Copiare un valore in un campo tramite COPY, DEFAULT e SERVERDEFAULT.

  • Limitare gli utenti che possono modificare un campo.

  • Applicare i criteri di ricerca in un campo stringa usando MATCH.

  • Applicare le regole in modo condizionale in base ai valori di altri campi usando WHEN, WHENNOT, WHENCHANGED e WHENNOTCHANGED.

  • Limitare le regole da applicare a utenti o gruppi specifici. La maggior parte delle regole supporta gli attributi not o for per determinare gli utenti cui la regola viene applicata o meno.

Per altre informazioni sull'applicazione delle regole di campo del flusso di lavoro, vedere Elemento FIELD (Flusso di lavoro).

Personalizzare il form dell'elemento di lavoro

Nell'immagine seguente sono illustrati gli elementi più comuni dei form elemento di lavoro. È possibile personalizzare tutti gli elementi, ad eccezione dei controlli del form e dell'area del titolo.

Elementi e controlli del form dell'elemento di lavoro

Un tipo di elemento di lavoro può essere personalizzato per ottenere gli obiettivi seguenti:

Modificare la definizione del tipo di elemento di lavoro

Per modificare la definizione del tipo di elemento di lavoro, esportare, modificare e quindi importare il file di definizione del tipo di elemento di lavoro.

Processo per la personalizzazione di un oggetto WIT

Con witadmin, è possibile importare ed esportare file di definizione. Altri strumenti che è possibile usare per modificare la sintassi XML per un oggetto sono Editor di processo, disponibile con il download di Power Tools di TFS o Gestione progetti team di TFS, un progetto di risorse della community disponibile in CodePlex.

  1. Se le autorizzazioni di amministrazione per il progetto team non sono disponibili, è necessario ottenerle.

  2. Aprire una finestra del prompt dei comandi nel computer in cui è installato Visual Studio o Team Explorer e immettere:

    cd %programfiles%\Microsoft Visual Studio 12.0\Common7\IDE
    

    In una versione a 64 bit di Windows sostituire %programfiles% con %programfiles(x86)%. È possibile scaricare Team Explorer gratuitamente.

  3. Esportare il file di definizione del tipo di elemento di lavoro nella posizione in cui si vuole modificare o aggiungere un campo. Specificare i nomi del tipo di elemento di lavoro e del file.

    witadmin exportwitd /collection:CollectionURL /p:ProjectName /n:TypeName /f:"DirectoryPath/FileName.xml"
    

    Un esempio di CollectionURL è https://Server:8080/tfs/NomeRaccoltaProgettiTeam.

  4. Modificare il file. Per informazioni dettagliate, vedere Gestione elementi di lavoro: indice delle definizioni di elementi XML.

  5. Importare il file di definizione del tipo di elemento di lavoro.

    witadmin importwitd /collection:CollectionURL /p:ProjectName /f:"DirectoryPath/FileName.xml"
    
  6. Aprire TWA o Team Explorer per visualizzare le modifiche. Se il client è già aperto, aggiornare la pagina.

    In Team Explorer, scegliere il pulsante AggiornaAggiorna.

    Gli ultimi aggiornamenti vengono scaricati dal server, incluse le modifiche appena importate. Attendere alcuni secondi finché l'aggiornamento non viene completato.

    Per altre informazioni sull'uso di witadmin, vedere Importare, esportare e gestire tipi di elemento di lavoro [witadmin].

Domande e risposte

D: Come si usano i tag?

R: Per informazioni sull'aggiunta dei tag e degli elenchi di filtri, fare clic qui.

D: Quali personalizzazioni si possono applicare se si continua a usare Configurazione guidata delle funzionalità per aggiornare il progetto team dopo un aggiornamento a TFS?

R: È possibile aggiungere tipi di elemento di lavoro e modificare il layout del form. Con la procedura guidata Configurazione funzionalità è possibile aggiornare i progetti team e accedere alle ultime funzionalità.

Se si modifica il flusso di lavoro o si rinomina un tipo di elemento di lavoro, può essere necessario eseguire alcune operazioni manuali durante l'aggiornamento del progetto team. Per informazioni sulle personalizzazioni che è possibile applicare e quelle da evitare, vedere la sezione Prima di personalizzare, comprendere le implicazioni di aggiornamento e di manutenzione dell'argomento Personalizzare l'esperienza di verifica del lavoro.

D: Come si aggiunge un nuovo tipo di elemento di lavoro?

R: Il modo più semplice per aggiungere un nuovo tipo di elemento di lavoro è quello di copiare un tipo di elemento di lavoro esistente e quindi di modificare il file di definizione. Per un esempio, vedere Creare un tipo di elemento di lavoro.

D: È possibile rinominare un tipo di elemento di lavoro?

R: sì. Per rinominare un tipo di elemento di lavoro, usare witadmin renamewitd. È possibile ad esempio rinominare in "Service Agreement" un tipo di elemento di lavoro con etichetta "QoS Item".

witadmin renamewitd /collection:"http://FabrikamPrime:8080/tfs/DefaultCollection" /p:"Fabrikam Web Site" /n:"QoS Item" /new:"Service Agreement"

Quando si rinomina un tipo di elemento di lavoro che appartiene a una categoria, è necessario aggiornare la definizione della categoria per il progetto team in modo da riflettere il nuovo nome. In particolare, gli strumenti di pianificazione Agile non vengono eseguiti finché non si aggiorna la definizione della categoria.

Per altre informazioni, vedere Importare, esportare e gestire tipi di elemento di lavoro [witadmin] e Importare ed esportare categorie [witadmin].

D: Come è possibile disattivare o disabilitare un tipo di elemento di lavoro?Come è possibile impedire agli utenti di creare elementi di lavoro di un tipo specifico?

R: Se si vuole eseguire il ritiro di un tipo di elemento di lavoro, ma si vogliono mantenere gli elementi di lavoro creati in base a tale tipo, è possibile aggiungere una regola in base alla quale il salvataggio del tipo di elemento di lavoro viene disabilitato per tutti gli utenti validi.

<TRANSITION from=" " to="New">
   <FIELDS>
     <FIELD refname="System.CreatedBy">
         <VALIDUSER not="[Team Project Name]Project Valid Users" />
     </FIELD>
   </FIELDS>
</TRANSITION> 

Se si vuole limitare la creazione di un tipo di elemento di lavoro specifico a un gruppo di utenti, è possibile limitare l'accesso in due modi diversi:

  • Aggiungere il tipo di elemento di lavoro al gruppo di categorie nascoste per impedirne la creazione alla maggior parte dei collaboratori. Per consentire a un gruppo di utenti di effettuare l'accesso, è possibile creare un collegamento ipertestuale a un modello che consente di aprire il form dell'elemento di lavoro e di condividere tale collegamento con i membri del team cui consentire la creazione.

  • Aggiungere una regola di campo nel flusso di lavoro per il campo System.CreatedBy per limitare la creazione di un elemento di lavoro di un tipo specifico a un gruppo di utenti. Come illustrato nell'esempio seguente, per salvare l'elemento di lavoro l'utente che lo crea deve appartenere a Allowed Group.

    <TRANSITION from=" " to="New">
       <FIELDS>
         <FIELD refname="System.CreatedBy">
             <VALIDUSER for="Allowed Group" not="Disallowed Group" />
         </FIELD>
       </FIELDS>
    </TRANSITION> 
    

D: Come si elimina un tipo di elemento di lavoro?

R: Per impedire ai membri del team di usare un tipo di elemento di lavoro specifico per creare un elemento di lavoro, è possibile rimuoverlo dal progetto team. Quando si usa witadmin destroywitd, si eliminano in modo permanente tutti gli elementi di lavoro creati con il tipo di elemento di lavoro e il tipo di elemento di lavoro stesso. Se il team non usa "Impedimento", ad esempio, è possibile eliminare il tipo di elemento di lavoro contrassegnato "Impedimento" dal progetto di sito Web di Fabrikam.

witadmin destroywitd /collection:"http://FabrikamPrime:8080/tfs/DefaultCollection" /p:"Fabrikam Web Site" /n:"Impediment" 

Quando si elimina un tipo di elemento di lavoro che appartiene a una categoria, è necessario aggiornare la definizione della categoria per il progetto team in modo da riflettere il nuovo nome. In particolare, gli strumenti di pianificazione Agile non vengono eseguiti finché non si aggiorna la definizione della categoria.

Per altre informazioni, vedere Importare, esportare e gestire tipi di elemento di lavoro [witadmin] e Importare ed esportare categorie [witadmin].

D: È possibile modificare il colore associato a un tipo di elemento di lavoro?

R: sì. In Team Web Access gli elementi di lavoro vengono visualizzati nei risultati della query e nella pagine dell'area e di backlog degli strumenti di pianificazione Agile. Per modificare il colore associato a un tipo di elemento di lavoro esistente o per aggiungere il colore da usare per un nuovo tipo di elemento di lavoro, modificare la configurazione del processo.

Assegnazione di colori ai diversi tipi di elementi di lavoro

D: È possibile aggiungere o rimuovere un tipo di elemento di lavoro dal backlog o dalla lavagna delle attività?

R: sì. Gli strumenti di pianificazione Agile, ovvero il backlog sprint e prodotto e le pagine della lavagna delle attività, consentono di visualizzare tipi di elemento di lavoro specifici in base al modello di processo usato per creare il progetto team. È possibile aggiungere o rimuovere tipi di elemento di lavoro da visualizzare in tali pagine. Se ad esempio nel progetto team vengono usati tipi di elemento di lavoro Scrum, sia gli elementi backlog prodotto che i bug vengono visualizzati nelle pagine di backlog. Tuttavia, se il progetto team è stato creato tramite Agile, CMMI o altri modelli di processo, i bug non vengono visualizzati nel backlog o nella lavagna delle attività.

È possibile ad esempio aggiungere bug dalla pagina di backlog prodotto.

Pannello aggiornato con l'aggiunta del tipo di elemento di lavoro bug

Per informazioni su come aggiungere o rimuovere tipi di elemento di lavoro visualizzati nel backlog o nella lavagna delle attività, andare qui. Per aggiungere un nuovo tipo di elemento di lavoro per supportare un backlog del portfolio, fare clic qui.

D: In che termini la modifica a un tipo di elemento di lavoro interessa gli elementi di lavoro esistenti?

R: Nella tabella seguente vengono riepilogati gli effetti sugli elementi di lavoro esistenti quando si modificano campi o definizioni di tipo di elemento di lavoro.

Azione

Effetto sugli elementi di lavoro esistenti

Rimuovere campi da un tipo di elemento di lavoro

I dati dei campi rimossi rimangono nell'archivio dati. Tuttavia, nessun nuovo dato può essere aggiunto, perché sono stati rimossi dalla definizione di tipo di elemento di lavoro.

Rinominare un campo

I dati dei campi rinominati rimangono nell'archivio dati con un nuovo nome descrittivo.

Eliminare i campi

I dati dei campi eliminati vengono rimossi dall'archivio dati.

Rinominare un tipo di elemento di lavoro

Tutti i dati rimangono invariati con un nuovo nome.

Eliminare un tipo di elemento di lavoro

Tutti i dati degli elementi di lavoro creati come il tipo di elemento di lavoro eliminato vengono rimossi in modo permanente senza possibilità di ripristino.

Se si vogliono rimuovere completamente i campi dall'archivio dati, usare lo strumento da riga di comando witadmin deletefield. Vedere Gestire campi di elementi di lavoro [witadmin].

D: Come è possibile modificare il tipo di elemento di lavoro esistente?

R: Non è possibile modificare il tipo per un elemento di lavoro esistente, ma è possibile copiare l'elemento di lavoro e specificare un nuovo tipo. È possibile ad esempio copiare un elemento backlog prodotto esistente e modificare il tipo in bug, come illustrato nella figura seguente.

Copiare un elemento di lavoro e specificare un nuovo tipo

Se sono presenti anche più elementi di lavoro cui si vuole modificare il tipo, è opportuno esportarli tramite Excel e aggiungerli nuovamente come un nuovo tipo.

D: È possibile eliminare gli elementi di lavoro da TFS?

R: sì. Usare witadmin destroywi per eliminare in modo permanente gli elementi di lavoro dal database.

D: Cosa è necessario conoscere sulla personalizzazione del tipo di elemento di lavoro e sugli aggiornamenti di TFS?

R: Vedere Aggiornare un progetto team aggiornato per accedere alle nuove funzionalità.

D: A chi rivolgersi per eventuali domande?

R: È possibile rivolgere una domanda o cercare una risposta nel forum relativo alla gestione dei progetti e degli elementi di lavoro in Team Foundation Server forum.

Per altre informazioni, vedere Specificare i controlli dei form elemento di lavoro.

Usare l'editor di processo, disponibile con il download di Power Tools di TFS, per modificare il flusso di lavoro o per visualizzare un diagramma di stato dello stesso.