Vous êtes sur la page 1sur 16

CONCEPTION

DE

BASES DE
DONNEES

Orienté Objet
Définition

Méthode de conception de schémas de


bases de données OO

OBJECTIFS :
• Définir les classes et les objets
• Aider à la spécification
• Définir un placement
physique des données
• Aider l'administrateur de la BD

Différentes Approches

• ADA
• Développement de projets
• BD Relationnelles
• BD OO
Concepts
communs

INSTANCIATION HERITAGE
• Création • Factorisation
• / Métaclasses • / Metaclasses
• Classes / Types • Classes / Types
• Instances • Simple ou Multiple

AGREGATION METHODES

• Structure : • Comportement
VI ou Attributs
• Classes / Types
• Classes / Types
• / Contraintes
Type et Classe
Comparaison

Types Classe

Valeur Objet
• Atomique • Une structure
• Complexe • Un comportement
• Encapsulation
Constructeurs • Identifiant d'objet
• Structure Classe
• Opérateurs
• Description des
prédéfinis objets
• Fabrique d'objets
Type
• Atomique
• Complexe
Constructeur
s
Structure complexe :

exemple : Livre
- un titre
- un ensemble de chapitres
composés de :
- un titre
- un ensemble de sections.

Construction d'objet complexe.

• Constructeurs génériques
Tuple [a1 : t1,......., an : tn]
Ensemble {t}
Array < t >
Liste (t)
• Application récursive
Agrégation

Définition
Modélisation du lien "IS-PART-OF« 

Vocabulaire

CLASSE
Exemple : PERSONNE REFERENCANTE

Vit

CLASSE
ADRESSE REFERENCEE
Rue
Ville Code postal

STRING STRING ENTIER


Approches
ADA
Références :

• OOD - Grady Booch - 1983


• HOOD - CISI Ingénierie - 1987

Principe

Définir une méthode de conception de gros


projets qui génère de l'Ada

Particularité :

L'unité de décomposition est l'objet

Principe des approches classiques


1) Diviser pour comprendre
2) Faire autant de modules que de
problèmes à résoudre
Approches ADA (2)
Différence avec l'approche classique

Topologie d'un programme structuré :

X Y

Dégénérescence de la topologie d'un programme


Approches ADA (3)
Différence avec l'approche classique

Avantages de la programmation par objets :


1) Faible distance par rapport à la réalité

2) Modules (= objets) à :
• Forte cohésion
• Faible couplage

3) Réutilisation aisée d'objets

4) Facilité de programmation parallèle

Topologie de programme en conception OO :


Méthode OOD
Principe :
Un programme = { objets }

Un objet = un etat, un comportement


et {opérations}

Structure d'un objet

Interface => Partie visible


Corps => Partie cachée

La démarche :

1) Identification des objets


=> Nommage

2) Identification des opérations


=> opérations subies
=> opérations requises

3) Etablir la visibilité entre objets


=> Architecture statique des
objets

4) Etablir l'interface des objets

5) Implanter les objets

=> Codage
Méthode HOOD

Historique :

Choisie par l'ESA pour la construction


de la navette Colombus.

Principe

• Extension de la méthode de G. Booch

• Formalisme graphique

• Vocation : systèmes temps réels


implantés en ADA

Concepts :

• Abstraction via l'encapsulation

• Structuration

• Décomposition parent/enfant
• Liens d'utilisations

• Représentation du comportement
Méthode HOOD
Formalisme graphique

Etat Nom de l'objet Liens


Interface
d'utilisation

Flux de Enfant A
Opérations de l'objet : parent / enfant
controle
Donnée échangée
opA
opB Enfant B
Donnée échangée

Objet Oncl

Exception
Méthode HOOD
Exemple

MACHINE A CHOCOLAT

ASER by INIT t
T button CONTROLE NIVEAU TIMER

START
START
TEMPERATURE
t

START

STOP

MELANGEUR ROBINETS

MARCHE OUVRIR R
FERMER R
ARRET OUVRIR L
FERMER L
OUVRIR V
FERMER V

COMMANDE DE L.P.C.

COMMANDES
DU MELANGEUR
TEMPERATURE

COMMANDE DE
MESURE DE LA TEMP.

DRIVER E/S
Développement de projets
Références :

• OMT - MES Loomis et Cie - 1987


• OOD - G. Booch - 1991
• Merise ++ - A. Rochfeld - 1991
Principe :

Aider à la construction de gros projets


en utilisant le paradigme objet

PB : Pas de notation uniforme

Analyse

Prototypage
Rapide Conception

Codage
Rafinage
Extension
Test

Intégration

Utilisation
Evolution de Schéma
DEFINITION
METTRE A JOUR DYNAMIQUEMENT LE SCHEMA (ET
LES INSTANCES) D'UNE BASE DE DONNEES EN
CONSERVANT SA COHERENCE

BEAUCOUP DE PROBLEMES , TRES PEU RESOLUS

QUELLES MAJ PEUT-ON EFFECTUER ? Exemple

1. STRUCTURE D'UNE CLASSE


- Ajout d'un attribut
- Le graphe d'héritage multiple est acyclique
- Compatibilité des domaines de définition
des attributs hérités
redéfinis

2. COMPORTEMENT D'UNE CLASSE


- Modifier le code d'une méthode
- Suppression d'un attribut qui utilisé dans
une méthode

3. GRAPHE D'HERITAGE DES CLASSES


- Changer le nom ou supprime rune classe,
rendre public un attribut, changer le graphe
Conclusion
Problèmes
subsidiaires
Idée :
Réutiliser les techniques de
conception de BD relationnelles
et générer des schémas de BD OO.

Réutilisation => BD OO doivent


posséder un ensemble de classes :

• cohérentes
• non redondantes
• adaptées aux besoins

Solution

• Classes d'utilisateurs
• Outils d'aide à l'administration
des classes

Vous aimerez peut-être aussi