SlideShare une entreprise Scribd logo
Décrire un projet PHP
                        dans des rapports
                         Confoo 2011, Montréal, Québec, Canada
                                      9 mars 2011




mercredi 9 mars 2011
Agenda

                       Pourquoi il faut tout rapporter?
                       Sujets et contenus
                       Outils et méthodes



mercredi 9 mars 2011
Qui parle?

                       Damien Seguy
                       Consultant chez Alter Way Consulting
                       Alter Way Group
                       Industrialisation des développements PHP
                       damien.seguy@alterway.fr


mercredi 9 mars 2011
Yes, we take questions
mercredi 9 mars 2011
mercredi 9 mars 2011
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 travail

mercredi 9 mars 2011
Exemples

                       Conventions de code
                       Référentiel de sécurité
                       Plan d’urbanisme
                       Planning de travail
                       La conception

mercredi 9 mars 2011
Conventions de code

                       Objectif : coder de manière uniforme
                       Contenu : liste de règles à appliquer




mercredi 9 mars 2011
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
Section

                       Nom de la règle
                       Description littérale
                       Exemples et non-exemples
                       Obligatoire, recommandation, bonne pratique


mercredi 9 mars 2011
Outils
                       PHP_CodeSniffer
                          + développement spécifique
                       Séances de corrections du code




mercredi 9 mars 2011
Récapitulatif

                       Procéder par liste
                       Procéder par exemple
                       Donnez des noms
                       Intégrez le document dans le quotidien


mercredi 9 mars 2011
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
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 recette

mercredi 9 mars 2011
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 validation

mercredi 9 mars 2011
Récapitulatif

                       Exploitez les référentiels
                          Ou un gourou / expert
                       Capitalisez par l’exemple



mercredi 9 mars 2011
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’application



mercredi 9 mars 2011
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 crash
mercredi 9 mars 2011
Outils

                       Schéma
                          Visio, Dia, Omnigraffle, Xmind
                       Tableaux



mercredi 9 mars 2011
Récapitulatif


                       Document commun : doit être partagé, évolutif
                       Utiliser des schémas




mercredi 9 mars 2011
Planning de travail


                       Objectif : organiser l’action dans le temps
                       Contenu : liste des points clés du projet




mercredi 9 mars 2011
Structure

                       Planning du projet
                       Liste de tâches et réunions
                       Liste des cycles de travail
                       Découpage hebdomadaire


mercredi 9 mars 2011
Réunions

                       Point projet
                       Réunion technique
                       Daily scrum
                       Revue de cycle


mercredi 9 mars 2011
Taches

                       Audits croisés
                       Tests
                       Relecture de code
                       Validation avant commit du jour
                       Mise en Production

mercredi 9 mars 2011
Détails des activités
                       Nom de l’activité
                       Fréquence
                       Durée : % et durée effective
                       Acteurs
                       Sujets abordés
                       Résultats attendus
mercredi 9 mars 2011
Occupation
                                        10 %
                               10 %

                              10 %
                                                          50 %

                                      20 %




                        Dev   Tests            Rapports      Qualité   MeP
mercredi 9 mars 2011
Outils


                       Calendrier
                       Diagrammes de Gantt




mercredi 9 mars 2011
Document de conception


                       Objectif : rassembler tout ce qui contribue à la progression
                       du projet
                       Structure : dictionnaire des concepts



mercredi 9 mars 2011
Sommaire

                       Objectifs de l’application
                       Glossaire
                       Procédés particuliers
                       Liste de noms


mercredi 9 mars 2011
Objectifs de l’application

                       Rappel des objectifs métier
                       Donne une vision d’ensemble
                       Liste les cas d’utilisation



mercredi 9 mars 2011
Glossaire

                       Dictionnaire des termes utilisés
                          Sigles
                          Termes métier
                          Synonymes
                       Donner des illustrations

mercredi 9 mars 2011
Procédés particuliers

                       Explications des algorithmes
                       Schéma rapide du fonctionnement
                       Exemples d’application



mercredi 9 mars 2011
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 fichiers

mercredi 9 mars 2011
Listes de noms

                       Classes : diagrammes de classes, de paquets
                       Tables : MCD
                       Le reste : des tableaux en traitement de texte



