SlideShare une entreprise Scribd logo
1  sur  35
Usine de développement et
       intégration continue

           Djamel Zouaoui
             Antoine Véret
Plan



•     Enjeux et constats
•     Principes de fonctionnement
•     Déclinaisons technologiques
•     Aller plus loin




© Université du Système d’Information          2
Enjeu : Diminuer le turn-over




• Une approche qui permet de :
        – Gérer le risque de perte de connaissance
                • Standardiser, capitaliser et augmenter la pérennité des développements
        – Conserver l’humain au centre de la démarche
                • Motivation
                • Amélioration continue



© Université du Système d’Information                                                      3
Enjeu : Le travail en équipe




          Individualité                      VS           Collectif


© Université du Système d’Information                                  4
Enjeu : La qualité



• Risque opérationnel
        « Des clients de BNP Paribas débités ou crédités par erreur » (février 2009)
        « Bug sur le réseau Orange et France Télécom » (février 2010)
        « Gros bug informatique à la SNCF aujourd’hui » (mai 2010)


• Mesurer la qualité
        – Disposer de métriques




© Université du Système d’Information                                              5
Enjeux : productivité & intégration



• Productivité
        – Recentrer ses activités sur de la valeur ajoutée
        – Réduire les tâches manuelles et répétitives



• Difficultés de l’intégration
        – Faire disparaitre les phases d'intégration
        – Minimiser les risques et efforts de mise en production




© Université du Système d’Information                                6
Plan



•     Enjeux et constats
•     Principes de fonctionnement
•     Déclinaisons technologiques
•     Aller plus loin




© Université du Système d’Information          7
Vue d’ensemble



                                              Intégration
                                               continue


      Usine de                             Tests automatisés
   développement


                                             Mesure de la
                                               qualité



© Université du Système d’Information                          8
L’intégraton continue




« Une démarche visant à intégrer le code à chaque instant plutôt
           qu’une fois par semaine ou par mois »
Fonctionnement de l’UDD


                                               Les développeurs
                                              compilent et testent
              Les développeurs                   sur leur poste             Les développeurs
               codent sur leur                                               déposent le code
                 IDE sur leur                                                 modifié dans le
               poste de travail                                            référentiel de source


                                                                                   L’usine de build
     Les développeurs                                                            récupère l’ensemble
     récupèrent le code                                                               du code



                                                                            L’usine compile, teste
                                                                              et analyse le code


                                              L’usine génère les
                                         packages livrables ainsi que
                                           la documentation et les
                                        stocke dans le référentiel local
© Université du Système d’Information                                                                  10
L’usine de développement : des outils

                                                                 Récupérer
                                                                 les dépendances

                    Gestionnaire                         Build   Compiler
                     de sources
                                            Serveur                                       Référentiel
   Build                                 d’intégration           Exécuter les tests        binaires
   Local                                   continue

                                                                 Vérifier la qualité
                                                                 du code

                                                                 Packager
                                 Notifications

                                                                 Déployer

                                                                                         Plateforme
                                                                 Documenter                de tests

                                                                  Build

                                                                                       Documentation
© Université du Système d’Information                                                   & Indicateurs 11
Juste une question d’outils ?




© Université du Système d’Information                                   12
Instaurer une culture du Build



• Création d’un rituel autour de l’usine
     – « Celui qui fait échouer le build paye les croissants…ou le thé  »




• Responsabilisation des développeurs
     – « Le build est cassé…ma priorité d’ordre 1 est de le réparer »
     – Alignement de l’équipe sur la qualité du code
     – Continous integration Game
13
Ca compile, ça fonctionne ?




© Université du Système d’Information                                 14
Test Driven Development



                                         Ecrire
                                        test en
                                         échec


                                                   Faire
                             Remanier
                              le code
                                                  passer
                                                  le test


© Université du Système d’Information                             15
Test unitaires automatisés

                        Tests unitaires : cycle TDD répété plusieurs
                              fois pour chaque fonctionnalité

                                                     Ecrire
                                                    test en
  Ecrire                                             échec                Faire
 test de                                                                passer le
 recette                                                       Faire
                                                                        tests de
                                         Remanier
en échec                                  le code
                                                              passer     recette
                                                              le test




        Nouveau cycle répété à chaque nouvelle fonctionnalité
 © Université du Système d’Information                                        16
En résumé : En amont toute !


  Alors que les méthodologies traditionnelles positionnent les phases
          d’intégration, de qualité et de tests en bout de chaine


L’intégration continue permet :
    – L’intégration des sources en amont du processus de livraison
    – De contrôler la qualité en amont du processus de la livraison
    – De déployer l’application en amont du processus d’intégration
    – D’accéder à une application fonctionnelle en amont du
       processus de recette




© Université du Système d’Information                                  18
Plan



•     Enjeux et constats
•     Principes de fonctionnement
•     Déclinaisons technologiques
•     Aller plus loin




© Université du Système d’Information          19
Différentes approches

     MS Team Foundation Server                     Open source (.Net et Java)
