- TFS e Windows Server 2008 R2 (ovvero… TFS e i 64 bit)
-
Con l’avvicinarsi del lancio ufficiale di Windows Server 2008 R2 (già disponibile come trial, su MSDN, su TechNet, su Volume License, etc…) in molti staranno valutando se e quando fare l’upgrade dei propri server.
Se state usando Team Foundation Server 2008 o 2005, dovete mantenere Windows Server 2003, 2003 R2 o 2008 come sistema operativo, perchè TFS 2008 e 2005 sono disponibili solo per sistemi operativi a 32 bit (x86), mentre Windows Server 2008 R2 sarà solo a 64 bit.
Team Foundation Server 2010 (che sarà disponibile fra poco come Beta 2 con licenza Go-Live) sarà invece installabile anche su Windows Server 2008 R2, ma solo su architetture x64 (TFS non sarà invece disponibile su architetture Itanium)
-Lorenzo
- [Step by Step] TFS2010: come creare un portale di Sharepoint *dopo* aver creato il Team Project
-
TFS 2010 permette di creare Team Project con o senza il portale di Sharepoint (WSS o MOSS) e permette anche di disabilitare il portale di progetto dopo che questo è stato creato (magari per errore).

Disabilitando il portale di progetto non si disabilita il sito in Sharepoint, ma si disabilitano le Web Part di TFS che danno l’integrazione, ad esempio con i Work Item.
Una domanda che mi è stata posta spesso è “mi sono dimenticato di creare il portale, come faccio?”.
Purtroppo non esiste il bottone “Create Portal”, ma esiste un workaround (suggerito da Brian Harry) che permette comunque di ottenere lo stesso risultato.
Bisogna creare un Team Project nuovo temporaneo, selezionando il template giusto e abilitando la creazione del portale di progetto.
A quel punto bisogna disabilitare l’integrazione tra il Team Project temporaneo e il portale appena creato, per interrompere il legame con tra le Web Part e i Work Item.
Bisogna poi abilitarla nel Team Project che non aveva il portale, selezionando lo stesso portale creato in precedenza, e il gioco è fatto.
A questo punto si può tranquillamente rimuovere il Team Project temporaneo e il gioco è fatto.
*Attenzione*: questo post è relativo alle versioni Beta di Team Foundation Server 2010. Le informazioni e le istruzioni presentate in questo post potrebbero non essere valide nella versione finale (RTM).
Technorati Tags:
TFS 2010
- Code Coverage: come “escludere” delle parti dal report
-
Ci sono situazioni in cui può avere senso non far calcolare il Code Coverage per alcuni metodi, proprietà o classi.
In Visual Studio Team System 2005 e 2008 questo era possibile in due modi:
Entrambi gli approcci però hanno delle implicazioni. Nel primo caso il codice “escluso” dal Code Coverage non sarà debuggabile, nel secondo caso l’instrumentazione per il Code Coverage deve essere effettuata a mano (o tramite comando di post build).
Con Visual Studio Team System 2010 è stato introdotto un nuovo attributo chiamato ExcludeFromCodeCoverage che può essere usato a qualsiasi livello su classi, metodi, proprietà, costruttori, getter, setter, etc… e che come dice il nome esclude il costrutto a cui è applicato dal Code Coverage, senza l’effetto collaterale di “limitarne la debuggabilità”…
- [Step by Step] Come cancellare i file *solo* dal disco locale con TFS
-
Team Foundation Server ha, a differenza di altri strumenti di Version Control, il concetto di Workspace (area di lavoro), ovvero il mapping fra una o più cartelle sul Server con una o più cartelle sul client (in verità anche singoli file…) che consente di gestire una serie di operazioni tra cui la get latest “intelligente”, la rimozione dei file che sono stati cancellati dal server durante la get, etc…
La maggior parte delle “incomprensioni” o dei problemi nell’uso di TFS riguarda proprio la non conoscenza del funzionamento dei Workspace.
Una delle domande che mi è stata rivolta durante l’ALM Day è stata: “come faccio a cancellare dei file localmente, senza rimuoverli dal TFS, e senza che il Workspace resti disallineato?”.
La risposta è molto semplice se si conosce il funzionamento dei Workspace e il concetto di Changeset (insiemi di modifiche). Normalmente se si cancella un file da Windows Explorer, il TFS non sa che il file è stato cancellato, per cui ad una operazione di Get Latest Version non recupererà il file. Per recuperarlo bisognerà fare una Get Specific Version dell’ultima versione specificando l’opzione “Force Get”. Se invece si cancella un file dal Team Explorer, questo verrà rimosso dal Server e da tutti i client alla successiva operazione di Get.
Come fare quindi a cancellare un file o una cartella senza rimuoverli dal TFS e senza perdere l’allineamento?
E’ molto semplice, basta fare una Get Specific Version del Changeset #1.
Il Changeset #1 è quello che viene creato durante il setup di TFS (guardando la data e l’ora del Changeset #1 è possibile determinare la data di installazione del server…) ed è vuoto, in quanto contiene solo la root del Version Control.

