SlideShare une entreprise Scribd logo
1  sur  47
Télécharger pour lire hors ligne
CIC CONF.
Les 10 erreurs à éviter
lors de la conception
d’une base de données
QUI SUIS-JE?
Klein Houzin, ancien du CIC
Promotion 2008-2011
Consultant informatique
Spécialiste des bases de données
relationnelles
Vit au Ghana, Accra
SOMMAIRE
Conception d’une BD
10 erreurs
Description
Problèmes
Solutions implicites
BASE DE DONNÉES (BD)
 Collection de données organisées
en particulier pour la recherche
rapide et la récupération par un
ordinateur
BASE DE DONNÉES (BD)
Différente d’un SGBD (Système de
Gestion de Base de données)
 SQL Server
 Oracle
 MySql
 Postgres
 Mongo Db
Différente d’une application
UNE BD
transforme une donnée
en Information
CONCEPTION
Fait, pour un être vivant sexué, pour un enfant,
d'être conçu, de recevoir l'existence.
 Aptitude à comprendre quelque chose, à le saisir
ou à le produire par l'esprit : Cela dépasse la
conception humaine.
Manière particulière de comprendre une question ;
opinion, représentation, idée que l'on peut se faire
de quelque chose : Des conceptions politiques.
Action d'élaborer quelque chose dans son esprit, de
le concevoir ; résultat de cette action : Mauvaise
conception d'un appartement.
CONCEPTION D’UNE BD
Entrée :
 Un projet déterminé
 Règles de gestion
 Domaine
Sortie: Le modèle de la base de données
LES 10 ERREURS FATALES A EVITER LORS DE
LA CONCEPTION D’UNE BD
ERREUR 1
Une base de données non
normalisée
ERREUR 1: BD NON NORMALISEE
Description
ERREUR 1: BD NON NORMALISEE
Description
ERREUR 1: BD NON NORMALISEE
Causes
- Coder directement sans planifier un schéma de la
base de données
- Travailler avec des EDI comme qui créent la base de
données (CodeFirst)
- Travailler sur une base de données non relationnelle
ERREUR 1: BD NON NORMALISEE
Problèmes
1. Augmentation de la nécessité de
restructurer la collection des relations, de
nouveaux types de données sont
introduites, et
2. Model difficilement étendable
3. Le modèle relationnel non-informatif pour
les utilisateurs
4. Répétition groupes de données
5. Faits contradictoires
6. Inconsistance de la base de données
ERREUR 2
Une base de
données trop/mal
normalisée
ERREUR 2: BD TROP NORMALISEE
Description
ERREUR 2: BD TROP NORMALISEE
Description
ERREUR 2: BD MAL NORMALISEE
Description
Normaliser une
base de données
non-relationnelle
sur le modèle de
Codd
ERREUR 2: BD TROP NORMALISEE
Problèmes
 Les requêtes peuvent devenir très
compliquées
 Les chaines peuvent être brisées
 Les jointures sont couteuses en temps pour
les requêtes sur dans les entrepots de données
OLAP(Online Analysis and Processing)
 Implémenter un modèle relationnel dans un
SGBD non-relationnel
ERREUR 3
Utilisation des types de
spécifiques a un SGBD
ERREUR 3: DONNEES SPECIFIQUES A UN
SGBD
Description
 Utiliser des types comme :
 UniqueIdentifier (SQLServer)
 Bit pour SQLServer
 Boolean
 RowId pour Oracle
 Blob
 Les jointures sont couteuses en temps pour
les requêtes sur dans les bases de données
OLAP(Online Analysis and Processing)
ERREUR 4
Utilisation des types
numériques flottants
ERREUR 4: UTILISATION DES TYPES
NUMERIQUES FLOTTANTS
Description
 Utilisation des types numériques comme
float pour des montants précises
ERREUR 4: UTILISATION DES TYPES
NUMERIQUES FLOTTANTS
Problèmes
 Erreur lors des calculs
 2 x 2= 3,99999
 Erreurs lors des requêtes comportant des
conditions sur ces colonnes
 ex: Montant >= 0,1 peut ramener des
