OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante...

44
Nicolas MANGIN [email protected] Frédéric SCHÄFER [email protected] Djamel ZOUAOUI [email protected] Microsoft France / OCTO Technology Industrialisation des développements : Retours d'expérience

Transcript of OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante...

Page 1: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Nicolas MANGIN [email protected]édéric SCHÄFER [email protected] ZOUAOUI [email protected]

Microsoft France / OCTO Technology

Industrialisation des développements : Retours d'expérience

Page 2: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

OCTO Technology

OCTO TechnologyCabinet d’Architectes en Systèmes d’Information depuis 1998

Expérience importante dans l’industrialisation des développements depuis plusieurs années

Aujourd’hui : Retours d’expérience Open Source et Team System

Page 3: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

L’industrialisation des développements ?

Adresse deux volets La définition d’une manière de faireUn outillage adapté

Page 4: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Deux histoires

Nicolas ManginApplication Open Source de Micro FinanceSolution d’industrialisation Open Source

Djamel ZouaouiRefonte de SI pour une administrationSolution basée sur Team System

Page 5: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Mise en œuvre OSS : CruiseControl.NET

Page 6: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

OMFS : Octopus Micro Finance Suite

Application Open Source C#Déployée au Tadjikistan, Afghanistan…

Combattre la pauvretéReconstruction de l’économie locale

Un système d’information intégré et gratuit pour les institutions de micro-finance

Mohamed Yunus

Prix Nobel de la paix 2006

Page 7: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Contexte

Projet ambitieux:OXUS voit le projet comme un mythe.Besoin flou

Page 8: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Historique

• v0.1Beta.• Première livraison

• v0.8• Début de maintenance évolutive

Janvier2007

Août2006

Juin2006

• Début du projet

Avril2006

• v1.0• Mise en production• Site internet

Page 9: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Avril 2006: début du projet

Début du projetMéthode de travail « imposée » par la MOA

Zone d’innovation (méthodologique, technique et fonctionnelle)TDD incrémental

Outils utilisés :

NUnit (Tests unitaires)

SVN (Référentiel de sources)

Page 10: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Juin 2006: Avant la première livraisonProblème :

Compile pas !!! Le code ne compile pas chez le chef de projetIntégrité des sources

Besoin : Contrôler l’intégrité des sources

Solution :CruiseControl.NET (Intégration Continue)

Page 11: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Juin 2006: La première livraison

Au Tadjikistan!!!!

Page 12: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Juin 2006: Après la première livraisonProblème :

Ecart produit / besoin important

Besoins : Confronter les jeux de tests des opérationnelsDocumenter

Contraintes :Optimiser la présence du chef de projetSpécifications « mouvantes »

Solution :FitNesse (Spécifications exécutables)

Page 13: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

FitNesse: Framework for Integrated Tests

Tester en profondeurRaconter des histoires

Page 14: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Une histoire : Le contexte

Page 15: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Une histoire : Le mauvais payeur

Page 16: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Une histoire : La régularisation

Page 17: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Août 2006: des résultatsDes résultats :

Le code compile !!! Plus proche du besoin client.Stabilité Ok

Besoin :Préparer la phase de maintenance évolutive

Solutions :NDepend (Qualité du code)

NCover (Couverture des tests unitaires)

Page 18: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Janvier 2007: mise à disposition

En cours de déploiement

Livraisons fréquentes (hebdomadaire)Augmentation du nombre de fonctionnalités

Mise à disposition pour la communauté : Création d’un site projet (Wiki + outil de suivi)

Page 19: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Au final OMFS, c’est quoi?

2 solutions + 1 add-in VS2003La solution principale :

16700 lignes de code297 classes997 tests unitairesCouverture 79%

FitNesse : 33 histoires (7500 assertions)

www.octopusnetwork.org

Page 20: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Conclusion

Page 21: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Mise en œuvre TFS dans un projet agile

Page 22: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Il était une fois un SI…

Le SI d’une administration avecUne constellation de 17 applications

Plateformes hétérogènesTechnologies vieillissantesCloisonnées par métierDouleurs sur le déploiement

Des besoins métiers qui ne sont pas encore informatisés

Page 23: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Il était une fois un projet…

