SlideShare une entreprise Scribd logo
1  sur  43
Outils et
méthodes :
prenez de
bonnes habitudes
  9 février 2011
  Damien Seguy
  Consultant Open Source
  Alter Way Consulting
Agenda


Maîtrisez vos cycles de développement
Accélérez votre développement PHP
Utilisez les bons outils et méthodes
Qui?

 Damien Seguy
 Consultant Open Source
 Sécurité, industrialisation
 damien.seguy@alterway.fr
Yes,
we take
questions
PHP à l’ancienne
PHP aujourd’hui
La réalité

 65 portails à migrer en 6 mois
 6 collaborateurs pour MAJ 350 intranets
 120 sites d’émission par an, sur 150 serveurs
 Application ouverte pour une ville : doit couvrir 12 villes
 pour Pâques, et ouvrir 2 pays l’an prochain
 1 employé à temps plein pour les déploiements
Trois mantra


Libérez vous du code
Capitalisez
Impliquez vos utilisateurs
∆ Convention
 ∆ IDE         ∆ Conception
 ∆ Framework  ∆ Déploiement
               ∆ VCS     Capitalisation
Code
                       ∆ Tests unitaires
           ∆ CI
         ∆ Docs         ∆ Bug
       ∆ Méthodes      Tracking

          ∆ Tests fonctionnels
               Implication
Libérez vous
du code
Libérez vous du code

Elevez votre facteur bus
  Ne soyez plus le seul
Facteur WTF trop élevé?
  Programmez comme les autres
Limitez le temps en production
  Arrangez vous pour que la production ne vous trouve
  pas
Libérez vous du code


Le code fonctionne sans vous
Ne vous investissez pas émotionnellement
Rendez le code accessible aux autres
Conventions de code

PEAR, Zend
Frameworks,
Symfony...
Choisissez en un
Utilisez en un
Unifiez
Code_sniffer
IDE

Choisissez celui qui vous plait
Netbean / Symfony, Zend tools, Komodo / cakePHP
Navigateur de code, éditeur, débogueur, intégration
des tests unitaires, intégration du framework,
déploiement
Frameworks


Choisissez en un, pour la vitesse de développement
Composants, conventions, mise en place, tests
Communauté, expertise, formations
Bâtissez une couche métier
Contrôle de version

 Résout les conflits
 Permet les versions, le développement paralèlle,
 le retour en arrière
 Stocke et distribue le code
 «Le code qui n’est pas dans SVN n’existe pas»
Développement



 Tests
                                 Production
unitaires
                   Source




     Suivi des              Intégration
      bugs                   continue
Capitalisez
Capitalisation


 Accumulation des connaissances au long du projet
 Capture de l’expérience au fil de l’eau
 Eviter les culs de sac
   Pensez à celui qui va le réutiliser
Tests unitaires

 PHP Unit, Simple Test, Lemon, Zend_Test, phpt
Les tests aident

 Évitent les régressions           Production
                           Code
 Évitent de vous appeler
 Montre les progrès
 Servent de manuel
 Aident la communication
                                  Client
Conception
Diagrammes de classe, schéma de base, navigation
Décrit l’organisation générale
Liste tout ce qui doit être nommé
  Classe, méthodes, constantes, SESSION, inclusion...
Vérifiez le résultat dans le code
ArgoUML, StarUML, PowerArchitect, Visual Studio,
Microsoft Visio
Déploiement automatique


Nécessaire pour l’intégration continue
Trop souvent oublié dans le développement
Obligatoire sur les grandes plates-formes
Impliquez les utilisateurs
Je suis Spartacus!
Impliquer les utilisateurs


 Évitez l’effet tunnel
 Affronter le tsunami des questions, demandes
   bugs, changements, ajouts, adaptation, accelération
 Transmettez une partie du travail aux clients finaux
Suivi de bug


 Connexion au déploiement, au VCS
 Évite le contact direct des utilisateurs avec les
 développeurs
 Crée le changelog au fur et à mesure
Suivi de bug


 Connexion au déploiement, au VCS
 Évite le contact direct des utilisateurs avec les
 développeurs
 Crée le changelog au fur et à mesure