valeurs comme 0,999999
ERREUR 5
UTILISATION DES
CLES PRIMAIRES
NATURELLES
ERREUR 5: UTILISATION DES CLÉS PRIMAIRES
NATURELLES
Description
ERREUR 5: UTILISATION DES CLÉS PRIMAIRES
NATURELLES
Problèmes
- Requêtes très couteuses en mémoire : les
jointures sur certains champs textes sont
très couteuses
- Obligation de recréer une autre clé lorsque
cette clé ne sera plus « naturelle »
ERREUR 6
Ne pas utiliser forcer les
contraintes sur les
champs et les tables
ERREUR 6: NE PAS UTILISER LES CONTRAINTES
SUR LES CHAMPS ET LES TABLES
Description
 Mettre les champs texte a max
 Varchar(max) , CHAR(255), INTEGER(11)
 Ne pas mettre des contraintes CHECK sur les
champs nombres
ERREUR 6: NE PAS UTILISER LES CONTRAINTES
SUR LES CHAMPS ET LES TABLES
Problèmes
 Grossissement des fichiers de la base de données
 Requêtes très couteuses en mémoire (pour les
champs trop larges)
 Inconsistance de la base de données
 Quantité negative
 Montant négatif
 Vitesse >300 000 m/s
 Taille >4m
ERREUR 7
Concevoir une base de
données non localisable
ERREUR 7: CONCEVOIR UNE BD NON
LOCALISABLE
Description
Utilisation des champs textes pour representer les
booleens OUI/NON
Utilisation des champs textes pour representer les
etats
 Occupe/Non Occupe
Fait/Non Fait
Utilisation des champs textes pour représenter les
chiffres
ERREUR 7: CONCEVOIR UNE BD NON
LOCALISABLE
Problèmes
Requêtes compliquées et couteuses en mémoire
…..WHERE LOWER(Etat) = ‘oui’ OR
LOWER(Etat) =‘yes’ OR LOWER(Etat)=‘ya’
Difficulté de construire des applications localisables
Difficulté de construire des états localisables à partir
de la base
ERREUR 8
Enregistrer les mots
de passe en plein texte
ERREUR 8: ENREGISTRER LES DONNEES
SENSIBLES EN CLAIR
Description
ERREUR 8: ENREGISTRER LES DONNEES
SENSIBLES EN CLAIR
PROBLEMES
DONNEES VISIBLES A TOUTE PERSONNE
QUI AACCES AUX TABLES OU VUES
DONNEES PERSONNELLES LISIBLES (MOT
DE PASSE)
MODIFICATIONS FACILES
ERREUR 9
Magic beans
ERREUR 9: MAGIC BEANS
Description
Modèles au niveau de MVC /MVVM / MVP
ERREUR 9: MAGIC BEANS
Problèmes
Champs calculées
Confusion du modèle de la base de données et du
modèle de l’application
Difficulté de construire une nouvelle application
basée sur la base de données
ERREUR 10
Pauvre
Documentation
ERREUR 10: PAUVRE DOCUMENTATION
Description
Mauvaise nomenclature
 Niveau des champs
Niveau des tables
Niveau des contraintes
Schéma de la base de données non documenté
ERREUR 10: PAUVRE DOCUMENTATION
Problèmes
Maintenance difficile de la base de données
Evolution difficile de la base de données
Etats ad hoc difficiles à générer
ERREUR 0
Ne pas communiquer
avec un
Administrateur de
base de données
(ADB) lors d’un projet
ERREUR 0
Avoir un ADB :
 Permet de séparer
l’application de la BD
Permet de détecter les
erreurs de conception dès le
début
ERREUR 0
Les applications passent
mais les BD restent
ERREUR 0
Les applications passent
mais les BD restent
MERCI
QUESTIONS
Suivez moi
Blog besklein01.wordpress.com
Twitter @bestklein
Facebook
« It always seems impossible until
its done »Nelson Mandela

Contenu connexe

Tendances

Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
boulonvert
 

Tendances (20)

Local Apache NiFi Processor Debug
Local Apache NiFi Processor DebugLocal Apache NiFi Processor Debug
Local Apache NiFi Processor Debug
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
 