Un projet de refonteNe pas refaire les applications à l’identique

Ce n’est pas une migration technique3 domaines applicatifs (regroupement métier)

Un socle de communication transverse pour les métiersFaire (faire) différemment : de la cascade à l’agilitéTechnologies : .NET 2.0, ASP.NET

Page 24: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Il était une fois des Hommes…

Tous rompus aux méthodologies de projet en cascadeUne volonté de démarche nouvelle (liée aux douleurs de la cascade)

Page 25: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Problématiques et enjeux

Aborder l’agilitéOutiller (toute) l’équipeAssurer la gestion du changement de la cascade à l’agilité

Avoir un logiciel qui corresponde au besoin

Page 26: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Qu’est ce que l’Agilité ?

Un ensemble de « valeurs » et bonnes pratiques axé sur trois piliers :

Page 27: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Instancier la méthodologie

Un gros travail méthodologique en amont réalisé collégialement :

Une formation personnalisée « Agilité avec Team System »

Définition d’un processus adapté

Page 28: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Outiller l’équipe

Le but n’est pas de contraindre mais de guiderTeam Foundation Server :

Contrôleur de sourcesFramework de testConstruction automatisée…

Mais au-delà des briques « techniques »…

Page 29: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Outiller l’équipe

…Team System sert notre méthodologie !

Page 30: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

TFS et l’incrémental

Les demandes de développement :Avant : Après :

Page 31: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

TFS et l’incrémental

Intégration continue :

Le pipeline de Build

Plusieurs sas pour plusieurs besoins (environnement, rythme de livraison, cible)

IntégrationPré-production

Page 32: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

TFS et la communauté de projet

Gestion de l’informationUn portail collaboratifDes outils dédiés

Standards de développement & binômage

Page 33: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

TFS et le TDD

Tests « développeurs »Les tests avant le codeCouverture pertinente

Tests « client »RéticencesPas d’outils intégrés

Page 34: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Le lien avec la cascade

Piloter le projetVision externe de l’avancement Gestion des risquesFeedback pour les développeurs

Responsabilisation

ReportingRapports « built-in »Rapports personnalisés propres à ma méthodologie

Page 35: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Conclusion : le socle aujourd’hui

Page 36: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Le bilan…

Une première mise en production

Une équipe autonome

Un engouement des utilisateurs finaux

Un logiciel qui couvre les vrais besoins

Page 37: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Conclusion

Page 38: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Grandes différences

Socle incrémentalConstruction itérative du socle en réponse à des douleurs/besoins (assemblage de briques OSS)Choix d’un outil packagé et adaptation de l’outil au démarrage du développement

Guides apportés par l’outilTeam System permet d’accompagner la méthodologie

PilotageLe référentiel commun de TFS permet un reporting « décisionnel »

Page 39: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Le coût de mise en oeuvre

Coût techniquePrix de l’outilAssemblage et paramétrage

Coût humainGestion du changementAppropriation de la méthodologie

Le coût de l’outil n’est pas LE critère de choix

Page 40: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

A L’action !

Quelle histoire vous correspond le plus ?

Faites vous accompagner !

www.octo.com

Page 41: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Pour continuer la discussion…

?Stand Team Systemwww.octo.com

Page 42: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

Messaoud OUBECHOU [email protected]

Frédéric SCHÄ[email protected]

www.octo.com

Cabinet d’Architectes en Systèmes d’InformationCentre de compétences Team System

OCTO Technology

Page 43: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

La référence technique

pour les IT Pros :technet.microsoft.com

La référence technique

pour les développeurs :

msdn.microsoft.com

S’informer - Un portail d’informations, des événements, une newsletter bimensuelle personnalisée

Se former - Des webcasts, des articles techniques, des téléchargements, des forums pour échanger avec vos pairs

Bénéficier de services - Des cursus de formations et de certifications, des offres de support technique

Visual Studio 2005 +

Abonnement MSDN Premium

Abonnement TechNet Plus :

Versions d’éval + 2 incidents support

Page 44: OCTO Technology Cabinet dArchitectes en Systèmes dInformation depuis 1998 Expérience importante dans lindustrialisation des développements depuis plusieurs.

© 2007 Microsoft France

Votre potentiel, notre passion TM