SlideShare une entreprise Scribd logo
1  sur  54
Télécharger pour lire hors ligne
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

Similaire à Décrire un projet PHP dans des rapports

Adbs 5 à 7 : une nouvelle norme pour le thesaurus
Adbs 5 à 7 : une nouvelle norme pour le thesaurusAdbs 5 à 7 : une nouvelle norme pour le thesaurus
Adbs 5 à 7 : une nouvelle norme pour le thesaurus2helene
 
Café numérique utilisabilité et accessibilité
Café numérique utilisabilité et accessibilitéCafé numérique utilisabilité et accessibilité
Café numérique utilisabilité et accessibilitéCafé Numérique
 
comment rédiger une expression de besoins
comment rédiger une expression de besoinscomment rédiger une expression de besoins
comment rédiger une expression de besoinsAlexandre Zermati
 
F2 - Application de la pensée systémique (systèmes thinking) par le jeu
F2 - Application de la pensée systémique (systèmes thinking) par le jeuF2 - Application de la pensée systémique (systèmes thinking) par le jeu
F2 - Application de la pensée systémique (systèmes thinking) par le jeuXP Day CH
 
AUF11 - 01 Introduction
AUF11 - 01 IntroductionAUF11 - 01 Introduction
AUF11 - 01 Introductionotb
 
Novelys Presentation
Novelys PresentationNovelys Presentation
Novelys PresentationNovelys
 
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
Petit DéJeuner Industrialisation 13 10 2011 EurositesPetit DéJeuner Industrialisation 13 10 2011 Eurosites
Petit DéJeuner Industrialisation 13 10 2011 EurositesHervé Leclerc
 
Journée PluriTAL 2012 -Juliette Kahn
Journée PluriTAL 2012 -Juliette KahnJournée PluriTAL 2012 -Juliette Kahn
Journée PluriTAL 2012 -Juliette KahnAFTAL
 
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...PimpMySharePoint
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcoreMSDEVMTL
 

Similaire à Décrire un projet PHP dans des rapports (11)

Adbs 5 à 7 : une nouvelle norme pour le thesaurus
Adbs 5 à 7 : une nouvelle norme pour le thesaurusAdbs 5 à 7 : une nouvelle norme pour le thesaurus
Adbs 5 à 7 : une nouvelle norme pour le thesaurus
 
Café numérique utilisabilité et accessibilité
Café numérique utilisabilité et accessibilitéCafé numérique utilisabilité et accessibilité
Café numérique utilisabilité et accessibilité
 
comment rédiger une expression de besoins
comment rédiger une expression de besoinscomment rédiger une expression de besoins
comment rédiger une expression de besoins
 
F2 - Application de la pensée systémique (systèmes thinking) par le jeu
F2 - Application de la pensée systémique (systèmes thinking) par le jeuF2 - Application de la pensée systémique (systèmes thinking) par le jeu
F2 - Application de la pensée systémique (systèmes thinking) par le jeu
 
AUF11 - 01 Introduction
AUF11 - 01 IntroductionAUF11 - 01 Introduction
AUF11 - 01 Introduction
 
Novelys Presentation
Novelys PresentationNovelys Presentation
Novelys Presentation
 
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
Petit DéJeuner Industrialisation 13 10 2011 EurositesPetit DéJeuner Industrialisation 13 10 2011 Eurosites
Petit DéJeuner Industrialisation 13 10 2011 Eurosites
 
A11y pas à pas
A11y pas à pasA11y pas à pas
A11y pas à pas
 
Journée PluriTAL 2012 -Juliette Kahn
Journée PluriTAL 2012 -Juliette KahnJournée PluriTAL 2012 -Juliette Kahn
Journée PluriTAL 2012 -Juliette Kahn
 
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
La Gouvernance, ou comment rapprocher les équipes de développement et d’infra...
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcore
 

Plus de ConFoo

Debugging applications with network security tools
Debugging applications with network security toolsDebugging applications with network security tools
Debugging applications with network security toolsConFoo
 
