L'organisation d'une équipe de développement passe par la mise en place d'outils. Ces outils ne font pas la qualité d'un projet web mais ils y participent. J'ai sélectionné une dizaine d'outils que je trouve indispensable pour améliorer la qualité d'un projet PHP :

Dans le processus de développement :

  • des normes de développement (convention de codage, norme de paramétrage des outils communs,...)
  • Firefox, et ses nombreuses extensions - Firebug, Firephp, Webdevelopper Toolbar -,
  • un outil de gestion des versions. Personnellement, j'apprécie Subversion que j'utilise quotidiennement mais je m'intéresse de plus en plus à des outils de gestion de version décentralisée (Mercurial,...)
  • un outil de suivi de projets de développement (référencement des bugs/évolutions, espace de documentation, statistiques sur le référentiel,...) (exemple : trac)
  • un framework de développement ou un ensemble de librairies afin de mutualiser les développements. Le Zend Framework est, à mes yeux, une bonne base car il possède des librairies de qualité qui peuvent être utilisées de manière autonome et qui ne remettent pas nécessairement en cause les développements en cours.
  • un framework de développement javascript (jquery ?) pour les mêmes raisons.
  • Un outil de validation continu (exemple : phpundercontrol) afin lancer chaque nuit les process de validation de respect des normes de codage, les tests unitaires, les tests de sécurité,...
  • xdebug, associé à Kcachegrind, afin d'évaluer la performance des scripts PHP.
  • smush-it, afin qu'il soit intégré dans le processus de développement,

Dans le processus de validation :

  • Y! Slow, afin de valider que les bonnes pratiques de performance ont bien été mises en oeuvre,
  • Mon opquast, outil développé par la société Temesis qui permet de valider qu'un projet respecte un ensemble de bonnes pratiques.