SlideShare a Scribd company logo
1 of 50
Industrialisation du logiciel  Introduction et bonnes pratiques Emmanuel HUGONNET Architecte Technique / Expert Java EE http://www.ehsavoie.com e [email_address] +334 76 24 86 58 17 novembre 2008 ,[object Object]
Critères d’appréciation selon les profils Utile Evolutif Maintenable Exploitable Ergonomique Performant Ouvert Fiable Utilisateur Développeur Marketing Exploitation Perception des critères de qualité
Lancer un projet ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Organiser l’équipe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Protéger l’équipe
Dynamiser l’équipe ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Pourquoi un changement de mentalité est il nécessaire ?
Agilité ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Pratique de l’XP
Le cycle itératif 1 ère   Itération 2 ème   Itération 3 ème   Itération
Le cycle itératif ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
S’outiller ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Intégration Continue Développeur Hudson Intégration   Continue Métriques Anomalies
Définir des actions Qualité ,[object Object],[object Object],[object Object]
Bonnes pratiques ,[object Object],[object Object],[object Object],[object Object]
Gérer les exigences ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tracer les évolutions ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concevoir et développer ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Découpage ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Qu’est ce qu’une bonne conception ?  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Comment faire une bonne conception ? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Les bonnes pratiques de développement (1/3) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Les bonnes pratiques de développement (2/3) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Les bonnes pratiques de développement (3/3) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Documentation ,[object Object],[object Object],[object Object],[object Object],[object Object]
Qualité du code objet ,[object Object],[object Object],Loc/classe Nb classes Classes décrivant une structure   Classes complexes avec toute l’intelligence   Loc/classe Nb classes
Couplage et cohésion ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Mesurer la qualité du code ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Protéger par le test automatisé ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tests automatisés ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Coût des bugs http://www.agitar.com/solutions/why_unit_testing.html
Test Driven Development ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Gestion des patches ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Refactoring ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Comment faire ? ,[object Object],[object Object],[object Object],[object Object]
Méthodologies ,[object Object],[object Object],[object Object],[object Object],[object Object]
Scrum
Scrum
Scrum – backlog
Scrum – Sprint backlog
Scrum - Mêlée quotidienne
Scrum – burndown chart
Scrum – Sprint review and retrospective
Lean - Waste
Lean – 10 Points ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lean – Supprimer les gaspillages (muda) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Gaspillages dans les projets SI selon Poppendieck* :
Lean et Agile Equilibrer la demande en fonction du flux Supprimer les Gaspillages Amélioration Continue Savoir que le travail est périssable  LEAN http://www.agilemanagement.net/Articles/Weblog/FutureDirectionsforAgile.html La perfection est l’ennemi du bien Confiance, Capital Humain Culture Hautement Collaborative Agile
Agile et CMMI ,[object Object],[object Object],[object Object],[object Object]
Conclusion ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Questions?

More Related Content

What's hot

Introduction à l'agilité ensmse
Introduction à l'agilité   ensmseIntroduction à l'agilité   ensmse
Introduction à l'agilité ensmse
agnes_crepet
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
tharindakasun
 

What's hot (20)

Méthodes agiles
Méthodes agilesMéthodes agiles
Méthodes agiles
 
Guide to Agile testing
Guide to Agile testingGuide to Agile testing
Guide to Agile testing
 
Sonarqube
SonarqubeSonarqube
Sonarqube
 
20120612 05 - Etude de maturité d'une organisation de tests avec TPI Next
20120612 05 - Etude de maturité d'une organisation de tests avec TPI Next20120612 05 - Etude de maturité d'une organisation de tests avec TPI Next
20120612 05 - Etude de maturité d'une organisation de tests avec TPI Next
 
Coaching Agile : Et si tout se jouait au début et à la fin ? - Agile en Seine...
Coaching Agile : Et si tout se jouait au début et à la fin ? - Agile en Seine...Coaching Agile : Et si tout se jouait au début et à la fin ? - Agile en Seine...
Coaching Agile : Et si tout se jouait au début et à la fin ? - Agile en Seine...
 
