SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

Official "push" and real-time capabilities for Symfony and API Platform (Merc...
Official "push" and real-time capabilities for Symfony and API Platform (Merc...Official "push" and real-time capabilities for Symfony and API Platform (Merc...
Official "push" and real-time capabilities for Symfony and API Platform (Merc...
Les-Tilleuls.coop
 
Tp soa avec talend esb
Tp soa avec talend esbTp soa avec talend esb
Tp soa avec talend esb
Alahyane Ahmed
 

Mais procurados (20)

Les fondamentaux de langage C#
Les fondamentaux de langage C#Les fondamentaux de langage C#
Les fondamentaux de langage C#
 
Le langage html
Le langage htmlLe langage html
Le langage html
 
Hive ppt (1)
Hive ppt (1)Hive ppt (1)
Hive ppt (1)
 
Préz
PrézPréz
Préz
 
Official "push" and real-time capabilities for Symfony and API Platform (Merc...
Official "push" and real-time capabilities for Symfony and API Platform (Merc...Official "push" and real-time capabilities for Symfony and API Platform (Merc...
Official "push" and real-time capabilities for Symfony and API Platform (Merc...
 
Applications Android - cours 6 : Structure d’un projet Android
Applications Android - cours 6 :  Structure d’un projet AndroidApplications Android - cours 6 :  Structure d’un projet Android
Applications Android - cours 6 : Structure d’un projet Android
 
eServices-Chp1: Introduction
eServices-Chp1: IntroductioneServices-Chp1: Introduction
eServices-Chp1: Introduction
 
SOLID : les principes à l’origine du succès de Symfony et de vos applications
SOLID : les principes à l’origine du succès de Symfony et de vos applicationsSOLID : les principes à l’origine du succès de Symfony et de vos applications
SOLID : les principes à l’origine du succès de Symfony et de vos applications
 
Telecharger Exercices corrigés sqlplus
Telecharger Exercices corrigés sqlplusTelecharger Exercices corrigés sqlplus
Telecharger Exercices corrigés sqlplus
 
Les web services
Les web servicesLes web services
Les web services
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Rapport mini-projet Gestion Commerciale D’un Supermarché
Rapport mini-projet  Gestion Commerciale D’un SupermarchéRapport mini-projet  Gestion Commerciale D’un Supermarché
Rapport mini-projet Gestion Commerciale D’un Supermarché
 
Telecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfTelecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdf
 
Tp soa avec talend esb
Tp soa avec talend esbTp soa avec talend esb
Tp soa avec talend esb
 
Diapo fin d'étude bdd université ghardaia licence informatique
Diapo fin d'étude bdd université ghardaia  licence informatiqueDiapo fin d'étude bdd université ghardaia  licence informatique
Diapo fin d'étude bdd université ghardaia licence informatique
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôle
 
Langage B
Langage BLangage B
Langage B
 
Struts
StrutsStruts
Struts
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
 
Soap
SoapSoap
Soap
 

Destaque

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
 

Destaque (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
 

Semelhante a 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
 

Semelhante a 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