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

Preview:

Citation preview

Nicolas MANGIN nmangin@octo.comFrédéric SCHÄFER fschafer@octo.comDjamel ZOUAOUI dzouaoui@octo.com

Microsoft France / OCTO Technology

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

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

L’industrialisation des développements ?

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

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

Mise en œuvre OSS : CruiseControl.NET

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

Contexte

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

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

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)

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)

Juin 2006: La première livraison

Au Tadjikistan!!!!

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)

FitNesse: Framework for Integrated Tests

Tester en profondeurRaconter des histoires

Une histoire : Le contexte

Une histoire : Le mauvais payeur

Une histoire : La régularisation

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)

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)

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

Conclusion

Mise en œuvre TFS dans un projet agile

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

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

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)

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

Qu’est ce que l’Agilité ?

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

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é

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 »…

Outiller l’équipe

…Team System sert notre méthodologie !

TFS et l’incrémental

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

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

TFS et la communauté de projet

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

Standards de développement & binômage

TFS et le TDD

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

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

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

Conclusion : le socle aujourd’hui

Le bilan…

Une première mise en production

Une équipe autonome

Un engouement des utilisateurs finaux

Un logiciel qui couvre les vrais besoins

Conclusion

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 »

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

A L’action !

Quelle histoire vous correspond le plus ?

Faites vous accompagner !

www.octo.com

Pour continuer la discussion…

?Stand Team Systemwww.octo.com

Messaoud OUBECHOU moubechou@octo.com

Frédéric SCHÄFERfschafer@octo.com

www.octo.com

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

OCTO Technology

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

© 2007 Microsoft France

Votre potentiel, notre passion TM

Recommended