TFS 2012 : Un pas vers l’agilité…
    en avant ou en arrière ?

       Christophe HERAL

        25 Octobre 2012
Solutions web et mobile
  Ingénierie       Solutions collaboratives
   Logicielle       Solutions « métiers »
                   Solutions décisionnelles



Ingénierie des      SGBD            Toulouse
Infrastructures   Systèmes          Bordeaux


                                               3
Introduction
On va parler d’Agilité par le biais de TFS
On ne rentrera pas dans les détails des nouvelles
  fonctionnalités de TFS 2012
Ce N’est PAS une session orientée Produit
C’est un ressenti personnel



Individuals and interactions over processes and tools
                                                    4
Je ne parlerai pas…
• Interaction de TFS avec Project Server
  Un logiciel opérationnel est la principale mesure d’avancement.
• Les outils pour architectes / concepteurs
  Les meilleures architectures, spécifications et conceptions
  émergent d’équipes auto-organisées.
• Interaction de TFS avec Sharepoint
  La méthode la plus simple et la plus efficace pour transmettre
  de l’information à l’équipe de développement et à l’intérieur de
  celle-ci est le dialogue en face à face.

                                                                 5
Team Foundation Server 2012
Un outil d’ALM (Application Lifecycle Management)




                                                6
L’agilité selon TFS
• MSF for Agile v6.0 (6.1)
• Visual Studio Scrum 2.0 (2.1)
  •   Nouveaux workitems pour la revue de code et le
      feedback
Les fonctionnalités de TFS 2012 sont disponibles pour des
projets existants après migration du Process Template.


• Microsoft Kanban 1.0 fourni par

                                                            7
Kanban : la théorie en 1 slide
3 Règles
   Commencer là où vous en êtes
   S’engager à changer de manière incrémentale
   Respecter le processus actuel, les rôles et responsabilités, tout au long
   de la démarche
5 Fondamentaux
   Visualiser
   Limiter le WIP
   Régler son processus
   Mesurer les résultats
   Améliorer
                                                                               8
Support de Kanban dans TFS
Kanban board




Mise en place de flux tirés (objectif : fluidifier)
                                                      9
L’interface Web de TFS 2012 : points forts
Entièrement refondue
Interface réactive
Asynchrone
Style Modern UI
Cliquer glisser




                                               10
TFS 2012 : les fausses bonnes idées
Gestion de la capacité / allocation des ressources
 Le ScrumMaster n’est pas un chef de projet !
 Chaque membre de l’équipe est multi-activités




                                                     11
TFS 2012 : les fausses bonnes idées
   Projection sur les sprints à venir




C’est à l’équipe de s’engager sur sa vélocité.
On ne peut pas la projeter en jours homme,
ni la comparer entre les équipes…

                                                       12
Nouvel outil de Story Boarding
Prototypage d’applications
Intégré à Powerpoint
Bibliothèque de formes prêtes à l’emploi
Création d’animations pour simuler des
  cinématiques écran
Outil d’image clipping pour modifier
  des applications existantes

                                                 13
A l’écoute des utilisateurs
Outil de Feedback
  Version light de Test Manager
  Permet à des utilisateurs issus du métier de donner leur
  avis sur une story implémentée par l’équipe.
Les utilisateurs ou leurs représentants et les développeurs doivent
  travailler ensemble quotidiennement tout au long du projet.
Pas de gestion des Persona
  Utilisateur fictif représentant un exemple concret
Sophie, 34 ans, attachée de presse d'un groupe alimentaire
                                                                14
Agile Test Quadrant
                              Orientation Business


                           Tests              Tests
                       fonctionnels       exploratoires,
                       (UI, bout en       d’ergonomie
                         bout, …)               …

Soutien de l’équipe                                        Critique du produit


                                            Tests de
                      Tests unitaires     performance,
                                            charge…


                                                                       Source :
                           Orientation Technologie                 Brian Marick
                                                                            15
Les tests dans VS 2012/TFS 2012
Refonte du Test Explorer (filtres, groupage)
Tests exploratoires
  Collecte des informations
Couverture de code sur les
  tests manuels



    End to end testing is overrated. (David Evans)
                                                     16
Le contrôle de sources
• Local Workspaces
  •   Travail hors-ligne facilité
  •   L’archivage nécessite toujours un accès serveur
• Intégration avec Git (Git-tf)
  •   Possibilités d’un DVCS (Distributed Version Control)
      en local
  •   Autres briques de l’ALM offertes par TFS
• Nouvel outil de compare/merge
• Plugin Eclipse pour TFS (Team Explorer Everywhere)
                                                             17
Intégration continue
Livrez fréquemment un logiciel opérationnel avec des cycles de quelques
   semaines à quelques mois et une préférence pour les plus courts.
Builds créées avec Workflow Foundation
Basés sur MSBuild
  Mais interaction possible avec Nant, Maven…
Archivage conditionné à la réussite de la Build

Siren of Shame
                                                                  18
La conception grâce aux tests
Interaction avec les frameworks de tests
  NUnit, MBUnit, QUnit, Jasmine…
TDD
  Peut être outillé avec NCrunch / Mighty Mouse
