Condividi tramite


Cenni preliminari sul processo di sincronizzazione per l'integrazione di Team Foundation Server e Project Server

È possibile gestire più efficacemente l'integrazione di Visual Studio Team Foundation Server 2010 e Project Server 2007 con Service Pack 2 (SP2) o Project Server 2010 se si comprende come il motore di sincronizzazione gestisce il flusso di dati tra i due prodotti server. Il motore di sincronizzazione supporta i flussi di lavoro indipendenti di responsabili di progetto che utilizzano Project Professional e di responsabili di team e membri di team che operano in Team Foundation. Risultati finali e attività possono evolvere in modo indipendente in ciascuna area.

In questo argomento

  • Tre tipi di sincronizzazione

  • Dati soggetti a sincronizzazione

  • Convalida dei dati eseguita durante gli aggiornamenti e all'invio

  • Campi mirror e "due set di valori possibili"

  • Autorizzazioni necessarie per supportare la sincronizzazione

  • Notifica degli errori, registrazione degli eventi e tracciabilità

Tre tipi di sincronizzazione

Il motore di sincronizzazione esegue tre tipi di sincronizzazione. Questo processo acquisisce e aggiorna i dati correlati alle attività e alle risorse sia in Team Foundation Server che in Project Server rispettando la proprietà dei dati del responsabile del progetto nel piano del progetto. I responsabili del progetto apportano modifiche utilizzando Project Professional e approvano gli aggiornamenti tramite Project Web Access o Project Web App (PWA). I membri del team di sviluppo inviano aggiornamenti a Project Server tramite un client di Team Foundation.

Come mostrato nell'illustrazione seguente, la sincronizzazione dei dati è costituita da sette passaggi principali.

Processo di sincronizzazione per l'integrazione di Team Foundation Server e Project Server

Processo di sincronizzazione PS-TFS

Il motore di sincronizzazione è costituito da un solo servizio processo che viene eseguito a intervalli regolari e non quando viene aggiornato ogni elemento di lavoro. Il processo di sincronizzazione esegue i tre processi seguenti nell'ordine indicato:

Sincronizzazione della pubblicazione:

Passaggio 1    Un responsabile del progetto definisce o aggiorna le attività o i risultati finali e imposta il valore Pubblica in progetto team su per ogni attività da sincronizzare.

Passaggio 2 Il responsabile del progetto pubblica il piano del progetto dell'organizzazione utilizzando Microsoft Project Professional. Le modifiche vengono salvate automaticamente nel database di Project Server.

Passaggio 3 Il motore di sincronizzazione estrae i dati da Project Server e determina quali di essi aggiornare in base ai dati configurati per la sincronizzazione. Vengono aggiornati solo gli oggetti, le attività e gli elementi di lavoro configurati per la sincronizzazione.

Passaggio 4    Il motore di sincronizzazione crea o aggiorna elementi di lavoro in Team Foundation e definisce un collegamento che associa l'attività in Project all'elemento di lavoro in Team Foundation.

Sincronizzazione dello stato:

Passaggio 5 Un responsabile del team o un membro del team modifica un elemento di lavoro in Team Foundation collegato a un'attività in un progetto dell'organizzazione o crea un elemento di lavoro e imposta il valore Invia a Project Server su . Il motore di sincronizzazione esegue una query sulle modifiche apportate per i progetti team mappati e invia richieste alla coda o alle code di approvazione in Project Web Access o Project Web App (PWA).

Sincronizzazione dell'approvazione:

Passaggio 6    Ogni responsabile del progetto rivede la propria coda di approvazione e approva o rifiuta ciascuna richiesta di aggiornamento di stato.

Una volta approvati gli aggiornamenti, il project manager dovrà pubblicare il piano del progetto prima che gli aggiornamenti possano essere visualizzati in Project Server.

Nota importanteImportante
Se tramite il motore di sincronizzazione vengono inviati più livelli di elementi di lavoro a Project Server, il primo livello deve essere approvato e pubblicato in Project Server prima di inviare il livello successivo.È ad esempio possibile inviare un batch di nuovi elementi di lavoro che include tre livelli di elementi figlio.In tal caso, il project manager deve pubblicare il piano del progetto quattro volte per poter sincronizzare tutti gli elementi di lavoro con Project Server.

Passaggio 7    Il gestore eventi per le approvazioni in Project Server trasmette le decisioni di approvazione al motore di sincronizzazione, che quindi aggiorna gli elementi di lavoro in Team Foundation Server in base allo stato di approvazione.