mercredi 9 mars 2011
Outils
                       Diagrammes de classes
                          ArgoUML, StarUML
                       MCD
                          Mysql Workbench, Power Architect
                       Traitement de texte
                          Format extractible, vérifiable
mercredi 9 mars 2011
Récapitulatif

                       Savoir vérifier l’application de la conception
                       Savoir faire évoluer la conception au besoin
                       Beaucoup d’outils
                          Faites un choix


mercredi 9 mars 2011
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ébut
mercredi 9 mars 2011
L’impact est croissant




mercredi 9 mars 2011
http://www.slideshare.net/alterway/
                        damien.seguy@alterway.fr
mercredi 9 mars 2011
mercredi 9 mars 2011
Outils

                       Détecteurs automatiques
                          Auditeurs statiques
                       Revue manuelle
                          Audits croisés
                          Ajouter une fiche de recette

mercredi 9 mars 2011
Tout le monde aime ça

                       Graphiques, camemberts, courbes...
                       Tableaux
                       Prévisions, constatations



mercredi 9 mars 2011
Pour qui?
                         Clients /
                                                 Développeurs
                        utilisateurs


                                       Projet


                         Chef de
                                                Administrateurs
                          projet
mercredi 9 mars 2011
Personne n’aime les écrire

                       Documentations cul-de-sac
                       Temps perdu
                       Jamais lu
                       Tout le monde se plaint de ne jamais en avoir


mercredi 9 mars 2011
Une activité complète

                       Prendre les informations
                       Les rédiger
                       Les relire
                       Les valider
                       Les faire comprendre

mercredi 9 mars 2011
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 recommence

mercredi 9 mars 2011
Les développeurs
                       Les clients et utilisateurs
                       Le chef de projet
                       Les administrateurs


mercredi 9 mars 2011
Comment documenter?

                       Établir un document texte, tableur
                       Le partager entre les intervenants
                          En lecture seule pour les autres
                       Automatiser la vérification du document


mercredi 9 mars 2011
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
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éveloppement


mercredi 9 mars 2011
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 possible

mercredi 9 mars 2011
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é,
                          sauvegarde

mercredi 9 mars 2011
mercredi 9 mars 2011
Evitez les réducteurs

                       Peut, pourrais
                       petit, léger, rapide, simple, light
                       beta, version x.xx.01




mercredi 9 mars 2011

Contenu connexe

PPSX
Presentation
ODP
Mantova Aristide
PDF
Estrategias calidad turismo hitorico religiosos
PDF
Torque
PPT
déterminants possessifs
PPT
Arroyo las tunas
PPT
Derecho del Trabajo I. Curso 2010 2011. UAB. ADE.
PDF
Retour sur 2 ans d'aventures
Presentation
Mantova Aristide
Estrategias calidad turismo hitorico religiosos
Torque
déterminants possessifs
Arroyo las tunas
Derecho del Trabajo I. Curso 2010 2011. UAB. ADE.
Retour sur 2 ans d'aventures

En vedette (20)

