Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Techdays2011

Comment boucher le trou entre le développement et la production en PHP ? Quels outils de développement, quels outils de suivi de qualité, comment réussir l'intégration continue ? Nous terminerons par les us et coutumes de la mise en production.

  • Login to see the comments

  • Be the first to like this

Techdays2011

  1. 1. Outils etméthodes :prenez debonnes habitudes 9 février 2011 Damien Seguy Consultant Open Source Alter Way Consulting
  2. 2. AgendaMaîtrisez vos cycles de développementAccélérez votre développement PHPUtilisez les bons outils et méthodes
  3. 3. Qui? Damien Seguy Consultant Open Source Sécurité, industrialisation damien.seguy@alterway.fr
  4. 4. Yes,we takequestions
  5. 5. PHP à l’ancienne
  6. 6. PHP aujourd’hui
  7. 7. 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
  8. 8. Trois mantraLibérez vous du codeCapitalisezImpliquez vos utilisateurs
  9. 9. ∆ Convention ∆ IDE ∆ Conception ∆ Framework ∆ Déploiement ∆ VCS CapitalisationCode ∆ Tests unitaires ∆ CI ∆ Docs ∆ Bug ∆ Méthodes Tracking ∆ Tests fonctionnels Implication
  10. 10. Libérez vousdu code
  11. 11. Libérez vous du codeElevez votre facteur bus Ne soyez plus le seulFacteur WTF trop élevé? Programmez comme les autresLimitez le temps en production Arrangez vous pour que la production ne vous trouve pas
  12. 12. Libérez vous du codeLe code fonctionne sans vousNe vous investissez pas émotionnellementRendez le code accessible aux autres
  13. 13. Conventions de codePEAR, ZendFrameworks,Symfony...Choisissez en unUtilisez en unUnifiezCode_sniffer
  14. 14. IDEChoisissez celui qui vous plaitNetbean / Symfony, Zend tools, Komodo / cakePHPNavigateur de code, éditeur, débogueur, intégrationdes tests unitaires, intégration du framework,déploiement
  15. 15. FrameworksChoisissez en un, pour la vitesse de développementComposants, conventions, mise en place, testsCommunauté, expertise, formationsBâtissez une couche métier
  16. 16. 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»
  17. 17. Développement Tests Productionunitaires Source Suivi des Intégration bugs continue
  18. 18. Capitalisez
  19. 19. 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
  20. 20. Tests unitaires PHP Unit, Simple Test, Lemon, Zend_Test, phpt
  21. 21. Les tests aident Évitent les régressions Production Code Évitent de vous appeler Montre les progrès Servent de manuel Aident la communication Client
  22. 22. ConceptionDiagrammes de classe, schéma de base, navigationDécrit l’organisation généraleListe tout ce qui doit être nommé Classe, méthodes, constantes, SESSION, inclusion...Vérifiez le résultat dans le codeArgoUML, StarUML, PowerArchitect, Visual Studio,Microsoft Visio
  23. 23. Déploiement automatiqueNécessaire pour l’intégration continueTrop souvent oublié dans le développementObligatoire sur les grandes plates-formes
  24. 24. Impliquez les utilisateursJe suis Spartacus!
  25. 25. 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
  26. 26. 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
  27. 27. 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
  28. 28. 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
  29. 29. GreenPepper
  30. 30. GreenPepper
  31. 31. GreenPepper
  32. 32. GreenPepper
  33. 33. GreenPepper
  34. 34. 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,...
  35. 35. MéthodologiesExplique comment on produit du codeImplique les utilisateurs dans le cycleCycles de développement court : on fait, on peaufineMéthodes agiles : SCRUM, XP, Lean SD, Open Unified ProcessLes pratiques agiles au menu
  36. 36. DocumentationPHPDoc, TFS, Commentaires taggésDes développeurs aux utilisateursLa première version aux développeursAjoutez des commentairesFaites en un wiki
  37. 37. Commentags
  38. 38. Et encore plus loin? Déploiement continue (a la flickr) Audits croisés Audits collaboratifs Analyse statique
  39. 39. damien.seguy@alterway.frhttp://www.slideshare.net/dseguy/
  40. 40. RemerciementsLoïc Le FurRomain BourdonKeith CaseyAlter Way GroupMorguefileToutes les marques citées appartiennent à leurpropriétaire.

×