2. Agenda Panorama de l’ALM Rationalisation des processus Un exemple d’ALM Questions / Réponses 2
3. ALM – Définition (1/2) ALM = Application Life Cycle Management 3 piliers fondamentaux Software Development Life Cycle Gestion de projet Release Management Démarche permettant de gérer le cycle de vie des logiciels Qualité logicielle Collaboration Pilotage 3
4. ALM – Définition (2/2) Coordination des différentes activités du développement d’un projet informatique à travers La formalisation de processus liant ces activités La gestion des relations de ces activités avec le code produit Le reporting sur l’ensemble de ces activités Fournit un cadre formel de travail et d’organisation Vise à l’industrialisation des développements Standardisation des processus Standardisation des méthodes Standardisation des outils 4
6. La convergence ALM Convergence des développeurs Référentiel de code source Intégration continue Tests unitaires IDE Convergence des équipes projets Gestionnaire de tâches Gestionnaire d’anomalies Gestionnaire documentaire Convergence de l’ensemble des équipes impliquées ALM 6 ALM
7. Anatomie de l’ALM 7 Gestion de projet Plannification / Suivi Gouvernance Intégration continue Développement Spécifications Gestion de la qualité Tests Maintenance Livraison
8. ALM – Les fondamentaux Fédération d’outils multiples Gestionnaire de sources Définition des besoins / Spécifications Intégration continue Déploiement Tests Maintenance Organisationnel Pilotage des projets par les bonnes pratiques Itérations courtes Focus sur la qualité Gestion de la maintenance 8
9. Les enjeux adressés par l’ALM Fluidification des flux, processus et informations entre les équipes et chaque personne Etablir un référentiel unique et commun à tout le monde Fournir des indicateurs à la bonne personne au bon moment Formalisation des processus méthodologiques Rétro analyse Cercle vertueux dans la gestion du cycle de vie logiciel 9
10. ALM – Quelques idées reçues … N’est pas lié à une technologie spécifique N’est pas lié à une typologie unique d’utilisateurs Développeur : Usine logicielle Equipe : Usine logicielle et méthodologique Direction : Gouvernance et gestion de projet N’implique pas nécessairement des méthodes agiles N’est pas une solution magique, nécessite une réflexion sur l’organisation et les méthodes de travail 10
11. Les 5 points clés de l’ALM Favoriser l’intégrité et le partage des informations entre les intervenants Lier et automatiser les processus de développement par un workflow définissant une méthodologie adaptée Fournir le lien entre la spécification, le composant technique et le cas de test Mesure des impacts en cas de modification facilitée Capitaliser les « best practices » 11
12. Enjeux pour les équipes projet Gestion de projet Infrastructure unifiée de pilotage Maîtrise fine de la productivité Maîtrise des coûts Equipe Amélioration de la communication dans les équipes Rendre visible la progression Personne Avoir une vision claire de ses taches ouvertes Comprendre l’ensemble du projet 12
13. ALM – La voie de la maturité Direction Equipe Dévelop. Niveau de maturité 13
14. Les principaux players du marché 14 Editeurs : HP ALM 11 IBM Rational Team Concert Microsoft TFS MKS ThoughtWorks Studios Solutions sur mesure : SAP BULL CAPGEMINI
15. Agenda Panorama de l’ALM Rationalisation des processus Un exemple d’ALM Questions / Réponses 15
20. Les 5 niveaux CMMI - (2/2) Niveau 4 : Maîtrisé Processus clés sous contrôle statistique Surveillance d’indicateurs quantitatifs Elimination des différentes causes de variation Niveau 5 : Optimisé Boucle permanente d’optimisation Processus Technologies Optimisation sur analyse coût/bénéfice 18
21. Bénéfices de la rationalisation Principal enjeu : décloisonner l’organisation Communication dans l’entreprise Communication entre les différentes équipes Communication dans les équipes Amélioration de la qualité du produit livré Amélioration de la productivité du projet Réduction des coûts, respect des délais Meilleure visibilité pour la management Meilleure gestion des risques 19
22. Agenda Panorama de l’ALM Rationalisation des processus Un exemple d’ALM Questions / Réponses 20
23. Exemple d’ALM - TFS 2010 TFS = Team Foundation Server, l’ALM de Microsoft 3 releases majeures TFS 2005 TFS 2008 TFS 2010 Un peu de « dogfooding » Successeur de Microsoft Visual Source Safe Utilisé depuis 2000 en interne par Redmond sur tous leurs développements Investissements massifs en communication externe depuis 2010 Produit hautement paramétrable 21
25. TFS 2010 – Portail projet Site internet SharePoint regroupant la totalité des éléments du projet Automatiquement pré-configuré en fonction du choix méthodologique Facilement paramétrable par l’utilisateur Propose nativement Gestion documentaire versionnée et collaborative Spécifications Calendrier projet Annuaire Taches actives affectées (notion de Work Item) Bugtracker Rapports d’intégration continue Reporting d’avancement 23
27. Work Item, le cœur du produit Principe général TFS : tout est lié, hiérarchisé, tracé Elément unitaire de travail s’inscrivant dans une structure arborescente Fortement typé Bug Issue Etape partagée Tache Cas de test User Story 25 Hiérarchisé Parent / Enfant Prédécesseur / Successeur Testé par / Test Lié Etape partagée Cas de test manuel
33. Process Template – l’outil de standardisation Le but : standardiser les processus de développement en les déclarant explicitement dans un workflow hébergé par TFS. Choix d’une méthodologie « officielle » SCRUM CMMI MSF … Développement d’une méthodologie adaptée possible à partir d’un standard MSF for Agile Software Development MSF for CMMI ProcessImprovment 31
34. TFS 2010 - Reporting 32 2 niveaux de rapports Standards, déduits du processtemplate. Personnalisés, développés sur mesure à partir d’indicateurs. Consultables depuis IDE (Visual Studio / Eclipse) Outlook Site projet Sharepoint En quasi temps réel, (env. 1h de décalage avec datawarehouse)
36. TFS 2010 - Un point sur les outils N’impose pas un changement radical dans les outils de suivi traditionnels Excel 2007 MS Project Nécessite une réflexion sur les processus internes pour une formalisation ALM multi-technologique intégré sur les principaux environnements de développement Visual Studio : nativement intégré Eclipse : Team Explorer Everywhere Cross Platform : Windows, Mac OS, Linux Interopérable API publique déjà exploitée en interne (CruiseControl) Outils du marché existant (UrbanTurtle, TFS Outlook) 34
37. Agenda Panorama de l’ALM Rationalisation des processus Un exemple d’ALM Questions / Réponses 35
38. Questions ? Retrouvez nous sur le blog technique de Klee http://blog.kleegroup.com/teknics teKnics@kleegroup.com @teKnics_Klee 36