Torna all'inizio

Gestione di approvazioni e rifiuti

Tutte le modifiche agli elementi di lavoro collegati a Project Server devono essere inviate per l'approvazione al responsabile del progetto del piano del progetto dell'organizzazione mappato al progetto team. È possibile configurare l'approvazione automatica in modo che tutti gli aggiornamenti di Team Foundation vengano approvati automaticamente. Per ulteriori informazioni, vedere Approvazione o rifiuto degli aggiornamenti delle attività.

Gli elementi di lavoro approvati vengono in genere sottoposti a rollback nel piano del progetto dell'organizzazione. Gli elementi di lavoro respinti richiedono la risoluzione e un nuovo invio.

Per gli aggiornamenti respinti, un messaggio viene visualizzato nel campo Cronologia dell'elemento di lavoro. Il messaggio indica il valore rifiutato e chi lo ha rifiutato. Per i progetti team mappati ai piani di progetto ospitati su Project Server 2010, il messaggio contiene anche gli eventuali commenti forniti dal responsabile del progetto relativamente alle cause del rifiuto dell'elemento. I membri del team devono risolvere le differenze dell'elemento di lavoro e inviarlo nuovamente oppure evitare che venga inviato al progetto dell'organizzazione. Inoltre, i membri del team possono creare una query elemento di lavoro per trovare tutti gli elementi respinti in base allo Stato ultimo invio a Project Server. Per ulteriori informazioni, vedere Monitoraggio di invii di elementi di lavoro e risoluzione di rifiuti.

Sincronizzazione e intervallo tra i tentativi

La sincronizzazione dei dati avviene in base a una pianificazione e non quando viene aggiornato ciascun elemento di lavoro. Il servizio processo di sincronizzazione viene eseguito ogni 30 secondi. In questo periodo viene eseguita una query per individuare gli elementi di lavoro e i campi attinenti che sono stati modificati in Project Server o Team Foundation Server o che il responsabile del progetto ha approvato.

Ogni ora il motore di sincronizzazione reinvia gli elementi di lavoro il cui aggiornamento precedentemente non è stato completato. Per ulteriori informazioni, vedere Modifica dell'intervallo tra tentativi di sincronizzazione e reinvii.

Torna all'inizio

Dati soggetti a sincronizzazione

Due livelli della configurazione determinano quali oggetti possono fare parte della sincronizzazione e quali dati vengono sincronizzati. Gli amministratori di Team Foundation eseguono diversi livelli di mapping per configurare gli oggetti che possono fare parte della sincronizzazione. Al secondo livello, i responsabili del progetto e gli utenti di Team Foundation controllano quali attività ed elementi di lavoro specifici vengono sincronizzati.

Torna all'inizio

Oggetti che vengono configurati per fare parte della sincronizzazione

Le configurazioni seguenti determinano quali oggetti fanno parte del processo di sincronizzazione. Generalmente gli amministratori di Team Foundation eseguono queste configurazioni. Tuttavia, anche i responsabili del progetto possono eseguire il mapping dei piani di progetto dell'organizzazione ai progetti team.

  • Istanza di PWA mappata a un insieme di progetti team: con questo mapping si configura l'insieme di progetti team perché supporti la sincronizzazione e si determina quali istanze di PWA possono sincronizzarsi con un insieme.

  • Piano del progetto dell'organizzazione mappato a un progetto team: con questo mapping si configura la partecipazione alla sincronizzazione sia del piano del progetto dell'organizzazione che del progetto team. Questo mapping consente inoltre di determinare quali progetti dell'organizzazione possono sincronizzarsi con un progetto team.

  • Tipi di elementi di lavoro mappati per la sincronizzazione: quando si mappa un piano del progetto dell'organizzazione a un progetto team, si specificano i tipi di elementi di lavoro che è possibile sincronizzare. Con questo mapping si aggiunge la scheda Project Server al form elemento di lavoro e si aggiungono regole di convalida per ciascun tipo di elemento di lavoro al piano del progetto dell'organizzazione.

  • Campi degli elementi di lavoro mappati a campi Project Server: per impostazione predefinita, il motore di sincronizzazione consente di sincronizzare i campi in Team Foundation seguenti: Titolo, Assegnato a, Lavoro completato, Lavoro rimanente, Stima originale, Data di inizio e Data di fine. È possibile aggiungere campi e impostare parametri che determinano la modalità di sincronizzazione dei campi. Ad esempio, è possibile determinare quali campi vengono visualizzati nel form elemento di lavoro e se consentire valori separati per un campo specifico.