•     Usine de développement clef en           •   Socle incrémental
      main
                                                    – Construction itérative du socle en
        – Outillage complet packagé
                                                      réponse à des douleurs/besoins
        – Intégration totale à Visual Studio
                                                      (assemblage de briques OSS)
•     Guidage méthodologique
        – Un projet TFS repose sur le choix    •   Des outils open source
          d’une méthodologie                        – Des coûts réduits
        – Le template accompagne dans
          l’adoption de la méthodologie             – Une communauté réactive et à
                                                      l’écoute
•     Pilotage poussé                               – Des outils extensibles
        – Toutes les métriques sont
          historisées dans une base SQL
          Server
        – Elles sont toutes accessibles pour
          la création de rapports
          personnalisés avec Reporting
          Services
© Université du Système d’Information                                               20
Microsoft Team Foundation Server (TFS)

                                                                           TFS via Work Item         TFS via Sharepoint
                                                TFS via
Visual Studio
                                                MS Team test

                              Source code
                              + tests                      Tests de dév.     Référentiel de      Référentiel de
                                                           automatisés       tâches / bug        documentation

    Développeur

                                                     TFS via                                   TFS via
                                                     Team Build                                Code Analysis
                        TFS



                                                                                Exécution des
                                Gestionnaire               Gestionnaire
                                                                                contrôles
                                des sources                de build
                                                                                qualité
Visual Studio



                               Source code              TFS                            TFS
                               + tests
    Développeur


                                                           Référentiel                        Tests de
                                   Dépendances             des artefacts                      recette              Livraison de
                                                                                              automatisés          l’incrément
        © Université du Système d’Information                                                                      pour l’intégration
                                                                                                                               21
Déclinaison .Net avec briques OpenSource

                                                                            Jira                 Confluence
                                                Nunit                       Ou Excel             Ou Wiki
Visual Studio
                                                NCover

                              Source code
                              + tests                       Tests de dév.     Référentiel de      Référentiel de
                                                            automatisés       tâches / bug        documentation

    Développeur

                                                    Cruise                                     FXCop
                                                    Control.net                                NDepend
                Subversion
                (SVN)


                                                                                Exécution des
                                Gestionnaire                Gestionnaire
                                                                                contrôles
                                des sources                 de build
                                                                                qualité
Visual Studio



                               Source code          Cruise                             Fitnesse
                                                    Control.net                        ou GreenPepper
                               + tests
    Développeur


                                                            Référentiel                        Tests de
                                   Dépendances              des artefacts                      recette             Livraison de
                                                                                               automatisés         l’incrément
        © Université du Système d’Information                                                                      pour l’intégration
                                                                                                                               22
Déclinaison Java
                                                                    (OpenSource et commercial)

                                                                           Jira                 Confluence
                                               Junit                       Ou Excel             Ou Wiki
Eclipse
et Maven                                       TestNG

                             Source code
                             + tests                       Tests de dév.     Référentiel de      Référentiel de
                                                           automatisés       tâches / bug        documentation

    Développeur
                                                   Hudson                                     Sonar
                                                   et Maven                                   XDepend
               Subversion
               (SVN)


                                                                               Exécution des
                               Gestionnaire                Gestionnaire
                                                                               contrôles
                               des sources                 de build
Eclipse                                                                        qualité
et Maven



                              Source code                                             Fitnesse
                                                   Nexus                              ou GreenPepper
                              + tests
    Développeur


                                                           Référentiel                        Tests de
                                  Dépendances              des artefacts                      recette             Livraison de
                                                                                              automatisés         l’incrément
       © Université du Système d’Information                                                                      pour l’intégration
                                                                                                                              23
La mesure et le reporting




© Université du Système d’Information                               24
Une UDD contextualisée


•     On observe de plus en plus de synergies et de support multi-
      technologies des outils de build et de reporting

        Ruby, Flex, JavaScript, PLSQL ...
                                   … mais aussi iPhone, iPad, Android, etc

•     Principaux outils d’intégration continue
        – Team Fundation Server, Hudson, TeamCity, Bamboo, CruiseControl, Pulse, …

•     La démarche se décline selon les contextes
        – Méthodologie projet
        – Technologies utilisées
        – Organisation (ex : offshore)

•     L’important étant de faire de l’intégration continue !


© Université du Système d’Information                                            25
Plan



•     Enjeux et constats
•     Principes de fonctionnement
•     Déclinaisons technologiques
•     Aller plus loin




© Université du Système d’Information          26
Etre opérationnel le premier jour



• Installation en un click / master d’installation
        – Installation scriptée
        – Arborescence et configuration identique sur tous les postes de
          travail de l’équipe


• Solutions de packaging des IDE
        1. Choix d’une distribution Eclipse
                • SpringIDE chez SpringSource
                • Maven studio pour Eclipse chez Sonatype
                • …
        2. Provisionning des plugins Eclipse avec Nexus


© Université du Système d’Information                                  27
Minimiser l’instabilité du build


• Conserver un référentiel de sources « propre »

• Empêcher un développeur de bloquer les autres

• Favoriser l’utilisation décomplexée du référentiel de sources

                                                             Gestionnaire
                                                              de sources