Facendo una Get del Changeset #1 di un singolo file o di una cartella, questi verranno “rimossi” dal disco locale, visto che non erano presenti alla creazione del TFS. Il loro stato da nero diventerà grigio e i file saranno “Not Downloaded”.
Maggiori informazioni possono essere trovate sul blog di Martin Woodward.
Lorenzo
- [Steb by Step] Come passare cambiare edizione di TFS
-
E’ possibile passare dalla versione Trial alla Workgroup o alla Standard, e dalla versione Workgroup alla Standard.
Se si passa dalla Trial alla Standard è sufficiente andare nel pannello di controllo, vedere la lista delle applicazioni installate, selezionare il TFS e modificare l’installazione.
A quel punto una delle voci permette di inserire la chiave della versione Standard, e il sistema viene automaticamente sbloccato, senza dover utilizzare il CD di installazione ma solo la chiave del prodotto.
Se si passa invece dalla Trial alla Workgroup o dalla Workgroup alla Standard oltre a inserire/cambiare la chiave del prodotto, bisogna anche effettuare la riparazione di TFS (utilizzando a quel punto il CD di installazione) perchè la Workgroup ha un gruppo di Windows che contiene i cinque utenti a cui è permesso accedere al server, e questo gruppo va aggiunto/rimosso dal programma di installazione.
Maggiori informazioni potete trovarle su MSDN.
Per sapere quale versione di Team Foundation Server avete installato, e nel caso della versione Trial per sapere quanti giorni mancano alla scadenza potete utilizzare questa utility scritta da Brian Harry. Tramite questa utility è anche possibile estendere di 30 giorni il periodo di prova. Se fosse necessaria una seconda estensione di altri 30 giorni è necessario un Trial ID che verrà fornito a chi ha una valida motivazione.
Lorenzo
- Riprendono i lavori su TFS Admin Tool su CodePlex
-
Dopo un anno di inattività riprendono i lavori su TFS Admin Tool, con l’uscita della Beta della versione 1.4, che dovrebbe poi essere rilasciata a giorni, e la pianificazione delle versioni 1.5 e 2.0.
Primo punto in agenda è il supporto di SQL Server 2008.
Vi ricordo che il tool serve per gestire in un unico punto gli utenti di TFS, di WSS e dei Reporting Services, in modo da avere un unico punto di gestione.
Lorenzo
- Intervista a Ivar Jacobson
-
Settimana scorsa durante l’evento “Soluzioni per la gestione e l’ottimizzazione delle Software Factory” al termine della presentazione Ivar Jacobson (papà di UML e UP, degli Use Case, etc…) ha parlato con Francesca (PM italiano di Visual Studio ed Expression) del fatto che non basta essere Agili, bisogna essere Smart…
Vi consiglio vivamente di ascoltare Ivar, perchè ha veramente un sacco di cose interessanti da dire!!!
Fonte: Things should be done as simple as possible – but no simpler. This is Smart!
Lorenzo
- Rilasciata una libreria di oggetti Mock per Team Foundation Server
-
Su CodePlex è stato pubblicato un progetto, creato da alcuni MVP di Team System, chiamato Team Foundation Adapters che fornisce una libreria iniziale di oggetti Mock per TFS assieme ad alcuni Unit Test di esempio.
La libreria non è completa, mancano alcune classi, ma piano piano verrà migliorata. La partecipazione al progetto è libera, per cui se vi servono dei Mock per delle classi non ancora implementate potreste aiutare il team ad ampliare la libreria.
Gli oggetti Mock servono generalmente per creare degli Unit Test che non dipendono dall’implementazione vera degli oggetti sotto test, in questo caso oggetti che fanno riferimento ad un server esterno che potrebbe non essere sempre disponibile, e servono per “isolare” i test e renderli veramente unitari.
Di solito si usano degli strumenti appositi per creare degli oggetti Mock al volo (NMock, Rhino Mock, etc…), ma le classi di TFS sono quasi tutte (tranne quelle di TFS Build che sono facilmente “mock-abili”
) sealed e senza interfacce, per cui non è possibile usarli direttamente.
Lorenzo
- Microsoft Process Template
-
A fine febbraio è stato rilasciato su CodePlex il Microsoft Process Template.
E’ la versione “ripulita” e “sistemata” del template che usa il team di Visual Studio Team System ed è stato prodotto dal team Engineering Excellence e dal team di VSTS.
E’ usato internamente in Microsoft al posto di MSF (Agile e CMMI,“volutamente” più generici e “didattici”) perchè più collegato al modo di lavorare dei team.
Contiene Work Item, Query, Report e Process Guidance, oltre a due documenti Word che mostrano come installarlo e come usarlo.
I Work Item sono di sei tipi, come mostrato in figura:
La piramide indica anche il “numero relativo” di Work Item, a fronte di poche Value Proposition ci saranno tanti Task (e si spera pochi Bug…
).
La piramide rappresenta anche il rapporto gerarchico fra i Work Item. Non è possibile creare un Task o un Bug che non abbiano un Deliverable collegato, e così via.
Il tutto funziona su TFS 2008 ed è implementato tramite delle Global List e tramite un Daemon che rimane in ascolto degli eventi di TFS e che “aggiorna” le liste ogni volta che un WI “padre” viene creato.
Oltre alle gerarchie anche le informazioni sulle Date di inizio e fine e sul Lavoro completato e rimanente vengono automaticamente popolate dai task alle deliverable fino alle feature, in automatico.
La cosa più bella del template sono i report predefiniti, che consentono un controllo “end-to-end” del processo:
Maggiori informazioni su come la Developer Division usa TFS ed in particolare questo Process Template possono essere trovate qui:
Vi consiglio di scaricare questo template ed approfondire il suo funzionamento, per comprendere meglio come customizzare TFS ed eventualmente per sfruttarlo al meglio all’interno dei vostri progetti.
Prima di cominciare conviene leggere la guida Getting Started che contiene le istruzioni per installare e configurare i Daemon, e l’introduzione al processo, che mostra come cominciare ad usarlo e indica anche come superare alcuni ostacoli iniziali.
Lorenzo
- [Step by Step] Come creare un Process Template di TFS senza la parte di Sharepoint
-
Ho ricevuto alcune richieste (relative al post sulla rimozione dei nodi dal Team Explorer) su come rimuovere la creazione del sito Sharepoint legato a TFS. Vediamo un esempio di modifica di MSF for Agile Software Development.
Prima di tutto bisogna selezionare il Process Template Manager e scaricare il processo in locale (tasto Download):
A quel punto si può aprire il file “ProcessTemplate.xml” e rimuovere la linea che invoca il plug-in di creazione del sito Sharepoint:
Si può poi rimuovere il gruppo relativo al portale, ed ogni riferimento nelle dependency di altri gruppi:
Si può poi cancellare la cartella con tutti i file che andavano messi su Sharepoint (Windows Sharepoint Services) e bisogna rinominare la cartella contenente il Process Template:
A questo punto dal Process Template Manager si può fare l’upload sul server del nuovo template, ed utilizzarlo per creare nuovi progetti:
Lo stesso suggerimento può essere utilizzato per non far creare altre parti del Team Project, come il sito contenente i Report.
Maggiori informazioni sui Plug-in per il Process Template possono essere trovate su MSDN.
E’ possibile anche utilizzare il Process Editor installato con i Power Tools di Team Foundation Server per editare il file ProcessTemplate.xml, ma non è possibile modificare l’elenco dei plug-in:
E’ anche possibile creare nuovi plug-in custom, bisogna però essere VSIP. Un esempio si trova nel Visual Studio SDK.
Lorenzo
- [Step by Step] Come rimuovere i nodi dai progetti del Team Explorer
-
In questo post vediamo come è possibile rimuovere un nodo dai progetti mostrati nel Team Explorer.
Supponiamo ad esempio di aver customizzato il nostro Process Template rimuovendo interamente la creazione del portale di progetto sotto Sharepoint, ci ritroveremmo ad avere il nodo Documents (o Documenti) con una X rossa:
E’ possibile rimuovere interamente un nodo del Team Explorer modificando la relativa chiave di registry:
Bisogna selezionare il ramo:
[HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\9.0\TeamSystemPlugins\Team Explorer Project Plugins]
e poi entrare nella funzionalità che si vuole abilitare/disabilitare ed impostare Enabled a 0.
A quel punto il nodo non verrà più mostrato:
Attenzione: modificare il Registry comporta il rischio di compromettere il funzionamento del proprio computer, e quindi bisogna procedere con l’opportuna cautela, effettuando in ogni caso un back-up del Registry stesso prima delle modifiche (ad esempio seguendo questa guida).
La modifica renderà invisibile il nodo in tutti i Team Project, per tutti gli utenti della macchina, non è possibile filtrare la disabilitazione per singolo Team Project.
Lorenzo
P.s. volevo ringraziare Marcel per l’ispirazione per questo post.
- Disponibile la nuova versione di Team System Web Access 2008 SP1
-

