Upload
athanase-romero
View
112
Download
3
Embed Size (px)
Citation preview
Bases de Données et pédagogie
• Comment enseigner les bases de données en Baccalauréat Professionnel tertiaire ?
• Approche par le concept ou approche par les sorties ?
Bases de Données et pédagogie
Bases de Données et pédagogie
• 1 INTRODUCTION• Pourquoi l'analyse conceptuelle? Qu'est-ce-que l'analyse conceptuelle?
1.1 La situation• La situation est toujours ainsi au point de départ
Un problème de gestion Un outil informatique
Un utilisateur doit décider, agir… dans son organisation. Il a besoin d'informations pour résoudre un problème particulier. Il veut automatiser certains traitements.
Un ordinateur + ses logiciels
PC… + Access ou StarOffice...
Bases de Données et pédagogie
1.2 - La démarche par étapes1.2.1 - L'analyse préalable
Faire le tour du problème : interview, discussion, documents
Proposer une idée de solution avec les choix majeurs
Evaluer le projet de solution
Bases de Données et pédagogie
• 1.2.2 - La conception de la solution• Définir les données et les traitements
• 1.2.3 - Le développement du projet• La description détaillée de l'organisation des données
c'est à dire de la saisie, l'édition, les bases de données.La réalisation et tests.
• 1.2.4 - La mise en œuvre• Saisie complète des données
Formation des utilisateursDémarrage et mise au point finale
Bases de Données et pédagogie• 1.3 Les différents niveaux d’analyse
Conception 1 :
Le niveau conceptuel : le MCD
La solution est définie de manière abstraite par un modèle conceptuel : le modèle entité-association appelé aussi modèle relationnel.
Conception 2 : Le niveau logique ou organisationnel : modèle logique des données avec son Schéma conceptuel des données
Développement : Le niveau technique avec le Schéma physique de la base
Il faut rendre le MCD exploitable par le logiciel de base de données. On intègre à la solution, les caractéristiques du logiciel. On transforme le modèle selon un formalisme fourni par le modèle relationnel. Celui-ci est à la base des SGBDR. C’est la description détaillée de la solution.
Bases de Données et pédagogie1.4 - L' analyse conceptuelle des données est : • La recherche des informations élémentaires d'un problème de gestion :
système de gestion. • La compréhension des règles de gestion
• La représentation normalisée du système d'information c'est à dire la modélisation. Le "Modèle conceptuel de données" (MCD ) que nous utiliserons est le "Modèle Entité Association".
• La schématisation du modèle (SCD, Schéma conceptuel de données). La représentation sous forme de schéma visuel d'une base de données conceptualisée se fait selon un modèle dont la définition constitue une sorte de norme universelle. Le schéma réalisé conformément au modèle constitue un support / moyen de communication entre les acteurs du système et les informaticiens (éventuellement).
• L'analyse conceptuelle débouche bien entendu sur la mise en oeuvre technique, accompagnée de la réalisation de supports visuels
Bases de Données et pédagogie
2 Le vocabulaire et les règles du MCDLe vocabulaire précis et les règles sont indépendants des logiciels.
2.1 - L'entité2.1.1 - Définition
La connaissance de l'activité de l'organisation étudiée et des procédures de gestion, permet de définir les ensembles de données nécessaires à la gestion : les entités.
Bases de Données et pédagogie• Les entités :
SALARIES
SAL_NUM_SS
SAL_NOM
SAL_PRENOM
SAL_ADRESSE
SAL_CP
SAL_VILLE
L’entité récapitule les données de même nature. Ainsi, l’entité SALARIES va récapituler toutes les caractéristiques de chaque salarié de l’entreprise.
Nom de l’entitéCaractéristique des éléments de l’entité, les caractéristiques des salariés dans le cas présent. Ces caractéristiques prennent le nom de propriétés ou attributs
Propriétés ou attributs de l’entité SALARIE
Les informations élémentaires qui décrivent une entité sont appelés « Attributs » ou « Propriétés » de l’entité
Bases de Données et pédagogie2.1.2 Identifiant d’EntitéToute entité doit obligatoirement posséder une propriété identifiante. Le choix de
cette propriété est libre. Cependant, le fait d’élire une propriété comme identifiante entraîne deux conséquences :
- Son contenu ne pourra jamais être vide. Elle devra obligatoirement être renseignée.
- Les doublons seront interdits. Ainsi, si je désigne le nom d’un salarié, SAL_NOM comme propriété identifiante, je ne pourrais jamais dans mon système d’informations avoir deux nom de salarié identiques.
La propriété déclarée identifiante est soulignée.
SALARIES
SAL_NUM_SS
SAL_NOM
Le fait de choisir le numéro de Sécurité Sociale comme identifiant, correspond aux deux contraintes, toujours renseigné et impossibilité de doublons.
Toute entité doit posséder une propriété identifianteL’identifiant est la Propriété ou Attribut qui permet de distinguer un élément de l’entité de manière UNIQUE
Bases de Données et pédagogie• 2.1.3 Représentation tabulaire des informations
SAL_NUM_SS SAL_NOM SAL_PRENOM
1491124322035 Delage Robert
1520107834456 Ait-ouadi Farid
2541086054678 Aubert Evelyne
Dans le cas ci-dessus, l’entité SALARIE est représentée sous forme tabulaire. Son contenu représente les éléments d’information sur les caractéristiques de l’entité. Chaque ligne prend le nom d’occurrence. Ainsi, 1491224322035, Delage, Robert est la première occurrence de l’entité SALARIE qui en comporte trois dans le cas présent.
Occurrences de l’entité
Bases de Données et pédagogie•2.1.5 Correspondance avec un logiciel SGBDR :
Les tables
On passe ici du modèle logique (en l'occurrence le modèle relationnel) au niveau technique ou physique. Pratiquement, on réalise ce passage sur l'ordinateur.Une entité donne naissance à une table dans un SGBDR. La table est un objet informatique regroupant ici tous les individus (les occurrences) de l'entité.
· les colonnes ou champs : dans la table de l'entité, chaque colonne correspond à un attribut de l'entité.
· un attribut particulier est l' "identifiant" de chaque "individu" (occurrence), c'est à dire un numéro unique pour chaque individu. C'est la "clé primaire" de la table.
· les lignes : chaque ligne correspond à une occurrence de l'entité, ou "enregistrement". Une occurrence est notée sur une seule ligne.
Bases de Données et pédagogie
• 2.2 L’association Il peut arriver qu’une relation «naturelle» ou forte existe entre deux entités. Ainsi, si dans une entreprise il existe une entité SALARIES et une entité SERVICES de l’entreprise, il existe à l’évidence une relation « naturelle » entre ces deux objets qui peut être caractérisée par un verbe comme travaille. Cette relation se nomme une association et se représente par le symbole :
Travaille
SALARIES
SAL_NUM_SS
SAL_NOM
SAL_PRENOM
SAL_ADRESSE
SAL_CP
SAL_VILLE
SERVICES
SER_NUM
SER_NOM
SER_DESCRIPTION
Nb : Une association peut être porteuse de propriétés, Tra_Date dans le cas présent
Tra_Date
Lien
Lien
Bases de Données et pédagogie• Les cardinalités entre deux entités
Les cardinalités d’une entité vers une autre, vont avoir pour but d’indiquer combien de fois l’événement va se produire au minimum = Cardinalités mini (0 ou 1 fois) et combien de fois l’événement va se produire au maximum 1 ou plusieurs fois (n).
Cardinalités Minimales : Reprenons notre exemple :
Prenons une premier sens de lecture de SALARIE vers SERVICE. Nous devrons répondre à la question suivante :
Au Minimum : Un salarié travaille dans 0 ou 1 service, en d’autres termes, un salarié peut-il ne pas travailler (ne pas être affecté) dans un service ?
Si la réponse est Oui, elle sera matérialisée par le nombre 0. Si la réponse est Non cela signifiera qu’il est obligatoirement affecté à un service.
TravailleSALARIES
SAL_NUM_SS
SAL_NOM
SERVICES
SER_NUM
SER_NOM
SER_DESCRIPTIONTra_Date
0,
Cardinalité Mini
Sens de lecture
Bases de Données et pédagogie• Cardinalités Maximales :
TravailleSALARIES
SAL_NUM_SS
SAL_NOM
SERVICES
SER_NUM
SER_NOM
SER_DESCRIPTIONTra_Date
Au Maximum : Un salarié travaille au maximum dans un service ou peut-il travailler, (être affecté) dans plusieurs services.
Si la réponse est, : Il travaille ( il est affecté) dans au maximum une service, la cardinalité maxi sera 1 Sinon, s’il peut travailler dans plusieurs services, la réponse sera plusieurs et sera
matérialisée par n .
Dans le cas ci-dessous, la lecture de SALARIE vers SERVICE devient :
Un salarié travaille au minimum 0 fois dans un service (ou il peut ne pas
travailler, être affecté, dans un service mais par contre il travaille au maximum dans 1 service).
0,1Cardinalité Maxi
Bases de Données et pédagogie• Définition des cardinalités de SERVICES vers SALARIES
TravailleSALARIES
SAL_NUM_SS
SAL_NOM
SER_NUM
SER_NOM
SER_DESCRIPTION
Tra_Date
SERVICES0,1
Sens de lecture
Cardinalités Mini : - Un service fait travailler au moins un salarié (Card Min = 1).
Cardinalités Maxi : - Un service fait travailler au maximum plusieurs salariés,
(Card Max = n).
Ce Modèle Conceptuel de Données (M.C.D.) est maintenant complet et porteur de sens. La lecture est double, de SALARIES vers SERVICES, un salarié peut ne pas travailler dans un service (Cardinalité Maxi=0) mais s’il est affecté, il est affecté au plus dans un (Cardinalité Min=1). A contrario de SERVICES vers SALARIES, un service fait travailler au moins un salarié (Cardinalité Mini=1), mais il peut au maximum en faire travailler plusieurs (Cardinalité Maxi=n)
1,n
Bases de Données et pédagogie• Le Modèle Physique des Données (MPD)
Pour passer du Modèle Conceptuel des Données (MCD) au Modèle Physique des données (MPD), il suffit d’analyser les cardinalités maxi entre deux entités et d’appliquer la règle de passage du MCD au MPD.
PossèdePROPRIETAIRES BIENS0,n 1,1
Bases de Données et pédagogie
3 La méthode de construction d’un MCD
3.1 La recherche des données de la base
Il s’agit de trouver et de définir :- les attributs ou propriétés des entités,- les attributs des associations,- les données calculées dont on peut avoir besoin. Elle
sont calculées dans les requêtes ou formulaires ou les états. L’ensemble des informations constitue les données de la base. Cette recherche aboutira à la mise en évidence des entités
Bases de Données et pédagogie
3.2 Le dictionnaire des données
3.2.1 - Définition Le dictionnaire des données est à la fois le support du travail et le résultat de la recherche et analyse des données. Il se présente sous la forme d'un tableau
3.2.2 - PrésentationDans ce tableau, chaque donnée est représentée par : 1/ son nom informatique, c'est à dire un mnémonique ou un nom en clair, 2/ une description, 3/ son type numérique, alphabétique, logique... 4/ sa dimension en nombre de caractères,
5/ éventuellement les calculs qui permettent de la générer
Bases de Données et pédagogie
• 3.3 - Le schéma de la base
• Au stade de la conception, on réalise le schéma conceptuel des données.
FAMILLE
N°familleNomchef
PrénomchefNumrueNomrue
AdressevilleTéléphone
Nbreenfants
ENFANT
N°enfantNomEnfant
PrénomEnfantDateNaissanceDatecréation
ParticularitéAlim
Appartenir
1,n1,1
Bases de Données et pédagogie
• Au stade de la mise en œuvre, on réalise le schéma physique de la base :
Bases de Données et pédagogie• Modèle Physique des données et ACCESS
Cas 1 : Cardinalités Maxi Singulier Pluriel ou Pluriel Singulier (.,1->.,n ou .,n->.,1)
La Clef étrangère PRO_NUM dans BIENS permet de faire le lien, la jointure, avec la table PR0PRIETAIRES
Une fois la jointure établie sur le Numéro de propriétaire, la requête permet d’aller interroger les informations contenues dans les deux tables
Bases de Données et pédagogie• Modèle Physique des données et ACCESS
Bases de Données et pédagogie• Modèle Physique des données et ACCESS
Cas 2 : Cardinalités Maxi Pluriel Pluriel (.,n ->.,n )
Si par requête, nous voulons connaître les propriétaires des biens, nous devrons :
- Choisir les trois tables PROPRIETAIRES, Possède et BIENS = Sélection
- Vérifier les relations entre les différentes tables = Jointures
- Indiquer les champs à afficher = Projection
Bases de Données et pédagogie• Le concept de requête
La requête représente une extraction d’informations présentes dans la base de données. Cette extraction est mémorisée sous forme d’un langage d’interrogation en SQL
Nous retrouvons la Sélection
La jointure «JOIN»
La projection PRO_NUM,…
L’instruction WHERE indique une condition, N° de propriétaire = «01» dans notre exemple.
Bases de Données et pédagogie• Le concept de requêteRésultat de l’extraction :
Cette vision du contenu de la base n’est qu’une extraction des données qui correspondent à un instant «T» aux critères demandés, N° de produit = «01» dans le cas présent. Cette projection n’est pas sauvegardée sur le disque dur. Seule les instructions SQL sont sauvegardées. De ce fait, le fait de faire exécuter la requête permet de toujours obtenir les dernières données disponibles dans la base. Le programme est indépendant des données.
NB : Il faut s’efforcer de donner un nom à la requête de telle manière que sa lecture permette de comprendre ce qu’elle va réaliser comme opération. R01_Immeubles_Propriétaires permet de comprendre que nous allons obtenir le nom des propriétaires des immeubles présents dans la base.
Bases de Données et pédagogie
• Les requêtes : Approche par les sorties
N° du Nom du N° de Désignation
Propriétaire Propriétaire l'immeuble de l'immeuble
Cette méthode consiste à partir du résultat à obtenir. Dans notre exemple des propriétaires et des immeubles, nous désirons connaître les immeubles possédés par le propriétaire N° 1 ALBERT.
Les informations attendues sont :
Pour obtenir ce résultat les informations sont à rechercher dans les tables PROPRIETAIRES et IMMEUBLES. Cependant, il ne faut pas omettre que dans
le cas de cardinalités Pluriel (n), Pluriel (n), une table de correspondance Possède dans notre exemple, permet de mettre en liaison la table des PROPRIETAIRES avec la table des IMMEUBLES. Nous devrons donc sélectionner :
La table PROPRIETAIRE
La table Possède
La table IMMEUBLE
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
Informations utiles Nom des attributs Nom de la table utilisée
Numéro du propriétaire PRO_NUM PROPRIETAIRE
Nom du propriétaire PRO_NOM PROPRIETAIRE
Numéro de l’immeuble BIE_NUM BIENS
Nom de l’immeuble BIE_DESIGNATION BIENS
Pour faciliter la compréhension des attendus, les informations souhaitées peuvent être récapitulées dans un tableau.
Etapes à suivre pour réaliser la requête :
Etape 1 : La Sélection : Objet support de la condition, N° Propriétaire=«01»
Opérations Table(s) ou requête(s) sources(s)
Critères de sélection
Champ de jointure
Champ(s) projeté(s)
Requête résultat
Sélection Possède(Cette table contient les occurrences recherchées)
PRO_NUM=«01»
R01_Immeubles_Propriétaires
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
Pour illustrer cette approche, visualisons sur ACCESS la démarche. Le résultat obtenu à ce stade indique que le propriétaire dont le N° est 01 possède deux occurrences, c’est-à-dire deux biens. A ce stade nous ne connaissons pas encore ni le nom du propriétaire, ni la désignation des biens.
Etapes à suivre pour réaliser la requête :
Etape 2 : La Jointure : Où se trouvent les informations recherchées et sur quel(s) champ(s) va s’établir la jointure (l’association) entre les tables et requêtes
Opérations Table(s) ou requête(s) sources(s)
Critères de sélection
Champ(s) de jointure
Champ(s) projeté(s)
Requête résultat
Jointure R01_Immeuble_Propri.
PROPRIETAIRES
IMMEUBLES
PRO_NUM
BIE_NUM
R02_Immeubles_Propriétaires
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
La jointure permet de mettre en relation les objets R01_Immeuble avec PROPRETIARES et IMMEUBLES à partir de PRO_NUM et de BIE_NUM
Etapes à suivre pour réaliser la requête :
Etape 3 : La Projection : Quels sont les champs que nous voulons voir apparaître
Opérations Table(s) ou requête(s) sources(s)
Critères de sélection
Champ(s) de jointure
Champ(s) projeté(s)
Requête résultat
Projection R02_Immeuble_Propriétaires.
PRO_NUM
PRO_NOM
BIE_NUM
BIE_DESI.
Liste des biens du propriétaire n° 01.
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
Projection des champs
Résultats de la requête R02_Immeubles_Propriétaires
Condition
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
Autre solution : Commencer par la jointure
Etapes à suivre pour réaliser la requête :
Etape 1 : La Jointure : Où se trouvent les informations recherchées et sur quel(s) champ(s) va s’établir la jointure (l’association) entre les tables et requêtes
Opérations Table(s) ou requête(s) sources(s)
Critères de sélection
Champ(s) de jointure
Champ(s) projeté(s)
Requête résultat
Jointure PROPRIETAIRES
Possède
IMMEUBLES
PRO_NUM
BIE_NUM
R01_Immeubles_Propriétaires
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
Autre solution : Commencer par la jointure
Etapes à suivre pour réaliser la requête :
Etape 2 : La sélection : Objet support de la condition, N° Propriétaire=«01»
Opérations Table(s) ou requête(s) sources(s)
Critères de sélection
Champ de jointure
Champ(s) projeté(s)
Requête résultat
Sélection R01_Immeubles_Propriétaires
PRO_NUM=«01»
R01_Immeubles_Propriétaires
Bases de Données et pédagogie• Les requêtes : Approche par les sorties
Autre solution : Commencer par la jointure
Etapes à suivre pour réaliser la requête :
Etape 3 : La Projection : Quels sont les champs que nous voulons voir apparaître
Opérations Table(s) ou requête(s) sources(s)
Critères de sélection
Champ(s) de jointure
Champ(s) projeté(s)
Requête résultat
Projection R01_Immeuble_Propriétaires.
PRO_NUM
PRO_NOM
BIE_NUM
BIE_DESI.
Liste des biens du propriétaire n° 01.
Dans cette approche nous n’avons qu’une requête au lieu de deux.
Bases de Données et pédagogie
Outils méthodologiques à retenir :
- Nomination d’une Propriété - Passage du MCD au MPD- Jointure- Sélection- Projection
Vocabulaire à retenir :
- Entité – Propriétés - Association -Identifiant – Cardinalités (Mini et Maxi)- Occurrences