SlideShare une entreprise Scribd logo
1  sur  74
Industrialisation des
développements
(la recette)
Hello!
Je suis Sylvain Leroy
Vous pouvez me trouver sur :
sylvain.leroy@tocea.com / @sleroy0
about.me/sylvain_leroy
2007
Ingénieur
Recherche
Informatique
2011
Création
Société Tocea
2014
Acquisition Tocea
Groupe Metrixware
CTO Tocea
2015
Acquisition Echoes
Groupe Metrixware
CTO MetrixwareProjet Recherche
Ma Société
▧ Assistance Qualité / Recette
applications
▧ Modernisation automatique
d’applications
▧ Offre Intégration Usine
Logicielle
▧ Formateurs Bonnes Pratiques
/Cleancode / Qualité / Devops
▧ Distributeur Outils de
qualité de code
(Optimyth)
▧ Komea Dashboard
(Pilotage développements
par la
qualité/productivité)
▧ Offres Cobol/Mainframe
TOP 20 Justifications les plus courantes
▧ Cela fonctionne sur ma machine
▧ Ou étiez-vous quand le programme a crashé ?
▧ Pourquoi voulez-vous faire ceci ainsi ?
▧ Vous n’utilisez pas la bonne version du système d’exploitation
▧ Même si cela ne fonctionne pas, est-ce gênant ?
▧ Avez vous passé l’antivirus ?
▧ Quelqu’un a du changé mon code
▧ Cela fonctionne mais cela n’a pas été testé
▧ Ceci ne peut être à l’origine de Cela!
▧ Je ne peux pas tout tester!
▧ C’est juste une coïncidence malchanceuse
▧ Vous ne devez pas utiliser la dernière version du logiciel
▧ Je n’ai pas touché à ce module depuis des lustres!
▧ Il doit avoir quelque chose de bizarre dans vos données
▧ Qu’avez vous pu taper pour faire planter le logiciel ?
▧ Cela doit être un problème matériel
▧ Comment est-ce possible ?
▧ Cela fonctionnait hier
▧ Cela fonctionne sur ma machine
▧ Cela n’avait jamais cela avant
▧ C’est bizarre
▧ C’est normal, c’est une fonctionnalité
L’industrialisation du
processus de
développement
Quelles
méthodologies et outils
pour démarrer
un nouveau
développement ?
Quels sont les
pré-requis pour
un projet de
développement
chez Google ?
Un outil de
gestion des
exigences et
des tests
(réclamations..)
Tracage des exigences
Identifiez les changements, la raison des
changements et l’époque
Evaluation des spécifications
Faîtes évaluer les spécifications par les
développeurs
Estimez le poids des
exigences
Estimez la charge pour chaque exigence,
visez 10 à 15j maximum.
un dépôt de
source
unique qui
contient tout
Stockez tout!
Utilisez votre dépôt de source pour
stocker fichiers, sources, scripts, données.
Définissez votre workflow
Parce que GIT vous en offre un tout cuit
Utilisation de Git + GitFlow
https://danielkummer.github.io/git-flow-cheatsheet/
Les différentes Gates
Tests des fonctionnalités critiques (scénario nominal)
Charge <= 1JQ1
Tests complets : toutes les options sont testées, toutes
les interactions complexes
Charge : (max 1 semaine par env)
Q2
Q3
Tests de performance , sécurité
Charge : 1 à 2 semaine par env
Qg
Analyse qualimétrique du programme.
Règles de programmation, métriques
Charge : machine < 4h.
Casser un build lors de l’analyse qualimétrique
▧ Installation du plugin BuildBreaker de Sonar
▧ Définition d’alertes sur les métriques ciblées
Un système de
gestionnaire de
sources distribué
Un serveur
d’intégration
continue
Ne négligez pas le
temps de build !
Parce que personne n’aime attendre.
L’intégration continue
est une machine,
maintenez-la!
Inspirez-vous de la maintenance industrielle (MTBF,
MTTM, Availability)
Un processus de
fabrication
Le pipeline de
déploiement
Build Pipeline plugin
Jenkins Workflow plugin( $$$)
Documentez votre
processus de fabrication
Un serveur de
documentation
centralisé
Générez votre
documentation
Utilisez un format de documentation pour
la génération automatique
Versionnez votre
documentation
Stocker votre documentation sur votre
SCM
Un dépôt
Maven/GEM/Deb
Rationalisez les
technologies
Identifier et rationalisez les technologies,
suivez les évolutions
Utilisez un outil
de build (Gradle,
maven, ..)
Privilégiez les outils de
scripting
Parce que coder un plugin Maven ce n’est
pas sympa du tout (et maven assembly,
release…)
Une architecture
d’entreprise
Découvrez les outils comme Puppet,
Ansible, Docker, ...
Virtualisez vos
environnements
Gestion des
livraisons et des
notes de livraison
Tracez les modifications!
Associez les numéros de tickets aux
messages de commits
Gestion des livraisons
▧ Les dates de release
doivent être planifiées
selon une fréquence
régulière
▧ La procédure et
l’outillage de release
doivent être documentés
▧ Identifiez et documentez
tous les éléments liés à
une unité de déploiement
▧ La fonction de release
doit être réalisée par une
entité autonome
▧ Les unités de déploiement
doivent être construites
tôt
▧ Le processus de
déploiement doit être
testé avant le déploiement
réel.
▧ Prévoyez un plan de
restauration
▧ Utilisez des outils
▧ Gérez et configurer les
outils
Pas de
contrainte sur le
choix de l’IDE
Un logiciel de
suivi de bugs
(bugtracker)
Personnalisez le workflow
N’oubliez pas les champs nécessaires pour calculer
les KPIs par la suite!
Root Cause Analysis
Indispensable pour évaluer la qualité de votre
processus
Testez votre application!
Automatisez autant que possible
Mesurer la
couverture de
code
Quels outils de couverture de code ?
Cobertura
Atlassian
Clover
Jacoco
Code
Cover
https://confluence.atlassian.com/display/CLOVER/Comparison+of+code+coverage+tools
<project>
...
<reporting>
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-
plugin</artifactId>
<version>2.7</version>
</plugin>
</plugins>
</reporting>
</project>
PetClinic Maven project
https://github.com/spring-projects/spring-petclinic/
Exemple de rapport
allprojects {
apply plugin: 'jacoco'
repositories { jcenter() }
jacoco { toolVersion = '0.7.1.201405082137' }
}
task jacocoRootReport(type:
org.gradle.testing.jacoco.tasks.JacocoReport) {
dependsOn = subprojects.test
sourceDirectories =
files(subprojects.sourceSets.main.allSource.srcDirs)
classDirectories =
files(subprojects.sourceSets.main.output)
executionData =
files(subprojects.jacocoTestReport.executionData)
reports {
html.enabled = true
xml.enabled = true
csv.enabled = false
}
}
PetClinic Gradle project
https://github.com/sleroy/spring-petclinic
Rapport obtenu
Pour les projets
open source :
Coveralls.io
Employez des méthodologies
de tests (TDD,BDD)
“Test Driven Development :
Développement piloté par les tests
Crédit : alphatalk.vn
Astuces Tests unitaires
▧ Exécuter les tests en mémoire
▧ Ecrire les tests de manière à ce qu’ils soient indépendants
▧ Les tests doivent être isolés (pas d’effet de bord)
▧ Exécuter chaque test (pas d’@Ignore ou de /**/)
▧ Ecrire chaque test sous la forme d’une assertion (ou d’un
prédicat)
▧ Ecrire chaque test avec l’assertion la plus forte possible
▧ Assurez-vous que le code requis pour les tests et séparé
du code en production
▧ Refactorez avant de déboguer
▧ Ajoutez un timeout
▧ Nommez bien vos tests
▧ Utilisez des exceptions spécifiques
▧ Rendez vos tests exigeants
“Behaviour Driven Development :
Développement piloté par les tests
Multipliez les
niveaux de tests
▧ Tests unitaires
▧ Tests d’intégration
▧ Tests fonctionnels
▧ Tests d’acceptation
▧ Smoking Tests
▧ Tests de déploiement
▧ Tests du système
▧ Tests de performance
▧ Tests de sécurité
▧ Tests manuels
Les différents tests :
80%
Couverture de code optimale à
atteindre
(Pour les système ne menaçant pas la
vie humaine)
50%
Le nombre de défauts en moyenne
supprimés par les (seuls) tests
unitaires
▧ Au dessus, le coût de détection des bugs
est trop important
▧ Intégrés directement à Eclipse, Maven ..
▧ Utilisation de JUnit ou TestNG
▧ Suivre les évolutions (régulières) des
frameworks qui simplifient l’écriture
▧ Les tests unitaires c’est du code, écrivez-les
bien!
Tests unitaires
▧ Approche BigBang
▧ Approche ToP/Down
▧ Approche Bottom/Up
▧ Problématique des bases de données :
mémoire, embarquée ou simple fichier ?
▧ Problématique de simulation des web-
services : bouchons, stubs,...
Tests d’intégration
Vérifier le fonctionnement des “grands” composants de
l’architecture
▧ TF : fonctionnalités du logiciel / aux
spécifications.
▧ TS : fonctionnalités du logiciel / aux
exigences clients.
▧ Tests réalisés en boîte noire à partir d’un
livrable de l’IC
▧ 4 Vérifications :
Tests des fonctionnalités critiques (Smoke Testing)
Tests de validation de résultats (Sanity Testing)
Tests de non-régression
Tests d’ergonomie / utilisabilité
Tests fonctionnels / système
▧ Créés généralement par le client
▧ Exprimés avec son vocabulaire (DDD)
▧ Tests boîte noire
▧ Utilisation d’outils comme Fitnesse peuvent
simplifier l’expression de ces tests.
Tests d’acceptation
▧ Utilisation d’un outil de gestion d’exigences
et de scénarios de tests
▧ Un Cas de test doit avoir un objectif
▧ Une description de l’environnement de test
est requise
▧ L’installation de l’environnement de tests
doit être vérifiée
▧ Chaque cas de test doit être associé à un ou
plusieurs requirements
▧ Un cas de test doit être simple et
déterministe
Tests manuels
(A suivre)
Contrôler la qualité
du code de
l’application
(et pas que…)
Merci
Vous pouvez me trouver :
@sleroy0
sylvain.leroy@tocea.com