Tests fonctionnels

 Base de wiki : accessibles aux non techniques
 Capte des cas et des données métiers
 Tests a priori, tests directs
 Les développeurs font le lien entre les tableaux et le
 code
GreenPepper
GreenPepper
GreenPepper
GreenPepper
GreenPepper
Intégration continue

 Vérification continue du code
 Historise les résultats
   Compilation, code sniffer, tests unitaires
   Log, inclusion, performances, métriques
 À partager avec clients, équipiers,...
Méthodologies

Explique comment on produit du code
Implique les utilisateurs dans le cycle
Cycles de développement court : on fait, on peaufine
Méthodes agiles :
  SCRUM, XP, Lean SD, Open Unified Process
Les pratiques agiles au menu
Documentation

PHPDoc, TFS, Commentaires taggés
Des développeurs aux utilisateurs
La première version aux développeurs
Ajoutez des commentaires
Faites en un wiki
Commentags
Et encore plus loin?


 Déploiement continue (a la flickr)
 Audits croisés
 Audits collaboratifs
 Analyse statique
damien.seguy@alterway.fr
http://www.slideshare.net/dseguy/
Remerciements
Loïc Le Fur
Romain Bourdon
Keith Casey
Alter Way Group
Morguefile
Toutes les marques citées appartiennent à leur
propriétaire.

Contenu connexe

Tendances

Intégration continue
Intégration continueIntégration continue
Intégration continue
Klee Group
 
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
Emmanuel Hugonnet
 
Principes de L'intégration Continue
Principes de L'intégration ContinuePrincipes de L'intégration Continue
Principes de L'intégration Continue
Xavier Warzee
 
Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010
Jean-Marc Fontaine
 

Tendances (19)

Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open sourceSoirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
Soirée Qualite Logicielle Paris JUG : Tour d'horizon des outils open source
 
Avis d'expert : Les Tests Logiciels
Avis d'expert : Les Tests LogicielsAvis d'expert : Les Tests Logiciels
Avis d'expert : Les Tests Logiciels
 
JCertif 2012 : Integration continue avec Jenkins
JCertif 2012 : Integration continue avec JenkinsJCertif 2012 : Integration continue avec Jenkins
JCertif 2012 : Integration continue avec Jenkins
 
Integration continue et déploiement automatisé
Integration continue et déploiement automatiséIntegration continue et déploiement automatisé
Integration continue et déploiement automatisé
 
Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Rappels Modularisation application C/C++
Rappels Modularisation application C/C++
 
3 prototypage
3 prototypage3 prototypage
3 prototypage
 
Intégration continue
Intégration continueIntégration continue
Intégration continue
 
SharePoint Summit 2012 - Les tests automatisés et SharePoint 2010, c'est poss...
SharePoint Summit 2012 - Les tests automatisés et SharePoint 2010, c'est poss...SharePoint Summit 2012 - Les tests automatisés et SharePoint 2010, c'est poss...
SharePoint Summit 2012 - Les tests automatisés et SharePoint 2010, c'est poss...
 
Presentation tests d'acceptations automatisés sug v1.1
Presentation tests d'acceptations automatisés sug v1.1Presentation tests d'acceptations automatisés sug v1.1
Presentation tests d'acceptations automatisés sug v1.1
 
Allons plus loin avec Selenium
Allons plus loin avec SeleniumAllons plus loin avec Selenium
Allons plus loin avec Selenium
 
Agile tour 2015 alliés contre les défauts
Agile tour 2015   alliés contre les défautsAgile tour 2015   alliés contre les défauts
Agile tour 2015 alliés contre les défauts
 
Solutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHPSolutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHP
 
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
 
Agilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationAgilité, Tests Et Industrialisation
Agilité, Tests Et Industrialisation
 
Tests Logiciel
Tests LogicielTests Logiciel
Tests Logiciel
 
Principes de L'intégration Continue
Principes de L'intégration ContinuePrincipes de L'intégration Continue
Principes de L'intégration Continue
 
Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010
 
20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 

En vedette

Expressart vol4
Expressart vol4Expressart vol4
Expressart vol4
dfiguere
 
Trizas2007 2008 numero1
Trizas2007 2008 numero1Trizas2007 2008 numero1
Trizas2007 2008 numero1
anpeblog
 
