SlideShare une entreprise Scribd logo
Maîtrise du
développement PHP


Solutions Linux 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 »




16 mars 2010    ALTER WAY - Maîtrise du développement 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/
16 mars 2010           ALTER WAY - Maîtrise du développement 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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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




16 mars 2010          ALTER WAY - Maîtrise du développement PHP   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




16 mars 2010     ALTER WAY - Maîtrise du développement PHP    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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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)




16 mars 2010          ALTER WAY - Maîtrise du développement PHP   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




16 mars 2010          ALTER WAY - Maîtrise du développement PHP           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


16 mars 2010          ALTER WAY - Maîtrise du développement PHP           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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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




16 mars 2010          ALTER WAY - Maîtrise du développement PHP        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)




16 mars 2010          ALTER WAY - Maîtrise du développement PHP            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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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



16 mars 2010    ALTER WAY - Maîtrise du développement PHP   16
Eviter de réinventer la roue

    Eviter le syndrôme « Pas inventé ici »
    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




16 mars 2010          ALTER WAY - Maîtrise du développement PHP              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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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é




16 mars 2010          ALTER WAY - Maîtrise du développement PHP             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


16 mars 2010         ALTER WAY - Maîtrise du développement PHP   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)




16 mars 2010          ALTER WAY - Maîtrise du développement PHP            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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   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


16 mars 2010          ALTER WAY - Maîtrise du développement PHP              23
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
    Partager la connaissance




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   24
Partager la connaissance

    Se prémunir des indisponibilités, des départs
    Faciliter l'intégration de nouvelles personnes
    Programmation en binôme
    Revue de code
    Documentations
          Architecture
          Technique
          Utilisateur
    Commentaires dans le code
          Format PHPDOC
          Un commentaire inutile est pire que pas de commentaire




16 mars 2010          ALTER WAY - Maîtrise du développement PHP     25
Merci

    Me contacter : jean-marc.fontaine@alterway.fr
    Retouver cette présentation :
     http://www.slideshare.net/jmf/solutions-linux-
     2010maitrisedudeveloppementphp
    Des questions ?




16 mars 2010    ALTER WAY - Maîtrise du développement PHP   26

Contenu connexe

PPTX
Agile tour 2015 alliés contre les défauts
PPTX
Agilité, Tests Et Industrialisation
ODP
Industrialiser ses développements PHP - RMLL 2010
PDF
Industrialisation de PHP - Be Zend 2010
PPTX
PHP : Une Plateforme Industrialisable Au Service De L'Agilité
PPTX
AFUP Forum PHP 2009 : Oui ! PHP est industriel !
PDF
Revues de code - Forum PHP 2010
PDF
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009
Agile tour 2015 alliés contre les défauts
Agilité, Tests Et Industrialisation
Industrialiser ses développements PHP - RMLL 2010
Industrialisation de PHP - Be Zend 2010
PHP : Une Plateforme Industrialisable Au Service De L'Agilité
AFUP Forum PHP 2009 : Oui ! PHP est industriel !
Revues de code - Forum PHP 2010
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009

Tendances (20)

PPTX
20131024 qualité de code et sonar - mug lyon
PDF
La revue de code : facile !
PDF
La revue de code : agile, lean, indispensable !
PDF
Soirée Qualité Logicielle avec Sonar
PDF
A la poursuite du bug perdu - 2019 - THEAULT - DI GIORGIO - ACPQUALIFE
PDF
Sonar 2.0 au JUG Genève
PPTX
Pourquoi est-ce si difficile de concevoir une API ?
PDF
TDD (Test Driven Developement) et refactoring
PPTX
Introduction aux spécifications exécutables (dit aussi atdd, bdd)
PDF
2019 - HAGE CHAHINE - ALTRAN - Presentation-DecouverteMondeAgile_V1.1
PDF
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
PDF
Tdd en action - découverte
PDF
Indicateurs REPaRéD pour le testing craftsmanship
PDF
La qualité logicielle et l'intégration continue - Cas concret du projet Cytomine
PPTX
Human Talks Grenoble - 11/12/2012 - TDD
ODP
Formation Extreme Programming, Tests unitaires, travail collaboratif
PPTX
C'est quoi le Software Craftsmanship ?
PDF
Actifs agiles - Definition of Ready
PDF
Comment récupérer un projet Web pourri ... et réussir à travailler dessus.
PDF
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
20131024 qualité de code et sonar - mug lyon
La revue de code : facile !
La revue de code : agile, lean, indispensable !
Soirée Qualité Logicielle avec Sonar
A la poursuite du bug perdu - 2019 - THEAULT - DI GIORGIO - ACPQUALIFE
Sonar 2.0 au JUG Genève
Pourquoi est-ce si difficile de concevoir une API ?
TDD (Test Driven Developement) et refactoring
Introduction aux spécifications exécutables (dit aussi atdd, bdd)
2019 - HAGE CHAHINE - ALTRAN - Presentation-DecouverteMondeAgile_V1.1
Agile Tour Nantes 2014 - Tdd, le meilleur moyen d'écrire du code testable
Tdd en action - découverte
Indicateurs REPaRéD pour le testing craftsmanship
La qualité logicielle et l'intégration continue - Cas concret du projet Cytomine
Human Talks Grenoble - 11/12/2012 - TDD
Formation Extreme Programming, Tests unitaires, travail collaboratif
C'est quoi le Software Craftsmanship ?
Actifs agiles - Definition of Ready
Comment récupérer un projet Web pourri ... et réussir à travailler dessus.
Forum PHP 2010 - Les frameworks, essentiels dans-l-ecosysteme-php-xavier-laco...
Publicité