DevOps avec Ansible et Docker
DevOps avec Ansible et DockerDevOps avec Ansible et Docker
DevOps avec Ansible et Docker
 
Scrum Testing Methodology
Scrum Testing MethodologyScrum Testing Methodology
Scrum Testing Methodology
 
BDD & Cucumber
BDD & CucumberBDD & Cucumber
BDD & Cucumber
 
Introduction à l'agilité ensmse
Introduction à l'agilité   ensmseIntroduction à l'agilité   ensmse
Introduction à l'agilité ensmse
 
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil Karade
 
Les méthodes Agiles - Introduction
Les méthodes Agiles - IntroductionLes méthodes Agiles - Introduction
Les méthodes Agiles - Introduction
 
Methodes agile
Methodes agileMethodes agile
Methodes agile
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
 
Pentest is yesterday, DevSecOps is tomorrow
Pentest is yesterday, DevSecOps is tomorrowPentest is yesterday, DevSecOps is tomorrow
Pentest is yesterday, DevSecOps is tomorrow
 
Continuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CIContinuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CI
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
Scrum 2020 : concepts et principes
Scrum 2020 : concepts et principesScrum 2020 : concepts et principes
Scrum 2020 : concepts et principes
 
SonarQube: ¿cómo de malo es mi software?
SonarQube: ¿cómo de malo es mi software?SonarQube: ¿cómo de malo es mi software?
SonarQube: ¿cómo de malo es mi software?
 
Scrum
ScrumScrum
Scrum
 
Méthodes agiles & Scrum
Méthodes agiles & ScrumMéthodes agiles & Scrum
Méthodes agiles & Scrum
 

Similar to Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques

Intégration continue
Intégration continueIntégration continue
Intégration continue
Klee Group
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
ALTER WAY
 
Anatomie du test
Anatomie du testAnatomie du test
Anatomie du test
Frederic Hardy
 

Similar to Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques (20)

Intégration continue
Intégration continueIntégration continue
Intégration continue
 
Techdays2011
Techdays2011 Techdays2011
Techdays2011
 
Automatisation des tests - objectifs et concepts - partie 2
Automatisation des tests  - objectifs et concepts - partie 2Automatisation des tests  - objectifs et concepts - partie 2
Automatisation des tests - objectifs et concepts - partie 2
 
Introduction à l'agilité
Introduction à l'agilitéIntroduction à l'agilité
Introduction à l'agilité
 
Omnilog 2016 - Apéro techno : Rex FFF sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex FFF sur l'intégration continueOmnilog 2016 - Apéro techno : Rex FFF sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex FFF sur l'intégration continue
 
13-Cours de Géniel Logiciel
13-Cours de Géniel Logiciel13-Cours de Géniel Logiciel
13-Cours de Géniel Logiciel
 
Normandy JUG integration Continue
Normandy JUG integration ContinueNormandy JUG integration Continue
Normandy JUG integration Continue
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
Anatomie du test
Anatomie du testAnatomie du test
Anatomie du test
 
Les cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Les cinq bonnes pratiques des Tests Unitaires dans un projet AgileLes cinq bonnes pratiques des Tests Unitaires dans un projet Agile
Les cinq bonnes pratiques des Tests Unitaires dans un projet Agile
 
Retour d'expérience TAA - 2011/03/29
Retour d'expérience TAA - 2011/03/29Retour d'expérience TAA - 2011/03/29
Retour d'expérience TAA - 2011/03/29
 
Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010
 
2-Cours de Géniel Logiciel
2-Cours de Géniel Logiciel2-Cours de Géniel Logiciel
2-Cours de Géniel Logiciel
 
Agilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationAgilité, Tests Et Industrialisation
Agilité, Tests Et Industrialisation
 
12-Cours de Géniel Logiciel
12-Cours de Géniel Logiciel12-Cours de Géniel Logiciel
12-Cours de Géniel Logiciel
 