BoletíN Municipal
BoletíN MunicipalBoletíN Municipal
BoletíN Municipal
guest17fcfd
 
Ben El Mundo En 100 Personas
Ben El Mundo En 100 PersonasBen El Mundo En 100 Personas
Ben El Mundo En 100 Personas
Paulino
 
Diaporama eastpack
Diaporama eastpackDiaporama eastpack
Diaporama eastpack
maypatrick
 
Aventuras del pequeño chiri
Aventuras del pequeño chiriAventuras del pequeño chiri
Aventuras del pequeño chiri
Elisa
 
Idees Fotum Ville2 Marseille
Idees Fotum Ville2 MarseilleIdees Fotum Ville2 Marseille
Idees Fotum Ville2 Marseille
guest9ec3c75
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
asimovv
 
Fouzia Marruecos
Fouzia MarruecosFouzia Marruecos
Fouzia Marruecos
Javiparedes
 
Diapositivas M Aria
Diapositivas M AriaDiapositivas M Aria
Diapositivas M Aria
guesta678d8
 

En vedette (20)

Talesde mileto 9respuestas-
Talesde mileto 9respuestas-Talesde mileto 9respuestas-
Talesde mileto 9respuestas-
 
DISPOSITIONS FONCIERES DE LA LOA
DISPOSITIONS FONCIERES DE LA LOADISPOSITIONS FONCIERES DE LA LOA
DISPOSITIONS FONCIERES DE LA LOA
 
Omni Advisory 2010
Omni Advisory 2010Omni Advisory 2010
Omni Advisory 2010
 
Expressart vol4
Expressart vol4Expressart vol4
Expressart vol4
 
Spot Historia 1
Spot Historia 1Spot Historia 1
Spot Historia 1
 
Seminario especializacion catedra 2 reinaldo lay
Seminario especializacion catedra 2 reinaldo laySeminario especializacion catedra 2 reinaldo lay
Seminario especializacion catedra 2 reinaldo lay
 
Dolors reig (1)
Dolors reig (1)Dolors reig (1)
Dolors reig (1)
 
Eqe 18 qualite_ipaqss_2015_v_def
Eqe 18 qualite_ipaqss_2015_v_defEqe 18 qualite_ipaqss_2015_v_def
Eqe 18 qualite_ipaqss_2015_v_def
 
Trizas2007 2008 numero1
Trizas2007 2008 numero1Trizas2007 2008 numero1
Trizas2007 2008 numero1
 
BoletíN Municipal
BoletíN MunicipalBoletíN Municipal
BoletíN Municipal
 
Ben El Mundo En 100 Personas
Ben El Mundo En 100 PersonasBen El Mundo En 100 Personas
Ben El Mundo En 100 Personas
 
Carlos Cordero
Carlos CorderoCarlos Cordero
Carlos Cordero
 
Diaporama eastpack
Diaporama eastpackDiaporama eastpack
Diaporama eastpack
 
JABES 2015 - Les actualités de l'ABES / Isabelle Maugez Perez & Laurent Pique...
JABES 2015 - Les actualités de l'ABES / Isabelle Maugez Perez & Laurent Pique...JABES 2015 - Les actualités de l'ABES / Isabelle Maugez Perez & Laurent Pique...
JABES 2015 - Les actualités de l'ABES / Isabelle Maugez Perez & Laurent Pique...
 
Aventuras del pequeño chiri
Aventuras del pequeño chiriAventuras del pequeño chiri
Aventuras del pequeño chiri
 
Idees Fotum Ville2 Marseille
Idees Fotum Ville2 MarseilleIdees Fotum Ville2 Marseille
Idees Fotum Ville2 Marseille
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Sugerencias para intentar acelerar la implantación plena de la autonomia depa...
Sugerencias para intentar acelerar la implantación plena de la autonomia depa...Sugerencias para intentar acelerar la implantación plena de la autonomia depa...
Sugerencias para intentar acelerar la implantación plena de la autonomia depa...
 
Fouzia Marruecos
Fouzia MarruecosFouzia Marruecos
Fouzia Marruecos
 