Il 16 Gennaio 2009 è stata rilasciata su Microsoft Downloads una nuova versione di Visual Studio Team System Web Access 2008 Service Pack 1, il tool che permette di accedere a Team Foundation Server utilizzando un browser, per gestire Work Item, accedere ai Documenti, vedere i Sorgenti, le Build e i Report.
Questa versione corregge un’importante security issue, e va assolutamente installata al posto della versione precedente. Il download contiene l’intero pacchetto di setup, e richiede solamente la presenza del Team Explorer per essere installato.
Per verificare se sul server è installata la versione SP1 con l'update bisogna andare nel menu e verificare che la versione sia 9.0.3275 (o superiore).
Maggiori informazioni sull'articolo di Knowledge Base e sul blog di Hakan Eskici (in inglese).
Lorenzo
- [Step by Step] Utilizzo di Team Foundation Server con Microfocus MainFrame Express e Net Express
-
In questo post vediamo com’è possibile collegarsi a Team Foundation Server con i prodotti Microfocus MainFrame Express e Net Express utilizzando il Team Foundation Server MSSCCI Provider (Microsoft Source Code Control Interface).
Selezione e installazione del Provider MSSCCI
Il provider MSSCCI per TFS richiede la presenza del Team Explorer sulla macchina client per poter funzionare.
Se si dispone del Team Explorer 2005 bisogna installare il TFS MSSCCI 1.2. Questa versione non è più stata aggiornata a partire da Settembre 2007, ed è disponibile solo per chi non può installare il Team Explorer 2008.
Se si dispone del Team Explorer 2008 bisogna installare il TFS MSSCCI 2.0 (o eventuali versioni successive).
Vi ricordo che l’installazione del Team Explorer installa (se non è già presente) una versione “light” di Visual Studio (2005 o 2008) e ci si “installa dentro”. Viene anche installato il Framework .NET corrispondente (2.0 o 3.5).
Al termine dell’installazione del Team Explorer bisogna installare la Service Pack di Visual Studio Team Suite (che include anche quella del Team Explorer) corrispondente alla versione del Team Explorer installata (2005 o 2008).
Preparazione degli ambienti di lavoro
Il provider MSSCCI per TFS richiede una serie di “customizzazioni” per essere utilizzato efficacemente assieme ai prodotti MicroFocus. La prima impostazione è relativa alla creazione di una chiave di registry per il funzionamento con Net Express:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\
Team Foundation Server MSSCCI Provider\Settings\Net Express]
“issues”=dword:000000e6
Per quanto riguarda MainFrame Express bisogna andare a impostare un’opzione all’interno del Source Control:
E più precisamente bisogna disabilitare l’utilizzo del multi-threading nell’accesso al provider MSSCCI:
A questo punto in entrambi i prodotti dovrebbe essere disponibile il menu Source Control impostato su Team Foundation Server:
Se sul computer sono presenti altri provider (ad esempio Visual SourceSafe) e il provider ti TFS non è quello impostato di default, bisogna andare nel registry a cambiare il provider di default, oppure utilizzare un tool che semplifica l’operazione, come, ad esempio, SccSwitch.
Utilizzo del provider MSSCCI
La prima cosa da fare (valida in entrambi gli ambienti) è quella di selezionare “Connect Project to Source Control”:
A questo punto verrà selezionato il TFS di riferimento:
E il progetto sarà “collegato”. A questo punto tutte le funzionalità del menu Source Control saranno disponibili (in funzione del file selezionato):
E sarà anche possibile accedere al menu contestuale sui vari file, ad esempio per aggiungerli a TFS:

In questo caso apparirà la classica dialog dell’ambiente di sviluppo:
E poi quella del provider MSSCCI di TFS, con tutte le funzionalità estese, come integrazione con i Work Item, le Check In Notes e le Policy:
Come si può vedere l’integrazione è presente anche tra le colonne riguardanti i file di progetto sia in MainFrame Express:
Sia in Net Express:
Sui file è poi possibile effettuare le operazioni più classiche, come ad esempio il Check Out, che viene subito mostrato nell’ambiente di sviluppo:
O il Check In, che prevede la prima dialog dell’ambiente, seguita poi da quella di TFS (non mostrata):
Funzionalità avanzate
Dal menu Source Control è possibile accedere ad altre funzionalità che non sono presenti nei menu contestuali:
E’ possibile vedere la storia di un file:

Dalla dialog è poi possibile vedere il dettaglio del Changeset relativo al Check In, confrontare due versioni differenti, vedere la versione selezionata o scaricarla sulla macchina al posto di quella in uso.
Dal menu Source Control è possibile inoltre effettuare il confronto con altre versioni di un file:
O vederne le proprietà:
Se si devono fare operazioni più complesse, è possibile selezionare “Team Foundation” che lancerà il Team Explorer all’interno di Visual Studio (2005 o 2008).
Supporto
Il provider è supportato dal team di Team Foundation Server tramite il Forum MSDN o una mail dedicata:
Altre informazioni
In questo post è possibile vedere come usare il provider MSSCCI con Visual Basic 6.0 e in questo articolo è possibile vedere come utilizzarlo con Visual Studio.NET 2003.
Appendice: MicroFocus Net Express with .NET
Questo post si applica a MainFrame Express e Net Express in versione normale.
Net Express with .NET è completamente integrato in Visual Studio 2008 e quindi sfrutta completamente il Team Explorer.
L’integrazione è totale, incluse le funzionalità di Team Build, debug, editing, etc…

