TFS 2012 : un pas vers l'agilité... en avant ou en arrière ?

Preview:

DESCRIPTION

Microsoft nous propose une nouvelle version de son outil d'ALM en cette fin 2012. Nombre de fonctionnalités ont été rajoutées ou améliorées dans cette mouture, notamment pour mieux prendre en compte les besoins des agilistes. Mais cette version va-t-elle satisfaire les plus réticents à l'utilisation d'un outil ou a-t-on affaire à une arnaque agile ?

Citation preview

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

Christophe HERAL

25 Octobre 2012

3

Ingénierie Logicielle

Solutions web et mobileSolutions collaboratives

Solutions « métiers »Solutions décisionnelles

Ingénierie des Infrastructures

SGBDSystèmes

ToulouseBordeaux

4

Introduction

On va parler d’Agilité par le biais de TFSOn ne rentrera pas dans les détails des

nouvelles fonctionnalités de TFS 2012Ce N’est PAS une session orientée ProduitC’est un ressenti personnel

Individuals and interactions over processes and tools

5

Team Foundation Server 2012

Un outil d’ALM (Application Lifecycle Management)

6

Je ne parlerai pas…

• Interaction de TFS avec Project ServerUn logiciel opérationnel est la principale mesure d’avancement.

• Les outils pour architectes / concepteursLes meilleures architectures, spécifications et conceptions émergent d’équipes auto-organisées.

• Interaction de TFS avec SharepointLa 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.

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 feedbackLes fonctionnalités de TFS 2012 sont disponibles pour des projets existants après migration du Process Template.

• Microsoft Kanban 1.0 fourni par

8

Kanban : la théorie en 1 slide

RèglesCommencer 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

FondamentauxVisualiser

Limiter le WIP

Régler son processus

Mesurer les résultats

Améliorer

3

5

9

Support de Kanban dans TFS

Kanban board

Mise en place de flux tirés (objectif : fluidifier)

10

L’interface Web de TFS 2012 : points forts

Entièrement refondueInterface réactiveAsynchrone

Style Modern UI

Cliquer glisser

11

TFS 2012 : les fausses bonnes idées

Gestion de la capacité / allocation des ressourcesLe ScrumMaster n’est pas un chef de projet !Chaque membre de l’équipe est multi-activités

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…

13

Nouvel outil de Story Boarding

Prototypage d’applicationsIntégré à PowerpointBibliothèque de formes prêtes à l’emploiCréation d’animations pour simuler des

cinématiques écranOutil d’image clipping pour modifier

des applications existantes

14

A l’écoute des utilisateurs

Outil de FeedbackVersion light de Test ManagerPermet à 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 PersonaUtilisateur fictif représentant un exemple concret

Sophie, 34 ans, attachée de presse d'un groupe alimentaire

15

Agile Test Quadrant

Tests fonctionnels (UI, bout

en bout, …)

Tests exploratoir

es, d’ergonomi

e…

Tests unitaires

Tests de performance, charge…

Critique du produit

Soutien de l’équipe

Orientation Technologie

Orientation Business

Source : Brian

Marick

16

Les tests dans VS 2012/TFS 2012

Refonte du Test Explorer (filtres, groupage)

Tests exploratoiresCollecte des informations

Couverture de code sur les tests manuels

End to end testing is overrated. (David Evans)

17

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)

18

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 FoundationBasés sur MSBuild

Mais interaction possible avec Nant, Maven…

Archivage conditionné à la réussite de la Build

Siren of Shame

19

La conception grâce aux testsInteraction avec les frameworks de tests

NUnit, MBUnit, QUnit, Jasmine…TDD

Peut être outillé avec NCrunch / Mighty MouseBDD

Nécessite par exemple SpecFlowFakes 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)

20

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)

21

Outillage pour les développeurs

Code Clone AnalysisCode Review intégré dans Team ExplorerCode Analysis pour les projets C++Visualisation de code (Graphe de

dépendance)

Outils tiers type ResharperContinuous attention to technical excellence 

and good design enhances agility.

22

Les nouveautés côté DevOps

DevOps : Mouvement agile visant à favoriser la communications entre les Dev (développeurs) et les Ops (exploitation)

IntelliTraceCapture d’informations en production en vue d’un diagnostic

Connecteur System Center (gestion d’infrastructure)Remontée de tickets dans TFS

23

Déploiement de la partie Base de Données

SQL Server Data ToolsSuccesseur 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

24

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 testsPortail Web / Scrum & Kanban Boards

A destination des PME/TPEService actuellement en Preview, mais

stableNouvelle version livrée tous les sprints (3

semaines)http://tfspreview.com/

25

Brancher une interface tactile sur TFS

Proposé par exemple par Institute for Software (Suisse)

26

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/

27

Merci !

No Silver BulletTalk – Action = Bullshit

ROTI ?

Email : cheral@neotech-solutions.frTwitter : @ChrisHeral