Mise en place d'un projet agile
Laurent Deséchalliers
27 Octobre 2010
Plan
• Présentation Laurent Deséchalliers
• Pourquoi développer un logiciel ?
• Maquette, Logiciel et Produit
• Relation C...
But de cette conférence
Retour d'expérience sur mise en place d'un
projet selon l'esprit agile
structure naissante et de p...
Pourquoi les méthodologies agiles
• Constat sur les projets logiciels « classiques »
o Projets échouent
o Planning dérapen...
Pourquoi les méthodologies agiles
ButStopper le
« tir au canon »
Stopper le
« tir au canon »
Éviter le
« but idéalisé »
Ne...
Pourquoi les méthodologies agiles
• Les valeurs du manifeste agile
o L’interaction avec les personnes
• plutôt que les pro...
Pourquoi les méthodologies agiles
• Les valeurs du manifeste agile
o Répondre aux besoins (changeants) du client en
produi...
Laurent Deséchalliers
• 4 Start-up
o 2 éditrices de logiciel
o 2 eCommerce
Laurent Deséchalliers
• Mise en place, en partant de zéro
o méthodologies (agiles)
o Infrastructure hardware/logiciel de d...
Maquette, Logiciel, Produit
• Comment concilier :
o développement serein
o démarchage commercial « vif »
Maquette, Logiciel, Produit
• Logiciel : lourdeur synchro ressources pour
livrable..
o Forge : Build, repo,TAG svn, chanlo...
Maquette, Logiciel, Produit
• Logiciel pas forcément adapté aux
démonstrations commerciales
o Lourdeur initialisation
• Co...
Maquette, Logiciel, Produit
• Pensez une démo (maquette, adaptation du
logiciel) dès le départ
o Ré-initialisable vite et ...
Maquette, Logiciel, Produit
• Cycle logiciel/maquette
Logiciel
Logiciel Maquette
N
N+1
N+2
FeedBack
- Interne
- prospects
...
Maquette, Logiciel, Produit
• Produit
o Logiciel
• War java
• ServeurWeb Java
• Database
• ...
o Infra
• Serveur
• APWifi
...
Maquette, Logiciel, Produit
• Maquette
o Full JavaScript
o DataBase : fichier Json
o Multi-configuration client
• Opposé d...
Relation Client/Équipe de dév
• La guerre/isolation management/technique
• Les spécifications
Relation Client/Équipe de dév
• La guerre/isolation management/tekos
o Réalité dans de nombreuses entreprises
o Communique...
Relation Client/Équipe de dév
• La guerre/isolation management/tekos
o Réunion tous les matins pour les techniques
o Ce qu...
Relation Client/Équipe de dév
Source : http://runningagile.files.wordpress.com/2008/01/scrum_board.jpg?w=500
Relation Client/Équipe de dév
• La guerre/isolation management/tekos
o Réunion toute les semaines
techniques/management
o ...
Relation Client/Équipe de dév
• La guerre/isolation management/tekos
o Réunion à chaque livrable (2 4 semaines)→
• Présent...
Relation Client/Équipe de dév
• Les spécifications
o L'équipe de développement ne peut « deviner » les
besoins du client
o...
Relation Client/Équipe de dév
• Les spécifications
o Le management
• « Je sais pas faire de cahier des charges »
• « Je su...
Relation Client/Équipe de dév
• Les spécifications
o Trouver une méthodologie
• Souple mais formelle
• Rapide
• Ne figeant...
Relation Client/Équipe de dév
• Les spécifications
o MockUp
• Rapide
• « Accessible » au
management
• Convivial
o Techniqu...
Relation Client/Équipe de dév
• Les spécifications
o Cinématique
(Image source OctoTechnologie)
Relation Client/Équipe de dév
• Les spécifications
o Scénarii
• Description avec des :
o Mots : Si/alors/oui/non/OK:KO...
...
Relation Client/Équipe de dév
• Les spécifications
o Scénarii
• Management oublie souvent (pour un scénario)
o Les cas KO
...
Relation Client/Équipe de dév
• Les spécifications
OK KO (1..*)
Acteur 1
Acteur 2
Acteur 3
Production et usine logicielle
• Pourquoi une forge ?
• Quelle forge minimaliste ?
• Le poste de travail
• Comment gérer l...
Production et usine logicielle
• Pourquoi une forge ?
o Démultiplier sa productivité (et sa qualité) par le biais
d'outils...
Production et usine logicielle
• Quelle forge minimaliste ?
o Bugtrack
• Un logiciel possède forcément des bugs
• évite de...
Production et usine logicielle
• Quelle forge minimaliste ?
o Gestionnaire de version
• Mémoire » de l'évolution du logici...
Production et usine logicielle
• Quelle forge minimaliste ?
o Wiki
• Souplesse de documentation
o Système « rugueux »
 Ev...
