Archives mensuelles : juin 2012

image

Migration de TFS 2010 vers TFS 2012 RC

La division Développeurs de Microsoft l’a fait la semaine dernière, après avoir utilisé pendant plusieurs mois la version online de TFS 2012, nous avons migré nous aussi vers TFS 2012 ce week-end !

Je vous propose au travers de ce post de tracer ce que nous avons dû mettre en oeuvre pour réussir cette migration et ainsi vous éviter quelques désagréments.

Première étape : Backup de l’infra actuelle

Afin de réduire les coûts de passage vers TFS 2010 lors de mon arrivée à Log’in Space, nous avions convertit le serveur de l’époque en machine virtuelle, et transformé ainsi la machine physique en serveur de machine virtuelle grâce à Hyper-V. Nous avons ainsi pu disposer de 3 serveurs supplémentaires pour le prix de 2 barrettes de RAM.

Vous l’avez compris, le backup de l’infrastructure de dév. a été très simple, nous avons uniquement dû faire une copie des VHD du serveur TFS et du serveur de Builds et le tour est joué ! Ainsi si un problème devait intervenir, l’infrastructure serait de nouveau opérationnelle à l’identique en quelques minutes.

Etape n°2 : Upgrade la configuration la machine virtuelle

Team Foundation Server 2012 permet d’utiliser Sharepoint Foundation 2010, et celui-ci fait malheureusement grimper la facture au niveau de la RAM nécessaire. Nouvel upgrade de la RAM nécessaire dans notre cas.

A noter que cette mise à jour de sharepoint n’est pas réalisable depuis le programme d’installation de TFS et doit se faire séparémment. Nous avons choisi de ne pas se compliquer la vie et de rester temporairement sur notre sharepoint actuel.

J’en ai également profiter pour donner un peu plus d’air à la VM niveau d’espace disque en lui allouant 90Go d’espace au lieu des 40 initialement alloués.

 

Premier problème rencontré : le redimensionnement de machines virtuelles

Très naïvement, je pensais que redimensionner le disque dur de la machine virtuelle suffisait à voir la taille de la partition principale de la machine virtuelle augmentait.

Que nenni ! Il est nécessaire d’effectuer une opération manuelle pour y arriver car l’espace gagné, est marqué comme inalloué.

Pour y parvenir, un simple clic droit sur la partition à redimensionner et l’utilisation de la commande Expand suffit à résoudre le problème de manière instantanée et sans perte de données !

image

 

Etape n°3 : Checklist avant Maj

Comme j’essaie d’être un minimum rigoureux, j’ai vérifié rapidement les pré-requis indiqués sur la doc d’install :

  • OS 64 Bits : OK
  • SQL Server 2008 R2 installé : OK
  • Comptes Windows utilisés pour TFS 2010 :

image

Une fois rassuré, je lance l’installation pour avoir droit à une magnifique erreur :

image

TFS 2012 nécessite le SP1 de Windows 2008 R2 (c’est indiqué dans les pré-requis mais dans la liste détaillée que je n’avais pas pris le temps de lire… Smile)

1h30 de téléchargement, et 1h d’installation plus tard, l’installation et la mise à jour des bases de données se fait tranquillement et sans douleur.

image

Etape n°4 : La mise à jour des templates de Team Project

Afin de pouvoir utiliser l’ensemble des nouvelles fonctionnalités, il est nécessaire de mettre à jour le process des Team Projects.

Avec TFS 2012, nous disposons à présent d’un assistant qui permet de mettre à jour votre process template avec la version la plus récente disponible, et ceci même si vous avez modifié la définition de vos work items !

image

A noter que si vous avez beaucoup de Team Projects dans votre collection et que vous ne souhaitez pas effectuer cet upgrade manuellement, vous pouvez suivre les instructions suivantes : http://blogs.msdn.com/b/visualstudioalm/archive/2012/05/09/how-to-configure-features-for-dozens-of-team-projects.aspx

Cet assistant est un énorme progrès par rapport à ce qui était proposé jusqu’à présent (c’est à dire rien…) mais cela ne va malheureusement pas encore assez loin. On reste en effet figé au choix de template fait à l’origine et il n’est pas  possible de le changer pour par exemple utiliser le template SCRUM qui est celui proposé par défaut dans TFS 2012 !

Il faut encore une fois, créer un nouveau Team Project, faire une branche des sources pour les avoir dans ce nouveau projet, importer les WI, etc…

Il s’agit là du seul point noir de la migration.

Etape n°5 : Activer l’accès à toutes les fonctionnalités pour le PO et le SM

Je ne m’en étais pas rendu compte mais la RC de TFS 2012 propose une nouvelle fonctionnalité : la gestion des droits pour accéder à certaines fonctionnalités de TFS. Ainsi par défaut, aucun utilisateur n’a accès au backlog ni aux demandes de feedback. Vous devez vous rendre dans la section d’administration pour activer ces fonctionnalités comme décrit dans ce post : http://blogs.msdn.com/b/visualstudioalm/archive/2012/06/04/enabling-feedback-requests-the-backlog-and-sprint-planning-in-team-foundation-server-2012.aspx

