SlideShare une entreprise Scribd logo
1  sur  24
SoftwareCraftsmanship
L’artisanat pour sauver le développement
logiciel ?
Cécilia Bossard 29 mars 2016
Quijesuis?
Cécilia Bossard
Développeuse, scrum master
Software
craftsmanship
Qu’estceque
c’est?
Commentenest-onarrivéslà?
1995 1999 2001 2003 2008 2009 2010
Scrum
XP
Manifeste
Lean
DevOps
Software
Craft.
ScrumBan
Kanban
Petitrappelsurlemanifesteagile
Les individus et leurs interactions
Plus que les processus et les outils
Des logiciels opérationnels
Plus qu’une documentation exhaustive
La collaboration avec les clients
Plus que la négociation contractuelle
L’adaptation au changement
Plus que le suivi d’un plan
Enapplication
Fonctionnalités
DélaisCoût
Etdanslesfaits...
Mise en place en faisant un focus sur la
méthodologie
“On est agile, on applique le manifeste/scrum ...”
Agilehangover
“On est passé en mode agile, mais notre produit
est toujours aussi difficile à maintenir.”
“Je pensais que ça allait résoudre tous nos
problèmes.”
“On nous a menti ! L’agilité, ça ne marche pas !”
Etlaqualité?
Fonctionnalités
DélaisCoût
Qualité
Bilanpourledéveloppeur
Etsioncommençaitparfaireleschosesbien?
“The only way to go fast
is to go well”
Uncle Bob Martin
SoftwareCraftsmanshipManifesto
En tant qu’aspirants Artisans du Logiciel, nous relevons le niveau du développement
professionnel de logiciels par la pratique et en aidant les autres à acquérir le
savoir-faire. Grâce à ce travail, nous avons appris à apprécier :
Pas seulement des logiciels opérationnels
Mais aussi des logiciels bien conçus
Pas seulement l’adaptation au changement
Mais aussi l’ajout constant de la valeur
Pas seulement les individus et leurs interactions
Mais aussi une communauté de professionnels
Pas seulement la collaboration avec les clients
Mais aussi des partenariats productifs
L’artisanat?
“L'artisanat est la production de produits ou
services grâce à un savoir-faire particulier et
hors contexte industriel : l'artisan assure en
général tous les stades de sa production, de
transformation, de réparation ou de prestation de
services, et leur commercialisation”
Wikipédia
QU’estcequ’unartisanlogiciel?
Lespratiques
d’unartisan
logiciel
PratiquesXP
Cleancode
Communautés
Petproject
Fakeituntilyoumakeit
Améliorationcontinue
Apprentissage/compagnonnage
Pourensavoirplus
Pourpoursuivreleséchanges
Software Crafts(wo)manship Nantes
RDV le 19 avril

Contenu connexe

Tendances

Grosjean Agile User Experience XP DAY France 2009
Grosjean Agile User Experience XP DAY France 2009Grosjean Agile User Experience XP DAY France 2009
Grosjean Agile User Experience XP DAY France 2009Jean Claude GROSJEAN
 
Les pièges à éviter pour réussir sa transition agile
Les pièges à éviter pour réussir sa transition agileLes pièges à éviter pour réussir sa transition agile
Les pièges à éviter pour réussir sa transition agileOlivier Marquet
 
Pour Une Ergonomie Agile Pdj Sqli
Pour Une Ergonomie Agile Pdj SqliPour Une Ergonomie Agile Pdj Sqli
Pour Une Ergonomie Agile Pdj SqliWax Interactive
 
Lean Kanban Une Inversion de Controle
Lean Kanban Une Inversion de ControleLean Kanban Une Inversion de Controle
Lean Kanban Une Inversion de ControleDimitri Baeli
 
Il était une fois le Continuous Delivery chez Meetic
Il était une fois le Continuous Delivery chez MeeticIl était une fois le Continuous Delivery chez Meetic
Il était une fois le Continuous Delivery chez MeeticJoris Calabrese
 
Personal kanban breizhcamp
Personal kanban   breizhcampPersonal kanban   breizhcamp
Personal kanban breizhcampGuillaume LOURS
 