PPTX
Nuevos medios para la comunicación y el periodismo
PPT
Assises du Tourisme 2009 - F. Asselin, Coop Vallée Bras du Nord
PPT
Presentacion e-Scout Fundación Balia
PPT
Réseaux sociaux ecole athena 27 juin 2012
PDF
(5econf) 16h45 JMap Radar Slide Show
PDF
Prix sfr jeunes_talents_2012_-_fi.she.s
PDF
Crowdfunding Proyectos Conecta
PDF
Comentario del Dictamen del Consejo de Garantías Estatutarias de la Generalit...
PDF
Semaine Ecole Entreprise 2014 : Présentation de l'opération
PPS
Chamonix Aiguille Du Midi
PPTX
2012 année du décollage du paiement sans contact ?
PDF
Conecta móvil e Internet Segura, La Rueca
PDF
Commission de Venise, rapporto immunità
PDF
Livre blanc Linkedin, nouveau territoire de communication
PPTX
Licencias creative commons
PPSX
Bilan chantiers éducatifs 2012
PPS
Learning model
PPTX
HIF Paris 2014 - VMWARE - Déployez l’IT as a Service dans votre société
PPTX
Unidad 3
Nuevos medios para la comunicación y el periodismo
Assises du Tourisme 2009 - F. Asselin, Coop Vallée Bras du Nord
Presentacion e-Scout Fundación Balia
Réseaux sociaux ecole athena 27 juin 2012
(5econf) 16h45 JMap Radar Slide Show
Prix sfr jeunes_talents_2012_-_fi.she.s
Crowdfunding Proyectos Conecta
Comentario del Dictamen del Consejo de Garantías Estatutarias de la Generalit...
Semaine Ecole Entreprise 2014 : Présentation de l'opération
Chamonix Aiguille Du Midi
2012 année du décollage du paiement sans contact ?
Conecta móvil e Internet Segura, La Rueca
Commission de Venise, rapporto immunità
Livre blanc Linkedin, nouveau territoire de communication
Licencias creative commons
Bilan chantiers éducatifs 2012
Learning model
HIF Paris 2014 - VMWARE - Déployez l’IT as a Service dans votre société
Unidad 3
Publicité

Similaire à Décrire son projet php dans des rapports confoo 2011 (16)

KEY
Design patterns
KEY
Design patterns
PPTX
Chp1 intro conception
PPTX
Chp1 intro conception
PPTX
Cours_Magistral_Seance_1.pptx pour la conception orienté objet
PPS
Adbs 5 à 7 : une nouvelle norme pour le thesaurus
PPTX
Café numérique utilisabilité et accessibilité
PDF
comment rédiger une expression de besoins
PDF
F2 - Application de la pensée systémique (systèmes thinking) par le jeu
PDF
AUF11 - 01 Introduction
 
PDF
Novelys Presentation
PDF
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
PPTX
A11y pas à pas
PDF
Journée PluriTAL 2012 -Juliette Kahn
PPTX
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
PPTX
Common features in webapi aspnetcore
Design patterns
Design patterns
Chp1 intro conception
Chp1 intro conception
Cours_Magistral_Seance_1.pptx pour la conception orienté objet
Adbs 5 à 7 : une nouvelle norme pour le thesaurus
Café numérique utilisabilité et accessibilité
comment rédiger une expression de besoins
F2 - Application de la pensée systémique (systèmes thinking) par le jeu
AUF11 - 01 Introduction
 
Novelys Presentation
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
A11y pas à pas
Journée PluriTAL 2012 -Juliette Kahn
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
Common features in webapi aspnetcore
Publicité

Plus de ALTER WAY (20)

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