BDD
  Nécessite par exemple SpecFlow
Fakes Framework (Stubs et Shims)
  Alternative (crédible ?) aux frameworks existants (RhinoMocks,
  Moq, NMock, …)
Mais le plus important reste la pratique (Kata, Dojo, …)
           The source code is the design. (Jack W. Reeves)
                                                               19
Les bases du Clean Code
   • YAGNI / KISS
   • DRY
   • SOLID
   • Eviter les Code Smells
     (méthodes longues, code mort, …)
   • Importance du nommage
   • De l’usage des commentaires…
When you feel the need to write a comment, first try to refactor the code
     so that any comment becomes superfluous. (Martin Fowler)
                                                                    20
Outillage pour les développeurs
Code Clone Analysis
Code Review intégré dans Team Explorer
Code Analysis pour les projets C++
Visualisation de code (Graphe de dépendance)

Outils tiers type Resharper
    Continuous attention to technical excellence
         and good design enhances agility.
                                                   21
Les nouveautés côté DevOps
DevOps : Mouvement agile visant à favoriser la
  communications entre les Dev (développeurs) et
  les Ops (exploitation)

IntelliTrace
  Capture d’informations en production en vue d’un diagnostic
Connecteur System Center (gestion d’infrastructure)
   Remontée de tickets dans TFS
                                                                22
Déploiement de la partie Base de Données
SQL Server Data Tools
Successeur des projets Bases de données
  (existants depuis Visual Studio 2005)
Composants graphiques de Management Studio
  offerts au développeur dans Visual Studio
LocalDB se substitue à SQL Express (plus léger)
Supporte les bases SQL 2000 à 2012 et SQL Azure
Scripts d’évolution de la base intégrés à VS
                                                  23
Team Foundation Service
Solution ALM hébergée dans le cloud (MS Azure)
  Contrôle de sources (sauf intégration avec Git)
  Builds / Exécution des tests
  Portail Web / Scrum & Kanban Boards
A destination des PME/TPE
Service actuellement en Preview, mais stable
Nouvelle version livrée tous les sprints (3 semaines)
http://tfspreview.com/
                                                    24
Brancher une interface tactile sur TFS
Proposé par exemple par Institute for Software
  (Suisse)




                                                 25
Quelques blogs références
Brian Harry : http://blogs.msdn.com/b/bharry/
Aaron Bjork : http://blogs.msdn.com/b/aaronbjork/
Brian Keller : http://blogs.msdn.com/b/briankel/
Visual Studio ALM :
  http://blogs.msdn.com/b/visualstudioalm/




                                                26
Merci !
                No Silver Bullet
             Talk – Action = Bullshit

                     ROTI ?

Email : cheral@neotech-solutions.fr
Twitter : @ChrisHeral

                                             27

