SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
Documentation
intrinsèque
Human Talks Lyon – Mars 2014 – Hébergé par l’INSA
Clément Bouillier - @clem_bouillier
Qui suis-je ?
Architecte/chef de projet/consultant mais avant tout
ARTISAN DEVELOPPEUR
> Twitter : @clem_bouillier
Membre actif des groupes suivants
> DevLyon : groupe de développeurs partageant une vision de
l’informatique créant de la valeur  http://devlyon.fr
> MUG Lyon : groupe de passionnés de technologies en
environnement Microsoft sur Lyon
> Fier d’être développeur : groupe visant à promouvoir le métier
de développeur en France  http://fierdetredeveloppeur.org/
La documentation,
c’est un peu comme
la qualité…
(…tout le monde en parle, très peu en font…)
…on vous explique les
processus à suivre pour y
arriver (ou pas!)
Exemples typiques :
Qualité = spécifications exhaustives, plans de tests, usine de tests manuels…
Documentation = spécifications exhaustives upfront, code commenté, wiki après
avoir codé…
Tout ça au bon moment dans le cycle projet évidemment !
…et pourtant le résultat est
régulièrement le même…
Qualité en
apparence (pour
le client, à la
« recette »)
 Aller vers la
QUALITE
INTRINSEQUE
Documentation
désynchronisée de la
réalité
(voire le néant)
 Aller vers la
DOCUMENTATION
INTRINSEQUE
Qualité et documentation
intrinsèque vont de pair
Ne demande pas d’activités spécialisées ayant un autre but que :
« Produire un logiciel opérationnel PLUS QU’une documentation exhaustive »
1. Documentation fonctionnelle
Développement piloté par
l’expérience utilisateur  User
Story
…inspirez-vous du Story
Mapping…«understanding what your whole system is intended to do » - Jeff Patton
…puis outillez légèrement
Conserver les éléments notés autour des User Story lors de la réalisation
(1 User Story = 3C : carte, conversation, confirmation)
+
Regrouper les User Story par Theme/Activité fonctionnel(le)
+
Gérer les User Story obsolètes (suppression/évolutions)
+ Taches…
+ Test Cases…
…et documenter avec une
démarche BDD
Piloter vos développements par la description du comportement métier désiré
« Conversation » et « confirmation » (cf. 3C) sont intimement liés
Le code est fonctionnellement lié à la User Story
2. Documentation technique
Code explicite
PLUS QUE code commenté
Eviter les commentaires quand vous pouvez expliciter la même chose dans le code
Reprenez les termes métiers dans votre code
/! aux abstractions et aux APIs : à documenter (JavaDoc…)
// check to see if employee is eligible for full benefits
if ((employee.flags & HOURLY_FLAG)
&& employee.age > 65)
if (employee.isEligibleForFullBenefits())
Chapitre 4 de Clean Code – Uncle Bob
TDD = Test Driven
Development, mais aussi
DESIGN (= conception)
Conception incrémentale PLUS QUE « upfront »
+
Documentation des intentions plus que la structure
+
BONUS : tests automatisés  non-régression
Et en complément…
Commentaires de commit propres (liés au User Story en BONUS)
+
Un wiki pour documenter
1. les pratiques de l’équipe
2. les exigences transverses
Toutes ces pratiques portent la
documentation
= Documentation intrinsèque
User Story/Story Mapping
BDD
TDD
Code explicite
PLUS QUE des processus de documentation complémentaires
Vous ne les connaissez pas ? Etudiez, entrainez-vous au plus vite…
MERCI
QUESTIONS ?
ROTI ?

Más contenido relacionado

Destacado

Briana sánchez valencia
Briana sánchez valenciaBriana sánchez valencia
Briana sánchez valenciabrianitasanchez
 