Per ulteriori informazioni, vedere Mapping dei componenti di Project Server ai componenti di Team Foundation e Specifica dei tipi di elemento di lavoro che è possibile sincronizzare.

Attività ed elementi di lavoro singoli configurati per la sincronizzazione

I responsabili del progetto determinano le attività in un piano del progetto dell'organizzazione che desiderano pubblicare in Team Foundation Server. I membri del team determinano gli elementi di lavoro in un progetto team che desiderano inviare a Project Server. I responsabili del progetto possono pubblicare suddivisioni dettagliate di risultati finali e attività in Team Foundation Server o pubblicare e gestire solo elementi di attività di riepilogo. Alcune restrizioni si applicano alla pubblicazione di attività subordinate o elementi di lavoro padre-figlio, come descritto in Convalida dei dati eseguita durante gli aggiornamenti e all'invio più avanti in questo argomento.

Per ulteriori informazioni, vedere Gestione dei dettagli di progetto in un piano del progetto dell'organizzazione mappato a un progetto team e Pianificazione dall'alto verso il basso dei requisiti aziendali in un piano del progetto dell'organizzazione mappato a un progetto team.

Nota

È possibile eseguire il mapping di più piani di progetto dell'organizzazione a un progetto team, ma è possibile eseguire il mapping o il collegamento di una sola attività di un piano del progetto a un elemento di lavoro in Team Foundation. Ogni attività in un piano del progetto dell'organizzazione è distinta in Project Server. Le attività inviate a Project Server aggiornano solo un elemento di lavoro in Team Foundation. Inoltre, gli elementi di lavoro creati in Team Foundation e inviati a Project Server aggiornano solo un piano del progetto dell'organizzazione.

Convalida dei dati eseguita durante gli aggiornamenti e all'invio

Il processo di sincronizzazione convalida attività ed elementi di lavoro contrassegnati per la sincronizzazione prima che vengano pubblicati in Project Server. La convalida dei dati viene applicata sia nel piano del progetto dell'organizzazione che nel progetto team.

Quando i responsabili del progetto pubblicano un piano del progetto dell'organizzazione

Quando un responsabile del progetto che utilizza Project Professional pubblica un piano del progetto dell'organizzazione mappato a un progetto team, vengono eseguiti controlli di convalida specifici. Il componente aggiuntivo Team Foundation effettua i controlli di convalida seguenti sulle attività impostate per la pubblicazione in Team Foundation (ovvero, Pubblica in progetto team=Sì):

  • Il valore impostato per il campo Tipo di elemento di lavoro deve corrispondere un tipo di elemento di lavoro configurato per fare parte della sincronizzazione per il progetto team di destinazione.

    Nota importanteImportante

    Testo30 è il campo di Project predefinito associato alla colonna Tipo di elemento di lavoro utilizzata nella sincronizzazione di attività con gli elementi di lavoro. Se accade di connettere il piano del progetto a Team Foundation Server tramite l'opzione Scegli progetto Team nel menu della barra multifunzione Team, un campo di Project aggiuntivo etichettato Tipo di elemento di lavoro diventa disponibile. Questo campo, con il campo di Project predefinito Text24, supporta il mapping dei piani di progetto associati a Team Foundation, ma non supporta la sincronizzazione dei piani. Il campo basato su Text24 contiene l'elenco completo dei tipi di elemento di lavoro per il progetto team. È possibile verificare di disporre del campo corretto puntando a esso e verificando se viene visualizzato Testo30.

  • Tutti i valori dei campi di Project mappati devono superare controlli specifici per verificare che non violino una regola impostata per il tipo di elemento di lavoro di destinazione. Queste regole vengono aggiunte al piano del progetto dell'organizzazione quando viene mappato a un progetto team.

  • Dopo la pubblicazione di un'attività, i valori impostati per Pubblica in progetto team e Tipo di elemento di lavoro non possono essere modificati. Se non si desidera continuare a sincronizzare un'attività, è necessario eliminarla.

  • Se un'attività e una delle attività subordinate sono entrambe contrassegnate per la sincronizzazione, anche tutte le attività comprese tra le due devono essere contrassegnate per la sincronizzazione.

  • Il valore del campo Nome risorsa per un'attività deve corrispondere al nome di un collaboratore valido per il progetto team di destinazione.

  • Se più risorse sono assegnate alla stessa attività, solo un'assegnazione deve essere selezionata come attiva. Per ulteriori informazioni, vedere Visualizzazione dello stato di avanzamento del team Agile da parte del reparto PMO (Program Management Office).

  • Tutti i valori devono essere conformi alle regole applicate da Project Server alla definizione di campo specifica. Può ad esempio verificarsi un errore se si assegna un valore a un campo di cui è stato eseguito il mapping e che è associato a una tabella di ricerca, ma non è presente nella tabella di ricerca.

