SlideShare une entreprise Scribd logo
Industrialisation de PHP



Be Zend 2010
Qui suis-je ?

    Jean-Marc Fontaine
    Consultant pour Alter Way Consulting
    Responsable du centre de compétences PHP pour Alter
     Way Solutions
    Formateur pour Alter Way Formation
    Professeur vacataire à l'INSSET de Saint Quentin
    Membre Actif de l'AFUP
    Co-auteur du livre blanc « Industrialisation PHP »




25 mars 2010    ALTER WAY - Industrialisation de PHP       2
Livre blanc « Industrialisation PHP »

    Co-écrit avec Damien Seguy
    Panorama des outils et
     méthodes d'industrialisation
     des développements PHP
    Publié en octobre 2009
    Plus de 1 800 téléchargements
    Livre en préparation




Téléchargement : http://www.alterway.fr/publications/livre-blanc-industrialisation-php
Blog           : http://www.industrialisation-php.com/
25 mars 2010           ALTER WAY - Industrialisation de PHP                              3
Plan

    Qu'est-ce que l'industrialisation ?
    Mettre en place un environnement de travail
    Former l'équipe
    Eviter de réinventer la roue
    S'assurer de la qualité du code
    Automatiser ce qui peut l'être




25 mars 2010    ALTER WAY - Industrialisation de PHP   4
Qu'est-ce que l'industrialisation ?

    PHP a dépassé le stade de l'expérimentation
    Trois phases pour la reconnaissance d'une technologie
     en entreprise :
          la phase de tests
          la phase de missions critiques
          la phase de missions stratégiques




25 mars 2010          ALTER WAY - Industrialisation de PHP   5
Qu'est-ce que l'industrialisation ?

    Une définition : mise en œuvre de pratiques et d'outils
     visant à rendre les logiciels produits plus robustes, tout
     en restant dans des délais et des coûts maîtrisés
    Pas de solution miracle valable pour tous
    Un accompagnement est généralement nécessaire




25 mars 2010     ALTER WAY - Industrialisation de PHP         6
Plan

    Qu'est-ce que l'industrialisation ?
    Mettre en place un environnement de travail
    Former l'équipe
    Eviter de réinventer la roue
    S'assurer de la qualité du code
    Automatiser ce qui peut l'être




25 mars 2010    ALTER WAY - Industrialisation de PHP   7
Dépôt de code

    Facilite le travail en équipe
    Permet d'avoir un historique du code
    Assure la pérennité du code
    Deux approches :
          Dépôts centralisés (CVS, Subversion)
          Dépôts décentralisés (Git, Mercurial, Bazaar)




25 mars 2010          ALTER WAY - Industrialisation de PHP   8
IDE de développement

    Editeur de texte sous stéroïdes
    Fonctions généralement proposées :
          Colorisation syntaxique
          Autocomplétion
          Intégration aux dépôts de code
          Intégration avec un ou plusieurs frameworks
          Débogueur
          Profileur
          Intégration d'outils externes (Tests unitaires, déploiement,
           gestion de base de données, éditeur UML, prototypage, etc.)
    Standardisation des outils
    Intégration dans la chaîne de production




25 mars 2010          ALTER WAY - Industrialisation de PHP                9
Environnements

    Trois types d'environnements classiques :
          Développement
          Pré-production
          Production
    Développement
          En local ou sur un serveur spécialisé
          Débogueur et profileur disponibles
          Affichage des erreurs
    Pré-production
          Identique à la production (performances, configuration, données)
          Permet de recetter les changements
    Production
          Optimisé pour la performance et la sécurité
          Monitoré pour assurer la qualité de service


25 mars 2010          ALTER WAY - Industrialisation de PHP                10
Plan

    Qu'est-ce que l'industrialisation ?
    Mettre en place un environnement de travail
    Former l'équipe
    Eviter de réinventer la roue
    S'assurer de la qualité du code
    Automatiser ce qui peut l'être




25 mars 2010    ALTER WAY - Industrialisation de PHP   11
Former l'équipe

    Formation professionnelle
          Permet de rapidement entrer dans une nouvelle technologie
          Doit être suivie de mise en pratique pour être efficace
          Action ponctuelle
    Veille
          Permet de maintenir et de développer ses connaissances
          Web, livres, magazines, conférences, etc.
          Travail régulier et sur le long terme pour être payant
          Doit être structurée pour être exploitable par la suite
    Mini-conférences internes
          Partage de connaissance au sein de l'équipe
          Valorisation des personnes