Lorenzo
- Microsoft® Visual Studio Team System 2008 Database Edition GDR Release Candidate 1
-
Questa versione ha le stesse funzionalità della CTP di Settembre, ma contiene numerosi miglioramenti e correzioni di Bug.
Il formato dei progetti è quello finale, e non dovrebbero esserci modifiche tra questa e la versione finale. Questa versione può essere quindi usata per iniziare a migrare i Database Project fatti con VS2005 DB Pro o con VS2008 Database Edition.
La trovate qui (in Inglese): Microsoft® Visual Studio Team System 2008 Database Edition GDR Release Candidate 1
Vi consiglio di rimuovere prima le eventuali CTP se installate e vi ricordo che questa versione richiede la SP1 di Visual Studio.
Technorati Tags:
Database Lorenzo
- Disponibili le CTP di Visual Studio 2010 e del .NET Framework 4.0
-
Direttamente dal Download Center sono disponibili già installati in una macchina virtuale pronta all’uso che include anche Windows Server 2008, SQL Server e Team Foundation Server 2010 CTP. Il tutto in Inglese.
Microsoft Visual Studio 2010 and the .NET Framework 4.0 are the next generation development tools and platform for Windows Vista, the 2007 Office System, and the Web.

Fonte: Visual Studio 2010 and .NET Framework 4.0 CTP
Technorati Tags:
VSTS2010 Lorenzo