Docker
DockerDocker
Docker
 
DART.pptx
DART.pptxDART.pptx
DART.pptx
 
Chp6 - Développement iOS
Chp6 - Développement iOSChp6 - Développement iOS
Chp6 - Développement iOS
 
Introduction à Node.js
Introduction à Node.js Introduction à Node.js
Introduction à Node.js
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring Cloud
 
Design patterns - Exemples en Java
Design patterns - Exemples en JavaDesign patterns - Exemples en Java
Design patterns - Exemples en Java
 
Nouveautés de java 8
Nouveautés de java 8Nouveautés de java 8
Nouveautés de java 8
 
Formation autour de git et git lab
Formation autour de git et git labFormation autour de git et git lab
Formation autour de git et git lab
 
Angular Framework présentation PPT LIGHT
Angular Framework présentation PPT LIGHTAngular Framework présentation PPT LIGHT
Angular Framework présentation PPT LIGHT
 
Cours design pattern m youssfi partie 4 composite
Cours design pattern m youssfi partie 4 compositeCours design pattern m youssfi partie 4 composite
Cours design pattern m youssfi partie 4 composite
 
Docker - un outil pour faciliter le développement et le déploiement informatique
Docker - un outil pour faciliter le développement et le déploiement informatiqueDocker - un outil pour faciliter le développement et le déploiement informatique
Docker - un outil pour faciliter le développement et le déploiement informatique
 
Design Pattern introduction
Design Pattern introductionDesign Pattern introduction
Design Pattern introduction
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 
Presentation Spring
Presentation SpringPresentation Spring
Presentation Spring
 
DEVOPS
DEVOPSDEVOPS
DEVOPS
 
Midi technique - présentation docker
Midi technique - présentation dockerMidi technique - présentation docker
Midi technique - présentation docker
 
Cours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partieCours php & Mysql - 1ére partie
Cours php & Mysql - 1ére partie
 

En vedette

Resume FR Alex Mestre avril 2013
Resume FR Alex Mestre avril 2013Resume FR Alex Mestre avril 2013
Resume FR Alex Mestre avril 2013
Alex MESTRE GIMENEZ
 
Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.
Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.
Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.
#LeReCit @ReseauCitadelle
 
Rac emissions conso-vol2_juillet_2014
Rac emissions conso-vol2_juillet_2014Rac emissions conso-vol2_juillet_2014
Rac emissions conso-vol2_juillet_2014
RAC-F
 
Présentation skill2 invest
Présentation skill2 investPrésentation skill2 invest
Présentation skill2 invest
Julie Province
 
Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.
Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.
Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.
#LeReCit @ReseauCitadelle
 

En vedette (20)

SunTseu - Inbound marketing and media brand
SunTseu - Inbound marketing and media brandSunTseu - Inbound marketing and media brand
SunTseu - Inbound marketing and media brand
 
Bière sante et astuces
Bière sante et astucesBière sante et astuces
Bière sante et astuces
 
Rapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - final
Rapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - finalRapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - final
Rapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - final
 
Oli
OliOli
Oli
 
Resume FR Alex Mestre avril 2013
Resume FR Alex Mestre avril 2013Resume FR Alex Mestre avril 2013
Resume FR Alex Mestre avril 2013
 
Comment trouver des jeux pour entraînement clavier
Comment trouver des jeux pour entraînement clavierComment trouver des jeux pour entraînement clavier
Comment trouver des jeux pour entraînement clavier
 
Programme de 7 jours
Programme de 7 joursProgramme de 7 jours
Programme de 7 jours
 
La publication : Fraudes et petites pratiques courantes - Exemples du milieu ...
La publication : Fraudes et petites pratiques courantes - Exemples du milieu ...La publication : Fraudes et petites pratiques courantes - Exemples du milieu ...
La publication : Fraudes et petites pratiques courantes - Exemples du milieu ...
 
Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.
Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.
Haiti: Résultats des Examens du bac1 (Rétho) pour le département du Nord.
 
Les joutes
Les joutesLes joutes
Les joutes
 
