Vous en avez rêvé… Une session inédite qui lève le voile sur le fonctionnement interne des équipes de dev Microsoft, par JM Prieur, Senior Program Manager dans l’équipe Visual Studio et JP Gouigoux, MVP et traducteur Français officiel du livre « Hard Code » de Eric Brechner (Development manager Xbox) . Découvrez comment Microsoft est passé d’une cadence de release de Visual Studio tous les 3 ans, à une release annuelle, avec des mises à jours trimestrielles. Nous vous montrerons les méthodes et outils (parfois internes !) utilisés lors de la réalisation de Visual Studio 2013. Nous aborderons entre autres la gestion de la backlog, la priorisation, les feature teams, ... La séance sera également ponctuée de bonnes pratiques, certaines surprenantes, extraites du livre "Hard Code" et JP Gouigoux montrera comment il les applique dans ses propres équipe de développement. Vous ressortirez de cette session « Brutalement honnête » (comme les articles d'Eric Brechner). avec des idées immédiatement actionnables dans vos équipes.
Speakers : , Jean-Marc Prieur (Microsoft)
L'envers du décor : le Modern-ALM dans - et par - les équipes produits Microsoft
1.
2. L'envers du décor :
le Modern-ALM dans - et par les équipes produits Microsoft
Jean-Philippe Gouigoux
Chief Technical Officer
MGDIS
Jean-Marc Prieur
Senior Program
Manager
Microsoft | Visual Studio
jp@gouigoux.com
jeanmarc.prieur@microsoft.com
Code/Developpement
3. Donnez votre avis !
Depuis votre smartphone sur :
http://notes.mstechdays.fr
De nombreux lots à gagner toute les heures !!!
Claviers, souris et jeux Microsoft…
Merci de nous aider à améliorer les Techdays !
#mstechdays
Code/developpement
4. Comment c’est possible?
février 2002
VS 2002
avril 2003
VS 2003
septembre 2012
VS 2012
juin 2005
VS 2005
nov. 2012
VS 2012 Update 1
novembre 2007
VS 2008
janv. 2013
DevOps capabilities with
System Center 2012 SP1
avril 2013
VS 2012 Update 2
avril 2010
VS 2010
juin 2013
VS 2013 Update 3
septembre 2012
VS 2012
octobre 2013
Lancement
nov. 2013
de VS 2013 VS 2012 Update 4
« On premise / box »
04/10/2012
Visual Studio Online
#mstechdays
VS Online, mis à jour toutes les 3 semaines (sprint)
Code/developpement
octobre 2013
VS 2013
janv. 2014
VS 2013 Update 1
8. Cycle de vie moderne avec DevOps
#mstechdays
Code/developpement
9. COMMENT SONT DÉCIDÉES LES
PRIORITÉS DES SCENARIOS
“I’m listening”
UTILISATEURS A LIVRER?
Hypothèses – Télémétrie - Feedbacks
#mstechdays
Code/developpement
11. EXEMPLES DE BUG CONNECT
http://connect.microsoft.com/VisualStudio
exemple d’un bug CodeMap
comment il suit son chemin jusque dans TFS
#mstechdays
Code/developpement
22. COMMENT CONCILIER L’AGILITÉ
DES ÉQUIPES ET LES BESOINS EN
PLANNING DU MARKETING (ET DU
Agilité du sprint backlog
MANAGEMENT) ?
Approche lean du product backlog
#mstechdays
Code/developpement
23. I.M. Wright dit…
« Dev schedules, flying pigs
and other fantasies »
(chapitre 1)
• Estimation à la grosse
louche
• Ajuster sur les priorités
#mstechdays
Code/developpement
24. MMF : Minimal Marketable feature
Idea
feedback
#mstechdays
MMF
Titre
Titre long
Pourquoi?
Priorité
Code/developpement
25. Regroupement en scénarios
Division
Thèmes
Product
Unit
Scénarios
MMFs
Equipe de
développement
#mstechdays
Multi-release
Code at scale
Understand
code change
at scale
Code Lens for
Git (authors /
changes)
+ prioritaire
Understand
code structure
at scale
Code Lens for
Git (workitems)
- prioritaire
Code/developpement
Filter links on
code map
+ prioritaire
- prioritaire
release
<2-3 sprints
26. MMF : chaîne de production d’un MMF
Idea
feedback
MMF
Titre
Titre long
Pourquoi?
Priorité
On deck
MMF
Titre
Titre long
Pourquoi?
Priorité
Quoi
+ storyboard
+ spec
MMF
Titre
Titre long
Pourquoi?
Priorité
Quoi ?
(storyboard,
spec, stories)
Combien ?
Release/Milestone
proposé
Spec/Storyboard
revus avec équipe
User stories identifies
Cout estimé
(proto éventuellement)
#mstechdays
In Progress
Ready
Completed
Shipped
MMF
Titre
Titre long
Pourquoi?
Priorité
Quoi ?
+ storyboard
+ spec
+ stories
Combien ?
Comment?
(tâches)
MMF
Titre
Titre long
Pourquoi?
Priorité
Quoi ?
+ storyboard
+ spec
+ stories
Combien ?
Comment?
(tâches)
Code, tests,
pas de bugs
P1
MMF
Titre
Titre long
Pourquoi?
Priorité
Quoi ?
+ storyboard
+ spec
+ stories
Combien ?
Comment?
(tâches)
Code, tests
Livré,
documenté
Tâches créées
Avec cout détaillé
Code complete
Test complete
Télémétrie
Tenets ok
Code/developpement
Doc MSDN, localisé
Livré, blog post
27. La structure des workitems à un moment
donné
division
PU
Thèmes
Scénarios
MMFs
Equipe de
développement
Code change
at scale
Code Lens for
Git (authors)
Code Lens for
Git (work
items)
Code
understanding
at scale
Filter links on
code map
1-2 ans
<2-3 sprints
User stories
qq heures
à qq jours
Tâches
#mstechdays
Multi-release
Code at scale
Code/developpement
28. Un secret ?
• Microsoft n’annonce pas souvent les dates
de sortie
– Souplesse sur les dates
– Souplesse sur le contenu
#mstechdays
Code/developpement
29. COMMENT ON DÉVELOPPE CHEZ
MICROSOFT ?
Une approche lean, des specs à l’architecture
L’amélioration des connaissances de l’équipe, Code Reviews
#mstechdays
Code/developpement
30. I.M. Wright dit…
« Lean : more than good
pastrami » (chapitre 2)
#mstechdays
Code/developpement
32. COMMENT EST ASSUREE LA
QUALITÉ DES LIVRAISONS ?
Les « Tenets », La compliance
Les Test Pass (Side by Side)
#mstechdays
Code/developpement
33. Tenets et Test passes
• Tenets
–
–
–
–
–
User friendy (fluidité, …)
Sécurité
Privacy
Performance
Compliance: être conforme au lois dans tous les pays
• Test passes
#mstechdays
– Tous les tests, performance, stress, sécurité, Side by
side
Code/developpement
34. I.M. Wright dit…
« There is no place like
production » (chapitre 2)
• Azure : 1 environnement
• Pas de versioning
#mstechdays
Code/developpement
35. Un dernier secret… le plus important ?
« Senior developpers »
#mstechdays
Code/developpement
36. Comment faire des retours?
• Pour les crash “envoyez à Microsoft” (Watson)
• Pour les questions
– forums
• Pour les bugs
– Connect (http://connect.Microsoft.com/visualstudio)
– Vs feedback (Help | Feedback)
• Pour les suggestions
– Vs feedback ou User Voice
#mstechdays (http://visualstudio.uservoice.com)
Code/developpement
Ce slide sera présentéavantque la session commence
Vous l’avez remarqué avec Visual Studio 2012, la division développeur (DEVDIV) est passée d’une cadence de sortie de Visual Studio d’environ 3 ans, à des updates trimestriels, et à VS 2013 délivré en 1 an. De même VS-Online (TFS) est livré toutes les 3 semaines. Cela a des bénéfices évidents pour vous, clients: il ne faut pas attendre 3 ans pour que les bugs soient corrigés, et vos feedback sont pris en compte plus rapidement (sur uservoice, vsfeedback, connect, etc …).Un des moteurs de cette transformation de Microsoft vers une entreprise de Devices & Services est la mise en œuvre de deux boucles. Visual Studio 2013 et VS Online apportent des outils pour les mettre en œuvre vous aussi
Première partie de carrièredans le ministère de la Défense, centre de recherché opérationnelle et simulation de la Marine nationale, DGADepuis 2008, Program Manager dans les équipes Visual Studio:EcosystemDSL, partie de Team Architect (UML designers)Outils de modélisationDevOpsOutils de productivité pour les dévelopeursautour du “Code at scale” (Code structure = Code Map, maisaussi les outilsd’architecture, Code Change = Code Lens collaboration indicators, Code Search, Code Validation)
Ce cycle de vie estvalableaussibien pour les “box-product” que pour les servicesNous allonsdanscette session voir, au travers du cycle de vie moderneDevOps comment Microsoft s’yprend pour livrer plus rapidement et fréquemment tout en maintenant la qualité. Nous n’allons pas partir, commec’estsouvent le cas, de la planification, mais des produitsdéployés. Nous allonsexpliquer comment Microsoft observe, écoute, pour apprendre. Apprendre à propos des manques de qualité (alimentantainsi les bugs), et les manquesdans les scenarios utilisateurs (alimentant le backlog)A partir de ces informations, a lieu uneplanification, et nous montrerons les outilsque nous utilisons pour cela, avec uneapproche lean, tant au niveau des équipesque de la planficiation, et du reporting au management.Nous reviendronssurl’approche lean au niveau du développement, et verrons un certain nombre de principes et bonnespratiquesmises en oeuvre dans les équipes. Enfin nous verrons comment estassurée la qualité des livraisons, ou des déploiements pour les services, et nous parlerons de l’approchedéploiement direct en production.
https://connect.microsoft.com/VisualStudio/SearchResults.aspx?SearchQuery=CodeMapOn y trouve des exemples de bugs biengérésMaisaussi pas trop biengéré (non repro). On expliquequ’au moment oùl’équipel’areçu, elle ne pouvait plus la reproduireparcequ’elleétait déjà fixée.
ScreenCopy: In case there is a network problem
ScreenCopy: In case there is a network problem
ScreenCopy: In case there is a network problem
On part du bug connect privéque je ne pouvais pas monter pour des raisons de privacyIl a étérésolucomme duplicate … d’un bug Watson que nous regardons.
ScreenCopy: In case there is a network problem
JP : voussavezce qui vousreste à faire sivousvoulezque VS évoluedans le sensoù VOUS l’utilisez
Noter les “liens”:- Storyboards- SpecsAu fur et à mesureDiscutées en équipeUser Studies sinécessaires