© Université du Système d’Information                                       28
Une solution : le build incassable




                                                                       Récupérer
                                                                       les dépendances

                                        Gestionnaire                   Compiler
                                         de sources       Serveur
                                          protégé      d’intégration
                                                         Continue
                                                                       Exécuter les tests

                                                                         Build
Développeurs




© Université du Système d’Information                                                       29
Evolutions incrémentales du schéma de
                                   base de données


• Principes
        – Toutes les évolutions du schéma de base de données sont
          versionnées dans le référentiel de source
        – Automatisation de la création et des évolutions de version du
          schéma
        – Mise à jour incrémentale automatique


• Outils
        – Team system Database
        –



© Université du Système d’Information                                     31
Le build profilé


                                                                                         10 min

                                                        Build rapide : tests unitaires

                                                                                          nuits

                                                        Build documentation

                                                                                           4h
                      Gestionnaire                      Build tests intégration
                       de sources
                                           Serveur
   Build                                d’intégration                                     nuits
   Local                                  continue
                                                        Build qualimétrie
                                                                                           A la
                                                                                         demande
                                                        Build complet

                                                                                           A la
                                                                                         demande
             ...                                        Build packaging ...
© Université du Système d’Information                                                        32
Le build distribué

                                                                                                         

                                                                       Build documentation
                                                                                                        240



                                                         Agent         Build tests intégration

                                                                                                         10


                 Gestionnaire                                          Build rapide : tests unitaires
                  de sources
                                            Serveur
Build                                    d’intégration                                                   
Local                                      Continue
                                         (maître)                      Build qualimétrie
                                                                                                         

                                                                       Build complet
                                                                                                         
                                                         Agent
 © Université du Système d’Information
                                                                       Build packaging                  33
Dans les nuages



• Souplesse d’une infrastructure hébergée et extensible

• Solutions complètes

• Externaliser uniquement le build
        – Machine virtuelle prête à l’emploi
        – Plugin Hudson EC2


• Ecosystème Ruby très outillé


© Université du Système d’Information                        34
Big visible chart & Extreme feeback device


« Ou comment aligner l’équipe à l’aide d’indicateur visuels partagés »

• Radiator (Sonar, Hudson, …)
• AmbientOrb
• Nabastaz




© Université du Système d’Information                               35
Merci de votre attention




© Université du Système d’Information                              36
Copyright


•     Toutes les images sont la propriété exclusive de leurs auteurs respectifs.
•     Nabaztag : © TPDK
                • http://www.customxp.net/PngFactory/icone-png-5235-Nabaztag-02-TPDK.html
•     AmbientOrb
                • http://www.thinkgeek.com/gadgets/electronic/5da2/
•     Logos : aux compagnies respectives
•     Photos d’écrans Sonar, Eclipse, … aux auteurs des produits respectifs.
•     Autres images et contenus : Octo Technology.




© OCTO Technology - Université du Système d’Information                                     37

Contenu connexe

Tendances

Gérez votre laboratoire de tests avec Visual Studio 2010 Lab Management
Gérez votre laboratoire de tests avec Visual Studio 2010 Lab ManagementGérez votre laboratoire de tests avec Visual Studio 2010 Lab Management
Gérez votre laboratoire de tests avec Visual Studio 2010 Lab ManagementMicrosoft
 
Stef it - unite 2012
Stef it - unite 2012Stef it - unite 2012
Stef it - unite 2012Atlassian
 
TechDays 2012 - Windows Azure - ALM
TechDays 2012 - Windows Azure - ALMTechDays 2012 - Windows Azure - ALM
TechDays 2012 - Windows Azure - ALMJason De Oliveira
 
At strasbourg 2012 - Les déconnectés de la matrice
At strasbourg 2012 - Les déconnectés de la matriceAt strasbourg 2012 - Les déconnectés de la matrice
At strasbourg 2012 - Les déconnectés de la matriceMichel Lejeune
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes PratiquesEmmanuel Hugonnet
 
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneGrégory Ott
 
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMicrosoft Technet France
 
Solutions pour l’optimisation de l’infrastructure des établissements scolaires
Solutions pour l’optimisation de l’infrastructure des établissements scolairesSolutions pour l’optimisation de l’infrastructure des établissements scolaires
Solutions pour l’optimisation de l’infrastructure des établissements scolairesMicrosoft Technet France
 
Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012Didier Durand
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationStéphane Traumat
 
Actionner ses processus qualité avec Visual Studio ALM
Actionner ses processus qualité avec Visual Studio ALMActionner ses processus qualité avec Visual Studio ALM
Actionner ses processus qualité avec Visual Studio ALMCédric Leblond
 
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...Microsoft
 
MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...
MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...
MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...Raynald M
 
Soft fluent@md day2011
Soft fluent@md day2011Soft fluent@md day2011
Soft fluent@md day2011MDDAY11
 
Devops@Kelkoo - Agile Grenoble 2012
Devops@Kelkoo - Agile Grenoble 2012Devops@Kelkoo - Agile Grenoble 2012
Devops@Kelkoo - Agile Grenoble 2012Nicolas Capponi
 

