Scrum Day 2014 - Êtes-vous prêts pour le modèle Spotify ?
Techdays 2013 : ALM et eCommerce, des challenges en continu
1. Donnez votre avis !
Depuis votre smartphone, sur :
http://notes.mstechdays.fr
De nombreux lots à gagner toutes les heures !!!
Claviers, souris et jeux Microsoft…
Merci de nous aider à améliorer les TechDays
http://notes.mstechdays.fr
2. ALM204 - ALM & eCommerce
des challenges en continu !
Kamel KHELIL
Solution Sales Pro. Visual Studio
Microsoft
Code / Développement
ALM204
Site web
Vincent LABATUT
MVP Visual Studio ALM
Sogeti
6. ALM <> SDLC
Le périmètre ALM
Dev
Build
Deploy
Test
Gouvernance
Développement
Exploitation
Application
Lifecycle
Management
7. Ceux dont on ne va pas parler…
Les équipes (en cuisine)
Développeurs,
Designers
TesteursBuild master Intégrateurs
Chefs de
Projet
Métier ProductionStakeholder
Architectes
MOA
Spécialistes :
Web, Perf
8. « Time is of the essence… »
• Objectifs classiques
– Réduction des coûts et ROI
– Réduction des bugs bloquants
• Objectifs commerciaux
– Time to market!
• Objectifs stratégiques
– Modularité, réutilisabilité
Les priorités techniques du eCommerce
Vitesse
Coûts Qualité
9. « CUISINER » UNE EVOLUTION
Chapitre 2
ALM204 - ALM & eCommerce : des challenges en continu !
10. • Impacte les sites
– Front Office
– Middle Office
• Impacte les bases de données
• Impacte la configuration
Une idée, une envie…
Une idée marketing qui tue
A la Saint Valentin, déclarez votre
flamme et faites profiter de réductions
inédites* à l’élu(e) de votre cœur !
* cf tous les articles marqués d’un cœur !
11. Livraisons et patches sont planifiés de longue date
• Demande du métier
• Chef de projet fonctionnel (MOA)
– Estimation et chiffrage
• Planification
Une commande spéciale…
Livraison 1 Livraison 2 Livraison 3 Livraison 4 Livraison 5
Patches 1a 1b 2a 2b 3a 3b 4a 4b
12. • Le Framework et la couche de
services
– De nombreux services
découpés en domaines
fonctionnels
• Gestion des dépendances
simple
• Découpage très fin :
– Maîtrise naturelle
– Solution assez lourde
La composition du plat
Les entrailles
Framework
Service 1 Service 2 Service N…
Applications (Fronts, Middle)
BD 1 BD 2 BD N…
13. Champ de bataille
• Le projet est réparti sur plusieurs équipes
– Front Office
– Middle Office
• Les développeurs rapportent le suivi au fur et à
mesure du développement
• Ils produisent 3 artefacts principaux :
– Evolutions de code
– Evolutions de bases de données
– Evolutions de configuration
• On distingue le suivi développement du suivi
facturation
La répartition des commis
14. • Une arborescence de Work Items
partant des « projets »
• Modèle CMMI fortement modifié
• Les évolutions sont composées de :
– Code (Task puis merges
rattachés à des Synchro)
– Configuration
– Resource
– Database
Question d’organisation
Work Items customization
ExtBug
Configuration
Database
Project
Requirement
Task
Task
Task
Configuration
Resource
Task
Synchro
Task
Task
Synchro
Database
Task
Database
16. Assurer l’intégrité
• Le code est archivé dans TFS
– Nous avons mis en place des contraintes avec des
Checkin Policies
• Commentaire obligatoire
• Work Item obligatoire
• Expérimentation : UpdateTime Policy
– Mise en place sur un chemin précis
• Politique de surveillance des checkins sans Work
Item !
Le travail sur l’ingrédient principal
17. Bonjour Truc,
Il faudrait que tu associes tes checkins à des Work Items, pourras-tu le faire à
l’avenir ?
Si tu as besoin d’infos n’hésite pas à revenir vers moi,
Cordialement,
Vincent
Bonjour Machin,
En effectuant ce checkin tu as overridé la policy qui restreint volontairement le champ
des work items « associables » aux tâches en état « Active », or la tâche que tu as
choisie était « Proposed ». Au besoin, il faut changer ou faire changer l’état de la
tâche en cours.
Cordialement,
Vincent
Bonjour Bidule,
Le problème avec la policy Work Item Query a été expliqué dans mon mail du 6 juin
dernier, il ne faut pas l'overrider : il y a en fait un problème de cache et de refresh
côté client. Si le WI est repassé à Active tout récemment, il y a une solution simple
et rapide : ne pas utiliser la fenêtre Pending Checkins qui met en cache le résultat
de la requête , on peut passer par le checkin depuis le Solution Explorer ou le
Source Control Explorer. Si cela ne passe toujours pas, relancer Visual Studio, ou
bien faire le checkin depuis une autre instance de Visual Studio.
Désolé que cela ne se refresh pas bien sans avoir faire cela, n’hésite pas à revenir vers
moi si tu as des problèmes ou questions,
Cordialement,
Vincent
• Du temps passé à expliquer (et
éduquer) les développeurs
• Pas si chronophage
• Résultats visibles
• Au final meilleur contact
Les difficultés (mineures)
« Prendre un enfant par la main, pour l’emmener vers demain… » (chanson populaire pour admin ALM)
20. Faire monter la sauce
• Build continu sur la branche de dev
• Environ 250… (multiplicité liées aux branches,
aux différents projets par équipe)
– Historique des builds prend beaucoup de Go dans la base
TFS
• A lancer dans l’ordre
• Fortement customisés
• N’utilisent pas les workflows (la migration est
souhaitée mais pas encore réalisée)
L’intégration des ingrédients (les builds)
21. Une pointe de sel
• L’évolution arrive sur la branche
d’intégration (Main)
– Le merge est fait par l’équipe de développement
– Ce sont les responsables techniques et les
développeurs qui contrôlent cette plate-forme
• Puis elle est intégrée sur la branche de
recette
– Les intégrateurs opèrent le merge
Finalisation du plat
22. • Les testeurs déroulent les cas
de test
– Centre de test Sogeti
• Les anomalies sont créées dans
un outil de bug tracking tiers
– Une synchro a été mise en
place
– L’outil tiers est encore la
référence
– La traçabilité avec TFS est
en place
Les goûteurs
Lâchez les fauves !
Equipes test
Gestionnaire
de bugs
TFS
Développeurs
Rapport
anomalie
Synchro
Correctif
Commu-
nication
23. A vos buzzers… Votez !
• Un développeur a-t-il produit un bug ?
– A) « Non merci, je ne fais que très peu de bugs »
– B) clients.Where(x=>x.IsAmoureux).CrediterSoldeBonAchat(100);
– C) Le développeur déteste la St Valentin, il a transformé la réduction en
augmentation pour les profils St Valentin
– D) Obi-Wan Kenobi
Le plat est-il satisfaisant ?
24. Cycle de correction court
• Un correctif est réalisé par l’équipe de
développement concernée
• Puis intégré jusqu’à la branche de recette !
• Nouvelle session de test
– Jeu réduit de TNR
Problème : manque d’épices
25. Déploiement en pré-prod
• Préparation des livraisons et packaging
– Le mot d’ordre : traçabilité
– Procédure de déploiement
Le dressage et la présentation
Livraison
ItérationSynchro 1
Synchro 2
Resource 1
MAIN
RECETTE
PRODUCTION
Changeset
Changeset
Database 1
27. Chaud devant !
• Le jury final : tests de perf
– 1ers tests avec Load Testing (Visual Studio)
– Tests exhaustifs avec un logiciel tiers
• Servi en salle : passage en prod
– La nuit à 2h du matin
– Cache serveurs important : pré-caching de 30 minutes
au moins
Le jury final (l’examen calorique)
28. Cycle de correction long
• Prise en main de la fiche bug
– Equipe de TMA ou de Développement selon les
cas
• Correctif sur branche de maintenance
• Eventuellement fusionné vers la
production
– Nombreux correctifs abandonnés
• Trop mineur
• Trop impactant, conséquences trop flous ou
peu maitrisées
• Durée limitée : de nouvelles évolutions vont
le rendre obsolète le mois d’après
• Pipeline de livraison accéléré
– Les patches entrelacés avec les livraisons
d’évolutions
Améliorer un plat déjà servi, c’est possible…
MAIN
RECETTE
PRODUCTION
MAINTENANCE
30. TFS
TFS encore plus au cœur de l’ALM
Rétrospective
Work
Items
Reporting
Source
Controller
BuildsDéveloppeurs
Testeurs
Build master
Intégrateurs
Chefs de Projet ArchitectesMOA
31. MTM rulez
• Démarrage de l’utilisation des campagnes
MTM
– Ajustement sur les WIs pour tirer parti au mieux du
reporting
• Les premières fiches de bugs 100% TFS
– Bientôt seulement TFS pour le bug tracking ?
Meilleure utilisation du testing
32. La productivité, toujours…
• Gestion des évolutions de bases de
données dans le contrôleur de sources
• Idem pour les évolutions de configuration
• Des outils pour surveiller l’intégrité des
Changesets et Work Items
Des processus plus fluides
33. Transparence…
• Avec les campagnes et les fiches de bugs
• + le temps passé en temps réel
• Le fameux rapport « User Story overview » devient exploitable
Le reporting de bout en bout
Projets, ou fonctionnalités
Avancement des développements
Avancement des campagnes de test
(inclus les tests automatisés)
Bugs et
correctifs
34. MTM rulez
• Fonctionnalités d’équipe
• Tests exploratoires
• Feedback utilisateur
Migration Visual Studio 2012 et TFS 2012
35.
36. Formez-vous en ligne
Retrouvez nos évènements
Faites-vous accompagner
gratuitement
Essayer gratuitement nos
solutions IT
Retrouver nos experts
Microsoft
Pros de l’ITDéveloppeurs
www.microsoftvirtualacademy.comhttp://aka.ms/generation-app
http://aka.ms/evenements-
developpeurs
http://aka.ms/itcamps-france
Les accélérateurs
Windows Azure, Windows Phone,
Windows 8
http://aka.ms/telechargements
La Dev’Team sur MSDN
http://aka.ms/devteam
L’IT Team sur TechNet
http://aka.ms/itteam