Décrire un projet PHP                        dans des rapports                         Confoo 2011, Montréal, Québec, Cana...
Agenda                       Pourquoi il faut tout rapporter?                       Sujets et contenus                    ...
Qui parle?                       Damien Seguy                       Consultant chez Alter Way Consulting                  ...
Yes, we take questionsmercredi 9 mars 2011
mercredi 9 mars 2011
Pourquoi ?                       J’ai juste à me lever pour poser la question                       C’est pénible à écrire...
Exemples                       Conventions de code                       Référentiel de sécurité                       Pla...
Conventions de code                       Objectif : coder de manière uniforme                       Contenu : liste de rè...
Sommaire                       Liste de toutes les règles                       Détails de chaque règle                   ...
Section                       Nom de la règle                       Description littérale                       Exemples e...
Outils                       PHP_CodeSniffer                          + développement spécifique                       Séan...
Récapitulatif                       Procéder par liste                       Procéder par exemple                       Do...
Référentiel de sécurité                       Objectif : maîtriser la sécurité                       Contenu : montrer qu’...
Sommaire                       Rappel métier et objectifs de sécurité                       Le référentiel : OWASP, PCI, H...
Détails des protections                       Nom de la règle                       Description de la menace et conséquenc...
Récapitulatif                       Exploitez les référentiels                          Ou un gourou / expert             ...
Plan d’urbanisme                       Dossier d’exploitation, architecture serveurs...                       Objectif : d...
Sommaire                       Schéma du réseau                       Liste des services de chaque serveur                ...
Outils                       Schéma                          Visio, Dia, Omnigraffle, Xmind                       Tableauxm...
Récapitulatif                       Document commun : doit être partagé, évolutif                       Utiliser des schém...
Planning de travail                       Objectif : organiser l’action dans le temps                       Contenu : list...
Structure                       Planning du projet                       Liste de tâches et réunions                      ...
Réunions                       Point projet                       Réunion technique                       Daily scrum     ...
Taches                       Audits croisés                       Tests                       Relecture de code           ...
Détails des activités                       Nom de l’activité                       Fréquence                       Durée ...
Occupation                                        10 %                               10 %                              10 ...
Outils                       Calendrier                       Diagrammes de Ganttmercredi 9 mars 2011
Document de conception                       Objectif : rassembler tout ce qui contribue à la progression                 ...
Sommaire                       Objectifs de l’application                       Glossaire                       Procédés p...
Objectifs de l’application                       Rappel des objectifs métier                       Donne une vision d’ense...
Glossaire                       Dictionnaire des termes utilisés                          Sigles                          ...
Procédés particuliers                       Explications des algorithmes                       Schéma rapide du fonctionne...
Listes de noms                       Tout ce qui est nommé doit être listé                       Classes, méthodes, propri...
Listes de noms                       Classes : diagrammes de classes, de paquets                       Tables : MCD       ...
Outils                       Diagrammes de classes                          ArgoUML, StarUML                       MCD    ...
Récapitulatif                       Savoir vérifier l’application de la conception                       Savoir faire évolu...
Parce que!                       Je suis autonome                       Je participe à sa rédaction                       ...
L’impact est croissantmercredi 9 mars 2011
http://www.slideshare.net/alterway/                        damien.seguy@alterway.frmercredi 9 mars 2011
mercredi 9 mars 2011
Outils                       Détecteurs automatiques                          Auditeurs statiques                       Re...
Tout le monde aime ça                       Graphiques, camemberts, courbes...                       Tableaux             ...
Pour qui?                         Clients /                                                 Développeurs                  ...
Personne n’aime les écrire                       Documentations cul-de-sac                       Temps perdu              ...
Une activité complète                       Prendre les informations                       Les rédiger                    ...
Pilotage à vue                       Est-ce que c’est fait?                       Est-ce que c’est en retard?             ...
Les développeurs                       Les clients et utilisateurs                       Le chef de projet                ...
Comment documenter?                       Établir un document texte, tableur                       Le partager entre les i...
Dans le doute?                       Forcez sur les exemples                       Arrangez-vous pour que le document soit...
Spécifications et tests                       Si personne ne les écrits, vous êtes dans la merde                       Prin...
Spécifications                       Evitez le futur (utilisez le présent)                       Fuyez les listes non termi...
Urbanisation des serveurs                       Les machines qui supportent l’application                       Les servic...
mercredi 9 mars 2011
Evitez les réducteurs                       Peut, pourrais                       petit, léger, rapide, simple, light      ...
Prochain SlideShare
Chargement dans…5
×

Décrire son projet php dans des rapports confoo 2011

1 273 vues

Publié le