Tendances (18)

Gérez votre laboratoire de tests avec Visual Studio 2010 Lab Management
Gérez votre laboratoire de tests avec Visual Studio 2010 Lab ManagementGérez votre laboratoire de tests avec Visual Studio 2010 Lab Management
Gérez votre laboratoire de tests avec Visual Studio 2010 Lab Management
 
Atos White Paper
Atos White PaperAtos White Paper
Atos White Paper
 
Génie Logiciel : les tests
Génie Logiciel : les testsGénie Logiciel : les tests
Génie Logiciel : les tests
 
Stef it - unite 2012
Stef it - unite 2012Stef it - unite 2012
Stef it - unite 2012
 
TechDays 2012 - Windows Azure - ALM
TechDays 2012 - Windows Azure - ALMTechDays 2012 - Windows Azure - ALM
TechDays 2012 - Windows Azure - ALM
 
At strasbourg 2012 - Les déconnectés de la matrice
At strasbourg 2012 - Les déconnectés de la matriceAt strasbourg 2012 - Les déconnectés de la matrice
At strasbourg 2012 - Les déconnectés de la matrice
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
 
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
 
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
 
LMO08a.ppt
LMO08a.pptLMO08a.ppt
LMO08a.ppt
 
Solutions pour l’optimisation de l’infrastructure des établissements scolaires
Solutions pour l’optimisation de l’infrastructure des établissements scolairesSolutions pour l’optimisation de l’infrastructure des établissements scolaires
Solutions pour l’optimisation de l’infrastructure des établissements scolaires
 
Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub Foundation
 
Actionner ses processus qualité avec Visual Studio ALM
Actionner ses processus qualité avec Visual Studio ALMActionner ses processus qualité avec Visual Studio ALM
Actionner ses processus qualité avec Visual Studio ALM
 
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...
1h chrono pour créer votre infrastructure virtuelle avec l’interface Visual C...
 
MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...
MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...
MS TechDays 2012 -Mise en place d'une usine logicielle avec TFS et Test Manag...
 
Soft fluent@md day2011
Soft fluent@md day2011Soft fluent@md day2011
Soft fluent@md day2011
 
Devops@Kelkoo - Agile Grenoble 2012
Devops@Kelkoo - Agile Grenoble 2012Devops@Kelkoo - Agile Grenoble 2012
Devops@Kelkoo - Agile Grenoble 2012
 

En vedette

Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Djamel Zouaoui
 
Intégration continue transco
Intégration continue transcoIntégration continue transco
Intégration continue transcolaurent_opnworks
 
BBL - TDD pour les DevOps - Puppet
BBL - TDD pour les DevOps - PuppetBBL - TDD pour les DevOps - Puppet
BBL - TDD pour les DevOps - PuppetOlivier BAZOUD
 
JCertif 2012 : Integration continue avec Jenkins
JCertif 2012 : Integration continue avec JenkinsJCertif 2012 : Integration continue avec Jenkins
JCertif 2012 : Integration continue avec JenkinsRossi Oddet
 
Test unitaire
Test unitaireTest unitaire
Test unitaireIsenDev
 
DevOps : mission [im]possible ?
DevOps : mission [im]possible ?DevOps : mission [im]possible ?
DevOps : mission [im]possible ?rfelden
 
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntuDéveloppement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntuAhmed Archive
 
Faire la conception en équipe sans architecte, non mais allô quoi ?
Faire la conception en équipe sans architecte, non mais allô quoi ?Faire la conception en équipe sans architecte, non mais allô quoi ?
Faire la conception en équipe sans architecte, non mais allô quoi ?Ly-Jia Goldstein
 
Les Aventures d'Alice - la Révolte des Tests
Les Aventures d'Alice - la Révolte des TestsLes Aventures d'Alice - la Révolte des Tests
Les Aventures d'Alice - la Révolte des TestsLy-Jia Goldstein
 
100% couverture de code par les tests
100% couverture de code par les tests100% couverture de code par les tests
100% couverture de code par les testsVincent Tencé
 
Continuous Deployment aplikacji w Django
Continuous Deployment aplikacji w DjangoContinuous Deployment aplikacji w Django
Continuous Deployment aplikacji w DjangoWojciech Lichota
 
DevOps Day - Continuous Delivery
DevOps Day - Continuous DeliveryDevOps Day - Continuous Delivery
DevOps Day - Continuous DeliveryCellenza
 
Biztalk summit - IOT
Biztalk summit - IOTBiztalk summit - IOT
Biztalk summit - IOTCellenza
 
Guy Barrette: Nouveau portail Azure et la console Kudu
Guy Barrette: Nouveau portail Azure et la console KuduGuy Barrette: Nouveau portail Azure et la console Kudu
Guy Barrette: Nouveau portail Azure et la console KuduMSDEVMTL
 
Fmr flash economy_2012-278_13-04-2012_fr
Fmr flash economy_2012-278_13-04-2012_frFmr flash economy_2012-278_13-04-2012_fr
Fmr flash economy_2012-278_13-04-2012_frZeyneb Sehli
 