The business behind open source
The business behind open sourceThe business behind open source
The business behind open sourceConFoo
 
Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?ConFoo
 
OWASP Enterprise Security API
OWASP Enterprise Security APIOWASP Enterprise Security API
OWASP Enterprise Security APIConFoo
 
Opensource Authentication and Authorization
Opensource Authentication and AuthorizationOpensource Authentication and Authorization
Opensource Authentication and AuthorizationConFoo
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesConFoo
 
Le bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuagesLe bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuagesConFoo
 
The Solar Framework for PHP
The Solar Framework for PHPThe Solar Framework for PHP
The Solar Framework for PHPConFoo
 
Server Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and WatchdogServer Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and WatchdogConFoo
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+ConFoo
 
Think Mobile First, Then Enhance
Think Mobile First, Then EnhanceThink Mobile First, Then Enhance
Think Mobile First, Then EnhanceConFoo
 
Metaprogramming in Ruby
Metaprogramming in RubyMetaprogramming in Ruby
Metaprogramming in RubyConFoo
 
Scalable Architecture 101
Scalable Architecture 101Scalable Architecture 101
Scalable Architecture 101ConFoo
 
As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?ConFoo
 
Pragmatic Guide to Git
Pragmatic Guide to GitPragmatic Guide to Git
Pragmatic Guide to GitConFoo
 
Building servers with Node.js
Building servers with Node.jsBuilding servers with Node.js
Building servers with Node.jsConFoo
 
An Overview of Flash Storage for Databases
An Overview of Flash Storage for DatabasesAn Overview of Flash Storage for Databases
An Overview of Flash Storage for DatabasesConFoo
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump StartConFoo
 
Develop mobile applications with Flex
Develop mobile applications with FlexDevelop mobile applications with Flex
Develop mobile applications with FlexConFoo
 
WordPress pour le développement d'aplications web
WordPress pour le développement d'aplications webWordPress pour le développement d'aplications web
WordPress pour le développement d'aplications webConFoo
 

Plus de ConFoo (20)

Debugging applications with network security tools
Debugging applications with network security toolsDebugging applications with network security tools
Debugging applications with network security tools
 
The business behind open source
The business behind open sourceThe business behind open source
The business behind open source
 
Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?
 
OWASP Enterprise Security API
OWASP Enterprise Security APIOWASP Enterprise Security API
OWASP Enterprise Security API
 
Opensource Authentication and Authorization
Opensource Authentication and AuthorizationOpensource Authentication and Authorization
Opensource Authentication and Authorization
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
 
Le bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuagesLe bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuages
 
The Solar Framework for PHP
The Solar Framework for PHPThe Solar Framework for PHP
The Solar Framework for PHP
 
Server Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and WatchdogServer Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and Watchdog
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
 
Think Mobile First, Then Enhance
Think Mobile First, Then EnhanceThink Mobile First, Then Enhance
Think Mobile First, Then Enhance
 
Metaprogramming in Ruby
Metaprogramming in RubyMetaprogramming in Ruby
Metaprogramming in Ruby
 
Scalable Architecture 101
Scalable Architecture 101Scalable Architecture 101
Scalable Architecture 101
 
As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?
 
Pragmatic Guide to Git
Pragmatic Guide to GitPragmatic Guide to Git
Pragmatic Guide to Git
 
Building servers with Node.js
Building servers with Node.jsBuilding servers with Node.js
Building servers with Node.js
 
An Overview of Flash Storage for Databases
An Overview of Flash Storage for DatabasesAn Overview of Flash Storage for Databases
An Overview of Flash Storage for Databases
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump Start
 
Develop mobile applications with Flex
Develop mobile applications with FlexDevelop mobile applications with Flex
Develop mobile applications with Flex
 
WordPress pour le développement d'aplications web
WordPress pour le développement d'aplications webWordPress pour le développement d'aplications web
WordPress pour le développement d'aplications web
 

Décrire un projet PHP dans des rapports

  • 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 damien.seguy@alterway.fr 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
  • 39. http://www.slideshare.net/alterway/ damien.seguy@alterway.fr 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