AgileTour Toulouse 2012 : TFS

  • 1.
    TFS 2012 :Un pas vers l’agilité… en avant ou en arrière ? Christophe HERAL 25 Octobre 2012
  • 3.
    Solutions web etmobile Ingénierie Solutions collaboratives Logicielle Solutions « métiers » Solutions décisionnelles Ingénierie des SGBD Toulouse Infrastructures Systèmes Bordeaux 3
  • 4.
    Introduction On va parlerd’Agilité par le biais de TFS On ne rentrera pas dans les détails des nouvelles fonctionnalités de TFS 2012 Ce N’est PAS une session orientée Produit C’est un ressenti personnel Individuals and interactions over processes and tools 4
  • 5.
    Je ne parleraipas… • Interaction de TFS avec Project Server Un logiciel opérationnel est la principale mesure d’avancement. • Les outils pour architectes / concepteurs Les meilleures architectures, spécifications et conceptions émergent d’équipes auto-organisées. • Interaction de TFS avec Sharepoint La méthode la plus simple et la plus efficace pour transmettre de l’information à l’équipe de développement et à l’intérieur de celle-ci est le dialogue en face à face. 5
  • 6.
    Team Foundation Server2012 Un outil d’ALM (Application Lifecycle Management) 6
  • 7.
    L’agilité selon TFS •MSF for Agile v6.0 (6.1) • Visual Studio Scrum 2.0 (2.1) • Nouveaux workitems pour la revue de code et le feedback Les fonctionnalités de TFS 2012 sont disponibles pour des projets existants après migration du Process Template. • Microsoft Kanban 1.0 fourni par 7
  • 8.
    Kanban : lathéorie en 1 slide 3 Règles Commencer là où vous en êtes S’engager à changer de manière incrémentale Respecter le processus actuel, les rôles et responsabilités, tout au long de la démarche 5 Fondamentaux Visualiser Limiter le WIP Régler son processus Mesurer les résultats Améliorer 8
  • 9.
    Support de Kanbandans TFS Kanban board Mise en place de flux tirés (objectif : fluidifier) 9
  • 10.
    L’interface Web deTFS 2012 : points forts Entièrement refondue Interface réactive Asynchrone Style Modern UI Cliquer glisser 10
  • 11.
    TFS 2012 :les fausses bonnes idées Gestion de la capacité / allocation des ressources Le ScrumMaster n’est pas un chef de projet ! Chaque membre de l’équipe est multi-activités 11
  • 12.
    TFS 2012 :les fausses bonnes idées Projection sur les sprints à venir C’est à l’équipe de s’engager sur sa vélocité. On ne peut pas la projeter en jours homme, ni la comparer entre les équipes… 12
  • 13.
    Nouvel outil deStory Boarding Prototypage d’applications Intégré à Powerpoint Bibliothèque de formes prêtes à l’emploi Création d’animations pour simuler des cinématiques écran Outil d’image clipping pour modifier des applications existantes 13
  • 14.
    A l’écoute desutilisateurs Outil de Feedback Version light de Test Manager Permet à des utilisateurs issus du métier de donner leur avis sur une story implémentée par l’équipe. Les utilisateurs ou leurs représentants et les développeurs doivent travailler ensemble quotidiennement tout au long du projet. Pas de gestion des Persona Utilisateur fictif représentant un exemple concret Sophie, 34 ans, attachée de presse d'un groupe alimentaire 14
  • 15.
    Agile Test Quadrant Orientation Business Tests Tests fonctionnels exploratoires, (UI, bout en d’ergonomie bout, …) … Soutien de l’équipe Critique du produit Tests de Tests unitaires performance, charge… Source : Orientation Technologie Brian Marick 15
  • 16.
    Les tests dansVS 2012/TFS 2012 Refonte du Test Explorer (filtres, groupage) Tests exploratoires Collecte des informations Couverture de code sur les tests manuels End to end testing is overrated. (David Evans) 16
  • 17.
    Le contrôle desources • Local Workspaces • Travail hors-ligne facilité • L’archivage nécessite toujours un accès serveur • Intégration avec Git (Git-tf) • Possibilités d’un DVCS (Distributed Version Control) en local • Autres briques de l’ALM offertes par TFS • Nouvel outil de compare/merge • Plugin Eclipse pour TFS (Team Explorer Everywhere) 17
  • 18.
    Intégration continue Livrez fréquemmentun logiciel opérationnel avec des cycles de quelques semaines à quelques mois et une préférence pour les plus courts. Builds créées avec Workflow Foundation Basés sur MSBuild Mais interaction possible avec Nant, Maven… Archivage conditionné à la réussite de la Build Siren of Shame 18
  • 19.
    La conception grâceaux tests Interaction avec les frameworks de tests NUnit, MBUnit, QUnit, Jasmine… TDD Peut être outillé avec NCrunch / Mighty Mouse BDD Nécessite par exemple SpecFlow Fakes Framework (Stubs et Shims) Alternative (crédible ?) aux frameworks existants (RhinoMocks, Moq, NMock, …) Mais le plus important reste la pratique (Kata, Dojo, …) The source code is the design. (Jack W. Reeves) 19
  • 20.
    Les bases duClean Code • YAGNI / KISS • DRY • SOLID • Eviter les Code Smells (méthodes longues, code mort, …) • Importance du nommage • De l’usage des commentaires… When you feel the need to write a comment, first try to refactor the code so that any comment becomes superfluous. (Martin Fowler) 20
  • 21.
    Outillage pour lesdéveloppeurs Code Clone Analysis Code Review intégré dans Team Explorer Code Analysis pour les projets C++ Visualisation de code (Graphe de dépendance) Outils tiers type Resharper Continuous attention to technical excellence and good design enhances agility. 21
  • 22.
    Les nouveautés côtéDevOps DevOps : Mouvement agile visant à favoriser la communications entre les Dev (développeurs) et les Ops (exploitation) IntelliTrace Capture d’informations en production en vue d’un diagnostic Connecteur System Center (gestion d’infrastructure) Remontée de tickets dans TFS 22
  • 23.
    Déploiement de lapartie Base de Données SQL Server Data Tools Successeur des projets Bases de données (existants depuis Visual Studio 2005) Composants graphiques de Management Studio offerts au développeur dans Visual Studio LocalDB se substitue à SQL Express (plus léger) Supporte les bases SQL 2000 à 2012 et SQL Azure Scripts d’évolution de la base intégrés à VS 23
  • 24.
    Team Foundation Service SolutionALM hébergée dans le cloud (MS Azure) Contrôle de sources (sauf intégration avec Git) Builds / Exécution des tests Portail Web / Scrum & Kanban Boards A destination des PME/TPE Service actuellement en Preview, mais stable Nouvelle version livrée tous les sprints (3 semaines) http://tfspreview.com/ 24
  • 25.
    Brancher une interfacetactile sur TFS Proposé par exemple par Institute for Software (Suisse) 25
  • 26.
    Quelques blogs références BrianHarry : http://blogs.msdn.com/b/bharry/ Aaron Bjork : http://blogs.msdn.com/b/aaronbjork/ Brian Keller : http://blogs.msdn.com/b/briankel/ Visual Studio ALM : http://blogs.msdn.com/b/visualstudioalm/ 26
  • 27.
    Merci ! No Silver Bullet Talk – Action = Bullshit ROTI ? Email : cheral@neotech-solutions.fr Twitter : @ChrisHeral 27