Similaire à Solutions Linux 2010 - Maîtrise du développement PHP (20)

KEY
Techdays2011
ODP
Industrialisez vos projets Php
PDF
Bonnes pratiques de developpement en PHP
PDF
Industrialiser PHP - Open World Forum 2011
PDF
Maintenir du code historique , par Jean Marc Fontaine
PDF
Maintenir du code historique - RMLL 2011
PDF
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
PDF
Enib cours c.a.i. web - séance #6 : autour de la webapp
PPT
Webseminaire Webfactory2 0
PDF
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
PPTX
Marathon De L Industrialisation
PDF
[2025] Migration technique: un parcours du combattant
PDF
AlterWay SolutionsLinux Outils Industrialisation PHP
PDF
Comment fonctionne agile au niveau processus
PDF
L'industriel n'est pas là ou le croit !
PDF
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
PPTX
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
PDF
Industrialisation PHP
PDF
Cours etude cas_erp_seance2
PDF
PHP dans la grande entreprise canadienne
Techdays2011
Industrialisez vos projets Php
Bonnes pratiques de developpement en PHP
Industrialiser PHP - Open World Forum 2011
Maintenir du code historique , par Jean Marc Fontaine
Maintenir du code historique - RMLL 2011
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
Enib cours c.a.i. web - séance #6 : autour de la webapp
Webseminaire Webfactory2 0
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
Marathon De L Industrialisation
[2025] Migration technique: un parcours du combattant
AlterWay SolutionsLinux Outils Industrialisation PHP
Comment fonctionne agile au niveau processus
L'industriel n'est pas là ou le croit !
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
Industrialisation PHP
Cours etude cas_erp_seance2
PHP dans la grande entreprise canadienne
Publicité

Plus de Jean-Marc Fontaine (15)

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

Dernier (6)

PDF
FORMATION COMPLETE EN EXCEL DONE BY MR. NYONGA BRICE.pdf
PDF
L'évolution de la création de contenu (2020-2025) : L'impact de l'IA générati...
PDF
Modems expliqués- votre passerelle vers Internet.pdf
PDF
FORMATION EN Programmation En Langage C.pdf
PPTX
Presentation_Securite_Reseaux_Bac+2.pptx
PDF
Tendances tech 2025 - SFEIR & WENVISION.pdf
FORMATION COMPLETE EN EXCEL DONE BY MR. NYONGA BRICE.pdf
L'évolution de la création de contenu (2020-2025) : L'impact de l'IA générati...
Modems expliqués- votre passerelle vers Internet.pdf
FORMATION EN Programmation En Langage C.pdf
Presentation_Securite_Reseaux_Bac+2.pptx
Tendances tech 2025 - SFEIR & WENVISION.pdf

Solutions Linux 2010 - Maîtrise du développement PHP

  • 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 » 16 mars 2010 ALTER WAY - Maîtrise du développement 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/ 16 mars 2010 ALTER WAY - Maîtrise du développement 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 4
  • 5. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 5
  • 6. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 6
  • 7. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 7
  • 8. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 8
  • 9. 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) 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 9
  • 10. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 10
  • 11. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 11
  • 12. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 12
  • 13. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 13
  • 14. 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) 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 14
  • 15. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 15
  • 16. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 16
  • 17. Eviter de réinventer la roue  Eviter le syndrôme « Pas inventé ici »  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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 17
  • 18. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 18
  • 19. 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é 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 19
  • 20. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 20
  • 21. 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) 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 21
  • 22. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 22
  • 23. 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 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 23
  • 24. 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  Partager la connaissance 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 24
  • 25. Partager la connaissance  Se prémunir des indisponibilités, des départs  Faciliter l'intégration de nouvelles personnes  Programmation en binôme  Revue de code  Documentations  Architecture  Technique  Utilisateur  Commentaires dans le code  Format PHPDOC  Un commentaire inutile est pire que pas de commentaire 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 25
  • 26. Merci  Me contacter : [email protected]  Retouver cette présentation : http://www.slideshare.net/jmf/solutions-linux- 2010maitrisedudeveloppementphp  Des questions ? 16 mars 2010 ALTER WAY - Maîtrise du développement PHP 26