Les industries manufacturières en Tunisie
Les industries manufacturières en TunisieLes industries manufacturières en Tunisie
Les industries manufacturières en TunisieAMZ Software
 
Ppdm 5 - Trafic d'animaux
Ppdm 5 - Trafic d'animauxPpdm 5 - Trafic d'animaux
Ppdm 5 - Trafic d'animauxMat De Faya
 
USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !Djamel Zouaoui
 

En vedette (20)

Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
 
Intégration continue transco
Intégration continue transcoIntégration continue transco
Intégration continue transco
 
BBL - TDD pour les DevOps - Puppet
BBL - TDD pour les DevOps - PuppetBBL - TDD pour les DevOps - Puppet
BBL - TDD pour les DevOps - Puppet
 
JCertif 2012 : Integration continue avec Jenkins
JCertif 2012 : Integration continue avec JenkinsJCertif 2012 : Integration continue avec Jenkins
JCertif 2012 : Integration continue avec Jenkins
 
Test unitaire
Test unitaireTest unitaire
Test unitaire
 
DevOps : mission [im]possible ?
DevOps : mission [im]possible ?DevOps : mission [im]possible ?
DevOps : mission [im]possible ?
 
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntuDéveloppement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu
 
Faire la conception en équipe sans architecte, non mais allô quoi ?
Faire la conception en équipe sans architecte, non mais allô quoi ?Faire la conception en équipe sans architecte, non mais allô quoi ?
Faire la conception en équipe sans architecte, non mais allô quoi ?
 
Les Aventures d'Alice - la Révolte des Tests
Les Aventures d'Alice - la Révolte des TestsLes Aventures d'Alice - la Révolte des Tests
Les Aventures d'Alice - la Révolte des Tests
 
100% couverture de code par les tests
100% couverture de code par les tests100% couverture de code par les tests
100% couverture de code par les tests
 
Continuous Deployment aplikacji w Django
Continuous Deployment aplikacji w DjangoContinuous Deployment aplikacji w Django
Continuous Deployment aplikacji w Django
 
DevOps Day - Continuous Delivery
DevOps Day - Continuous DeliveryDevOps Day - Continuous Delivery
DevOps Day - Continuous Delivery
 
Biztalk summit - IOT
Biztalk summit - IOTBiztalk summit - IOT
Biztalk summit - IOT
 
Guy Barrette: Nouveau portail Azure et la console Kudu
Guy Barrette: Nouveau portail Azure et la console KuduGuy Barrette: Nouveau portail Azure et la console Kudu
Guy Barrette: Nouveau portail Azure et la console Kudu
 
Fmr flash economy_2012-278_13-04-2012_fr
Fmr flash economy_2012-278_13-04-2012_frFmr flash economy_2012-278_13-04-2012_fr
Fmr flash economy_2012-278_13-04-2012_fr
 
A fond la pêche avec un bon p'tit déj'
A fond la pêche avec un bon p'tit déj'A fond la pêche avec un bon p'tit déj'
A fond la pêche avec un bon p'tit déj'
 
Les industries manufacturières en Tunisie
Les industries manufacturières en TunisieLes industries manufacturières en Tunisie
Les industries manufacturières en Tunisie
 
Programme de 4 jours
Programme de 4 joursProgramme de 4 jours
Programme de 4 jours
 
Ppdm 5 - Trafic d'animaux
Ppdm 5 - Trafic d'animauxPpdm 5 - Trafic d'animaux
Ppdm 5 - Trafic d'animaux
 
USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !
 

Similaire à USI Casablanca 2010 - Industrialisation et intégration continue

Principes de L'intégration Continue
Principes de L'intégration ContinuePrincipes de L'intégration Continue
Principes de L'intégration ContinueXavier Warzee
 
Keynote DevOps - Microsoft DevOps Day 2014 in Paris
Keynote DevOps - Microsoft DevOps Day 2014 in ParisKeynote DevOps - Microsoft DevOps Day 2014 in Paris
Keynote DevOps - Microsoft DevOps Day 2014 in ParisJason De Oliveira
 
Concept de l’Intégration Continue
Concept de l’Intégration ContinueConcept de l’Intégration Continue
Concept de l’Intégration ContinueFrédéric Sagez
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez EngieLeClubQualiteLogicielle
 
Presentation pfe 2012
Presentation pfe 2012Presentation pfe 2012
Presentation pfe 2012Sellami Ahmed
 
Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Jean-Marc Fontaine
 
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...Microsoft Technet France
 
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...Ojdoc Quen
 
Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Microsoft
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBMLeClubQualiteLogicielle
 
Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...
Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...
Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...Publicis Sapient Engineering
 
Qualité & Industrialisation des développements mobiles sur iOS & Android
Qualité & Industrialisation des développements mobiles sur iOS & AndroidQualité & Industrialisation des développements mobiles sur iOS & Android
Qualité & Industrialisation des développements mobiles sur iOS & AndroidThibaud CAVIN
 
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...PimpMySharePoint
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logicielsSylvain Leroy
 