Diapositivas M Aria
Diapositivas M AriaDiapositivas M Aria
Diapositivas M Aria
 

Similaire à Techdays2011

Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
ALTER WAY
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
ENSIBS
 
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
Jason De Oliveira
 
SharePoint 2010 & Team Foundation Server
SharePoint 2010 & Team Foundation ServerSharePoint 2010 & Team Foundation Server
SharePoint 2010 & Team Foundation Server
Philippe Sentenac
 

Similaire à Techdays2011 (20)

Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
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
 
devops.pdf
devops.pdfdevops.pdf
devops.pdf
 
Normandy JUG integration Continue
Normandy JUG integration ContinueNormandy JUG integration Continue
Normandy JUG integration Continue
 
20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven
 
20070320 04 - Plateforme d'integration continue (PSA)
20070320 04 - Plateforme d'integration continue (PSA)20070320 04 - Plateforme d'integration continue (PSA)
20070320 04 - Plateforme d'integration continue (PSA)
 
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 ?
 
Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011
 
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...
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
 
Introduction à DevOps
Introduction à DevOpsIntroduction à DevOps
Introduction à DevOps
 
DevOps au coeur de la transformation digitale
DevOps au coeur de la transformation digitaleDevOps au coeur de la transformation digitale
DevOps au coeur de la transformation digitale
 
Omnilog 2016 - Apéro techno : Rex FFF sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex FFF sur l'intégration continueOmnilog 2016 - Apéro techno : Rex FFF sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex FFF sur l'intégration continue
 
Happy dev ... & ops
Happy dev ... & opsHappy dev ... & ops
Happy dev ... & ops
 
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
 
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continueOmnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
 
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
 
SharePoint 2010 & Team Foundation Server
SharePoint 2010 & Team Foundation ServerSharePoint 2010 & Team Foundation Server
SharePoint 2010 & Team Foundation Server
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !
 

Plus de ALTER WAY

Séminaire Big Data Alter Way - Elasticsearch - octobre 2014
Séminaire Big Data Alter Way - Elasticsearch - octobre 2014Séminaire Big Data Alter Way - Elasticsearch - octobre 2014
Séminaire Big Data Alter Way - Elasticsearch - octobre 2014
ALTER WAY
 
Meetup Drupal Paris : Connexion Drupal et Elasticsearch
Meetup Drupal Paris : Connexion Drupal et Elasticsearch Meetup Drupal Paris : Connexion Drupal et Elasticsearch
Meetup Drupal Paris : Connexion Drupal et Elasticsearch
ALTER WAY
 
Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014
ALTER WAY
 
OpenStack havana tour d'horizon
OpenStack havana tour d'horizonOpenStack havana tour d'horizon
OpenStack havana tour d'horizon
ALTER WAY
 

Plus de ALTER WAY (20)

Drupagora 2019 : Drupal, accessibilité et RGAA
Drupagora 2019 : Drupal, accessibilité et RGAADrupagora 2019 : Drupal, accessibilité et RGAA
Drupagora 2019 : Drupal, accessibilité et RGAA
 
#sharingLille : L'Open Source pour une société numérique ouverte, transparent...
#sharingLille : L'Open Source pour une société numérique ouverte, transparent...#sharingLille : L'Open Source pour une société numérique ouverte, transparent...
#sharingLille : L'Open Source pour une société numérique ouverte, transparent...
 
Flyer promotions Alter Way Formation Avril Mai 2015
Flyer promotions Alter Way Formation Avril Mai 2015Flyer promotions Alter Way Formation Avril Mai 2015
Flyer promotions Alter Way Formation Avril Mai 2015
 
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker  : des conteneurs pour tout faire ? Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
 
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
 
Open World Forum 2014 : From ES6 to Javascript 2.0. What use today ? par Jon...
Open World Forum 2014  : From ES6 to Javascript 2.0. What use today ? par Jon...Open World Forum 2014  : From ES6 to Javascript 2.0. What use today ? par Jon...
Open World Forum 2014 : From ES6 to Javascript 2.0. What use today ? par Jon...
 