Avec la taille croissante des équipes de développement, un nouvel aspect du métier de développeur PHP apparaît : rassurer les clients et managers en produisant des rapports. Ils portent les noms de document de conception, convention de code, référentiel de sécurité, planning de travail, diagrammes de classes, plan d'urbanisme.
Nous passerons en revue ces documents, leur type et leur structuration. Nous verrons aussi les outils qui permettent de relier ces documents avec le code, pour avoir simultanément une vue d'ensemble, un suivi des évolutions et moins de travail d'implémentation.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 273
Sur SlideShare
0
Issues des intégrations
0
Intégrations
89
Actions
Partages
0
Téléchargements
95
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Décrire son projet php dans des rapports confoo 2011

  1. 1. Décrire un projet PHP dans des rapports Confoo 2011, Montréal, Québec, Canada 9 mars 2011mercredi 9 mars 2011
  2. 2. Agenda Pourquoi il faut tout rapporter? Sujets et contenus Outils et méthodesmercredi 9 mars 2011
  3. 3. Qui parle? Damien Seguy Consultant chez Alter Way Consulting Alter Way Group Industrialisation des développements PHP damien.seguy@alterway.frmercredi 9 mars 2011
  4. 4. Yes, we take questionsmercredi 9 mars 2011
  5. 5. mercredi 9 mars 2011
  6. 6. Pourquoi ? J’ai juste à me lever pour poser la question C’est pénible à écrire Personne ne le lit On est plus productif à coder C’est obsolète dès que c’est écrit On a pas le temps de le faire Ca ralentit le rythme de travailmercredi 9 mars 2011
  7. 7. Exemples Conventions de code Référentiel de sécurité Plan d’urbanisme Planning de travail La conceptionmercredi 9 mars 2011
  8. 8. Conventions de code Objectif : coder de manière uniforme Contenu : liste de règles à appliquermercredi 9 mars 2011
  9. 9. Sommaire Liste de toutes les règles Détails de chaque règle Conventions de références PEAR, Symfony, ZF, ...mercredi 9 mars 2011
  10. 10. Section Nom de la règle Description littérale Exemples et non-exemples Obligatoire, recommandation, bonne pratiquemercredi 9 mars 2011
  11. 11. Outils PHP_CodeSniffer + développement spécifique Séances de corrections du codemercredi 9 mars 2011
  12. 12. Récapitulatif Procéder par liste Procéder par exemple Donnez des noms Intégrez le document dans le quotidienmercredi 9 mars 2011
  13. 13. Référentiel de sécurité Objectif : maîtriser la sécurité Contenu : montrer qu’on sait préparer l’application à affronter les menaces de sécuritémercredi 9 mars 2011
  14. 14. Sommaire Rappel métier et objectifs de sécurité Le référentiel : OWASP, PCI, HIPAA, Basel II Liste des menaces identifiées Détails des protections pour chaque menace Cahier de recettemercredi 9 mars 2011
  15. 15. Détails des protections Nom de la règle Description de la menace et conséquence Explication du mécanisme de protection Exemples et illustration des mauvaises pratiques Méthode de validationmercredi 9 mars 2011
  16. 16. Récapitulatif Exploitez les référentiels Ou un gourou / expert Capitalisez par l’exemplemercredi 9 mars 2011
  17. 17. Plan d’urbanisme Dossier d’exploitation, architecture serveurs... Objectif : décrire les machines de production Contenu : décrire la plate-forme d’hébergement de l’applicationmercredi 9 mars 2011
  18. 18. Sommaire Schéma du réseau Liste des services de chaque serveur Flux de données entre les serveurs, par service Déploiement Procédés d’administration Installation, déploiement, redémarrage après crashmercredi 9 mars 2011
  19. 19. Outils Schéma Visio, Dia, Omnigraffle, Xmind Tableauxmercredi 9 mars 2011
  20. 20. Récapitulatif Document commun : doit être partagé, évolutif Utiliser des schémasmercredi 9 mars 2011
  21. 21. Planning de travail Objectif : organiser l’action dans le temps Contenu : liste des points clés du projetmercredi 9 mars 2011
  22. 22. Structure Planning du projet Liste de tâches et réunions Liste des cycles de travail Découpage hebdomadairemercredi 9 mars 2011
  23. 23. Réunions Point projet Réunion technique Daily scrum Revue de cyclemercredi 9 mars 2011
  24. 24. Taches Audits croisés Tests Relecture de code Validation avant commit du jour Mise en Productionmercredi 9 mars 2011
  25. 25. Détails des activités Nom de l’activité Fréquence Durée : % et durée effective Acteurs Sujets abordés Résultats attendusmercredi 9 mars 2011
  26. 26. Occupation 10 % 10 % 10 % 50 % 20 % Dev Tests Rapports Qualité MePmercredi 9 mars 2011
  27. 27. Outils Calendrier Diagrammes de Ganttmercredi 9 mars 2011
  28. 28. Document de conception Objectif : rassembler tout ce qui contribue à la progression du projet Structure : dictionnaire des conceptsmercredi 9 mars 2011
  29. 29. Sommaire Objectifs de l’application Glossaire Procédés particuliers Liste de nomsmercredi 9 mars 2011
  30. 30. Objectifs de l’application Rappel des objectifs métier Donne une vision d’ensemble Liste les cas d’utilisationmercredi 9 mars 2011
  31. 31. Glossaire Dictionnaire des termes utilisés Sigles Termes métier Synonymes Donner des illustrationsmercredi 9 mars 2011
  32. 32. Procédés particuliers Explications des algorithmes Schéma rapide du fonctionnement Exemples d’applicationmercredi 9 mars 2011
  33. 33. Listes de noms Tout ce qui est nommé doit être listé Classes, méthodes, propriétés, constantes, fonctions, sessions URL, vues, contrôleurs, cookies, modules Nom des tables, bases de données, serveurs, configurations Formats de noms, de fichiersmercredi 9 mars 2011
  34. 34. Listes de noms Classes : diagrammes de classes, de paquets Tables : MCD Le reste : des tableaux en traitement de textemercredi 9 mars 2011
  35. 35. Outils Diagrammes de classes ArgoUML, StarUML MCD Mysql Workbench, Power Architect Traitement de texte Format extractible, vérifiablemercredi 9 mars 2011
  36. 36. Récapitulatif Savoir vérifier l’application de la conception Savoir faire évoluer la conception au besoin Beaucoup d’outils Faites un choixmercredi 9 mars 2011
  37. 37. Parce que! Je suis autonome Je participe à sa rédaction Je l’utilise régulièrement Je me pose moins de questions Je peux le tester facilement Je le fait depuis le débutmercredi 9 mars 2011
  38. 38. L’impact est croissantmercredi 9 mars 2011
  39. 39. http://www.slideshare.net/alterway/ damien.seguy@alterway.frmercredi 9 mars 2011
  40. 40. mercredi 9 mars 2011
  41. 41. Outils Détecteurs automatiques Auditeurs statiques Revue manuelle Audits croisés Ajouter une fiche de recettemercredi 9 mars 2011
  42. 42. Tout le monde aime ça Graphiques, camemberts, courbes... Tableaux Prévisions, constatationsmercredi 9 mars 2011
  43. 43. Pour qui? Clients / Développeurs utilisateurs Projet Chef de Administrateurs projetmercredi 9 mars 2011
  44. 44. Personne n’aime les écrire Documentations cul-de-sac Temps perdu Jamais lu Tout le monde se plaint de ne jamais en avoirmercredi 9 mars 2011
  45. 45. Une activité complète Prendre les informations Les rédiger Les relire Les valider Les faire comprendremercredi 9 mars 2011
  46. 46. Pilotage à vue Est-ce que c’est fait? Est-ce que c’est en retard? Qu’est-ce qu’il y a dedans On vire une partie, on en garde une autre On recommencemercredi 9 mars 2011
  47. 47. Les développeurs Les clients et utilisateurs Le chef de projet Les administrateursmercredi 9 mars 2011
  48. 48. Comment documenter? Établir un document texte, tableur Le partager entre les intervenants En lecture seule pour les autres Automatiser la vérification du documentmercredi 9 mars 2011
  49. 49. Dans le doute? Forcez sur les exemples Arrangez-vous pour que le document soit éditable Dégagez explicitement du temps pour lire des documents, les écrire, les relire, les appliquer.mercredi 9 mars 2011
  50. 50. Spécifications et tests Si personne ne les écrits, vous êtes dans la merde Principe de la loi de Murphy : on oublie tout ce qui va, et on ne fait le bilan que de ce qui ne va pas. Le temps de l’écrire, vous le comprenez, et vous temporisez face au client. Apaisement du cycle de développementmercredi 9 mars 2011
  51. 51. Spécifications Evitez le futur (utilisez le présent) Fuyez les listes non terminées (privilégiez les listes finies, quitte à reporter en annexe des ajouts finaux, tbd) Donnez des noms à tout, et mettez en glossaire Explicitez ce qui ne l’est pas Faites des tableaux dès que possiblemercredi 9 mars 2011
  52. 52. Urbanisation des serveurs Les machines qui supportent l’application Les services et les flux de données Les accès et/ou les responsables Les procédures à appliquer deploiement, installation, restauration, crash, sécurité, sauvegardemercredi 9 mars 2011
  53. 53. mercredi 9 mars 2011
  54. 54. Evitez les réducteurs Peut, pourrais petit, léger, rapide, simple, light beta, version x.xx.01mercredi 9 mars 2011

×