Les Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileLes Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileAgileCoach.net
 
Transition Agile 4 Real @Meetic
Transition Agile 4 Real @MeeticTransition Agile 4 Real @Meetic
Transition Agile 4 Real @Meetictdiavet
 
Hacker vos symboles: 8 hacks de réunions
Hacker vos symboles: 8 hacks de réunionsHacker vos symboles: 8 hacks de réunions
Hacker vos symboles: 8 hacks de réunionsJean Claude GROSJEAN
 
Formation sensibilisation kanban
Formation sensibilisation kanbanFormation sensibilisation kanban
Formation sensibilisation kanbanLaurent Morisseau
 

Tendances (12)

Grosjean Agile User Experience XP DAY France 2009
Grosjean Agile User Experience XP DAY France 2009Grosjean Agile User Experience XP DAY France 2009
Grosjean Agile User Experience XP DAY France 2009
 
Les pièges à éviter pour réussir sa transition agile
Les pièges à éviter pour réussir sa transition agileLes pièges à éviter pour réussir sa transition agile
Les pièges à éviter pour réussir sa transition agile
 
Kanban pour tous
Kanban pour tousKanban pour tous
Kanban pour tous
 
Pour Une Ergonomie Agile Pdj Sqli
Pour Une Ergonomie Agile Pdj SqliPour Une Ergonomie Agile Pdj Sqli
Pour Une Ergonomie Agile Pdj Sqli
 
Lean Kanban Une Inversion de Controle
Lean Kanban Une Inversion de ControleLean Kanban Une Inversion de Controle
Lean Kanban Une Inversion de Controle
 
Il était une fois le Continuous Delivery chez Meetic
Il était une fois le Continuous Delivery chez MeeticIl était une fois le Continuous Delivery chez Meetic
Il était une fois le Continuous Delivery chez Meetic
 
Personal kanban breizhcamp
Personal kanban   breizhcampPersonal kanban   breizhcamp
Personal kanban breizhcamp
 
Les Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/AgileLes Bases des Méthodes Lean/Agile
Les Bases des Méthodes Lean/Agile
 
Transition Agile 4 Real @Meetic
Transition Agile 4 Real @MeeticTransition Agile 4 Real @Meetic
Transition Agile 4 Real @Meetic
 
Hacker vos symboles: 8 hacks de réunions
Hacker vos symboles: 8 hacks de réunionsHacker vos symboles: 8 hacks de réunions
Hacker vos symboles: 8 hacks de réunions
 
Formation sensibilisation kanban
Formation sensibilisation kanbanFormation sensibilisation kanban
Formation sensibilisation kanban
 
TIAD : DevOps & continuous delivery dans le cloud
TIAD : DevOps & continuous delivery dans le cloudTIAD : DevOps & continuous delivery dans le cloud
TIAD : DevOps & continuous delivery dans le cloud
 

En vedette

소셜 네트워크
소셜 네트워크소셜 네트워크
소셜 네트워크현호 신
 
Міський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазії
Міський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазіїМіський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазії
Міський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазії08600 Vasilkov
 
Turn resistance into positive energy
Turn resistance into positive energyTurn resistance into positive energy
Turn resistance into positive energyLearning Forward
 
Дмитрий Игнатов для ФИSNA
Дмитрий Игнатов для ФИSNAДмитрий Игнатов для ФИSNA
Дмитрий Игнатов для ФИSNAAndzhey Arshavskiy
 
Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...
Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...
Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...Alkis Vazacopoulos
 
WHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETING
WHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETINGWHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETING
WHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETINGAndzhey Arshavskiy
 
Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...
Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...
Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...Alkis Vazacopoulos
 
Latihan bab6 cikgugeog
Latihan bab6 cikgugeogLatihan bab6 cikgugeog
Latihan bab6 cikgugeogKila Shakila
 
ใบงานสำรวจตนเอง M6
ใบงานสำรวจตนเอง M6ใบงานสำรวจตนเอง M6
ใบงานสำรวจตนเอง M6Fiction Lee'jslism
 
Skripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash KriptografikSkripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash KriptografikArie Purwanto
 
In search of change agency
In search of change agencyIn search of change agency
In search of change agencyCormac McGrath
 
Framework for Action for Post-Rio/Post-2015
Framework for Action for Post-Rio/Post-2015Framework for Action for Post-Rio/Post-2015
Framework for Action for Post-Rio/Post-2015Matthew Reading-Smith
 
CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...
CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...
CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...Alkis Vazacopoulos
 

En vedette (20)

Git flow in action
Git flow in actionGit flow in action
Git flow in action
 
소셜 네트워크
소셜 네트워크소셜 네트워크
소셜 네트워크
 
Міський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазії
Міський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазіїМіський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазії
Міський етап Всеукраїнського гуманітарного конкурсу КосмічнІ фантазії
 
Fin 630 u1 ip
Fin 630 u1 ipFin 630 u1 ip
Fin 630 u1 ip
 
Greece
GreeceGreece
Greece
 
Turn resistance into positive energy
Turn resistance into positive energyTurn resistance into positive energy
Turn resistance into positive energy
 
Copycat
CopycatCopycat
Copycat
 
Porto santo
Porto santoPorto santo
Porto santo
 
Дмитрий Игнатов для ФИSNA
Дмитрий Игнатов для ФИSNAДмитрий Игнатов для ФИSNA
Дмитрий Игнатов для ФИSNA
 
Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...
Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...
Time Series Estimation of Gas Furnace Data in IMPL and CPLEX Industrial Model...
 
WHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETING
WHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETINGWHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETING
WHAT IS BIG DATA? AND HOW IT APPLIED IN MODERN MARKETING
 
Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...
Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...
Generalized Capital Investment Planning w/ Sequence-Dependent Setups Industri...
 
Cataventos e cia 3
Cataventos e cia 3Cataventos e cia 3
Cataventos e cia 3
 
Latihan bab6 cikgugeog
Latihan bab6 cikgugeogLatihan bab6 cikgugeog
Latihan bab6 cikgugeog
 
ใบงานสำรวจตนเอง M6
ใบงานสำรวจตนเอง M6ใบงานสำรวจตนเอง M6
ใบงานสำรวจตนเอง M6
 
Skripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash KriptografikSkripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash Kriptografik
 
In search of change agency
In search of change agencyIn search of change agency
In search of change agency
 
Framework for Action for Post-Rio/Post-2015
Framework for Action for Post-Rio/Post-2015Framework for Action for Post-Rio/Post-2015
Framework for Action for Post-Rio/Post-2015
 
CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...
CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...
CONTINUOUSLY IMPROVE THE PERFORMANCE OF PLANNING AND SCHEDULING MODELS WITH P...
 
Dsl public
Dsl publicDsl public
Dsl public
 

Similaire à Software craftsmanship

La régression continue - Une méthode pour bien faire rater l'adoption agile ...
La régression continue - Une méthode pour bien faire rater l'adoption agile ...La régression continue - Une méthode pour bien faire rater l'adoption agile ...
La régression continue - Une méthode pour bien faire rater l'adoption agile ...Bastien Gallay
 
Brochure commerciale TEAMBER 2017
Brochure commerciale TEAMBER 2017Brochure commerciale TEAMBER 2017
Brochure commerciale TEAMBER 2017Sébastien PERROT
 
Le Design Sprint du Géant agile
Le Design Sprint du Géant agileLe Design Sprint du Géant agile
Le Design Sprint du Géant agileRachel Jolin Dubois
 
Transition Agile @ Meetic
Transition Agile @ MeeticTransition Agile @ Meetic
Transition Agile @ MeeticmeeticTech
 
Impacts de l'adoption de Scrum
Impacts de l'adoption de ScrumImpacts de l'adoption de Scrum
Impacts de l'adoption de ScrumPyxis Technologies
 
Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...
Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...
Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...Pyxis Technologies
 
Communaute dot net Montreal juin2010
Communaute dot net Montreal juin2010Communaute dot net Montreal juin2010
Communaute dot net Montreal juin2010Dominic Danis
 
Agile Wake Up #3 : Lean UX
Agile Wake Up #3 : Lean UXAgile Wake Up #3 : Lean UX
Agile Wake Up #3 : Lean UXZenika
 
Lean & Agile UX - afterwork Axance
Lean & Agile UX - afterwork AxanceLean & Agile UX - afterwork Axance
Lean & Agile UX - afterwork AxanceAlexandre Jubien
 
Grille de lecture des méthodes agiles
Grille de lecture des méthodes agilesGrille de lecture des méthodes agiles
Grille de lecture des méthodes agilesXavier Warzee
 
DevOps-Infographie-Quadran.pdf
DevOps-Infographie-Quadran.pdfDevOps-Infographie-Quadran.pdf
DevOps-Infographie-Quadran.pdfAmeur BENTOUTA
 
Pas d'agilité sans qualité
Pas d'agilité sans qualitéPas d'agilité sans qualité
Pas d'agilité sans qualitéAgile Montréal
 
Le journal d'une tortue qui sprinte autour du monde - Vincent Cleroux
Le journal d'une tortue qui sprinte autour du monde - Vincent ClerouxLe journal d'une tortue qui sprinte autour du monde - Vincent Cleroux
Le journal d'une tortue qui sprinte autour du monde - Vincent ClerouxAgile Montréal
 
Methodologies de Developpement Agiles : Scrum et XP
Methodologies de Developpement Agiles : Scrum et XPMethodologies de Developpement Agiles : Scrum et XP
Methodologies de Developpement Agiles : Scrum et XPNicolas Perriault
 
Introduction à l'agilité ensmse
Introduction à l'agilité   ensmseIntroduction à l'agilité   ensmse
Introduction à l'agilité ensmseagnes_crepet
 

Similaire à Software craftsmanship (20)

La régression continue - Une méthode pour bien faire rater l'adoption agile ...
La régression continue - Une méthode pour bien faire rater l'adoption agile ...La régression continue - Une méthode pour bien faire rater l'adoption agile ...
La régression continue - Une méthode pour bien faire rater l'adoption agile ...
 
Brochure commerciale TEAMBER 2017
Brochure commerciale TEAMBER 2017Brochure commerciale TEAMBER 2017
Brochure commerciale TEAMBER 2017
 
Le Design Sprint du Géant agile
Le Design Sprint du Géant agileLe Design Sprint du Géant agile
Le Design Sprint du Géant agile
 
Transition Agile @ Meetic
Transition Agile @ MeeticTransition Agile @ Meetic
Transition Agile @ Meetic
 
Impacts de l'adoption de Scrum
Impacts de l'adoption de ScrumImpacts de l'adoption de Scrum
Impacts de l'adoption de Scrum
 
Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...
Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...
Le rôle de l'analyste d'affaires et la place de la documentation dans un proc...
 
Agile - Que le choc commence !
Agile - Que le choc commence !Agile - Que le choc commence !
Agile - Que le choc commence !
 
Communaute dot net Montreal juin2010
Communaute dot net Montreal juin2010Communaute dot net Montreal juin2010
Communaute dot net Montreal juin2010
 
Agile Wake Up #3 : Lean UX
Agile Wake Up #3 : Lean UXAgile Wake Up #3 : Lean UX
Agile Wake Up #3 : Lean UX
 
Agile expliqué aux managers
Agile expliqué aux managersAgile expliqué aux managers
Agile expliqué aux managers
 
Lean & Agile UX - afterwork Axance
Lean & Agile UX - afterwork AxanceLean & Agile UX - afterwork Axance
Lean & Agile UX - afterwork Axance
 
Grille de lecture des méthodes agiles
Grille de lecture des méthodes agilesGrille de lecture des méthodes agiles
Grille de lecture des méthodes agiles
 
DevOps-Infographie-Quadran.pdf
DevOps-Infographie-Quadran.pdfDevOps-Infographie-Quadran.pdf
DevOps-Infographie-Quadran.pdf
 
Pas d'agilité sans qualité
Pas d'agilité sans qualitéPas d'agilité sans qualité
Pas d'agilité sans qualité
 