Contenu connexe

Tendances

Introduction à la validation de logiciel
Introduction à la validation de logicielIntroduction à la validation de logiciel
Introduction à la validation de logicielJean-Paul CARMONA
 
La gestion de projets informatiques
La gestion de projets informatiquesLa gestion de projets informatiques
La gestion de projets informatiquesLoïc Charpentier
 
Présentation Agile Testing
Présentation Agile TestingPrésentation Agile Testing
Présentation Agile Testingjubehr
 
Métriques de qualité logicielle
Métriques de qualité logicielleMétriques de qualité logicielle
Métriques de qualité logicielleYouness Boukouchi
 
Méthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiquesMéthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiquesSirine Barguaoui
 
Exigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logicielsExigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logicielsPierre
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes PratiquesEmmanuel Hugonnet
 
Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)Sylvain Leroy
 
Management de la qualité
Management de la qualitéManagement de la qualité
Management de la qualitéyounes elhaiba
 
Qualification Et Cycle De Vie Du Logiciel
Qualification Et Cycle De Vie Du LogicielQualification Et Cycle De Vie Du Logiciel
Qualification Et Cycle De Vie Du Logicieldanaobrest
 
DEVOPS - La synthèse
DEVOPS - La synthèseDEVOPS - La synthèse
DEVOPS - La synthèseCOMPETENSIS
 