Industrialisation des développements Java
Industrialisation des développements JavaIndustrialisation des développements Java
Industrialisation des développements JavaChristian Blavier
 
TDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoringTDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoringneuros
 

Similaire à USI Casablanca 2010 - Industrialisation et intégration continue (20)

Hudson Aquarium Paris
Hudson Aquarium ParisHudson Aquarium Paris
Hudson Aquarium Paris
 
Principes de L'intégration Continue
Principes de L'intégration ContinuePrincipes de L'intégration Continue
Principes de L'intégration Continue
 
Keynote DevOps - Microsoft DevOps Day 2014 in Paris
Keynote DevOps - Microsoft DevOps Day 2014 in ParisKeynote DevOps - Microsoft DevOps Day 2014 in Paris
Keynote DevOps - Microsoft DevOps Day 2014 in Paris
 
Normandy JUG integration Continue
Normandy JUG integration ContinueNormandy JUG integration Continue
Normandy JUG integration Continue
 
Dev opsday case study
Dev opsday   case studyDev opsday   case study
Dev opsday case study
 
Concept de l’Intégration Continue
Concept de l’Intégration ContinueConcept de l’Intégration Continue
Concept de l’Intégration Continue
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
 
Presentation pfe 2012
Presentation pfe 2012Presentation pfe 2012
Presentation pfe 2012
 
Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011
 
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
System Center 2012 | SCO : Retours d’expériences projets et déploiements Syst...
 
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
 
Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM
 
Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...
Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...
Open XKE - De l'intégration continue au déploiement continu sur iOS et Androi...
 
Qualité & Industrialisation des développements mobiles sur iOS & Android
Qualité & Industrialisation des développements mobiles sur iOS & AndroidQualité & Industrialisation des développements mobiles sur iOS & Android
Qualité & Industrialisation des développements mobiles sur iOS & Android
 
devops-ruche.pptx.pdf
devops-ruche.pptx.pdfdevops-ruche.pptx.pdf
devops-ruche.pptx.pdf
 
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logiciels
 
Industrialisation des développements Java
Industrialisation des développements JavaIndustrialisation des développements Java
Industrialisation des développements Java
 
TDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoringTDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoring
 

Plus de Djamel Zouaoui

Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Djamel Zouaoui
 
Datajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDatajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDjamel Zouaoui
 
Usi 2013 - NoSql les defis à relever
Usi 2013 -  NoSql les defis à releverUsi 2013 -  NoSql les defis à relever
Usi 2013 - NoSql les defis à releverDjamel Zouaoui
 
ParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheDjamel Zouaoui
 
USI 2009 - Du RIA pour SI
USI 2009 - Du RIA pour SIUSI 2009 - Du RIA pour SI
USI 2009 - Du RIA pour SIDjamel Zouaoui
 
Retour d'expérience TechLead
Retour d'expérience TechLeadRetour d'expérience TechLead
Retour d'expérience TechLeadDjamel Zouaoui
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésDjamel Zouaoui
 

Plus de Djamel Zouaoui (7)

Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming
 
Datajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDatajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandation
 
Usi 2013 - NoSql les defis à relever
Usi 2013 -  NoSql les defis à releverUsi 2013 -  NoSql les defis à relever
Usi 2013 - NoSql les defis à relever
 
ParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le graphe
 
USI 2009 - Du RIA pour SI
USI 2009 - Du RIA pour SIUSI 2009 - Du RIA pour SI
USI 2009 - Du RIA pour SI
 
Retour d'expérience TechLead
Retour d'expérience TechLeadRetour d'expérience TechLead
Retour d'expérience TechLead
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
 