Le Zapping (Lettre d'information de la ville de Pia)
Le Zapping  (Lettre d'information de la ville de Pia)Le Zapping  (Lettre d'information de la ville de Pia)
Le Zapping (Lettre d'information de la ville de Pia)Francis Renault
 
Créer une adresse mail
Créer une adresse mailCréer une adresse mail
Créer une adresse mailAudrey Lebon
 
Pensamiento crítico
Pensamiento críticoPensamiento crítico
Pensamiento críticoTeonilo
 
Le Courage Doser P Point
Le Courage Doser P PointLe Courage Doser P Point
Le Courage Doser P PointPeterneau2
 
Dia de la salud stheffy
Dia de la salud stheffyDia de la salud stheffy
Dia de la salud stheffyestefania67
 
Si dos hombre desean lo mismo se vuelven enemigos
Si dos hombre desean  lo mismo se vuelven enemigos Si dos hombre desean  lo mismo se vuelven enemigos
Si dos hombre desean lo mismo se vuelven enemigos Bruno Cabrera
 
Act cuadrilateros adolfo, danny, ximena
Act cuadrilateros adolfo, danny, ximenaAct cuadrilateros adolfo, danny, ximena
Act cuadrilateros adolfo, danny, ximenaadolfoa11
 
Elementos de máquinas II
Elementos de máquinas IIElementos de máquinas II
Elementos de máquinas IIJaiter Salazar
 
WOR(l)D Plan de commissions
WOR(l)D Plan de commissionsWOR(l)D Plan de commissions
WOR(l)D Plan de commissionsDZ WORLD TEAM
 
FAES conseil de gouvernement.
FAES conseil de gouvernement.FAES conseil de gouvernement.
FAES conseil de gouvernement.laurentlamothe
 
Ville de nantes
Ville de nantesVille de nantes
Ville de nantesChaCorbel
 
Restitution des travaux sur les stratégies Sahel
Restitution des travaux sur les stratégies SahelRestitution des travaux sur les stratégies Sahel
Restitution des travaux sur les stratégies SahelRhys Williams
 

Destacado (19)

Briana sánchez valencia
Briana sánchez valenciaBriana sánchez valencia
Briana sánchez valencia
 
Le Zapping (Lettre d'information de la ville de Pia)
Le Zapping  (Lettre d'information de la ville de Pia)Le Zapping  (Lettre d'information de la ville de Pia)
Le Zapping (Lettre d'information de la ville de Pia)
 
Netiqueta
NetiquetaNetiqueta
Netiqueta
 
Créer une adresse mail
Créer une adresse mailCréer une adresse mail
Créer une adresse mail
 
Pensamiento crítico
Pensamiento críticoPensamiento crítico
Pensamiento crítico
 
FRACTURAS Y LESIONES
FRACTURAS Y LESIONESFRACTURAS Y LESIONES
FRACTURAS Y LESIONES
 
Avis voyageurs
Avis voyageursAvis voyageurs
Avis voyageurs
 
Le Courage Doser P Point
Le Courage Doser P PointLe Courage Doser P Point
Le Courage Doser P Point
 
Montañas
MontañasMontañas
Montañas
 
How to install gwt and maven
How to install gwt and maven How to install gwt and maven
How to install gwt and maven
 
Dia de la salud stheffy
Dia de la salud stheffyDia de la salud stheffy
Dia de la salud stheffy
 
Si dos hombre desean lo mismo se vuelven enemigos
Si dos hombre desean  lo mismo se vuelven enemigos Si dos hombre desean  lo mismo se vuelven enemigos
Si dos hombre desean lo mismo se vuelven enemigos
 
Act cuadrilateros adolfo, danny, ximena
Act cuadrilateros adolfo, danny, ximenaAct cuadrilateros adolfo, danny, ximena
Act cuadrilateros adolfo, danny, ximena
 
Elementos de máquinas II
Elementos de máquinas IIElementos de máquinas II
Elementos de máquinas II
 
WOR(l)D Plan de commissions
WOR(l)D Plan de commissionsWOR(l)D Plan de commissions
WOR(l)D Plan de commissions
 
La famille de Sophie
La famille de SophieLa famille de Sophie
La famille de Sophie
 
FAES conseil de gouvernement.
FAES conseil de gouvernement.FAES conseil de gouvernement.
FAES conseil de gouvernement.
 
Ville de nantes
Ville de nantesVille de nantes
Ville de nantes
 
Restitution des travaux sur les stratégies Sahel
Restitution des travaux sur les stratégies SahelRestitution des travaux sur les stratégies Sahel
Restitution des travaux sur les stratégies Sahel
 

Más de Clement Bouillier

EventStorming Agile Tour Aix-Marseille
EventStorming Agile Tour Aix-MarseilleEventStorming Agile Tour Aix-Marseille
EventStorming Agile Tour Aix-MarseilleClement Bouillier
 
20141021 - Coding dojo EventSourcing
20141021 - Coding dojo EventSourcing20141021 - Coding dojo EventSourcing
20141021 - Coding dojo EventSourcingClement Bouillier
 
20140227 - injection de dépendances - mug lyon
20140227 - injection de dépendances - mug lyon20140227 - injection de dépendances - mug lyon
20140227 - injection de dépendances - mug lyonClement Bouillier
 
20131210 - Hacker l’agilité - Human Talks Lyon
20131210 - Hacker l’agilité - Human Talks Lyon20131210 - Hacker l’agilité - Human Talks Lyon
20131210 - Hacker l’agilité - Human Talks LyonClement Bouillier
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyonClement Bouillier
 
20131008 - uxda - human talk
20131008 - uxda - human talk20131008 - uxda - human talk
20131008 - uxda - human talkClement Bouillier
 

Más de Clement Bouillier (7)

EventStorming Agile Tour Aix-Marseille
EventStorming Agile Tour Aix-MarseilleEventStorming Agile Tour Aix-Marseille
EventStorming Agile Tour Aix-Marseille
 
20141021 - Coding dojo EventSourcing
20141021 - Coding dojo EventSourcing20141021 - Coding dojo EventSourcing
20141021 - Coding dojo EventSourcing
 
20140227 - injection de dépendances - mug lyon
20140227 - injection de dépendances - mug lyon20140227 - injection de dépendances - mug lyon
20140227 - injection de dépendances - mug lyon
 
20131214 - gdcr 2013 - lyon
20131214 - gdcr 2013 - lyon20131214 - gdcr 2013 - lyon
20131214 - gdcr 2013 - lyon
 
20131210 - Hacker l’agilité - Human Talks Lyon
20131210 - Hacker l’agilité - Human Talks Lyon20131210 - Hacker l’agilité - Human Talks Lyon
20131210 - Hacker l’agilité - Human Talks Lyon
 
20131024 qualité de code et sonar - mug lyon
20131024   qualité de code et sonar - mug lyon20131024   qualité de code et sonar - mug lyon
20131024 qualité de code et sonar - mug lyon
 
20131008 - uxda - human talk
20131008 - uxda - human talk20131008 - uxda - human talk
20131008 - uxda - human talk
 

20140311 - Documentation intrinsèque - Human Talks

  • 1. Documentation intrinsèque Human Talks Lyon – Mars 2014 – Hébergé par l’INSA Clément Bouillier - @clem_bouillier
  • 2. Qui suis-je ? Architecte/chef de projet/consultant mais avant tout ARTISAN DEVELOPPEUR > Twitter : @clem_bouillier Membre actif des groupes suivants > DevLyon : groupe de développeurs partageant une vision de l’informatique créant de la valeur  http://devlyon.fr > MUG Lyon : groupe de passionnés de technologies en environnement Microsoft sur Lyon > Fier d’être développeur : groupe visant à promouvoir le métier de développeur en France  http://fierdetredeveloppeur.org/
  • 3. La documentation, c’est un peu comme la qualité… (…tout le monde en parle, très peu en font…)
  • 4. …on vous explique les processus à suivre pour y arriver (ou pas!) Exemples typiques : Qualité = spécifications exhaustives, plans de tests, usine de tests manuels… Documentation = spécifications exhaustives upfront, code commenté, wiki après avoir codé… Tout ça au bon moment dans le cycle projet évidemment !
  • 5. …et pourtant le résultat est régulièrement le même…
  • 6. Qualité en apparence (pour le client, à la « recette »)  Aller vers la QUALITE INTRINSEQUE Documentation désynchronisée de la réalité (voire le néant)  Aller vers la DOCUMENTATION INTRINSEQUE
  • 7. Qualité et documentation intrinsèque vont de pair Ne demande pas d’activités spécialisées ayant un autre but que : « Produire un logiciel opérationnel PLUS QU’une documentation exhaustive »
  • 9. Développement piloté par l’expérience utilisateur  User Story
  • 10. …inspirez-vous du Story Mapping…«understanding what your whole system is intended to do » - Jeff Patton
  • 11. …puis outillez légèrement Conserver les éléments notés autour des User Story lors de la réalisation (1 User Story = 3C : carte, conversation, confirmation) + Regrouper les User Story par Theme/Activité fonctionnel(le) + Gérer les User Story obsolètes (suppression/évolutions) + Taches… + Test Cases…
  • 12. …et documenter avec une démarche BDD Piloter vos développements par la description du comportement métier désiré « Conversation » et « confirmation » (cf. 3C) sont intimement liés Le code est fonctionnellement lié à la User Story
  • 14. Code explicite PLUS QUE code commenté Eviter les commentaires quand vous pouvez expliciter la même chose dans le code Reprenez les termes métiers dans votre code /! aux abstractions et aux APIs : à documenter (JavaDoc…) // check to see if employee is eligible for full benefits if ((employee.flags & HOURLY_FLAG) && employee.age > 65) if (employee.isEligibleForFullBenefits()) Chapitre 4 de Clean Code – Uncle Bob
  • 15. TDD = Test Driven Development, mais aussi DESIGN (= conception) Conception incrémentale PLUS QUE « upfront » + Documentation des intentions plus que la structure + BONUS : tests automatisés  non-régression
  • 16. Et en complément… Commentaires de commit propres (liés au User Story en BONUS) + Un wiki pour documenter 1. les pratiques de l’équipe 2. les exigences transverses
  • 17. Toutes ces pratiques portent la documentation = Documentation intrinsèque User Story/Story Mapping BDD TDD Code explicite PLUS QUE des processus de documentation complémentaires Vous ne les connaissez pas ? Etudiez, entrainez-vous au plus vite…