Open World Forum 2014 : Guerre des IAAS par Stéphane Vincent
Open World Forum 2014 : Guerre des IAAS par Stéphane Vincent Open World Forum 2014 : Guerre des IAAS par Stéphane Vincent
Open World Forum 2014 : Guerre des IAAS par Stéphane Vincent
 
Séminaire Big Data Alter Way - Elasticsearch - octobre 2014
Séminaire Big Data Alter Way - Elasticsearch - octobre 2014Séminaire Big Data Alter Way - Elasticsearch - octobre 2014
Séminaire Big Data Alter Way - Elasticsearch - octobre 2014
 
Meetup Drupal Paris : Connexion Drupal et Elasticsearch
Meetup Drupal Paris : Connexion Drupal et Elasticsearch Meetup Drupal Paris : Connexion Drupal et Elasticsearch
Meetup Drupal Paris : Connexion Drupal et Elasticsearch
 
Solutions Linux 2014 – Alter Way : Révélations sur les pratiques de la NSA
Solutions Linux 2014 – Alter Way : Révélations sur les pratiques de la NSASolutions Linux 2014 – Alter Way : Révélations sur les pratiques de la NSA
Solutions Linux 2014 – Alter Way : Révélations sur les pratiques de la NSA
 
Solutions Linux 2014 – Alter Way : Industrialisation des développements en Ja...
Solutions Linux 2014 – Alter Way : Industrialisation des développements en Ja...Solutions Linux 2014 – Alter Way : Industrialisation des développements en Ja...
Solutions Linux 2014 – Alter Way : Industrialisation des développements en Ja...
 
Solutions Linux 2014 - Alter Way : Évolutions des back offices des CMS/CMF
Solutions Linux 2014 - Alter Way : Évolutions des back offices des CMS/CMF Solutions Linux 2014 - Alter Way : Évolutions des back offices des CMS/CMF
Solutions Linux 2014 - Alter Way : Évolutions des back offices des CMS/CMF
 
Elasticsearch : petit déjeuner du 13 mars 2014
Elasticsearch : petit déjeuner du 13 mars 2014Elasticsearch : petit déjeuner du 13 mars 2014
Elasticsearch : petit déjeuner du 13 mars 2014
 
Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014Alter way-wordcamp-paris-2014
Alter way-wordcamp-paris-2014
 
Présentation Drupal - Global Training Days
Présentation Drupal - Global Training DaysPrésentation Drupal - Global Training Days
Présentation Drupal - Global Training Days
 
OpenStack havana tour d'horizon
OpenStack havana tour d'horizonOpenStack havana tour d'horizon
OpenStack havana tour d'horizon
 
H2O, le Cloud par Alter Way
H2O, le Cloud par Alter WayH2O, le Cloud par Alter Way
H2O, le Cloud par Alter Way
 
Reprise sur incident , par Jean Marc Fontaine
Reprise sur incident , par Jean Marc FontaineReprise sur incident , par Jean Marc Fontaine
Reprise sur incident , par Jean Marc Fontaine
 
Organiser efficacement son depot de code par Jean Marc Fontaine
Organiser efficacement son depot de code par Jean Marc FontaineOrganiser efficacement son depot de code par Jean Marc Fontaine
Organiser efficacement son depot de code par Jean Marc Fontaine
 
Objets patterns et genie logiciel , par Julien Pauli
Objets patterns et genie logiciel , par Julien PauliObjets patterns et genie logiciel , par Julien Pauli
Objets patterns et genie logiciel , par Julien Pauli
 