7-Cours de Géniel Logiciel
7-Cours de Géniel Logiciel7-Cours de Géniel Logiciel
7-Cours de Géniel Logiciel
 
RefCard Tests sur tous les fronts
RefCard Tests sur tous les frontsRefCard Tests sur tous les fronts
RefCard Tests sur tous les fronts
 
Formation Extreme Programming, Tests unitaires, travail collaboratif
Formation Extreme Programming, Tests unitaires, travail collaboratifFormation Extreme Programming, Tests unitaires, travail collaboratif
Formation Extreme Programming, Tests unitaires, travail collaboratif
 
Booster l'Ergonomie et Expérience Utilisateur Digitale (web & mobile)
Booster l'Ergonomie et Expérience Utilisateur Digitale (web & mobile)Booster l'Ergonomie et Expérience Utilisateur Digitale (web & mobile)
Booster l'Ergonomie et Expérience Utilisateur Digitale (web & mobile)
 
Audit technique de code
Audit technique de codeAudit technique de code
Audit technique de code
 

More from Emmanuel Hugonnet

Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
Ddj   Architecture & Design   Beyond Functional Requirements On Agile ProjectsDdj   Architecture & Design   Beyond Functional Requirements On Agile Projects
Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
Emmanuel Hugonnet
 

More from Emmanuel Hugonnet (17)

You're a pretty fly for a WildFly
You're a pretty fly for a WildFlyYou're a pretty fly for a WildFly
You're a pretty fly for a WildFly
 
J2EE m’a tuer
J2EE m’a tuerJ2EE m’a tuer
J2EE m’a tuer
 
At2009 Soigner Sa Schizophrenie 1.2
At2009 Soigner Sa Schizophrenie 1.2At2009 Soigner Sa Schizophrenie 1.2
At2009 Soigner Sa Schizophrenie 1.2
 
At2009 Coding Dojo ATDD
At2009 Coding Dojo ATDDAt2009 Coding Dojo ATDD
At2009 Coding Dojo ATDD
 
Agile Tour 2009 Coding Dojo Kata ATDD
Agile Tour 2009 Coding Dojo Kata ATDDAgile Tour 2009 Coding Dojo Kata ATDD
Agile Tour 2009 Coding Dojo Kata ATDD
 
Innovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette AutomatiséInnovations Techniques Au Service Du Test De Recette Automatisé
Innovations Techniques Au Service Du Test De Recette Automatisé
 
Coding Dojo in the Alps - Retour d'expérience
Coding Dojo in the Alps - Retour d'expérienceCoding Dojo in the Alps - Retour d'expérience
Coding Dojo in the Alps - Retour d'expérience
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange Labs
 
Soigner Sa Schizophrénie
Soigner Sa SchizophrénieSoigner Sa Schizophrénie
Soigner Sa Schizophrénie
 
Java Content Repository avec Jackrabbit
Java Content Repository avec JackrabbitJava Content Repository avec Jackrabbit
Java Content Repository avec Jackrabbit
 
Le modèle d’acquisition de compétences de Dreyfus
Le modèle d’acquisition de compétences de DreyfusLe modèle d’acquisition de compétences de Dreyfus
Le modèle d’acquisition de compétences de Dreyfus
 
Ddj Architecture & Design The Distributed Agile Team
Ddj   Architecture &  Design   The Distributed Agile TeamDdj   Architecture &  Design   The Distributed Agile Team
Ddj Architecture & Design The Distributed Agile Team
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4Industrialisation Du Logiciel   Introduction Et Bonnes Pratiques   V1.4
Industrialisation Du Logiciel Introduction Et Bonnes Pratiques V1.4
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
 
Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
Ddj   Architecture & Design   Beyond Functional Requirements On Agile ProjectsDdj   Architecture & Design   Beyond Functional Requirements On Agile Projects
Ddj Architecture & Design Beyond Functional Requirements On Agile Projects
 

Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques