tfs 2010 and agility
DESCRIPTION
TRANSCRIPT
Being Agile withTeam Foundation Server 2010
Dominic Danis, Directeur de Produit, PyxisJoël Quimper, Conseiller en Architecture, Microsoft Canada
Agenda
− Story 1 – Survol de Team Foundation Server− Story 2 – Organisation du travaille dans un monde
agile− Story 3 – Qualité et Tests
Visual Studio 2010
Test and Lab Manager
Manual Testing
Layer Diagram
UML Modeling
Load Testing Web Testing
Test Case Management
IntelliTrace™
Architecture Explorer Test Record & Playback
Logical Class Designer
Cloud Development
Office Development
Windows Development
New WPF Editor Customizable IDE
Multi-core Development
Silverlight Tools
Web Development
SharePoint Development
Generate from Usage
Static Code Analysis
Database Deployment
Code Metrics
Database Unit Testing Test Data Generation
Test Impact AnalysisUI Test Automation
Code Coverage
Performance Profiling
Database Change Mgmt
Test and Lab Manager
Test Case ManagementTest Record &
Playback
Manual Testing
Lab Mgmt Config.
Checkpoint Environment
Environment from Template
Virtual Env. Setup/Tear Down
Reporting
Team Portal
Test Case Management
Branch Visualization
Version Control
Build Automation
Gated Check-in
Agile Planning Tools
Team Explorer
Team Agents
Demo
Agile
Historique du terme « Agile »
− En février 2001, dix-sept leaders des approches de développement de logiciels « légers » se sont rencontrés en Utah.
− Ils ont adopté le terme « Agile » pour définir leur travail.
− Ils ont créé le manifeste Agile, qui définit les valeurs fondamentales sur lesquelles toutes les méthodologies Agiles devraient être fondées.
− De ces valeurs, douze principes fondamentaux ont été extraits.
− Les détails opérationnels sont propres à chaque méthodologie Agile (Scrum, XP, DSDM,...).
9
Manifeste Agile
− Personnes et interactions plutôt que processus et outils − Logiciel fonctionnel plutôt que documentation complète− Collaboration avec le client plutôt que négociation de
contrat − Réaction au changement plutôt que suivi d’un plan rigide
Nous sommes à découvrir de meilleures façons de développer des logiciels en aidant les autres et en développant nous aussi. Par ce
travail, nous en sommes venu à valoriser ce qui suit :
En fait, bien que les éléments de droite soient importants, ceux de gauche le sont encore plus.
10
Méthodologies Agiles
− Scrum− Extreme Programming (XP)− Adaptive Software Development− Crystal Clear− Feature Driven Development− Dynamic Systems Development Method (DSDM)− MSF for Agile Software Development− RUP (Agile RUP—AUP)
Le squelette de Scrum
Vision
Granularité des exigences
Sprint courant
1-2
sprints
Livraison
Produit
6 mois 2-3 mois 1 mois Implantation
Vis
ion
Épi
cs
Scénarios
Tâches
Des détails sont ajoutés au fil du temps.
Horizon de prévisibilité
13
Processus en cascade
− C'est un processus imprévisible, ce qui cause des surprises, donc de l’insatisfaction.
14
Scrum− C'est un processus prévisible, ce qui aide à prendre des décisions
éclairées.− La date est fixée. Que doit-on inclure dans le produit ?− Le produit est en état d'être déployé à la fin de chaque sprint.
Demo
Reports
Tracking Progress
Burndown chart tracks remaining and completed
work
Tracking Progress
Tracking Progress
Tracking Progress
Detailed sprint progress is tracked on
the project portal
The burndown shows the team on track…
And almost half of the tasks remain
openBut the team hasn’t closed any
of the three stories…
Tracking Progress
Test are passing…
But bugs are climbing steadily
The portal brings data together so it can be analyzed to ensure success on a
sprint
Tracking ProgressRich set of reports
track progress
Merci!
Testing Done Right
− Test and Lab Manager− Manual Testing for the 21st century− Plan, Manage and Execute tests from one place
− Web and Load Testing− Know your code is ready for the big time− Measure performance under real time load conditions
and ensure that your applications are ready for release
− Virtual Test Environments− Reduce the overhead of maintaining
physical test environments− Share Virtual environments between
team members
Spend Less time Debugging
− IntelliTrace™− Make “No-Repro” History with Actionable
Bugs
− Coded UI Tests− Automated regression tests let you find
bugs earlier
− Test Impact Analysis and Code Coverage− Run the Right Tests and only the Right Tests− And know you have really tested you code
Architecture as a Living Asset
− Modeling that works with Code− Seamlessly move between models and
code and describe your application using standard UML Diagrams
− Architecture Explorer− Discover and understand how a system
works and visualize existing code assets and how they connect.
− Architectural Validation− Ensure Code Matches the Intended Design
Create code, Don’t debug it
− Dependency Diagrams− Understand code dependencies
visually and understand where to make changes
− Code Analysis and Code Metrics− Help you find and fix potential problems
before you make them
− Gated Check-In− Stop build breaks before they happen
Enhance Team Collaboration
− Integrated Tools Ensure Team Consistency− Drive consistent results as all team
members work with an integrated set of tools
− The Collaboration Hub− Team Foundation Server provides
the single collaboration source for all assets associated with a project
− Complete Transparency− All members of the team have visibility
into how the project is progressing
Integrated Development
− Quickly resolve issues across the lifecycle Integrated tools and a shared repository let data flow seamlessly from action to action helping you address business needs or resolve technical issues
− Develop for today’s modern platforms− Support for Windows 7, SharePoint,
Cloud development and more out of the box
− Deployment Excellence− Use detailed information from across
your team to know you are ready to ship
− MS Build, Click Once and Cloud deployment options get solutions to customers efficiently
Prototype Ideas to bring Projects to Life− The Electronic Napkin
− SketchFlow allows you to deliver functioning prototypes with that “Back of a Napkin” feel
− Design UI Flow− Design your UI Flow using the
Application Flow functionality
− SketchFlow Player− Easily share and gain input to your
prototypes from all interested parties