Techdays2011

  • 1. Outils et méthodes : prenez de bonnes habitudes 9 février 2011 Damien Seguy Consultant Open Source Alter Way Consulting
  • 2. Agenda Maîtrisez vos cycles de développement Accélérez votre développement PHP Utilisez les bons outils et méthodes
  • 3. Qui? Damien Seguy Consultant Open Source Sécurité, industrialisation damien.seguy@alterway.fr
  • 4.
  • 8. La réalité 65 portails à migrer en 6 mois 6 collaborateurs pour MAJ 350 intranets 120 sites d’émission par an, sur 150 serveurs Application ouverte pour une ville : doit couvrir 12 villes pour Pâques, et ouvrir 2 pays l’an prochain 1 employé à temps plein pour les déploiements
  • 9. Trois mantra Libérez vous du code Capitalisez Impliquez vos utilisateurs
  • 10. ∆ Convention ∆ IDE ∆ Conception ∆ Framework ∆ Déploiement ∆ VCS Capitalisation Code ∆ Tests unitaires ∆ CI ∆ Docs ∆ Bug ∆ Méthodes Tracking ∆ Tests fonctionnels Implication
  • 12. Libérez vous du code Elevez votre facteur bus Ne soyez plus le seul Facteur WTF trop élevé? Programmez comme les autres Limitez le temps en production Arrangez vous pour que la production ne vous trouve pas
  • 13. Libérez vous du code Le code fonctionne sans vous Ne vous investissez pas émotionnellement Rendez le code accessible aux autres
  • 14. Conventions de code PEAR, Zend Frameworks, Symfony... Choisissez en un Utilisez en un Unifiez Code_sniffer
  • 15. IDE Choisissez celui qui vous plait Netbean / Symfony, Zend tools, Komodo / cakePHP Navigateur de code, éditeur, débogueur, intégration des tests unitaires, intégration du framework, déploiement
  • 16.
  • 17. Frameworks Choisissez en un, pour la vitesse de développement Composants, conventions, mise en place, tests Communauté, expertise, formations Bâtissez une couche métier
  • 18. Contrôle de version Résout les conflits Permet les versions, le développement paralèlle, le retour en arrière Stocke et distribue le code «Le code qui n’est pas dans SVN n’existe pas»
  • 19. Développement Tests Production unitaires Source Suivi des Intégration bugs continue
  • 21. Capitalisation Accumulation des connaissances au long du projet Capture de l’expérience au fil de l’eau Eviter les culs de sac Pensez à celui qui va le réutiliser
  • 22. Tests unitaires PHP Unit, Simple Test, Lemon, Zend_Test, phpt
  • 23. Les tests aident Évitent les régressions Production Code Évitent de vous appeler Montre les progrès Servent de manuel Aident la communication Client
  • 24. Conception Diagrammes de classe, schéma de base, navigation Décrit l’organisation générale Liste tout ce qui doit être nommé Classe, méthodes, constantes, SESSION, inclusion... Vérifiez le résultat dans le code ArgoUML, StarUML, PowerArchitect, Visual Studio, Microsoft Visio
  • 25. Déploiement automatique Nécessaire pour l’intégration continue Trop souvent oublié dans le développement Obligatoire sur les grandes plates-formes
  • 26. Impliquez les utilisateurs Je suis Spartacus!
  • 27. Impliquer les utilisateurs Évitez l’effet tunnel Affronter le tsunami des questions, demandes bugs, changements, ajouts, adaptation, accelération Transmettez une partie du travail aux clients finaux
  • 28. Suivi de bug Connexion au déploiement, au VCS Évite le contact direct des utilisateurs avec les développeurs Crée le changelog au fur et à mesure
  • 29. Suivi de bug Connexion au déploiement, au VCS Évite le contact direct des utilisateurs avec les développeurs Crée le changelog au fur et à mesure
  • 30. Tests fonctionnels Base de wiki : accessibles aux non techniques Capte des cas et des données métiers Tests a priori, tests directs Les développeurs font le lien entre les tableaux et le code
  • 36.
  • 37. Intégration continue Vérification continue du code Historise les résultats Compilation, code sniffer, tests unitaires Log, inclusion, performances, métriques À partager avec clients, équipiers,...
  • 38. Méthodologies Explique comment on produit du code Implique les utilisateurs dans le cycle Cycles de développement court : on fait, on peaufine Méthodes agiles : SCRUM, XP, Lean SD, Open Unified Process Les pratiques agiles au menu
  • 39. Documentation PHPDoc, TFS, Commentaires taggés Des développeurs aux utilisateurs La première version aux développeurs Ajoutez des commentaires Faites en un wiki
  • 41. Et encore plus loin? Déploiement continue (a la flickr) Audits croisés Audits collaboratifs Analyse statique
  • 43. Remerciements Loïc Le Fur Romain Bourdon Keith Casey Alter Way Group Morguefile Toutes les marques citées appartiennent à leur propriétaire.

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n