0% ont trouvé ce document utile (0 vote)
36 vues6 pages

Modélisation de bases de données ODMG

Transféré par

RafikSoufian
Copyright
© Attribution Non-Commercial (BY-NC)
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
36 vues6 pages

Modélisation de bases de données ODMG

Transféré par

RafikSoufian
Copyright
© Attribution Non-Commercial (BY-NC)
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Bases de donnes orientes objets Exercices de modlisation

1. Traduction des schmas entit association en schmas orients objets


Question 1: Traduire le schma entit association "Immatriculation de vhicules" (vu en exercice entit association) en un diagramme orient objets de type ODMG (voir ci-dessous le rappel de son diagramme entit association). Question 2: Proposer un algorithme qui permette d'obtenir un schma orient objets de type ODMG partir d'un schma entit association quelconque. Dfinissez de faon prcise les informations utilises par votre algorithme. NB Penser aux diffrents types de hirarchies de gnralisation / spcialisation (disjointes ou non, statiques ou dynamiques).
nom adr numro

Propritaire

partition

Constructeur
vendeur

G/P

Concessionnaire

partition

Premire Vente
date prix

acheteur

Garage
acheteur vendeur

Personne
prnom

n`[Link]

Vhicule
numro

Vente
date prix

Immatriculation de vhicules en entit association

2. Horaires de trains

Il sagit de dfinir le schma dune base de donnes orientes objets dcrivant les lignes et les horaires des trains de voyageurs dune compagnie ferroviaire afin de renseigner leurs usagers. Chaque horaire dcrit un parcours effectu rgulirement par un train. Il est identifi par le numro du train et est caractris par le type de train (intercity, cisalpino, rgional, tgv), son parcours et son calendrier. Le parcours dfinit la liste des gares desservies avec les heures darrive et de dpart, et le numro de voie. Le calendrier dfinit la liste des jours de la semaine o le train circule, la liste des exceptions positives (dates o le train circule malgr le fait quelles ne correspondent pas des jours de la semaine o le train circule habituellement) et la liste des exceptions ngatives (dates o le train ne circule pas malgr le fait quelles correspondent des jours o le train circule habituellement). Par exemple pour l'anne 2000, le TGV 20 circulait les lundis, vendredis et samedis, et exceptionnellement les 25.04.2000, 2.05.2000, 9.05.2000, mais pas les 24.04.2000, 1.05.2000, 8.05.2000. Il dessert les gares de Lausanne (dpart 9h14 voie J), Vallorbe (arrive 9h40, dpart 9h48 voie A), , Paris gare de Lyon (arrive13h19 voie 11). On voudrait aussi mmoriser pour chaque gare la ville correspondante, car plusieurs gares peuvent desservir la mme ville. Exemple de requtes typiques de l'application: Imprimer l'horaire du train numro XXX (gare et heure de dpart, liste des gares desservies avec les heures d'arrive et de dpart, gare du terminus avec heure d'arrive). Le train numro X circule-t-il telle date? Quels trains (numro, heure de dpart et d'arrive) vont de la ville X la ville Y? Question 1: Dfinir le diagramme ODMG de cette base de donnes. Prciser les cardinalits et, chaque fois que cela est utile, les dfinitions en franais. Prciser aussi en franais les contraintes d'intgrit s'il en existe. Question 2: Justifier le choix du sens de vos attributs rfrence : pour chaque attribut rfrence donner un exemple dune requte, exprime en franais, qui justifie la prsence de cet attribut rfrence.

3. Modlisation d'une application tlphonique


On veut grer l'annuaire des abonns au service tlphonique d'une ville donne, ainsi que la facturation des appels tlphoniques faits par les abonns. L'annuaire rpertorie les personnes et les socits avec leurs numros de tlphone. Un mme numro peut tre partag par plusieurs personnes ou socits situes la mme adresse. Une mme personne ou socit peut possder plusieurs numros. Les personnes et socits sont rpertories avec leurs nom, adresse, ventuellement une ligne de commentaire et leur(s) numro(s) de tlphone. Dans le cas o il y a plusieurs numros, une ligne de texte peut tre associe chacun d'entre eux. Dans le cas d'une personne, on mmorise aussi ses prnoms, et, dans celui d'une entreprise, sa rubrique professionnelle. Le cot d'un appel est fonction de l'heure et du jour, ainsi que de la dure et de la distance. On mmorise, pour chaque appel, les numros appel et appelant, la date, l'heure et la dure. Pour la gestion de la facturation, dans le cas d'un numro affect plusieurs personnes ou socits, seule l'une de ces personnes/socits est dtentrice de l'abonnement: c'est elle que sont envoyes les factures.

Question: Dessinez le diagramme de la base de donnes oriente objets de type ODMG ncessaire cette application. Expliquez et justifiez vos choix.

4. Cadastre et historique
Certains SGBDs orients objets ou relationnels objets, comme Oracle 8, offrent leurs utilisateurs des extensions pour stocker et manipuler des donnes spatiales. Ces extensions permettent, entre autres, de dcrire des cartes. Elles consistent le plus souvent en un ou plusieurs nouveaux domaines spatiaux. Ces domaines comprennent : Le domaine Point, dfini par deux coordonnes X et Y. Par exemple on peut dcrire par des valeurs du domaine Point des sommets de montagne, des pylnes lectriques, voire des villes quand l'chelle est peu prcise. Le domaine Ligne, dfini par une suite de points. Par exemple on peut dcrire par des valeurs du domaine Ligne des routes, des lignes lectriques, des rivires. Le domaine Polygone, dfini par une ligne ferme. Par exemple on peut dcrire par des valeurs du domaine Polygone des parcelles de terrain, des lacs, des pays. A chaque domaine est associ un jeu de mthodes qui permettent de poser des requtes sur leurs valeurs. Par exemple les mthodes suivantes sont valables pour toute valeur spatiale : Real distance(valeur-spatiale) calcule la distance entre deux valeurs spatiales Boolean intersection(valeur-spatiale) teste si deux valeurs spatiales se recouvrent Boolean adjacent(valeur-spatiale) teste si deux valeurs spatiales se touchent Void afficher(chelle) affiche la valeur spatiale telle chelle On veut stocker sur un SGBD objets de type ODMG qui offre ces domaines spatiaux, le cadastre d'un canton. Le cadastre dcrit les parcelles de terrain, actuelles ou passes, et leurs propritaires, actuels ou passs. Chaque parcelle est identifie par un numro, et est dcrite par le type actuel de la parcelle (cultive, btie, etc.) et par son emprise gographique (c'est--dire son polygone). Cette emprise peut avoir t modifie au cours du temps, notamment si une rectification de son contour a eu lieu, par exemple pour corriger une erreur de bornage. Dans ce cas, le cadastre doit conserver l'historique de ces modifications, c'est--dire permettre de savoir quel est (tait) le contour de la parcelle tout instant actuel ou pass. On veut aussi mmoriser tous les btiments existants actuellement et ceux qui ont t dtruits depuis moins d'un sicle. Pour chaque btiment on mmorisera son contour (c'est--dire son polygone), son type (habitation, exploitation agricole, etc.) et la (les) parcelle sur laquelle il est (tait) construit. Le cadastre doit aussi conserver pour chaque parcelle l'historique des propritaires, c'est--dire permettre de savoir tout instant, actuel ou pass, quel est/sont (tait/taient) les propritaires. Pour chaque propritaire on veut les informations suivantes: nom, ventuellement nom de jeune fille, prnoms, date et lieu de naissance, numro AVS si cette personne en a (avait) un. Enfin, le cadastre doit mmoriser la "gnalogie des parcelles", savoir l'historique des fusions et divisions de parcelles qui ont eu lieu. En effet, lors d'une succession par exemple, une parcelle peut tre divise entre plusieurs hritiers: la parcelle n'existe plus et sa place plusieurs nouvelles parcelles sont cres. De mme, lors d'un remembrement des parcelles contigus peuvent tre fusionnes et disparatre pour crer une nouvelle parcelle.

Question: Dfinir le diagramme ODMG de la base de donnes du cadastre. Prciser chaque fois que cela est utile la dfinition en franais des classes et des attributs (attributs-valeur et attributsrfrence). Prciser aussi en franais les contraintes d'intgrit s'il en existe.

5. Mta modle
Les SGBD relationnels grent souvent leurs dictionnaires de donnes sous la forme d'une base de donnes relationnelle contenant des relations systmes qui dcrivent les schmas existants, et pour chacun d'eux les relations qui les composent avec leurs attributs. Cette base particulire est appele mta-base. En orient objets on peut de la mme faon dcrire dans une mta-base oriente objets les schmas existants et leurs classes. Question: Proposer un mta-modle orient objets de type ODMG qui dcrit les schmas des bases de donnes orientes objets existantes, avec leurs classes, leurs attributs et leurs liens de composition et de gnralisation / spcialisation.

6. Base de documents
Un centre de recherche veut stocker dans une base oriente objets tous les documents qu'il produit: rapports, articles scientifiques, livres Un document est caractris par son type (rapport, article scientifique ou livre). Il est compos de: son nom (identifiant), un entte comprenant le titre, les auteurs (nom, affiliation), les mots cls, la date de cration, un rsum (une suite de lignes de texte, 15 au maximum), le corps du document, la bibliographie du document. Certains documents tant en cours d'criture, certaines parties peuvent ne pas tre termines ou tre compltement absentes, par exemple, le rsum et les mots cls n'existent pas, le corps n'est pas fini Le corps est compos d'une suite de paragraphes. Chaque paragraphe a un numro, un titre et un contenu. Le contenu d'un paragraphe est constitu d'une suite d'alineas qui sont soit du texte, soit un sous-paragraphe. La description d'un sous-paragraphe est identique celle d'un paragraphe. Le texte peut contenir des figures. Une figure est compose d'un numro, d'un titre, d'une image (qui peut tre un dessin, un graphique ou une photo), et ventuellement d'une lgende et d'une courte description. Les lignes de texte peuvent contenir des renvois des rfrences de la bibliographie, d'autres paragraphes et des figures du document. La bibliographie est compose d'une suite de rfrences des ouvrages, sous la forme: nom de l'auteur (ou des auteurs), titre, date et lieu de parution. Ces ouvrages peuvent tre eux-mmes des documents de la base. Un mme paragraphe, une mme figure, une mme rfrence bibliographique peuvent tre communs plusieurs documents de la base. On veut pouvoir rpondre des questions du type: liste des titres des documents qui contiennent une rfrence bibliographique tel auteur (ou qui ont tel mot cl), liste des noms des documents qui contiennent telle figure (ou tel paragraphe),

lister le Xime paragraphe (ou la Xime figure) de tel document, imprimer tout le document de tel nom, lister les titres (ou les rsums) des documents crits par tel auteur, liste des dessins employs par tel auteur, liste des images correspondant telle description

Question: Dessinez un diagramme ODMG pour cette base de donnes. Prcisez les cardinalits (0:1, 1:1, 0:n, 1:n), et les contraintes d'intgrit.

7. Traduction du relationnel en orient objets


On veut traduire en orient objets une ancienne base de donnes relationnelle qui dcrit les prts bancaires faits des clients (qui peuvent tre des personnes, des entreprises ou des banques) pour des achats de voitures. Le schma de cette base de donnes est dcrit ci-dessous: Personne ( nAVS , nom , age , employeur1 , employeur2 , adresse , tlphone ) Voiture ( nPropritaire , nVoiture , [Link] , modle , anne ) Prt ( nVoiture , nClient , [Link] , banque , nprt , taux , montant ) Entreprise ( nom , nEntreprise ) Banque ( nom , nBanque ) Question: Proposer un diagramme orient objets de type ODMG pour cette base de donnes. Lors de la traduction, on supprimera tous les identifiants qui taient ncessaires en relationnel, mais qui sont inutiles en orient objets.

8. Gestion de pices
Dans une entreprise, on gre deux types de pices: les pices de base qui sont achetes l'extrieur, et les pices composites obtenues par assemblages d'autres pices (composites ou non). On veut constituer une base de donnes dcrivant les diffrents modles de pices. Pour cela on stockera pour un modle de pice composite, son nom, son cot d'assemblage, la liste et la quantit des pices entrant dans sa fabrication. Pour un modle de pice de base on stockera son nom et son prix unitaire. On veut pouvoir calculer le prix de revient d'une pice composite dont on connat le nom. On veut pouvoir commander le nombre exact de pices de base entrant dans la fabrication d'une pice composite. Question 1: Dessiner le diagramme de la base de donnes oriente objets de type ODMG ncessaire cette application. Question 2: Spcifier une mthode calculant le prix de revient d'une pice quelconque qu'elle soit de base ou composite: signature de la mthode et spcification de la procdure associe en pseudocode. Question 3: Pour une pice composite donne, spcifier une mthode permettant d'afficher les noms des pices utilises dans sa fabrication.

9. Domaine Date

De mme que certains SGBDs orients objets ou relationnels objets offrent des domaines particuliers pour grer les valeurs gographiques, d'autres systmes offrent des domaines pour grer des valeurs temporelles, notamment les dates. Question: Proposer un ensemble de mthodes standard pour le domaine Date (pour chaque mthode: signature et dfinition en franais de sa fonction).

Vous aimerez peut-être aussi