Introduction aux méthodes agiles
Introduction aux méthodes agilesIntroduction aux méthodes agiles
Introduction aux méthodes agilesGuillaume Collic
 
sûreté de fonctionnement du logiciel
 sûreté de fonctionnement du logiciel sûreté de fonctionnement du logiciel
sûreté de fonctionnement du logicielEs-sahli bilal
 
formation istqb.pdf
formation istqb.pdfformation istqb.pdf
formation istqb.pdfmido04
 
Méthode d'Agile: Scrum
Méthode d'Agile: ScrumMéthode d'Agile: Scrum
Méthode d'Agile: ScrumChaymaMghazli
 

Tendances (20)

Introduction à la validation de logiciel
Introduction à la validation de logicielIntroduction à la validation de logiciel
Introduction à la validation de logiciel
 
La gestion de projets informatiques
La gestion de projets informatiquesLa gestion de projets informatiques
La gestion de projets informatiques
 
Présentation Agile Testing
Présentation Agile TestingPrésentation Agile Testing
Présentation Agile Testing
 
Métriques de qualité logicielle
Métriques de qualité logicielleMétriques de qualité logicielle
Métriques de qualité logicielle
 
Méthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiquesMéthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiques
 
Agile presentation
Agile presentationAgile presentation
Agile presentation
 
Exigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logicielsExigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logiciels
 
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel  - Introduction Et Bonnes PratiquesIndustrialisation Du Logiciel  - Introduction Et Bonnes Pratiques
Industrialisation Du Logiciel - Introduction Et Bonnes Pratiques
 
Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)
 
Management de la qualité
Management de la qualitéManagement de la qualité
Management de la qualité
 
Modele a3 toyota
Modele a3 toyotaModele a3 toyota
Modele a3 toyota
 
Méthodes agiles
Méthodes agilesMéthodes agiles
Méthodes agiles
 
Qualification Et Cycle De Vie Du Logiciel
Qualification Et Cycle De Vie Du LogicielQualification Et Cycle De Vie Du Logiciel
Qualification Et Cycle De Vie Du Logiciel
 
Introduction à ITIL
Introduction à ITILIntroduction à ITIL
Introduction à ITIL
 
DEVOPS - La synthèse
DEVOPS - La synthèseDEVOPS - La synthèse
DEVOPS - La synthèse
 
Introduction aux méthodes agiles
Introduction aux méthodes agilesIntroduction aux méthodes agiles
Introduction aux méthodes agiles
 
sûreté de fonctionnement du logiciel
 sûreté de fonctionnement du logiciel sûreté de fonctionnement du logiciel
sûreté de fonctionnement du logiciel
 
Methodes agile
Methodes agileMethodes agile
Methodes agile
 
formation istqb.pdf
formation istqb.pdfformation istqb.pdf
formation istqb.pdf
 
Méthode d'Agile: Scrum
Méthode d'Agile: ScrumMéthode d'Agile: Scrum
Méthode d'Agile: Scrum
 

Similaire à Industrialisation des développements logiciels

20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache MavenArnaud Héritier
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange LabsEmmanuel Hugonnet
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php ALTER WAY
 
Industrialisation PHP - Canal+
Industrialisation PHP - Canal+Industrialisation PHP - Canal+
Industrialisation PHP - Canal+ekino
 
Paris Web 2015 - Atelier désendettement Javascript legacy
Paris Web 2015 - Atelier désendettement Javascript legacyParis Web 2015 - Atelier désendettement Javascript legacy
Paris Web 2015 - Atelier désendettement Javascript legacyFrançois Petitit
 
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014Benoît de CHATEAUVIEUX
 
Integration continue et déploiement automatisé
Integration continue et déploiement automatiséIntegration continue et déploiement automatisé
Integration continue et déploiement automatiséJérémie Campari
 
Paris Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascriptParis Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascriptMichael Akbaraly
 
L'integration continue pour tous
L'integration continue pour tousL'integration continue pour tous
L'integration continue pour tousAurelien Navarre
 