Production et usine logicielle
• Quelle forge minimaliste ?
o Outil de déploiement
• Tester en permanence en environnement...
Production et usine logicielle
• Le poste de travail
« Do you use the best tools 
money can buy? »
Joel on software test
Production et usine logicielle
• Le poste de
travail
• Outil de
productivité
et de qualité
Production et usine logicielle
• Le poste de travail
o Investir temps dans le poste de travail
• Parfois avec des outils t...
Production et usine logicielle
• Le poste de travail
o Investir temps dans le poste de travail
PC dev
Forge
(repo)
Aplianc...
Production et usine logicielle
Conclusion
• Commencer son projet avec des bases solides
• Penser son projet comme un produit à vendre
• Faire communiquer...
Prochain SlideShare
Chargement dans…5
×

Agile Tour 2010 - Mise en place d'un projet agile

414 vues

Publié le

Retours d'expériences sur la mise en place de projets agiles dans des start-up.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
414
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
7
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Agile Tour 2010 - Mise en place d'un projet agile

  1. 1. Mise en place d'un projet agile Laurent Deséchalliers 27 Octobre 2010
  2. 2. Plan • Présentation Laurent Deséchalliers • Pourquoi développer un logiciel ? • Maquette, Logiciel et Produit • Relation Client/Équipe de dév. • Production et usine logicielle
  3. 3. But de cette conférence Retour d'expérience sur mise en place d'un projet selon l'esprit agile structure naissante et de petite taille • Pas une conférence sur les différentes méthodologies agiles
  4. 4. Pourquoi les méthodologies agiles • Constat sur les projets logiciels « classiques » o Projets échouent o Planning dérapent o Logiciels livrés sont inadaptés ➔ Trouver une méthode corrigeant ces problèmes
  5. 5. Pourquoi les méthodologies agiles ButStopper le « tir au canon » Stopper le « tir au canon » Éviter le « but idéalisé » Ne pas dépenser une énergie folle Management Technique
  6. 6. Pourquoi les méthodologies agiles • Les valeurs du manifeste agile o L’interaction avec les personnes • plutôt que les processus et les outils. o Un produit opérationnel • plutôt qu’une documentation pléthorique. o La collaboration avec le client • plutôt que la négociation de contrat. o La réactivité face au changement • plutôt que le suivi d'un plan.
  7. 7. Pourquoi les méthodologies agiles • Les valeurs du manifeste agile o Répondre aux besoins (changeants) du client en produisant - en continu - un logiciel de qualité. • Adapté aux : o Start-up o Produits innovants o Concurrence forte
  8. 8. Laurent Deséchalliers • 4 Start-up o 2 éditrices de logiciel o 2 eCommerce
  9. 9. Laurent Deséchalliers • Mise en place, en partant de zéro o méthodologies (agiles) o Infrastructure hardware/logiciel de dev. • Forge, Poste travail, réseau... o recrutement équipe ➔ Vision, dès leur naissance, de toutes les étapes de projets
  10. 10. Maquette, Logiciel, Produit • Comment concilier : o développement serein o démarchage commercial « vif »
  11. 11. Maquette, Logiciel, Produit • Logiciel : lourdeur synchro ressources pour livrable.. o Forge : Build, repo,TAG svn, chanlog... o Test : Build, recette... o MAJ Doc. : tech, commercial, mkt, site web, dossier presse... o MAJ : Packaging, logo, codes barres... o ...
  12. 12. Maquette, Logiciel, Produit • Logiciel pas forcément adapté aux démonstrations commerciales o Lourdeur initialisation • Configuration par défaut o Lourdeur remise à zéro • Remise à zéro en quelques secondes o Lourdeur infrastructure • Serveur, AP wifi, routeur, SGBD • Lourdeur synchro ressources pour livrable...
  13. 13. Maquette, Logiciel, Produit • Pensez une démo (maquette, adaptation du logiciel) dès le départ o Ré-initialisable vite et simplement o Transportable (laptop) simplement o Gérant plusieurs configurations (clients) • Machines virtuelles par exemple
  14. 14. Maquette, Logiciel, Produit • Cycle logiciel/maquette Logiciel Logiciel Maquette N N+1 N+2 FeedBack - Interne - prospects D é m o C o n t i n u e
  15. 15. Maquette, Logiciel, Produit • Produit o Logiciel • War java • ServeurWeb Java • Database • ... o Infra • Serveur • APWifi • Câbles à gogo • ...
  16. 16. Maquette, Logiciel, Produit • Maquette o Full JavaScript o DataBase : fichier Json o Multi-configuration client • Opposé du logiciel o « Resetable » à volonté o Juste l'appareil
  17. 17. Relation Client/Équipe de dév • La guerre/isolation management/technique • Les spécifications
  18. 18. Relation Client/Équipe de dév • La guerre/isolation management/tekos o Réalité dans de nombreuses entreprises o Communiquer en permanence o S'opposer à la « politique des tranchées » : • Chacun dans son coin o A l'opposé, s'opposer aux réunions « marathon » qui ne servent à rien o
  19. 19. Relation Client/Équipe de dév • La guerre/isolation management/tekos o Réunion tous les matins pour les techniques o Ce que j'ai fais hier o Les problèmes rencontrés o Ce que je vais faire aujourd'hui • Début journée, • Heure fixe, • Pas plus de 10 minutes
  20. 20. Relation Client/Équipe de dév Source : http://runningagile.files.wordpress.com/2008/01/scrum_board.jpg?w=500
  21. 21. Relation Client/Équipe de dév • La guerre/isolation management/tekos o Réunion toute les semaines techniques/management o Avancement des techniques o Question du management aux techniques pour les livrables futurs • Management reste à disposition des techniques, à tout moment, pour questions sur le développement actuel • Le management n'interrompt pas les techniques à longueur de journée o réunion hebdomadaire
  22. 22. Relation Client/Équipe de dév • La guerre/isolation management/tekos o Réunion à chaque livrable (2 4 semaines)→ • Présentation du livrable par technique • Véritable test du livrable par management o Validation • Clôture o Départ nouveau livrable
  23. 23. Relation Client/Équipe de dév • Les spécifications o L'équipe de développement ne peut « deviner » les besoins du client o Le client doit spécifier ses besoins • Éviter les incompréhensions
  24. 24. Relation Client/Équipe de dév • Les spécifications o Le management • « Je sais pas faire de cahier des charges » • « Je suis pas spécialiste du logiciel » o L'équipe technique • « Je ne connais pas le métier du client » • « Je peux pas me substituer au client pour les choix métiers »
  25. 25. Relation Client/Équipe de dév • Les spécifications o Trouver une méthodologie • Souple mais formelle • Rapide • Ne figeant pas les spécifications dans le marbre • Conciliant management et technique
  26. 26. Relation Client/Équipe de dév • Les spécifications o MockUp • Rapide • « Accessible » au management • Convivial o Technique ET management (Image source OctoTechnologie)
  27. 27. Relation Client/Équipe de dév • Les spécifications o Cinématique (Image source OctoTechnologie)
  28. 28. Relation Client/Équipe de dév • Les spécifications o Scénarii • Description avec des : o Mots : Si/alors/oui/non/OK:KO... o Puces indentées  Très « wikisable »
  29. 29. Relation Client/Équipe de dév • Les spécifications o Scénarii • Management oublie souvent (pour un scénario) o Les cas KO o Les acteurs « non vendeur »  Pensent au Front office car ce qu'ils « vendent »→  Oublient BackOffice  Solution passer tous les acteurs sur un scénario→
  30. 30. Relation Client/Équipe de dév • Les spécifications OK KO (1..*) Acteur 1 Acteur 2 Acteur 3
  31. 31. Production et usine logicielle • Pourquoi une forge ? • Quelle forge minimaliste ? • Le poste de travail • Comment gérer la montée en puissance ?
  32. 32. Production et usine logicielle • Pourquoi une forge ? o Démultiplier sa productivité (et sa qualité) par le biais d'outils o Penser son métier au lieu de le subir ➔ Agilité : penser son métier et non le subir ➔ Outil est un démultiplicateur
  33. 33. Production et usine logicielle • Quelle forge minimaliste ? o Bugtrack • Un logiciel possède forcément des bugs • évite de prendre de mauvaises habitudes • presque impossible à imposer si on habitue le management au report à l'arrache et sans rigueur • L'agilité, c'est aussi une certaine rigueur
  34. 34. Production et usine logicielle • Quelle forge minimaliste ? o Gestionnaire de version • Mémoire » de l'évolution du logiciel • Mémoire des livrable • Test de régression aisée • .... ➔ L'outil indispensable pour un projet (agile ou non)
  35. 35. Production et usine logicielle • Quelle forge minimaliste ? o Wiki • Souplesse de documentation o Système « rugueux »  Evite le « blabla »  Se concentre sur l'essence du besoin • Traçabilité totale sans effort • Moteur de recherche intégré • Suivi, sans efforts, des évolutions des documents
  36. 36. Production et usine logicielle • Quelle forge minimaliste ? o Outil de déploiement • Tester en permanence en environnement de pré-prod • Gain de temps o Projet actuel  Déploiement automatisé : 22 sec  Déploiement manuel : 10 minutes + fatigue intellectuelle + erreur possible
  37. 37. Production et usine logicielle • Le poste de travail « Do you use the best tools  money can buy? » Joel on software test
  38. 38. Production et usine logicielle • Le poste de travail • Outil de productivité et de qualité
  39. 39. Production et usine logicielle • Le poste de travail o Investir temps dans le poste de travail • Parfois avec des outils très simples o Gain productivité / aisance au travail immédiat
  40. 40. Production et usine logicielle • Le poste de travail o Investir temps dans le poste de travail PC dev Forge (repo) Apliance (cible) Pilotage Reporting
  41. 41. Production et usine logicielle
  42. 42. Conclusion • Commencer son projet avec des bases solides • Penser son projet comme un produit à vendre • Faire communiquer management et techniques • Aimer son métier et faire preuve de courage

×