La finestra di dialogo Risoluzione convalida viene visualizzata ogni volta che una o più regole vengono violate. I responsabili del progetto devono risolvere ogni errore prima di pubblicare le modifiche.

Quando gli sviluppatori inviano elementi di lavoro nuovi o aggiornati da Team Foundation

Quando un sviluppatore che utilizza Team Foundation crea o aggiorna un elemento di lavoro e salva le modifiche, i controlli di convalida seguenti vengono effettuati sugli elementi di lavoro impostati per la pubblicazione in Project Server (ovvero, Invia a Project Server=Sì):

  • Il valore del campo Assegnato a deve corrispondere a un membro del team che è stato anche aggiunto al pool di risorse dell'organizzazione e alle risorse di progetto del piano del progetto. Per ulteriori informazioni, vedere Assegnazione di autorizzazioni per supportare l'integrazione di Project Server e Team Foundation Server.

  • Se un solo piano del progetto dell'organizzazione è mappato a un progetto team, il nome relativo viene visualizzato automaticamente nel campo Progetto dell'organizzazione nella scheda Project Server per gli elementi di lavoro appena creati.

  • Se al progetto team sono mappati più progetti dell'organizzazione, è necessario specificare un valore per il campo Progetto dell'organizzazione per i nuovi elementi di lavoro creati e il cui valore Invia a Project Server è impostato su .

  • Non è possibile modificare la struttura gerarchica di elementi di lavoro dopo che sono stati collegati alle attività di Project.

Dopo che un elemento di lavoro viene pubblicato in Project Server, l'elemento viene associato a un'attività nel piano del progetto dell'organizzazione di destinazione. Questa associazione viene definita anche collegamento. I collegamenti vengono bloccati durante la sincronizzazione. Per rimuovere il collegamento, è necessario eliminare l'attività corrispondente in Project oppure utilizzare l'opzione /force quando si rimuove il mapping del piano del progetto o del tipo di elemento di lavoro. Per ulteriori informazioni, vedere Rimozione di un componente dalla sincronizzazione dei dati.

Torna all'inizio

Campi mirror e "due set di valori possibili"

Poiché il motore di sincronizzazione esegue tre tipi di sincronizzazione e comunica con due database in una negoziazione pianificata, non si verificano unioni di dati. La sincronizzazione dei dati avviene invece in una sequenza a due passaggi e il motore ammette la divergenza tra i due prodotti. Per ogni campo sincronizzato in Team Foundation, è possibile definire un campo mirror per l'archiviazione del valore in Project Server per il campo corrispondente di cui è stato eseguito il mapping. Durante le normali operazioni di sincronizzazione, i valori per i due campi varieranno dal momento in cui un valore viene aggiornato in Team Foundation Server fino al momento in cui il project manager approverà e pubblicherà il piano del progetto.

Per ogni campo di cui si esegue il mapping è necessario specificare una delle opzioni indicate di seguito per decidere la modalità in cui il motore di sincronizzazione aggiornerà i campi mirror e di riferimento in Team Foundation:

  • Aggiornare sempre il campo in Team Foundation Server con il valore di Project Server (PSWins).

  • Fare in modo che il valore del campo in Team Foundation Server sia diverso da quello assegnato in Project Server. Questa strategia è nota come "due set di valori possibili"

    In fase di gestione di due set di valori possibili è possibile creare una query per individuare gli elementi di lavoro in cui i due valori sono diversi. Per ulteriori informazioni, vedere Trovare elementi di lavoro in cui il lavoro in Team Foundation differisce dal lavoro in Project Server.

Per ulteriori informazioni, vedere Riferimento agli elementi XML di mapping dei campi per l'integrazione di Team Foundation Server e Project Server.

Torna all'inizio

Autorizzazioni necessarie per supportare la sincronizzazione