USI Casablanca 2010 - Industrialisation et intégration continue

  • 1. Usine de développement et intégration continue Djamel Zouaoui Antoine Véret
  • 2. Plan • Enjeux et constats • Principes de fonctionnement • Déclinaisons technologiques • Aller plus loin © Université du Système d’Information 2
  • 3. Enjeu : Diminuer le turn-over • Une approche qui permet de : – Gérer le risque de perte de connaissance • Standardiser, capitaliser et augmenter la pérennité des développements – Conserver l’humain au centre de la démarche • Motivation • Amélioration continue © Université du Système d’Information 3
  • 4. Enjeu : Le travail en équipe Individualité VS Collectif © Université du Système d’Information 4
  • 5. Enjeu : La qualité • Risque opérationnel « Des clients de BNP Paribas débités ou crédités par erreur » (février 2009) « Bug sur le réseau Orange et France Télécom » (février 2010) « Gros bug informatique à la SNCF aujourd’hui » (mai 2010) • Mesurer la qualité – Disposer de métriques © Université du Système d’Information 5
  • 6. Enjeux : productivité & intégration • Productivité – Recentrer ses activités sur de la valeur ajoutée – Réduire les tâches manuelles et répétitives • Difficultés de l’intégration – Faire disparaitre les phases d'intégration – Minimiser les risques et efforts de mise en production © Université du Système d’Information 6
  • 7. Plan • Enjeux et constats • Principes de fonctionnement • Déclinaisons technologiques • Aller plus loin © Université du Système d’Information 7
  • 8. Vue d’ensemble Intégration continue Usine de Tests automatisés développement Mesure de la qualité © Université du Système d’Information 8
  • 9. L’intégraton continue « Une démarche visant à intégrer le code à chaque instant plutôt qu’une fois par semaine ou par mois »
  • 10. Fonctionnement de l’UDD Les développeurs compilent et testent Les développeurs sur leur poste Les développeurs codent sur leur déposent le code IDE sur leur modifié dans le poste de travail référentiel de source L’usine de build Les développeurs récupère l’ensemble récupèrent le code du code L’usine compile, teste et analyse le code L’usine génère les packages livrables ainsi que la documentation et les stocke dans le référentiel local © Université du Système d’Information 10
  • 11. L’usine de développement : des outils Récupérer les dépendances Gestionnaire Build Compiler de sources Serveur Référentiel Build d’intégration Exécuter les tests binaires Local continue Vérifier la qualité du code Packager Notifications Déployer Plateforme Documenter de tests Build Documentation © Université du Système d’Information & Indicateurs 11
  • 12. Juste une question d’outils ? © Université du Système d’Information 12
  • 13. Instaurer une culture du Build • Création d’un rituel autour de l’usine – « Celui qui fait échouer le build paye les croissants…ou le thé  » • Responsabilisation des développeurs – « Le build est cassé…ma priorité d’ordre 1 est de le réparer » – Alignement de l’équipe sur la qualité du code – Continous integration Game 13
  • 14. Ca compile, ça fonctionne ? © Université du Système d’Information 14
  • 15. Test Driven Development Ecrire test en échec Faire Remanier le code passer le test © Université du Système d’Information 15
  • 16. Test unitaires automatisés Tests unitaires : cycle TDD répété plusieurs fois pour chaque fonctionnalité Ecrire test en Ecrire échec Faire test de passer le recette Faire tests de Remanier en échec le code passer recette le test Nouveau cycle répété à chaque nouvelle fonctionnalité © Université du Système d’Information 16
  • 17. En résumé : En amont toute ! Alors que les méthodologies traditionnelles positionnent les phases d’intégration, de qualité et de tests en bout de chaine L’intégration continue permet : – L’intégration des sources en amont du processus de livraison – De contrôler la qualité en amont du processus de la livraison – De déployer l’application en amont du processus d’intégration – D’accéder à une application fonctionnelle en amont du processus de recette © Université du Système d’Information 18
  • 18. Plan • Enjeux et constats • Principes de fonctionnement • Déclinaisons technologiques • Aller plus loin © Université du Système d’Information 19
  • 19. Différentes approches MS Team Foundation Server Open source (.Net et Java) • Usine de développement clef en • Socle incrémental main – Construction itérative du socle en – Outillage complet packagé réponse à des douleurs/besoins – Intégration totale à Visual Studio (assemblage de briques OSS) • Guidage méthodologique – Un projet TFS repose sur le choix • Des outils open source d’une méthodologie – Des coûts réduits – Le template accompagne dans l’adoption de la méthodologie – Une communauté réactive et à l’écoute • Pilotage poussé – Des outils extensibles – Toutes les métriques sont historisées dans une base SQL Server – Elles sont toutes accessibles pour la création de rapports personnalisés avec Reporting Services © Université du Système d’Information 20
  • 20. Microsoft Team Foundation Server (TFS) TFS via Work Item TFS via Sharepoint TFS via Visual Studio MS Team test Source code + tests Tests de dév. Référentiel de Référentiel de automatisés tâches / bug documentation Développeur TFS via TFS via Team Build Code Analysis TFS Exécution des Gestionnaire Gestionnaire contrôles des sources de build qualité Visual Studio Source code TFS TFS + tests Développeur Référentiel Tests de Dépendances des artefacts recette Livraison de automatisés l’incrément © Université du Système d’Information pour l’intégration 21
  • 21. Déclinaison .Net avec briques OpenSource Jira Confluence Nunit Ou Excel Ou Wiki Visual Studio NCover Source code + tests Tests de dév. Référentiel de Référentiel de automatisés tâches / bug documentation Développeur Cruise FXCop Control.net NDepend Subversion (SVN) Exécution des Gestionnaire Gestionnaire contrôles des sources de build qualité Visual Studio Source code Cruise Fitnesse Control.net ou GreenPepper + tests Développeur Référentiel Tests de Dépendances des artefacts recette Livraison de automatisés l’incrément © Université du Système d’Information pour l’intégration 22
  • 22. Déclinaison Java (OpenSource et commercial) Jira Confluence Junit Ou Excel Ou Wiki Eclipse et Maven TestNG Source code + tests Tests de dév. Référentiel de Référentiel de automatisés tâches / bug documentation Développeur Hudson Sonar et Maven XDepend Subversion (SVN) Exécution des Gestionnaire Gestionnaire contrôles des sources de build Eclipse qualité et Maven Source code Fitnesse Nexus ou GreenPepper + tests Développeur Référentiel Tests de Dépendances des artefacts recette Livraison de automatisés l’incrément © Université du Système d’Information pour l’intégration 23
  • 23. La mesure et le reporting © Université du Système d’Information 24
  • 24. Une UDD contextualisée • On observe de plus en plus de synergies et de support multi- technologies des outils de build et de reporting Ruby, Flex, JavaScript, PLSQL ... … mais aussi iPhone, iPad, Android, etc • Principaux outils d’intégration continue – Team Fundation Server, Hudson, TeamCity, Bamboo, CruiseControl, Pulse, … • La démarche se décline selon les contextes – Méthodologie projet – Technologies utilisées – Organisation (ex : offshore) • L’important étant de faire de l’intégration continue ! © Université du Système d’Information 25
  • 25. Plan • Enjeux et constats • Principes de fonctionnement • Déclinaisons technologiques • Aller plus loin © Université du Système d’Information 26
  • 26. Etre opérationnel le premier jour • Installation en un click / master d’installation – Installation scriptée – Arborescence et configuration identique sur tous les postes de travail de l’équipe • Solutions de packaging des IDE 1. Choix d’une distribution Eclipse • SpringIDE chez SpringSource • Maven studio pour Eclipse chez Sonatype • … 2. Provisionning des plugins Eclipse avec Nexus © Université du Système d’Information 27
  • 27. Minimiser l’instabilité du build • Conserver un référentiel de sources « propre » • Empêcher un développeur de bloquer les autres • Favoriser l’utilisation décomplexée du référentiel de sources Gestionnaire de sources © Université du Système d’Information 28
  • 28. Une solution : le build incassable Récupérer les dépendances Gestionnaire Compiler de sources Serveur protégé d’intégration Continue Exécuter les tests Build Développeurs © Université du Système d’Information 29
  • 29. Evolutions incrémentales du schéma de base de données • Principes – Toutes les évolutions du schéma de base de données sont versionnées dans le référentiel de source – Automatisation de la création et des évolutions de version du schéma – Mise à jour incrémentale automatique • Outils – Team system Database – © Université du Système d’Information 31
  • 30. Le build profilé 10 min Build rapide : tests unitaires nuits Build documentation 4h Gestionnaire Build tests intégration de sources Serveur Build d’intégration nuits Local continue Build qualimétrie A la demande Build complet A la demande ... Build packaging ... © Université du Système d’Information 32
  • 31. Le build distribué  Build documentation 240 Agent Build tests intégration 10 Gestionnaire Build rapide : tests unitaires de sources Serveur Build d’intégration  Local Continue (maître) Build qualimétrie  Build complet  Agent © Université du Système d’Information Build packaging 33
  • 32. Dans les nuages • Souplesse d’une infrastructure hébergée et extensible • Solutions complètes • Externaliser uniquement le build – Machine virtuelle prête à l’emploi – Plugin Hudson EC2 • Ecosystème Ruby très outillé © Université du Système d’Information 34
  • 33. Big visible chart & Extreme feeback device « Ou comment aligner l’équipe à l’aide d’indicateur visuels partagés » • Radiator (Sonar, Hudson, …) • AmbientOrb • Nabastaz © Université du Système d’Information 35
  • 34. Merci de votre attention © Université du Système d’Information 36
  • 35. Copyright • Toutes les images sont la propriété exclusive de leurs auteurs respectifs. • Nabaztag : © TPDK • http://www.customxp.net/PngFactory/icone-png-5235-Nabaztag-02-TPDK.html • AmbientOrb • http://www.thinkgeek.com/gadgets/electronic/5da2/ • Logos : aux compagnies respectives • Photos d’écrans Sonar, Eclipse, … aux auteurs des produits respectifs. • Autres images et contenus : Octo Technology. © OCTO Technology - Université du Système d’Information 37

Notes de l'éditeur

  1. Objectifs :Présenter les fondamentaux de l’UDD et de l’intégration continueFournir un état de l’art des déclinaisons éprouvées / les plus répandues sur .Net et JavaPrésenter les nouvelles tendances (défis, problématiques, solutions)
  2. Contexte de dév interne avec ou sans régie, et également valable pour l’intégration / MEP (profils chefs de projets, resp. production)
  3. Durée du cycle :Le plus court possible :Plus le cycle est long, plus le développeur s’expose à des problèmesMais on constate une auto-régulation des développeursCar des métriques et des retours concrets et immédiats
  4. Ticket d’entrée direct : toutes les douleurs au début du projet
  5. Indice de maintenabilité globalViolation des reglès de programmation propres au langage + architectureMétiques sur les tests et la couvertureLe must : historiser les métriques pour visualiser les tendances
  6. Enjeux : faciliter l’intégration de nouveaux développeursChanger de projet très rapidement
  7. Git / mercurialNécessite une bonne maturité de l’équipe et d’avoirdéfinit le workflow au préalableApporte plus de souplesse mais peut se révéler dangeureuxSVN et TFS = centralisé
  8. Approches controversées sur les aspects performance et couts