Chaine de production pipeline
Chaine de production   pipelineChaine de production   pipeline
Chaine de production pipelineNicolas wallerand
 
Enib cours c.a.i. web - séance #6 : autour de la webapp
Enib   cours c.a.i. web - séance #6 : autour de la webappEnib   cours c.a.i. web - séance #6 : autour de la webapp
Enib cours c.a.i. web - séance #6 : autour de la webappHoracio Gonzalez
 
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continueOmnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continueXavier Callens
 
Intégration continue transco
Intégration continue transcoIntégration continue transco
Intégration continue transcolaurent_opnworks
 
Comment construire son laboratoire de tests mobiles avec HP Mobile Center
Comment construire son laboratoire de tests mobiles avec HP Mobile CenterComment construire son laboratoire de tests mobiles avec HP Mobile Center
Comment construire son laboratoire de tests mobiles avec HP Mobile CenterGuillaume Deshayes
 
qualimétrie logiciel - Entreprise Software Analytic - nov 2015
qualimétrie logiciel -  Entreprise Software Analytic - nov 2015qualimétrie logiciel -  Entreprise Software Analytic - nov 2015
qualimétrie logiciel - Entreprise Software Analytic - nov 2015Julien Vq
 
Concept de l’Intégration Continue
Concept de l’Intégration ContinueConcept de l’Intégration Continue
Concept de l’Intégration ContinueFrédéric Sagez
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 

Similaire à Industrialisation des développements logiciels (20)

20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven
 
Usine Logicielle 2013
Usine Logicielle 2013Usine Logicielle 2013
Usine Logicielle 2013
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange Labs
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
Industrialisation PHP - Canal+
Industrialisation PHP - Canal+Industrialisation PHP - Canal+
Industrialisation PHP - Canal+
 
Paris Web 2015 - Atelier désendettement Javascript legacy
Paris Web 2015 - Atelier désendettement Javascript legacyParis Web 2015 - Atelier désendettement Javascript legacy
Paris Web 2015 - Atelier désendettement Javascript legacy
 
Normandy JUG integration Continue
Normandy JUG integration ContinueNormandy JUG integration Continue
Normandy JUG integration Continue
 
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
 
Integration continue et déploiement automatisé
Integration continue et déploiement automatiséIntegration continue et déploiement automatisé
Integration continue et déploiement automatisé
 
Paris Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascriptParis Web 2015 - Atelier desendettement javascript
Paris Web 2015 - Atelier desendettement javascript
 
L'integration continue pour tous
L'integration continue pour tousL'integration continue pour tous
L'integration continue pour tous
 
Chaine de production pipeline
Chaine de production   pipelineChaine de production   pipeline
Chaine de production pipeline
 
Enib cours c.a.i. web - séance #6 : autour de la webapp
Enib   cours c.a.i. web - séance #6 : autour de la webappEnib   cours c.a.i. web - séance #6 : autour de la webapp
Enib cours c.a.i. web - séance #6 : autour de la webapp
 
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continueOmnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue
 
Intégration continue transco
Intégration continue transcoIntégration continue transco
Intégration continue transco
 
Comment construire son laboratoire de tests mobiles avec HP Mobile Center
Comment construire son laboratoire de tests mobiles avec HP Mobile CenterComment construire son laboratoire de tests mobiles avec HP Mobile Center
Comment construire son laboratoire de tests mobiles avec HP Mobile Center
 
qualimétrie logiciel - Entreprise Software Analytic - nov 2015
qualimétrie logiciel -  Entreprise Software Analytic - nov 2015qualimétrie logiciel -  Entreprise Software Analytic - nov 2015
qualimétrie logiciel - Entreprise Software Analytic - nov 2015
 
Valider par des tests - Blend
Valider par des tests - BlendValider par des tests - Blend
Valider par des tests - Blend
 
Concept de l’Intégration Continue
Concept de l’Intégration ContinueConcept de l’Intégration Continue
Concept de l’Intégration Continue
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 