Décrire son projet php dans des rapports confoo 2011

  • 1. Décrire un projet PHP dans des rapports Confoo 2011, Montréal, Québec, Canada 9 mars 2011 mercredi 9 mars 2011
  • 2. Agenda Pourquoi il faut tout rapporter? Sujets et contenus Outils et méthodes mercredi 9 mars 2011
  • 3. Qui parle? Damien Seguy Consultant chez Alter Way Consulting Alter Way Group Industrialisation des développements PHP [email protected] mercredi 9 mars 2011
  • 4. Yes, we take questions mercredi 9 mars 2011
  • 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 travail mercredi 9 mars 2011
  • 7. Exemples Conventions de code Référentiel de sécurité Plan d’urbanisme Planning de travail La conception mercredi 9 mars 2011
  • 8. Conventions de code Objectif : coder de manière uniforme Contenu : liste de règles à appliquer mercredi 9 mars 2011
  • 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. Section Nom de la règle Description littérale Exemples et non-exemples Obligatoire, recommandation, bonne pratique mercredi 9 mars 2011
  • 11. Outils PHP_CodeSniffer + développement spécifique Séances de corrections du code mercredi 9 mars 2011
  • 12. Récapitulatif Procéder par liste Procéder par exemple Donnez des noms Intégrez le document dans le quotidien mercredi 9 mars 2011
  • 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. 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 recette mercredi 9 mars 2011
  • 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 validation mercredi 9 mars 2011
  • 16. Récapitulatif Exploitez les référentiels Ou un gourou / expert Capitalisez par l’exemple mercredi 9 mars 2011
  • 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’application mercredi 9 mars 2011
  • 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 crash mercredi 9 mars 2011
  • 19. Outils Schéma Visio, Dia, Omnigraffle, Xmind Tableaux mercredi 9 mars 2011
  • 20. Récapitulatif Document commun : doit être partagé, évolutif Utiliser des schémas mercredi 9 mars 2011
  • 21. Planning de travail Objectif : organiser l’action dans le temps Contenu : liste des points clés du projet mercredi 9 mars 2011
  • 22. Structure Planning du projet Liste de tâches et réunions Liste des cycles de travail Découpage hebdomadaire mercredi 9 mars 2011
  • 23. Réunions Point projet Réunion technique Daily scrum Revue de cycle mercredi 9 mars 2011
  • 24. Taches Audits croisés Tests Relecture de code Validation avant commit du jour Mise en Production mercredi 9 mars 2011
  • 25. Détails des activités Nom de l’activité Fréquence Durée : % et durée effective Acteurs Sujets abordés Résultats attendus mercredi 9 mars 2011
  • 26. Occupation 10 % 10 % 10 % 50 % 20 % Dev Tests Rapports Qualité MeP mercredi 9 mars 2011
  • 27. Outils Calendrier Diagrammes de Gantt mercredi 9 mars 2011
  • 28. Document de conception Objectif : rassembler tout ce qui contribue à la progression du projet Structure : dictionnaire des concepts mercredi 9 mars 2011
  • 29. Sommaire Objectifs de l’application Glossaire Procédés particuliers Liste de noms mercredi 9 mars 2011
  • 30. Objectifs de l’application Rappel des objectifs métier Donne une vision d’ensemble Liste les cas d’utilisation mercredi 9 mars 2011
  • 31. Glossaire Dictionnaire des termes utilisés Sigles Termes métier Synonymes Donner des illustrations mercredi 9 mars 2011
  • 32. Procédés particuliers Explications des algorithmes Schéma rapide du fonctionnement Exemples d’application mercredi 9 mars 2011
  • 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 fichiers mercredi 9 mars 2011
  • 34. Listes de noms Classes : diagrammes de classes, de paquets Tables : MCD Le reste : des tableaux en traitement de texte mercredi 9 mars 2011
  • 35. Outils Diagrammes de classes ArgoUML, StarUML MCD Mysql Workbench, Power Architect Traitement de texte Format extractible, vérifiable mercredi 9 mars 2011
  • 36. Récapitulatif Savoir vérifier l’application de la conception Savoir faire évoluer la conception au besoin Beaucoup d’outils Faites un choix mercredi 9 mars 2011
  • 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ébut mercredi 9 mars 2011
  • 41. Outils Détecteurs automatiques Auditeurs statiques Revue manuelle Audits croisés Ajouter une fiche de recette mercredi 9 mars 2011
  • 42. Tout le monde aime ça Graphiques, camemberts, courbes... Tableaux Prévisions, constatations mercredi 9 mars 2011
  • 43. Pour qui? Clients / Développeurs utilisateurs Projet Chef de Administrateurs projet mercredi 9 mars 2011
  • 44. Personne n’aime les écrire Documentations cul-de-sac Temps perdu Jamais lu Tout le monde se plaint de ne jamais en avoir mercredi 9 mars 2011
  • 45. Une activité complète Prendre les informations Les rédiger Les relire Les valider Les faire comprendre mercredi 9 mars 2011
  • 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 recommence mercredi 9 mars 2011
  • 47. Les développeurs Les clients et utilisateurs Le chef de projet Les administrateurs mercredi 9 mars 2011
  • 48. Comment documenter? Établir un document texte, tableur Le partager entre les intervenants En lecture seule pour les autres Automatiser la vérification du document mercredi 9 mars 2011
  • 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. 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éveloppement mercredi 9 mars 2011
  • 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 possible mercredi 9 mars 2011
  • 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é, sauvegarde mercredi 9 mars 2011
  • 54. Evitez les réducteurs Peut, pourrais petit, léger, rapide, simple, light beta, version x.xx.01 mercredi 9 mars 2011