25 mars 2010          ALTER WAY - Industrialisation de PHP             12
Former l'équipe

    Programmation en binôme
          Pratique prônée par les méthodes agiles
          Partage informel des connaissances
          Améliore les relations humaines au sein de l'équipe
          Changer régulièrement les binômes
    Revue de code
          Améliore la connaissance du code
          Favorise la collaboration et le partage des connaissances
          Peut être rendue difficile par des aspects humains (timidité,
           orgueil, manque de tact)




25 mars 2010          ALTER WAY - Industrialisation de PHP                 13
Plan

    Qu'est-ce que l'industrialisation ?
    Mettre en place un environnement de travail
    Former l'équipe
    Eviter de réinventer la roue
    S'assurer de la qualité du code
    Automatiser ce qui peut l'être




25 mars 2010    ALTER WAY - Industrialisation de PHP   14
Eviter de réinventer la roue




« Si j'ai vu plus loin que les autres,
c'est parce que j'ai été porté par
des épaules de géants. »
Isaac Newton



25 mars 2010    ALTER WAY - Industrialisation de PHP   15
Eviter de réinventer la roue

    Eviter le syndrôme « Pas inventé ici »
    Se concentrer sur sa valeur ajoutée
    Frameworks
          Permettent de standardiser et d'accélérer les développements en
           donnant un cadre de travail
    Librairies
          Permettent de rapidement mettre en œuvre des fonctionnalités
           plus spécialisées (Génération d'images, de fichiers PDF, etc.)
    Design patterns
          Solutions éprouvées à des problèmes récurrents
          Capitalise sur l'expérience de 40 ans de programmation
          Permet de mettre un nom sur une problématique et sa solution




25 mars 2010          ALTER WAY - Industrialisation de PHP                   16
Plan

    Qu'est-ce que l'industrialisation ?
    Mettre en place un environnement de travail
    Former l'équipe
    Eviter de réinventer la roue
    S'assurer de la qualité du code
    Automatiser ce qui peut l'être




25 mars 2010    ALTER WAY - Industrialisation de PHP   17
Conventions de codage et d'architecture

    Conventions de codage
          Chacun a ses habitudes
          Des conventions pour que la forme ne brouille pas la
           compréhension du fond
          Choisir une convention existante
    Conventions d'architecture
          Définition d'une structure normative pour les projets
          Permet un démarrage plus rapide des projets
          Permet une meilleure intégration dans les processus de suivi de la
           qualité




25 mars 2010          ALTER WAY - Industrialisation de PHP                  18
Tests automatisés

    Vérifier l'adéquation de l'application avec les
     spécifications
    Plusieurs types
          Unitaires
          IHM
          Fonctionnels,
          De montée en charge
          Etc.
    Peuvent et doivent être lancés aussi souvent de
     possible
    Pas d'intervention humaine complexe pour les lancer
    Remontée d'alertes en cas de violation des
     spécifications
    Permet le suivi dans le temps de la qualité du projet


25 mars 2010         ALTER WAY - Industrialisation de PHP    19
Intégration continue

    Concept lié aux méthodes agiles
    Plus l'intégration des nouveaux développements est
     régulière moins elle est coûteuse
    Automatisation processus
    Permet de s'assurer de la qualité du projet avant
     recette manuelle et déploiement en production
    Actions courantes :
          Exécution des tests
          Vérification des conventions de codage
          Extraction de métriques (nombre de tests, couverture de code,
           taille du code, etc.)
          Génération des documentations (technique, utilisateur)




25 mars 2010          ALTER WAY - Industrialisation de PHP                 20
Plan

    Qu'est-ce que l'industrialisation ?
    Mettre en place un environnement de travail
    Former l'équipe
    Eviter de réinventer la roue
    S'assurer de la qualité du code
    Automatiser ce qui peut l'être




25 mars 2010    ALTER WAY - Industrialisation de PHP   21
Automatiser ce qui peut l'être

    Evite des tâches nécessaires mais répétitives,
     fastidieuses et à faible valeur ajoutée
    Génération de code
          Permet de standardiser le code de l'application
          Permet de rendre plus vite autonome une nouvelle personne
    Déploiement automatisé
          Evite les erreurs humaines
          Assure que toutes les étapes seront faites et dans le bon ordre
          Permet de déployer plus vite et sur de nombreux serveurs en
           parallèle
    Tâches répétitives
          Création de dépôt de code pour un nouveau projet
          Création de branches et de tags
          Empaquetage de version


25 mars 2010          ALTER WAY - Industrialisation de PHP                   22
Merci

    Me contacter :
     jean-marc.fontaine@alterway.fr
    Des questions ?




Présentation : http://www.slideshare.net/jmf/industrialisation-de-php-be-zend-2010-3540633
Livre blanc : http://www.alterway.fr/publications/livre-blanc-industrialisation-php
Blog         : http://www.industrialisation-php.com/

25 mars 2010          ALTER WAY - Industrialisation de PHP                           23

Contenu connexe

Tendances

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
 
Industrialisation des développements Java
Industrialisation des développements JavaIndustrialisation des développements Java
Industrialisation des développements Java
Christian Blavier
 
Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014
Ippon
 
Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012
Jean-Marc Fontaine
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange Labs
Emmanuel Hugonnet
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libre
Stéphane Traumat
 
Usine Logicielle 2013
Usine Logicielle 2013Usine Logicielle 2013
Usine Logicielle 2013
Stéphane Liétard
 
Seminaire Portail Open Source
Seminaire Portail Open SourceSeminaire Portail Open Source
Seminaire Portail Open Source
Ippon
 
Devops, un tour d'horizon - Eutelsat 2018
Devops, un tour d'horizon -  Eutelsat 2018Devops, un tour d'horizon -  Eutelsat 2018
Devops, un tour d'horizon - Eutelsat 2018
Ludovic Piot
 
AgileTour Toulouse 2012 : TFS
AgileTour Toulouse 2012 : TFSAgileTour Toulouse 2012 : TFS
AgileTour Toulouse 2012 : TFSAgile Toulouse
 
Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014
Ippon
 
Innovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette AutomatiséInnovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette Automatisé
Emmanuel Hugonnet
 
Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014
Ippon
 
Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2
Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2
Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2
Valtech
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 
Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...
Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...
Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...
Rubedo, a WebTales solution
 
Wicket - JUG Lausanne
Wicket - JUG LausanneWicket - JUG Lausanne
Wicket - JUG Lausanne
Christian Blavier
 
Ce que nous avons appris de Toyota par Olivier Soulié de PSA
Ce que nous avons appris de Toyota par Olivier Soulié de PSACe que nous avons appris de Toyota par Olivier Soulié de PSA
Ce que nous avons appris de Toyota par Olivier Soulié de PSAInstitut Lean France
 
DevOps et tendances Monitoring
DevOps et tendances MonitoringDevOps et tendances Monitoring
DevOps et tendances Monitoring
François
 

Tendances (20)

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...
 
Industrialisation des développements Java
Industrialisation des développements JavaIndustrialisation des développements Java
Industrialisation des développements Java
 
Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014Formation Usine Logicielle gratuite par Ippon 2014
Formation Usine Logicielle gratuite par Ippon 2014
 
Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange Labs
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libre
 
Usine Logicielle 2013
Usine Logicielle 2013Usine Logicielle 2013
Usine Logicielle 2013
 
Seminaire Portail Open Source
Seminaire Portail Open SourceSeminaire Portail Open Source
Seminaire Portail Open Source
 
Devops, un tour d'horizon - Eutelsat 2018
Devops, un tour d'horizon -  Eutelsat 2018Devops, un tour d'horizon -  Eutelsat 2018
Devops, un tour d'horizon - Eutelsat 2018
 
AgileTour Toulouse 2012 : TFS
AgileTour Toulouse 2012 : TFSAgileTour Toulouse 2012 : TFS
AgileTour Toulouse 2012 : TFS
 
Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014Formation html5 CSS3 offerte par ippon 2014
Formation html5 CSS3 offerte par ippon 2014
 
Les usines à logiciels
Les usines à logicielsLes usines à logiciels
Les usines à logiciels
 
Innovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette AutomatiséInnovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette Automatisé
 
Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014Formation Spring Avancé gratuite par Ippon 2014
Formation Spring Avancé gratuite par Ippon 2014
 
Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2
Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2
Valtech - Quel ROI pour ma transformation Agile ? PARTIE 2
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 
Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...
Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...
Webinar Rubedo, la premiere solution cms open source tirant profit des atouts...
 
Wicket - JUG Lausanne
Wicket - JUG LausanneWicket - JUG Lausanne
Wicket - JUG Lausanne
 
Ce que nous avons appris de Toyota par Olivier Soulié de PSA
Ce que nous avons appris de Toyota par Olivier Soulié de PSACe que nous avons appris de Toyota par Olivier Soulié de PSA
Ce que nous avons appris de Toyota par Olivier Soulié de PSA
 
DevOps et tendances Monitoring
DevOps et tendances MonitoringDevOps et tendances Monitoring
DevOps et tendances Monitoring
 

Similaire à Industrialisation de PHP - Be Zend 2010

Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010
Jean-Marc Fontaine
 
Agilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationAgilité, Tests Et Industrialisation
Agilité, Tests Et Industrialisation
PHPPRO
 
DU DEVOPS AU FASTLAB
DU DEVOPS AU FASTLABDU DEVOPS AU FASTLAB
DU DEVOPS AU FASTLAB
TREEPTIK
 
Techdays2011
Techdays2011 Techdays2011
Techdays2011
ALTER WAY
 
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
Xavier Lacot
 
Adoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMAdoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALM
Grégory Ott
 
Adoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMAdoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALM
MUG-Lyon Microsoft User Group
 
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
 
Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Mise en place d'une usine logicielle avec TFS et Test Manager 2010Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Microsoft Technet France
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php ALTER WAY
 
Mon environnement de travail a-t-il encore un avenir ?
Mon environnement de travail a-t-il encore un avenir ?Mon environnement de travail a-t-il encore un avenir ?
Mon environnement de travail a-t-il encore un avenir ?
Frederic Dewinne
 
devops.pdf
devops.pdfdevops.pdf
devops.pdf
qsdqsd4
 
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...CERTyou Formation
 
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...CERTyou Formation
 
Etude de cadrage clef de la réussite d'un upgrade oracle people soft busine...
Etude de cadrage clef de la réussite d'un upgrade oracle people soft   busine...Etude de cadrage clef de la réussite d'un upgrade oracle people soft   busine...
Etude de cadrage clef de la réussite d'un upgrade oracle people soft busine...
Business At Work
 
Accessibilité numérique et Industrialisation @Orange
Accessibilité numérique et Industrialisation @Orange Accessibilité numérique et Industrialisation @Orange
Accessibilité numérique et Industrialisation @Orange
vincent aniort
 
Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ?
Jacky Galicher
 
Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ?
Jacky Galicher
 
Wygday 2010 - architecture tfs et industrialisation
Wygday 2010 - architecture tfs et industrialisationWygday 2010 - architecture tfs et industrialisation
Wygday 2010 - architecture tfs et industrialisation
Wygwam
 
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
Sébastien Levert
 

Similaire à Industrialisation de PHP - Be Zend 2010 (20)

Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010
 
Agilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationAgilité, Tests Et Industrialisation
Agilité, Tests Et Industrialisation
 
DU DEVOPS AU FASTLAB
DU DEVOPS AU FASTLABDU DEVOPS AU FASTLAB
DU DEVOPS AU FASTLAB
 
Techdays2011
Techdays2011 Techdays2011
Techdays2011
 
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
 
Adoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMAdoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALM
 
Adoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMAdoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALM
 
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...
 
Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Mise en place d'une usine logicielle avec TFS et Test Manager 2010Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Mise en place d'une usine logicielle avec TFS et Test Manager 2010
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
Mon environnement de travail a-t-il encore un avenir ?
Mon environnement de travail a-t-il encore un avenir ?Mon environnement de travail a-t-il encore un avenir ?
Mon environnement de travail a-t-il encore un avenir ?
 
devops.pdf
devops.pdfdevops.pdf
devops.pdf
 
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
 
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
D8 l51g formation-les-fondamentaux-du-developpement-d-applications-avec-ibm-d...
 
Etude de cadrage clef de la réussite d'un upgrade oracle people soft busine...
Etude de cadrage clef de la réussite d'un upgrade oracle people soft   busine...Etude de cadrage clef de la réussite d'un upgrade oracle people soft   busine...
Etude de cadrage clef de la réussite d'un upgrade oracle people soft busine...
 
Accessibilité numérique et Industrialisation @Orange
Accessibilité numérique et Industrialisation @Orange Accessibilité numérique et Industrialisation @Orange
Accessibilité numérique et Industrialisation @Orange
 
Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ?
 
Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ?
 
Wygday 2010 - architecture tfs et industrialisation
Wygday 2010 - architecture tfs et industrialisationWygday 2010 - architecture tfs et industrialisation
Wygday 2010 - architecture tfs et industrialisation
 
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
SharePoint Summit 2012 - Gouvernance et évolution d'une équipe de développeme...
 

Plus de Jean-Marc Fontaine

Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Jean-Marc Fontaine
 
Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012
Jean-Marc Fontaine
 
Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012
Jean-Marc Fontaine
 
Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012
Jean-Marc Fontaine
 
La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012Jean-Marc Fontaine
 
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Jean-Marc Fontaine
 
Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011
Jean-Marc Fontaine
 
Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011Jean-Marc Fontaine
 
Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?Jean-Marc Fontaine
 
PHP : Etat des lieux
PHP : Etat des lieuxPHP : Etat des lieux
PHP : Etat des lieux
Jean-Marc Fontaine
 
PHP 5.3 : Une étape importante sur la route vers PHP 6
PHP 5.3 : Une étape importante sur la route vers PHP 6PHP 5.3 : Une étape importante sur la route vers PHP 6
PHP 5.3 : Une étape importante sur la route vers PHP 6
Jean-Marc Fontaine
 
Déboguer une application web avec FirePHP
Déboguer une application web avec FirePHPDéboguer une application web avec FirePHP
Déboguer une application web avec FirePHP
Jean-Marc Fontaine
 
Utilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHPUtilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHP
Jean-Marc Fontaine
 

Plus de Jean-Marc Fontaine (13)

Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
 
Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012
 
Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012
 
Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012
 
La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012
 
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012
 
Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011
 
Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011
 
Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?
 
PHP : Etat des lieux
PHP : Etat des lieuxPHP : Etat des lieux
PHP : Etat des lieux
 
PHP 5.3 : Une étape importante sur la route vers PHP 6
PHP 5.3 : Une étape importante sur la route vers PHP 6PHP 5.3 : Une étape importante sur la route vers PHP 6
PHP 5.3 : Une étape importante sur la route vers PHP 6
 
Déboguer une application web avec FirePHP
Déboguer une application web avec FirePHPDéboguer une application web avec FirePHP
Déboguer une application web avec FirePHP
 
Utilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHPUtilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHP
 

Dernier

Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
OCTO Technology
 
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
OCTO Technology
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
abderrahimbourimi
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Laurent Speyser
 
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptxPRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
AlbertSmithTambwe
 
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
Horgix
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
UNITECBordeaux
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
AlbertSmithTambwe
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
Université de Franche-Comté
 

Dernier (9)

Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...
 
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
 
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptxPRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
PRESENTATION DE L'ACTIVE DIRECTORY SOUS WINDOWS SERVEUR.pptx
 
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
 
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU  SOUS WINDOWSCOURS D'ADMINISTRATION RESEAU  SOUS WINDOWS
COURS D'ADMINISTRATION RESEAU SOUS WINDOWS
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
 

Industrialisation de PHP - Be Zend 2010

  • 2. Qui suis-je ?  Jean-Marc Fontaine  Consultant pour Alter Way Consulting  Responsable du centre de compétences PHP pour Alter Way Solutions  Formateur pour Alter Way Formation  Professeur vacataire à l'INSSET de Saint Quentin  Membre Actif de l'AFUP  Co-auteur du livre blanc « Industrialisation PHP » 25 mars 2010 ALTER WAY - Industrialisation de PHP 2
  • 3. Livre blanc « Industrialisation PHP »  Co-écrit avec Damien Seguy  Panorama des outils et méthodes d'industrialisation des développements PHP  Publié en octobre 2009  Plus de 1 800 téléchargements  Livre en préparation Téléchargement : http://www.alterway.fr/publications/livre-blanc-industrialisation-php Blog : http://www.industrialisation-php.com/ 25 mars 2010 ALTER WAY - Industrialisation de PHP 3
  • 4. Plan  Qu'est-ce que l'industrialisation ?  Mettre en place un environnement de travail  Former l'équipe  Eviter de réinventer la roue  S'assurer de la qualité du code  Automatiser ce qui peut l'être 25 mars 2010 ALTER WAY - Industrialisation de PHP 4
  • 5. Qu'est-ce que l'industrialisation ?  PHP a dépassé le stade de l'expérimentation  Trois phases pour la reconnaissance d'une technologie en entreprise :  la phase de tests  la phase de missions critiques  la phase de missions stratégiques 25 mars 2010 ALTER WAY - Industrialisation de PHP 5
  • 6. Qu'est-ce que l'industrialisation ?  Une définition : mise en œuvre de pratiques et d'outils visant à rendre les logiciels produits plus robustes, tout en restant dans des délais et des coûts maîtrisés  Pas de solution miracle valable pour tous  Un accompagnement est généralement nécessaire 25 mars 2010 ALTER WAY - Industrialisation de PHP 6
  • 7. Plan  Qu'est-ce que l'industrialisation ?  Mettre en place un environnement de travail  Former l'équipe  Eviter de réinventer la roue  S'assurer de la qualité du code  Automatiser ce qui peut l'être 25 mars 2010 ALTER WAY - Industrialisation de PHP 7
  • 8. Dépôt de code  Facilite le travail en équipe  Permet d'avoir un historique du code  Assure la pérennité du code  Deux approches :  Dépôts centralisés (CVS, Subversion)  Dépôts décentralisés (Git, Mercurial, Bazaar) 25 mars 2010 ALTER WAY - Industrialisation de PHP 8
  • 9. IDE de développement  Editeur de texte sous stéroïdes  Fonctions généralement proposées :  Colorisation syntaxique  Autocomplétion  Intégration aux dépôts de code  Intégration avec un ou plusieurs frameworks  Débogueur  Profileur  Intégration d'outils externes (Tests unitaires, déploiement, gestion de base de données, éditeur UML, prototypage, etc.)  Standardisation des outils  Intégration dans la chaîne de production 25 mars 2010 ALTER WAY - Industrialisation de PHP 9
  • 10. Environnements  Trois types d'environnements classiques :  Développement  Pré-production  Production  Développement  En local ou sur un serveur spécialisé  Débogueur et profileur disponibles  Affichage des erreurs  Pré-production  Identique à la production (performances, configuration, données)  Permet de recetter les changements  Production  Optimisé pour la performance et la sécurité  Monitoré pour assurer la qualité de service 25 mars 2010 ALTER WAY - Industrialisation de PHP 10
  • 11. Plan  Qu'est-ce que l'industrialisation ?  Mettre en place un environnement de travail  Former l'équipe  Eviter de réinventer la roue  S'assurer de la qualité du code  Automatiser ce qui peut l'être 25 mars 2010 ALTER WAY - Industrialisation de PHP 11
  • 12. Former l'équipe  Formation professionnelle  Permet de rapidement entrer dans une nouvelle technologie  Doit être suivie de mise en pratique pour être efficace  Action ponctuelle  Veille  Permet de maintenir et de développer ses connaissances  Web, livres, magazines, conférences, etc.  Travail régulier et sur le long terme pour être payant  Doit être structurée pour être exploitable par la suite  Mini-conférences internes  Partage de connaissance au sein de l'équipe  Valorisation des personnes 25 mars 2010 ALTER WAY - Industrialisation de PHP 12
  • 13. Former l'équipe  Programmation en binôme  Pratique prônée par les méthodes agiles  Partage informel des connaissances  Améliore les relations humaines au sein de l'équipe  Changer régulièrement les binômes  Revue de code  Améliore la connaissance du code  Favorise la collaboration et le partage des connaissances  Peut être rendue difficile par des aspects humains (timidité, orgueil, manque de tact) 25 mars 2010 ALTER WAY - Industrialisation de PHP 13
  • 14. Plan  Qu'est-ce que l'industrialisation ?  Mettre en place un environnement de travail  Former l'équipe  Eviter de réinventer la roue  S'assurer de la qualité du code  Automatiser ce qui peut l'être 25 mars 2010 ALTER WAY - Industrialisation de PHP 14
  • 15. Eviter de réinventer la roue « Si j'ai vu plus loin que les autres, c'est parce que j'ai été porté par des épaules de géants. » Isaac Newton 25 mars 2010 ALTER WAY - Industrialisation de PHP 15
  • 16. Eviter de réinventer la roue  Eviter le syndrôme « Pas inventé ici »  Se concentrer sur sa valeur ajoutée  Frameworks  Permettent de standardiser et d'accélérer les développements en donnant un cadre de travail  Librairies  Permettent de rapidement mettre en œuvre des fonctionnalités plus spécialisées (Génération d'images, de fichiers PDF, etc.)  Design patterns  Solutions éprouvées à des problèmes récurrents  Capitalise sur l'expérience de 40 ans de programmation  Permet de mettre un nom sur une problématique et sa solution 25 mars 2010 ALTER WAY - Industrialisation de PHP 16
  • 17. Plan  Qu'est-ce que l'industrialisation ?  Mettre en place un environnement de travail  Former l'équipe  Eviter de réinventer la roue  S'assurer de la qualité du code  Automatiser ce qui peut l'être 25 mars 2010 ALTER WAY - Industrialisation de PHP 17
  • 18. Conventions de codage et d'architecture  Conventions de codage  Chacun a ses habitudes  Des conventions pour que la forme ne brouille pas la compréhension du fond  Choisir une convention existante  Conventions d'architecture  Définition d'une structure normative pour les projets  Permet un démarrage plus rapide des projets  Permet une meilleure intégration dans les processus de suivi de la qualité 25 mars 2010 ALTER WAY - Industrialisation de PHP 18
  • 19. Tests automatisés  Vérifier l'adéquation de l'application avec les spécifications  Plusieurs types  Unitaires  IHM  Fonctionnels,  De montée en charge  Etc.  Peuvent et doivent être lancés aussi souvent de possible  Pas d'intervention humaine complexe pour les lancer  Remontée d'alertes en cas de violation des spécifications  Permet le suivi dans le temps de la qualité du projet 25 mars 2010 ALTER WAY - Industrialisation de PHP 19
  • 20. Intégration continue  Concept lié aux méthodes agiles  Plus l'intégration des nouveaux développements est régulière moins elle est coûteuse  Automatisation processus  Permet de s'assurer de la qualité du projet avant recette manuelle et déploiement en production  Actions courantes :  Exécution des tests  Vérification des conventions de codage  Extraction de métriques (nombre de tests, couverture de code, taille du code, etc.)  Génération des documentations (technique, utilisateur) 25 mars 2010 ALTER WAY - Industrialisation de PHP 20
  • 21. Plan  Qu'est-ce que l'industrialisation ?  Mettre en place un environnement de travail  Former l'équipe  Eviter de réinventer la roue  S'assurer de la qualité du code  Automatiser ce qui peut l'être 25 mars 2010 ALTER WAY - Industrialisation de PHP 21
  • 22. Automatiser ce qui peut l'être  Evite des tâches nécessaires mais répétitives, fastidieuses et à faible valeur ajoutée  Génération de code  Permet de standardiser le code de l'application  Permet de rendre plus vite autonome une nouvelle personne  Déploiement automatisé  Evite les erreurs humaines  Assure que toutes les étapes seront faites et dans le bon ordre  Permet de déployer plus vite et sur de nombreux serveurs en parallèle  Tâches répétitives  Création de dépôt de code pour un nouveau projet  Création de branches et de tags  Empaquetage de version 25 mars 2010 ALTER WAY - Industrialisation de PHP 22
  • 23. Merci  Me contacter : jean-marc.fontaine@alterway.fr  Des questions ? Présentation : http://www.slideshare.net/jmf/industrialisation-de-php-be-zend-2010-3540633 Livre blanc : http://www.alterway.fr/publications/livre-blanc-industrialisation-php Blog : http://www.industrialisation-php.com/ 25 mars 2010 ALTER WAY - Industrialisation de PHP 23