Plus de Sylvain Leroy

Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite  Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite Sylvain Leroy
 
Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite  Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite Sylvain Leroy
 
Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Sylvain Leroy
 
Qu'est ce qu'un logiciel de qualité
Qu'est ce qu'un logiciel de qualitéQu'est ce qu'un logiciel de qualité
Qu'est ce qu'un logiciel de qualitéSylvain Leroy
 
Contrôle de la qualité logiciel
Contrôle de la qualité logicielContrôle de la qualité logiciel
Contrôle de la qualité logicielSylvain Leroy
 
Assurance Qualité logicielle
Assurance Qualité logicielleAssurance Qualité logicielle
Assurance Qualité logicielleSylvain Leroy
 
Cleancode / Tocea / Introduction
Cleancode / Tocea / IntroductionCleancode / Tocea / Introduction
Cleancode / Tocea / IntroductionSylvain Leroy
 

Plus de Sylvain Leroy (7)

Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite  Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite
 
Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite  Arguments in favor of a progressive software rewrite
Arguments in favor of a progressive software rewrite
 
Rappels Modularisation application C/C++
Rappels Modularisation application C/C++Rappels Modularisation application C/C++
Rappels Modularisation application C/C++
 
Qu'est ce qu'un logiciel de qualité
Qu'est ce qu'un logiciel de qualitéQu'est ce qu'un logiciel de qualité
Qu'est ce qu'un logiciel de qualité
 
Contrôle de la qualité logiciel
Contrôle de la qualité logicielContrôle de la qualité logiciel
Contrôle de la qualité logiciel
 
Assurance Qualité logicielle
Assurance Qualité logicielleAssurance Qualité logicielle
Assurance Qualité logicielle
 
Cleancode / Tocea / Introduction
Cleancode / Tocea / IntroductionCleancode / Tocea / Introduction
Cleancode / Tocea / Introduction
 

Industrialisation des développements logiciels

Notes de l'éditeur

  1. ANomalie : Toute condition qui dévie des attentes basées sur les exigences de spécifications, documents de conception, documents utilisateurs, standards etc, ou des perceptions ou expériences de quelqu’un. Les anomalies peuvent être trouvées pendant, mais pas uniquement, les revues, tests, analyses, compilations ou utilisation des produits logiciels ou de la documentation applicable [IEEE 1044]. Voir aussi défauts, déviation, erreur, faute, défaillance, incident, problème.
  2. Versioner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  3. Wiki, etc
  4. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  5. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  6. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  7. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  8. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  9. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  10. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  11. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  12. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  13. Versionner la documentation Générer la documentation Collaborer pour améliorer la documentatio
  14. http://agiledata.org/essays/tdd.html
  15. http://www.bullseye.com/minimum.html
  16. http://www.bullseye.com/minimum.html
  17. http://www.bullseye.com/minimum.html https://en.wikipedia.org/wiki/Usability_testing http://www.tutorialspoint.com/software_testing_dictionary/acceptance_testing.htm
  18. http://www.bullseye.com/minimum.html https://en.wikipedia.org/wiki/Usability_testing https://en.wikipedia.org/wiki/System_testing https://en.wikipedia.org/wiki/Sanity_testing http://www.tutorialspoint.com/software_testing_dictionary/acceptance_testing.htm http://agiledata.org/essays/tdd.html http://fr.slideshare.net/edvorkin/unit-testing-with-spock-framework?next_slideshow=1 http://www.bullseye.com/minimum.html
  19. http://www.bullseye.com/minimum.html https://en.wikipedia.org/wiki/Usability_testing https://en.wikipedia.org/wiki/System_testing https://en.wikipedia.org/wiki/Sanity_testing http://www.tutorialspoint.com/software_testing_dictionary/acceptance_testing.htm http://agiledata.org/essays/tdd.html http://fr.slideshare.net/edvorkin/unit-testing-with-spock-framework?next_slideshow=1 http://www.bullseye.com/minimum.html