Le journal d'une tortue qui sprinte autour du monde - Vincent Cleroux
Le journal d'une tortue qui sprinte autour du monde - Vincent ClerouxLe journal d'une tortue qui sprinte autour du monde - Vincent Cleroux
Le journal d'une tortue qui sprinte autour du monde - Vincent Cleroux
 
Agile Tour Lille 2008
Agile Tour Lille 2008Agile Tour Lille 2008
Agile Tour Lille 2008
 
Scrum is not enough
Scrum is not enoughScrum is not enough
Scrum is not enough
 
Methodologies de Developpement Agiles : Scrum et XP
Methodologies de Developpement Agiles : Scrum et XPMethodologies de Developpement Agiles : Scrum et XP
Methodologies de Developpement Agiles : Scrum et XP
 
Introduction à l'agilité ensmse
Introduction à l'agilité   ensmseIntroduction à l'agilité   ensmse
Introduction à l'agilité ensmse
 
Agile Tour 2016 @ Lille
Agile Tour 2016 @ LilleAgile Tour 2016 @ Lille
Agile Tour 2016 @ Lille
 

Software craftsmanship

Notes de l'éditeur

  1. Approche du développemnt qui met l’accent sur les compétences des développeurs. C’est une réponse aux maux récurrents de l’industrie du logiciel, comme la priorisation des préoccupations financières vis à vis de la responsabilité du développeur. Mouvement inspiré des concepts développés dans le livre “Pragmatic Programmer” (1999) En 1992 déjà, Jack Reeves suggérait que le dévelopepment de logiciel était plus un art qu’une discipline d’ingénierie Le software craftsmanship est né en 2008 lorsque Uncle Bob a proposé une 5ème valeur au manifeste agile “L’artisanat plutôt que l’exécution”
  2. 2001
  3. Travail toujours le même, quelle que soit la méthode : On essaie de faire avec la dette technique toujours plus grande Le but est de satisfaire le client avec toujours plus de fonctionnalités, au détriment de la maintenabilité du code
  4. Date de 2009
  5. Artisanat = Savoir-faire Hors contexte industriel Apprentissage
  6. Professionnel “normal” : De l'intérêt sans passion pour son travail Pas/peu de veille technologique Pas d'investissement dans l'amélioration de ses conditions de travail Par contre, adopte les bonnes pratiques qu'on lui propose Plaisir à bien faire, à maîtriser son travail Artisan : Chercher les pratiques Qui vous réussissent Qui vous différencient de la norme
  7. Code élégant et efficace (Bjarne Stroustrup, inventeur du c++) Simple & direct (grady booch) Peut être lu et amélioré par un dev différent de celui à l’origine du code. Il a des tests unitaires et d’acceptance. Le nommage est significatif (dave thomas) Il semble avoir été écrit par quelqu’un qui s’en soucie (michael feathers) Vous savez que vous travailler avec du code propre quand chaque méthode que vous lisez est exactement celle à laquelle vous vous attendiez. Vous pouvez l’appeler “beau code” quand le code vous laisse paraître que le langage a été fait pour résoudre le problème (ward cunningham) => Clean code is Facilement accessible aux autres (direct, clair, avec de bonnes abstractions, pas de surprise, bien nommé) Est fait pour le vrai monde (a une bonne stratégie de gestion des erreurs) L’auteur se soucie clairement du logiciel et des autres développeurs Est minimal (fait une seule chose et a le moins de dépendances possible) Est bon dans ce qu’il fait
  8. Partage des pratiques Club de lecture Bown Bag Lunch User groups Conférences
  9. Mise en application des pratiques Entraînement (nouvelle pratique, nouvelle techno)
  10. Faites semblant jusqu'à le faire vraiment : Une connaissance (une nouvelle techno) Une attitude (ex TDD, parler dans une conf) Appliquez cette connaissance avec la bonne attitude Syndrome de l’imposteur
  11. Plantez-vous, corrigez et recommencez !
  12. Former les jeunes développeurs aux bonnes pratiques. Elles ne sont pas innées et nécessitent des années de pratique => Garder les bons développeurs (ne pas les forcer à passer chef de projet) et les faire encadrer les jeunes (pair-prog, revue de code…)