Information metier hotellerie restauration café, bar brasserie www.hotellerie...
Information metier hotellerie restauration café, bar brasserie www.hotellerie...Information metier hotellerie restauration café, bar brasserie www.hotellerie...
Information metier hotellerie restauration café, bar brasserie www.hotellerie...
 
Les faux prophetes
Les faux prophetesLes faux prophetes
Les faux prophetes
 
2014 06 25_11_37_29
2014 06 25_11_37_292014 06 25_11_37_29
2014 06 25_11_37_29
 
Rac emissions conso-vol2_juillet_2014
Rac emissions conso-vol2_juillet_2014Rac emissions conso-vol2_juillet_2014
Rac emissions conso-vol2_juillet_2014
 
Présentation skill2 invest
Présentation skill2 investPrésentation skill2 invest
Présentation skill2 invest
 
Le lapin
Le lapinLe lapin
Le lapin
 
23 routine step
23 routine step23 routine step
23 routine step
 
RP DIGITALES
RP DIGITALESRP DIGITALES
RP DIGITALES
 
Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.
Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.
Position de la MINUSTAH sur le processus de retrait de la MINUSTAH.
 
S2 ippt
S2 ipptS2 ippt
S2 ippt
 

Similaire à Les 10 erreurs fatales à ne pas commettre lors de la conception d'une base de données

Cv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutants
Cv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutantsCv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutants
Cv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutants
CERTyou Formation
 

Similaire à Les 10 erreurs fatales à ne pas commettre lors de la conception d'une base de données (20)

Introduction aux bases de données NoSQL
Introduction aux bases de données NoSQLIntroduction aux bases de données NoSQL
Introduction aux bases de données NoSQL
 
Intro SQL
Intro SQL Intro SQL
Intro SQL
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs
 
1-Intro to DB.pptx
1-Intro to DB.pptx1-Intro to DB.pptx
1-Intro to DB.pptx
 
BigData_Chp4: NOSQL
BigData_Chp4: NOSQLBigData_Chp4: NOSQL
BigData_Chp4: NOSQL
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big data
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
 
Introduction à la BIG DATA et l'Intelligence Artificielle
Introduction à la BIG DATA et l'Intelligence ArtificielleIntroduction à la BIG DATA et l'Intelligence Artificielle
Introduction à la BIG DATA et l'Intelligence Artificielle
 
Base de données.pdf
Base de données.pdfBase de données.pdf
Base de données.pdf
 
BigData_Chp5: Putting it all together
BigData_Chp5: Putting it all togetherBigData_Chp5: Putting it all together
BigData_Chp5: Putting it all together
 
Trop de Bla Bla, Passons au BigData
Trop de Bla Bla, Passons au BigDataTrop de Bla Bla, Passons au BigData
Trop de Bla Bla, Passons au BigData
 
Cv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutants
Cv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutantsCv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutants
Cv040 g formation-bases-ibm-z-os-et-db2-pour-les-dba-debutants
 
Échange et interopérabilité des données structurées sur le Web
Échange et interopérabilité des données structurées sur le WebÉchange et interopérabilité des données structurées sur le Web
Échange et interopérabilité des données structurées sur le Web
 
Base de données
Base de donnéesBase de données
Base de données
 
Chapitre1.pdf
Chapitre1.pdfChapitre1.pdf
Chapitre1.pdf
 
BDRO.pdf
BDRO.pdfBDRO.pdf
BDRO.pdf
 
Diginova - Session sur le machine learning avec ML.NET
Diginova - Session sur le machine learning avec ML.NETDiginova - Session sur le machine learning avec ML.NET
Diginova - Session sur le machine learning avec ML.NET
 
Gab17 lyon - La BI traditionnelle est une histoire du passée. Impacts de la r...
Gab17 lyon - La BI traditionnelle est une histoire du passée. Impacts de la r...Gab17 lyon - La BI traditionnelle est une histoire du passée. Impacts de la r...
Gab17 lyon - La BI traditionnelle est une histoire du passée. Impacts de la r...
 
Diaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdfDiaporamas-Bases de données.pdf
Diaporamas-Bases de données.pdf
 