Per sincronizzare i dati tra Team Foundation Server e Project Server, devono essere concesse le autorizzazioni seguenti:

  • Per Project Server 2007, è necessario concedere all'account del servizio nel quale TfsJobAgent viene eseguito l'accesso al provider di servizi condivisi. Per ulteriori informazioni, vedere Aggiungere l'account del servizio di Team Foundation Server al provider di servizi condivisi di Project Server 2007.

    Per Project Server 2010, è necessario concedere autorizzazioni di controllo completo all'account del servizio nel quale TfsJobAgent viene eseguito in modo che l'applicazione di servizio di Project Server sia accessibile. Per ulteriori informazioni, vedere Aggiungere l'account del servizio di Team Foundation Server all'applicazione di servizio di Project Server 2010.

  • È necessario concedere all'account del servizio nel quale TfsJobAgent viene eseguito le autorizzazioni necessarie per accedere a ciascuna istanza mappata di PWA.

  • Gli utenti che vengono assegnati alle attività in Project Professional o in elementi di lavoro in Team Foundation devono essere riconosciuti come collaboratori nel progetto team. Tali utenti devono inoltre essere riconosciuti come risorse del piano del progetto dell'organizzazione e avere l'autorizzazione ad accedere alle istanze di PWA che fanno parte del processo di sincronizzazione.

Per ulteriori informazioni, vedere Assegnazione di autorizzazioni per supportare l'integrazione di Project Server e Team Foundation Server.

Torna all'inizio

Notifica degli errori, registrazione degli eventi e tracciabilità

Il motore di sincronizzazione elabora gli aggiornamenti di progetto pubblicati in Project Server, quindi gli aggiornamenti di stato e infine gli aggiornamenti di approvazione. In fase di pubblicazione, Project Server viene aggiornato, con l'aggiunta di attività e relativi dettagli al piano del progetto dell'organizzazione. La pubblicazione della sincronizzazione estrae i dati da Project Server e li trasferisce in Team Foundation Server. La sincronizzazione dello stato estrae i dati da Team Foundation per aggiornare la coda di approvazione del project manager e la sincronizzazione dell'approvazione pubblica gli aggiornamenti a campi quali Lavoro rimanente e Lavoro completato in Project Server, che avvia un nuovo ciclo di sincronizzazione.

Ogni tipo di sincronizzazione abilita la visualizzazione dei messaggi di stato e di errore pertinenti al responsabile del progetto in Project Professional o nell'istanza di PWA. Inoltre, i messaggi di stato e di errore associati al motore di sincronizzazione e alla relativa configurazione possono essere scritti anche nelle interfacce di amministrazione appropriate per Team Foundation Server e Project Server.

Tutti i responsabili di progetto, i membri di team e gli amministratori possono visualizzare i messaggi correlati alla sincronizzazione man mano che vengono generati e utilizzarli per la diagnosi. I messaggi vengono scritti nelle seguenti posizioni:

  • In Project Professional, la barra di stato nel piano del progetto dell'organizzazione mostra lo stato di avanzamento della pubblicazione.

  • Nell'istanza di PWA, il Centro approvazioni mostra la coda di attività aggiornate.

  • Nel form elemento di lavoro di Team Foundation, la scheda Project Server indica lo stato e l'ora della più recente sincronizzazione dell'elemento di lavoro.

  • Nel form elemento di lavoro di Team Foundation, il campo Cronologia registra i messaggi di stato e di errore della sincronizzazione dopo ogni aggiornamento dell'elemento di lavoro. Quando si effettua l'integrazione con Project Server 2010, anche i commenti scritti dai responsabili del progetto quando approvano o rifiutano un aggiornamento di stato vengono registrati nel campo Cronologia.

  • Il log eventi del server a livello applicazione che fa parte della sincronizzazione dei dati mantiene una registrazione di tutti gli eventi e gli errori di sincronizzazione.

Gli amministratori possono recuperare i messaggi degli eventi più recenti tramite il comando TfsAdmin ProjectServer /GetSyncMessages. Per ulteriori informazioni, vedere Visualizzazione dei messaggi di errore del motore di sincronizzazione. Per raccogliere informazioni ancora più dettagliate, è possibile abilitare l'analisi dettagliata per l'Agente processo in background di Team Foundation che esegue i servizi. Per ulteriori informazioni, vedere Agente processo in background di Team Foundation.

Torna all'inizio

Vedere anche

Altre risorse

Submitting Work Items that are Mapped to Enterprise Projects in Project Server

Amministrazione dell'integrazione di Team Foundation Server e Project Server

Cronologia delle modifiche

Data

Cronologia

Motivo

Aprile 2011

Sezione chiarificata e rinominata che descrive campi di mirror e due set di valori diversi. Corretto il paragrafo introduttivo della sezione relativa alla notifica di errori, alla registrazione degli eventi e alla tracciabilità.

Correzione di bug nel contenuto.