Upload
xp-day-ch
View
366
Download
2
Embed Size (px)
DESCRIPTION
Le métier et le rôle du développeur ont fortement évolués au cours des 10 dernières années du fait notamment de l'adoption massive des méthodologies agiles. De manière ludique, cette session mettra en lumière cette évolution et ces enjeux. Freddy Mallet
Citation preview
20102009
Genève 20119 mai
xpday.ch
« Un développeur est-il un numéro, un coût journalier ou un artiste ? »
Freddy Mallet
- D1 -
Il était une fois des autodidactes
Le savant génial
Le super héros
L'individualiste
C'est mon jouet !
L'homme
Les technologies se complexifient
COBOLJava, .Net,Web,
Clouds, Ruby, Scala, NoSQL, SOAP, N tiers,Play, GWT, ...
Les attentes du métier augmentent
L'outillage évolue
Makefile
Gestionnairede source
Gestionnairede projet technique
Gestionnairede tickets
IntégrationContinue
Refactoringdepuis l'IDE
VI / Emacs
Tests unitaires
InspectionContinue
Les exigences évoluentGestionnaire de configuration
Aucune modification ne passe en production sans avoir été préalablement placée sous contrôle de version
L'ensemble cohérent des sources d'une version applicative doit pouvoir être retrouvé aisément dans le gestionnaire de source
Les exigences évoluentIntégration continue
Le code contenu dans le gestionnaire de source doit pouvoir être compilé à tout moment et par n'importe qui
L'exécution des tests unitaires fait pleinement parti du processus de construction
La sortie du processus de construction est un livrable prêt à l'emploi
Si une des exigences ci dessus n'est plus respectée, rien n'est plus important que de la corriger
Les exigences évoluentInspection Continue
Tout nouveau code doit être accompagné de tests unitaires
Aucune méthode ne doit excéder un seuil de complexité
Aucun code ne doit être dupliqué ...
L'aventurier est perdu
La mission évolue
« Get It Done » et « Do It Right »
Tout est maintenance évolutive !
Création d'une application
Maintenance D'une l'application
Une application est vivante
Inspection Continue
« A well-written program is a program where the cost of implementing a feature
is constant throughout the program's lifetime. »
Itay Maman
La dette technique
Comment mesurer cette dette ?
Les 7 péchés capitauxDu développeur
Péchés
Dette technique
Exemple de dégradation structurelle
Développeur, aujourd'hui et demain ?
L'entêtement est toujours possible
Développement : activité linéaire !
Spécifications
Code Source
Ce n'est pas complexe
9 femmes peuvent faire un enfant en 1 mois !
Les tests ça coutent chers !
On spécifie puis on ... développe
externalise, outsource
Je n'attends rien du développeur excepté du
code source
Des aspirations naissent
Complexité
Passion
Expérience
Intuition
Création
Une métaphore n'est qu'une image
Le développeur est un artiste !
Le développeur est un jardinier !
Mais les choses sont plus simples
Professionnalisation
Artisanat ou Industrie ?
L’industrie est l'ensemble des activités humaines tournées vers la production en série de biens ; elle sous-entend : une certaine division du travail, contrairement à
l'artisanat où la même personne assure théoriquement l'ensemble des processus : étude, fabrication, commercialisation, gestion
une notion d'échelle, on parle de « quantités industrielles » lorsque le nombre de pièces identiques atteint un certain chiffre
Une démarche et des outils
Feedback Driven Development
Revue « collégiale » de la fonctionnalité
Revue « collégiale » du design
Détermination du plus petit incrément fonctionnel
Détermination du plus petit incrément technique
Ecrire un test en échec
Ecrire le code pour faire passer le test dans le vert
Refactorer le code
Automatisation d'un test d'intégration
Pousser le changement
Coach, où es-tu ?
A chacun sa vision
Amateur
NuméroCompagnon
Professionnel
Artisan
Intermittent
Jardinier
Mais quel potentiel d'évolution !
Questions & Réponses
Merci http://www.sonarsource.org http://www.sonarsource.com