A la découverte du Web sémantique
A la découverte du Web sémantiqueA la découverte du Web sémantique
A la découverte du Web sémantique
 

Les 10 erreurs fatales à ne pas commettre lors de la conception d'une base de données

  • 1. CIC CONF. Les 10 erreurs à éviter lors de la conception d’une base de données
  • 2. QUI SUIS-JE? Klein Houzin, ancien du CIC Promotion 2008-2011 Consultant informatique Spécialiste des bases de données relationnelles Vit au Ghana, Accra
  • 3. SOMMAIRE Conception d’une BD 10 erreurs Description Problèmes Solutions implicites
  • 4. BASE DE DONNÉES (BD)  Collection de données organisées en particulier pour la recherche rapide et la récupération par un ordinateur
  • 5. BASE DE DONNÉES (BD) Différente d’un SGBD (Système de Gestion de Base de données)  SQL Server  Oracle  MySql  Postgres  Mongo Db Différente d’une application
  • 6. UNE BD transforme une donnée en Information
  • 7. CONCEPTION Fait, pour un être vivant sexué, pour un enfant, d'être conçu, de recevoir l'existence.  Aptitude à comprendre quelque chose, à le saisir ou à le produire par l'esprit : Cela dépasse la conception humaine. Manière particulière de comprendre une question ; opinion, représentation, idée que l'on peut se faire de quelque chose : Des conceptions politiques. Action d'élaborer quelque chose dans son esprit, de le concevoir ; résultat de cette action : Mauvaise conception d'un appartement.
  • 8. CONCEPTION D’UNE BD Entrée :  Un projet déterminé  Règles de gestion  Domaine Sortie: Le modèle de la base de données
  • 9. LES 10 ERREURS FATALES A EVITER LORS DE LA CONCEPTION D’UNE BD
  • 10. ERREUR 1 Une base de données non normalisée
  • 11. ERREUR 1: BD NON NORMALISEE Description
  • 12. ERREUR 1: BD NON NORMALISEE Description
  • 13. ERREUR 1: BD NON NORMALISEE Causes - Coder directement sans planifier un schéma de la base de données - Travailler avec des EDI comme qui créent la base de données (CodeFirst) - Travailler sur une base de données non relationnelle
  • 14. ERREUR 1: BD NON NORMALISEE Problèmes 1. Augmentation de la nécessité de restructurer la collection des relations, de nouveaux types de données sont introduites, et 2. Model difficilement étendable 3. Le modèle relationnel non-informatif pour les utilisateurs 4. Répétition groupes de données 5. Faits contradictoires 6. Inconsistance de la base de données
  • 15. ERREUR 2 Une base de données trop/mal normalisée
  • 16. ERREUR 2: BD TROP NORMALISEE Description
  • 17. ERREUR 2: BD TROP NORMALISEE Description
  • 18. ERREUR 2: BD MAL NORMALISEE Description Normaliser une base de données non-relationnelle sur le modèle de Codd
  • 19. ERREUR 2: BD TROP NORMALISEE Problèmes  Les requêtes peuvent devenir très compliquées  Les chaines peuvent être brisées  Les jointures sont couteuses en temps pour les requêtes sur dans les entrepots de données OLAP(Online Analysis and Processing)  Implémenter un modèle relationnel dans un SGBD non-relationnel
  • 20. ERREUR 3 Utilisation des types de spécifiques a un SGBD
  • 21. ERREUR 3: DONNEES SPECIFIQUES A UN SGBD Description  Utiliser des types comme :  UniqueIdentifier (SQLServer)  Bit pour SQLServer  Boolean  RowId pour Oracle  Blob  Les jointures sont couteuses en temps pour les requêtes sur dans les bases de données OLAP(Online Analysis and Processing)
  • 22. ERREUR 4 Utilisation des types numériques flottants
  • 23. ERREUR 4: UTILISATION DES TYPES NUMERIQUES FLOTTANTS Description  Utilisation des types numériques comme float pour des montants précises
  • 24. ERREUR 4: UTILISATION DES TYPES NUMERIQUES FLOTTANTS Problèmes  Erreur lors des calculs  2 x 2= 3,99999  Erreurs lors des requêtes comportant des conditions sur ces colonnes  ex: Montant >= 0,1 peut ramener des valeurs comme 0,999999
  • 25. ERREUR 5 UTILISATION DES CLES PRIMAIRES NATURELLES
  • 26. ERREUR 5: UTILISATION DES CLÉS PRIMAIRES NATURELLES Description
  • 27. ERREUR 5: UTILISATION DES CLÉS PRIMAIRES NATURELLES Problèmes - Requêtes très couteuses en mémoire : les jointures sur certains champs textes sont très couteuses - Obligation de recréer une autre clé lorsque cette clé ne sera plus « naturelle »
  • 28. ERREUR 6 Ne pas utiliser forcer les contraintes sur les champs et les tables
  • 29. ERREUR 6: NE PAS UTILISER LES CONTRAINTES SUR LES CHAMPS ET LES TABLES Description  Mettre les champs texte a max  Varchar(max) , CHAR(255), INTEGER(11)  Ne pas mettre des contraintes CHECK sur les champs nombres
  • 30. ERREUR 6: NE PAS UTILISER LES CONTRAINTES SUR LES CHAMPS ET LES TABLES Problèmes  Grossissement des fichiers de la base de données  Requêtes très couteuses en mémoire (pour les champs trop larges)  Inconsistance de la base de données  Quantité negative  Montant négatif  Vitesse >300 000 m/s  Taille >4m
  • 31. ERREUR 7 Concevoir une base de données non localisable
  • 32. ERREUR 7: CONCEVOIR UNE BD NON LOCALISABLE Description Utilisation des champs textes pour representer les booleens OUI/NON Utilisation des champs textes pour representer les etats  Occupe/Non Occupe Fait/Non Fait Utilisation des champs textes pour représenter les chiffres
  • 33. ERREUR 7: CONCEVOIR UNE BD NON LOCALISABLE Problèmes Requêtes compliquées et couteuses en mémoire …..WHERE LOWER(Etat) = ‘oui’ OR LOWER(Etat) =‘yes’ OR LOWER(Etat)=‘ya’ Difficulté de construire des applications localisables Difficulté de construire des états localisables à partir de la base
  • 34. ERREUR 8 Enregistrer les mots de passe en plein texte
  • 35. ERREUR 8: ENREGISTRER LES DONNEES SENSIBLES EN CLAIR Description
  • 36. ERREUR 8: ENREGISTRER LES DONNEES SENSIBLES EN CLAIR PROBLEMES DONNEES VISIBLES A TOUTE PERSONNE QUI AACCES AUX TABLES OU VUES DONNEES PERSONNELLES LISIBLES (MOT DE PASSE) MODIFICATIONS FACILES
  • 38. ERREUR 9: MAGIC BEANS Description Modèles au niveau de MVC /MVVM / MVP
  • 39. ERREUR 9: MAGIC BEANS Problèmes Champs calculées Confusion du modèle de la base de données et du modèle de l’application Difficulté de construire une nouvelle application basée sur la base de données
  • 41. ERREUR 10: PAUVRE DOCUMENTATION Description Mauvaise nomenclature  Niveau des champs Niveau des tables Niveau des contraintes Schéma de la base de données non documenté
  • 42. ERREUR 10: PAUVRE DOCUMENTATION Problèmes Maintenance difficile de la base de données Evolution difficile de la base de données Etats ad hoc difficiles à générer
  • 43. ERREUR 0 Ne pas communiquer avec un Administrateur de base de données (ADB) lors d’un projet
  • 44. ERREUR 0 Avoir un ADB :  Permet de séparer l’application de la BD Permet de détecter les erreurs de conception dès le début
  • 45. ERREUR 0 Les applications passent mais les BD restent
  • 46. ERREUR 0 Les applications passent mais les BD restent
  • 47. MERCI QUESTIONS Suivez moi Blog besklein01.wordpress.com Twitter @bestklein Facebook « It always seems impossible until its done »Nelson Mandela