$30 off During Our Annual Pro Sale. View Details »

Équipes de développement : soyez experts!

Équipes de développement : soyez experts!

(Félix-Antoine Bourbonnais et Georges Saad à la #JIQ2013)

« Ignaz Semmelweis a été accusé de folie en 1847 pour avoir demandé aux médecins de se laver les mains afin de diminuer les mortalités lors des accouchements. »

Sans vouloir être accusé de folie, il existe aujourd'hui des outils, des pratiques et des approches efficaces pour améliorer la qualité de nos projets de développement. Peu importe le cadre organisationnel, tout commence par l'attitude et les techniques individuelles d'une équipe d'artisans développeurs.

L'exposé portera sur deux volets: l'attitude et la technique. Que faire pour développer des logiciels de qualité dont nous sommes fiers?

L'aspect technique s'appuiera sur les meilleures pratiquesà votre portée, qu'elles soient émergentes ou éprouvées: le TDD (développement piloté par les tests), l'ATDD/BDD (développement piloté par les tests d'acception ou le comportement), l'intégration continue, les «Mocks », les tests automatisés, etc.
Au-delà des pratiques techniques, il s'agit aussi d'adopter une attitude d'expert pour livrer une qualité à la hauteur de nos compétences par la responsabilisation et par nos décisions et convictions.

Félix-Antoine Bourbonnais

November 19, 2013
Tweet

More Decks by Félix-Antoine Bourbonnais

Other Decks in Programming

Transcript

  1. View Slide

  2. C’EST QUOI?
    Image de Robert. C. Martin

    View Slide

  3. À propos
    / C’est qui eux?!

    View Slide

  4. L’ÉTAT ACTUEL

    View Slide

  5. Parlons de professionnalisme!
    En 2012,
    / 14 % de succès
    » À temps, selon le budget et fonctionnel
    /
    57 % des projets sont contestés
    » En retard, dépassement des coûts et/ou pas totalement fonctionnel
    /
    29 % d’échec
    » Annulé ou jamais utilisé
    The Chaos Manifesto 2012,
    of The Standish Group International

    View Slide

  6. Question de budget?
    Les taux de réussite
    / 61 % : Budget de moins de 750 000 $
    / 19 % : Budget entre 750 000 $ et 3 M$
    / 2 % : Budget de plus de 10 M$
    The Chaos Report,
    of The Standish Group International

    View Slide

  7. … et l’ironie!
    / 64 % des fonctionnalités sont rarement
    ou jamais utilisées.
    The Chaos Report,
    of The Standish Group International

    View Slide

  8. Constat
    “La folie, c’est de faire toujours la
    même chose et s’attendre à un
    résultat différent.”
    Albert Einstein

    View Slide

  9. Nous sommes des
    bâtisseurs de
    cathédrales

    View Slide

  10. PARLONS
    DETTE TECHNIQUE

    View Slide

  11. C’est quoi ?
    Mais au moins, avec une carte de
    crédit, vous pouvez connaître
    exactement votre niveau
    d’endettement

    View Slide

  12. / La dette technique est tout ce
    qui rend le code difficile à
    manipuler
    / La viscosité du code !

    View Slide

  13. C’est de l’intérêt composé!

    View Slide

  14. Imaginez un monde sans…
    C’est où ça ?
    Ça va faire la
    job!
    C’tait pas réglé ce
    bogue-là ?!?
    Ah ouin ça
    fait ça ? J’sais pas pourquoi
    mais ça marche
    Mhehhh!
    Veux pas
    travailler sur ce
    projet là !
    C’est pas ma
    faute !
    2 semaines pour
    faire ça ???
    Hé! Touche
    pas à ça !

    View Slide

  15. / Principe de la
    vitre
    brisée

    View Slide

  16. PARLONS DE TESTS

    View Slide

  17. Les
    tests manuels!?

    View Slide

  18. Quels types de tests ?
    Il existe différents
    types de tests…
    » Unitaire
    » Composant
    » Fonctionnel
    » Acceptation
    » …
    Bout-
    en-
    bout
    Service
    (composants)
    Unitaire
    Selenium
    SOAPUI

    SpecFlow

    MsTest
    JUnit

    View Slide

  19. Pourquoi?
    Fragilité!

    View Slide

  20. Est-ce un rêve?
    / http://spektrummedia.com/media/conf.jiq2013.acceptancetests.swf

    View Slide

  21. Pourquoi faire
    des tests?
    Ca sert à quoi?

    View Slide

  22. PARLONS DE
    PRATIQUES DE DÉVELOPPEMENT

    View Slide

  23. Dette technique ?
    Code pas propre
    Mauvais
    nommage
    Architecture
    couplée
    Duplications
    SQL dans
    le UI
    Pas d’abstraction
    Petite rustine
    (patch)
    Plein de
    méthodes
    statiques
    Spaghetti
    Code qui ne
    parle pas…
    Domaine
    anémique
    On se dépêche à
    corriger la tonne
    de bogues

    View Slide

  24. Profitez de vos tests…
    / TDD
    / Mocks
    / ATDD et BDD
    / etc…

    View Slide

  25. Quelques pratiques architecturales
    / TDD
    / Principes OO dont le « Tell don’t Ask »
    / Principes S.O.L.I.D.
    / etc…

    View Slide

  26. INTÉGRATION CONTINUE

    View Slide

  27. Automatisation, automatisation
    automatisation…
    Continue, continue,
    continue, continue,
    continue…

    View Slide

  28. Outils de gestion

    View Slide

  29. PARLONS DES GENS

    View Slide

  30. Des ressources?!

    View Slide

  31. Malgré les apparences...
    / Les gens en
    développement
    sont intelligents et
    critiques
    / (Je sais que certains ne seront pas d’accord avec l’exemple)

    View Slide

  32. Style de gestion

    View Slide

  33. Responsabilité de tous
    Pour être prêt, il faut
    s’entraîner

    View Slide

  34. CONCLUSION

    View Slide

  35. Soyez expert !

    View Slide

  36. Qui voulez vous? …être?

    View Slide

  37. Mais le plus important…
    Soyez expert, efficient
    et fier de votre travail

    View Slide

  38. Georges Saad
    B.Ing., CSM
    twitter.com/geosaa
    linkedin.com/in/GeorgesSaad
    spektrummedia.com
    [email protected]
    Félix-Antoine Bourbonnais
    B.Ing., PSM, M.Sc.
    twitter.com/fbourbonnais
    linkedin.com/in/fbourbonnais
    elapsetech.com/fab
    [email protected]

    View Slide

  39. Lecture amusante
    / The Debt Collectors
    » Par David Norton
    » Directeur de la recherche, Gartner
    / http://blogs.gartner.com/david_norton/2013
    /10/25/the-debt-collectors/

    View Slide