image

Etape n°6 : Mettre à jour les clients pour se connecter à TFS 2012

Si des membres de votre équipe utilisent Visual Studio 2010, ils doivent installer un patch pour Team Explorer afin de ne pas avoir de problèmes (un redémarrage de la machine peut ensuite être utile) : http://www.microsoft.com/en-us/download/details.aspx?id=29082

Conclusion

L’installation de TFS 2012 et la migration des données se fait très simplement, et sans douleur. Le seul point noir concerne la mise à jour des team project et plus particulièrement la conversion vers un autre type de process template.

image

Personnaliser le taskboard de TFS 2012

L’implémentation de SCRUM dans TFS 2012  (une vraie correcte et utile, pas celle proposée par TFS 2010) est de mon point de vue la nouveauté la plus importante de cette version.

Microsoft va proposer un outillage pertinent afin de mettre en place SCRUM au sein d’une équipe de développement.

Dans le nouveau Team Web Access, entièrement redéveloppé, nous disposons donc à présent d’un taskboard présentant l’ensemble des tâches du sprint courant classées de manière traditionnelle dans des colonnes Todo, In Progress, Done :

image

Au sein de l’équipe, nous avons légèrement adapté SCRUM afin de prendre en compte de manière plus ciblée les tests. Nous avons ainsi ajouté une sous-colonne Test dans la colonne In Progress :

image

Si vous souhaitez modifier le taskboard de TFS afin de rajouter des colonnes sachez que cela est tout à fait possible !

La première étape consiste à modifier la définition des work items afin de rajouter un état supplémentaire et de modifier les transitions en conséquences. Pour cela, utiliser les Powertools de TFS afin d’exporter la définition de vos WI et de les modifier :

image

Une fois les work items modifiés, il reste à modifier la gestion des états du taskboard. Pour cela, il faut exporter le fichier CommonConfiguration et cela se passe en ligne de commande :

image

Ajouter l’état Test :

image

Et importer le fichier modifié à l’aide de la commande suivante :

image

Et voilà le résultat :

image

image

Retour sur le concours DevKings 2012

Dev Kings 2012 - Windows 8 - Pré-inscriptions

Microsoft organisait ce week-end dans les locaux de  l’EPITA/EPITECH un concours de développement autour de Windows 8.

Le concours s’est articulé autour de deux types d’épreuves :

  • Les “Fast Code”, épreuves de 8h avec un sujet imposé
  • Le développement (ou la finalisation) d’une application complète pour Windows 8

Les Fast Code proposés étaient :

  • Une application qui permet de compter sur les doigts d’une main. La première étape était donc d’arriver à détourer la main présentée devant le webcam :

image

Puis une fois parvenu à un résultat satisfaisant, il fallait concevoir un algo. capable de calculer le nombre de doigts dépliés. Plusieurs solutions étaient possibles : faire du matching d’image pour trouver si l’image détourée se rapprochait le plus possible d’exemples reprenants l’ensemble des combinaisons, faire de la détection de formes, ou encore de balayer l’image afin de calculer le nombre d’alternances noir/blanc pour trouver un résultat probant :

image

Quand à moi, je participais à ce concours en tant que membre de l’accélérateur Windows 8. Ce programme permet d’avoir un accès au Windows Store avant la sortie de Windows 8 et ainsi d’être les premiers à avoir une application disponible sur ce nouveau canal de distribution.

J’ai ainsi profité du week-end pour terminer le prototype afin de notamment prendre en compte les remarques/suggestions faites par un designer proposé par l’accélérateur.

L’application présentée était immopad une application de saisie d’états des lieux pour Windows 8 :

image

(je vous en dirais plus prochainement à ce sujet)

40 (!) applications ont ainsi été présentées à la fin du week-end, et à ma grande déception, je n’ai même pas réussi à faire parti des finalistes.

Parmi les finalistes, ont retenu mon attention :

  • l’application SmartShopping développée par Nathalie Pettier, une application utile avec gros effet wow à l’arrivée de la page d’accueil
  • L’application de catalogue et de vente de vins développée par Bewise avec un design vraiment excellent
  • Et un jeu (dont j’ai oublié le nom) basé sur le fameux snake de Nokia développé par Infinite Square

Au final ce fut un excellent week-end où nous avons très peu dormi (pour ma part 3h de vendredi à samedi et une nuit blanche pour le lendemain Smile) et où on a pu rencontrer près de 200 autres développeurs intéressés par le développement d’applications sous Windows 8, et des équipes très différentes. L’équipe de l’ESPI de Lyon s’est notamment fait remarqué grâce à leur très bonne organisation et l’utilisation de SCRUM pendant les fast code ! Ils sont en effet venus avec leur scrum board, leur post-it, etc.

Il n’y a qu’une chose à espérer : que Microsoft organise une seconde édition l’année prochaine (ou même plus tôt Smile) !