akoka & wattiau1 j. akoka & i. comyn-wattiau. akoka & wattiau2 plan introduction : le...
TRANSCRIPT
Akoka & Wattiau 2
PLANIntroduction : le problèmeCritères de classificationTechniques de classificationClassification automatique de données Un algorithme de classification automatique Classification automatique de schémas E-R Classification automatique de schémas orientés
objets orientésIntégration vs classification Autres applications
Akoka & Wattiau 3
I- Introduction : le problème
• L'efficacité et la qualité du processus de la conception de base de données dépendent principalement d'une bonne communication entre :
informaticiens• utilisateurs finaux
• managers
Le schéma conceptuel est supposé être un outil pour faciliter cette interaction.
Akoka & Wattiau 4
I- Introduction : le problèmeF Le succès du modèle ER peut s'expliquer principalement par la simplicité de ses concepts et par son formalisme graphique, tous deux facilitant le dialogue entre ces personnes.
F Toutefois, dans les applications réelles, le schéma conceptuel n'est pas suffisant pour atteindre une bonne communication parce que :
F il est souvent trop grand : il est très difficile d’analyser un schéma contenant une centaine d'entités.
l'information est donnée seulement d'un niveau d'abstraction. Une approche descendante devrait être un moyen plus facile de lire un schéma conceptuel.
Akoka & Wattiau 5
I- Introduction : le problème
La classification de schémas
un sous-schéma 1
un schéma conceptuel un sous-schéma 2
un sous-schéma 3
Comment découper ?
sur quels critères ?
Akoka & Wattiau 6
II- Les critères de regroupement
Les critères doivent s’appuyer sur la sémantique des données et/ou des traitements
La définition des critères dépend du modèleconceptuel utilisé
Akoka & Wattiau 7
Diplômé de EcoleEtudiant
Etudiant
Sc-nom
Sc- adresse
St-numéro
st-nom St-numéro
St-nom
Sc-nom
Sc-adresse
1 - Critères d’agrégation
L'agrégation est un groupement sémantique d'entités fondé sur l’existence d'une relation
II- Les critères de regroupement
Akoka & Wattiau 8
2 - Critères de dominanceLa notion de dominance s’appuie sur le concept d’entité faible
Professeur Etudiant
Classe SectionCours
Professeur
Cours 3.1
Etudiant
1 1 1
1
1
n
n
n
n
n
m
m
II- Les critères de regroupement
Akoka & Wattiau 9
3 - Le groupement par abstraction
Personne
Professeur EtudiantG
Personne 2.1
II- Les critères de regroupement
Akoka & Wattiau 10
4 - Le groupement par contrainte
Société Individu Personne 3.4
Prêt Prêt
Contrat Contrat
Xcontrainte d’exclusion
II- Les critères de regroupement
Akoka & Wattiau 11
III - Techniques de classification
Une technique de classification
- s’appuie sur la base d’un ou plusieurs critères
- définit la construction des niveaux d’abstraction et les schémas obtenus à chaque niveau
Akoka & Wattiau 12
1 - Groupement par horizon logique (Feldman & al 86)
L'horizon logique d'une entité E :
contient toutes les entités qui peuvent être identifiées de façon unique à partir de l’entité E
en d'autres termes, toutes les entités sont liées à l'entité E par une (ou plusieurs) 1:N relation(s) appartenant à son horizon logique
Exemple : Horizon logique de l'entité Département
Département Professeur Cours1 1 nn
III - Techniques de classification
Akoka & Wattiau 13
• Principe du groupement par horizon logique
a) Définir les centres de regroupement appelées entités majeures
b) Former des groupements d'entités qui sont les horizons logiques de ces entités majeures
• Limites
a) Procédure fastidieuse parce qu'elle est manuelle
b) La définition des entités majeures n’est pas aisée
c) La classification utilise uniquement un critère : la relation
III - Techniques de classification1 - Groupement par horizon logique (Feldman & al 86)
Akoka & Wattiau 14
Utilisation des 4 critères définis par Teorey
Le facteur de cohésion définit un ordre entre les différents critères de groupes
dominanceabstractioncontrainterelation
cohésion
+
-
Principe de la classification 1) définir des centres de regroupement à l'intérieur des domaines
fonctionnels 2) former des groupes d'entités 3) valider la classification
Limites a) processus manuel
b) définition des centres de regroupement difficilec) l'ordre entre les différents critères est arbitraire
2 - Groupement par cohésion (Teorey & al 89)
III - Techniques de classification
Akoka & Wattiau 15
spécifique aux méthodes orientées objets de type OOA [Coad]
OOA préconise différents niveaux d’abstraction appelés couches
L’une des couches, appelée sujet, définit un mécanisme pouvant servir de guide pour une lecture aisée d’un grand modèle complexe
Identification des sujets 1) choisir dans chaque structure (hiérarchie d’agrégation, de généralisation, etc) la classe de plus haut niveau : noyau du sujet
2) les classes qui ne sont dans aucune structure constituent aussi des sujets3) les sujets sont affinés en utilisant :
les sous-domaines du problème
les interdépendances (structures et connexions d’instances)
les interactions (connexions de messages)
Limites a) processus manuel b) fait appel à l’expérience du concepteur
3 - Groupement par sujet
III - Techniques de classification
Akoka & Wattiau ESSEC 16
Défini sur la base du modèle des objets naturels [Brès]
L’utilisateur perçoit des objets naturels dont la sémantique est plus riche que les concepts d’entité et d’association
Tout objet naturel est construit autour d’une entité principale, racine, et d’une grappe d’entités et d’associations reliées à cette racine
Limites l’identification des objets naturels est laissée à l’appréciation du concepteur
4 - Groupement naturel
III - Techniques de classification
Akoka & Wattiau 17
La méthode OOD suggère le regroupement de classes en catégories pour des raisons de visibilité
Une catégorie contient toutes les classes du même domaine
Le groupement par catégorie conduit à la définition de diagrammes de classes partiels plus faciles à lire
Chaque diagramme contient trois sortes de classes les classes privées n’appartiennent qu’à une seule
catégorie
les classes importées appartiennent principalement à une autre catégorie
les classes exportées appartiennent à cette catégorie mais sont aussi importées dans d’autres
Limites a) processus manuel
b) repose sur l’expérience du concepteur
5 - Groupement par catégorie
III - Techniques de classification
Akoka & Wattiau 18
6 - Conclusion sur les regroupements
• Dans le modèle E-R comme dans le modèle objet, le besoin de classification en plusieurs niveaux d’abstraction est réel
• Les regroupements proposés s’appuient sur la sémantique des applications
• Ils sont laissés à l’initiative et à l’expérience du concepteur
III - Techniques de classification
Akoka & Wattiau 19
• Les algorithmes de classification automatique permettent le regroupement en classes d’un nuage de points
• Il existe un grand nombre d’algorithmes différents
IV - Classification automatique de données
xx
x
xx
x
x
x x x
x x
x
Akoka & Wattiau 20
IV - Classification automatique de données
• Les algorithmes de classification ascendante partent de l’ensemble des objets isolés et regroupe les plus proches en une classe.
• Puis les classes les plus proches sont regroupées et ainsi de suite.
• On parle de classification ascendante hiérarchique.
• Elle suppose la définition de deux distances:– une distance entre les points– une distance entre les classes
Akoka & Wattiau 21
IV - Classification automatique de données
• Les algorithmes de classification descendante part de l’ensemble des objets considéré comme une classe, puis le coupe en deux et ainsi de suite jusqu’à l’obtention du nombre de classes désiré et/ou jusqu’à l’obtention du nombre de classes désiré
Akoka & Wattiau 22
IV - Classification automatique de données
• Les algorithmes d’agrégation consistent à créer des classes par agrégation– avec seuil de distance– autour de centres fixes– autour de centres mobiles : nuées dynamiques
Akoka & Wattiau 23
V - Un algorithme de classification automatique
• C’est un algorithme de classification descendante
• Qui découpe l’ensemble de points jusqu’à obtention d’un nombre donné k de classes
• Qui maximise la distance inter-classes
• Et minimise la distance intra-classes
Akoka & Wattiau 24
V - Un algorithme de classification automatique Début Soit [i] la classe contenant l’objet i ;
soit Ii = dis ; soit Eiq = dis
Soit j=1. Les objets à classer sont tous mis ensemble dans la classe (1).
Tant que j# k
/* le nombre k de classes n'est pas obtenu */
Faire/* construire la (j+1)ème classe */Choisir l'objet i tel que : Ii = Max Is
/* parmi tous les objets, i est le plus éloigné de sa classe */
Insérer i dans la classe (j+1).
I MIN E et I MIN E MAX I MIN Eiq iq i i iq m m mq
0Tant que il existe i tel que :
/* i est plus près de la classe [q] que de sa classe */ Faire
transférer i dans la classe [q]Fin tant quej=j+1
Fin tant que
Fin
s [i] s [q][i]
s
q
Akoka & Wattiau 25
Soit E un ensemble d’entités
a) Définition :Une distance entre entités est une application d de ExE dans R+ qui vérifie les propriétés suivantes :
b) Trois exemples de distances- distance visuelle
- distance hiérarchique
- distance cohésive
i x E y E
ii x E y E
iii x E y E z E
, ,
, ,
, , ,
d(x,y)=0 <=> x=y
d(x,y) = d(y,x)
d(x,y) <= d(x,z) + d(z,y)
VI - Classification automatique de schémas E-R
Akoka & Wattiau 26
utilise des distances mathématiques classifie un ensemble d’entités une classe contient les entités les plus
proches au sens de la distance
Objectif :appliquer les critères de classification de la
littérature ou d’autresobtenir un processus automatique de
classification
VI - Classification automatique de schémas E-R
Akoka & Wattiau 27
1 - Distance visuelle
d(i,j) = 1 si i et j sont liés par une relation
sinon d(i,j) = min (d(i,k) + d(k,j)) k
Exemple :
Cadeau
Employé
Enfant
Situation
Fournisseur
Bon de commandeCadeau
Centre de vacances
ChoixAffecté
Etablissement
1
1
1
1
1
1
1
N
N
N
N
N
N
N
2 classesDistance visuelle
1
Akoka & Wattiau 28
1 - Distance visuelle
d(i,j) = 1 si i et j sont liés par une relation
sinon d(i,j) = min (d(i,k) + d(k,j)) k
Cadeau
Employé
Enfant
Situation
Fournisseur
Bon de commandeCadeau
Centre de vacances
ChoixMission
Etablissement
1
1
1
1
1
1
1
N
N
N
N
N
N
N
1
Exemple :
3 classesDistance visuelle
Akoka & Wattiau 29
2 - Distance hiérarchique
d(i,j) = 1 si une relation 1:N existe entre i et j
d(i,j) = 2 si une relation M:N existe entre i et jsinon d(i,j) = min (d(i,k) + d(k,j))
k
Exemple :
Client
Région
Entrepôt
PersonnelAffectation
Tâche Employé
Niveau de réapprovisionnement
Produit
LigneCommande
Commande Livraison du produit
LivraisonClient
Stock1
N
1
1
1
1
11
11
1
1
1
1
1
1
NN
N
N
NN
N
N
N
N N
N
N
N
N
N
N
N
M M
1
MN
1
Akoka & Wattiau30
2 - Distance hiérarchique
d(i,j) = 1 si une relation 1:N existe entre i et j
d(i,j) = 2 si une relation M:N existe entre i et jsinon d(i,j) = min (d(i,k) + d(k,j))
k
Exemple :
Client
Région
Entrepôt
PersonnelAffectation
Tâche Employé
Niveau de réapprovionnement
Produit
LignesCommande
Commande Livraison du produit
LivraisonClient
Stock1
N
1
1
1
1
11
1
1
1
1
1
1
NN
N
N
NN
N
N
N
N
N
N
N
N
N
N
N
M
1
MN
1
N
M
3 classesDistance hiérarchique
Akoka & Wattiau 31
Client
Région
Entrepôt
PersonnelAffectation
Tâche Employé
Niveau de réapprovisionnement
Produit
LigneCommande
Commande Livraison du produit
LivraisonClient
Stock1
N
1
1
1
1
11
1
1
1
1
1
1
NN
N
N
NN
N
N
N
N
N
N
N
N
N
N
N
M
1
MN
1
2 - Distance hiérarchique
d(i,j) = 1 si une relation 1:N existe entre i et j
d(i,j) = 2 si une relation M:N existe entre i et jsinon d(i,j) = min (d(i,k) + d(k,j))
k
Exemple :
M
N
4 classesDistance hiérarchique
Akoka & Wattiau 32
3 - Distance cohésive
d(i,j) = 1 si i est une entité faible et j son entité régulière
d(i,j) = 10 si i est une classe spécialisée de j d(i,j) = 100 si i et j participent exclusivement dans une relation
... sinon d(i,j) = min (d(i,k) + d(k,j)) k
Exemple :
AdresseEditeur
HistoriqueEditeur
NotesEditeur
EditeurImport
Editeur
NoteSource
Règlement
Source
AdressesSource
Facture
Historiquelettre
Commercial DistributeurEchange
négocieavec
entité faible
entité régulière
G
N
N
N
NN
N
N
N N
N
N1
1
1
1
11
11
1
1
GLien entre entité spécialisée et générique
Akoka & Wattiau 33
3 - Distance cohésived(i,j) = 1 si i est une entité faible et j son entité régulièred(i,j) = 10 si i est une classe spécialisée de j d(i,j) = 100 si i et j participent exclusivement dans une relation
... sinon d(i,j) = min (d(i,k) + d(k,j)) k
Exemple :
AdresseEditeur
HistoriqueEditeurs
NotesEditeurs
EditeurImport
Editeur
NoteSource
Règlement
Source
AdresseSource
Facture
Historiquelettre
Commercial DistributeurEchange
négocieavec
entité faible
entité régulière
G
N
N
N
NN
N
N
N NN1
1
1
1
11
11
1
1
GLien entre entité spécialisée et générique
2 classesDistance cohésive
N
M
Akoka & Wattiau34
AdresseEditeur
HistoriqueEditeur
NotesEditeur
EditeurImport
Editeur
NoteSource
Règlement
Source
AdresseSource
Facture
Historiquelettre
Commercial DistributeurEchange
négocieavec
entité faible
entité régulière
G
N
N
N
NN
N
N
N NN1
1
1
1
11
11
1
1
GLien entre entité spécialisée et générique
N
M
3 - Distance cohésived(i,j) = 1 si i est une entité faible et j son entité régulièred(i,j) = 10 si i est une classe spécialisée de j d(i,j) = 100 si i et j participe exclusivement dans une relation
... sinon d(i,j) = min (d(i,k) + d(k,j)) k
Exemple :
3 classesDistance cohésive
Akoka & Wattiau 35
AdresseEditeur
HistoriqueEditeur
NotesPulicitaires
EditeurImport
Editeur
NoteSource
Règlement
Source
AdresseSource
Facture
Historiquelettre
Commercial DistributeurEchange
négocieavec
entité faible
entité régulière
G
N
N
N
NN
N
N
N NN1
1
1
1
11
11
1
1
GLien entre entité spécialisée et générique
3 - Distance cohésived(i,j) = 1 si i est une entité faible et j son entité régulièred(i,j) = 10 si i est une classe spécialisée de j d(i,j) = 100 si i et j participe exclusivement dans une relation
... sinon d(i,j) = min (d(i,k) + d(k,j)) k
Exemple :
4 classesDistance cohésive
M
N
Akoka & Wattiau 36
VI - Classification automatique de schémas E-R
• La distance visuelle regroupe les objets proches sur le diagramme
• La distance hiérarchique permet de retrouver les horizons logiques de Feldman
• La distance cohésive permet de classifier en respectant la hiérarchie de critères proposée par Teorey
4 - Conclusion sur les distances E-R
Akoka & Wattiau 37
On peut appliquer la même technique aux schémas orientés objets
L’algorithme utilisé est le même Il faut définir des distances spécifiques Nous décrivons ici cinq distances adaptées à différents
modèles objetsune distance structuro-connectiveune distance catégorielleune distance naturelleune distance communicative simpleune distance communicative fréquente
VII - Classification automatique de schémas objets
Akoka & Wattiau 38
• s’appuie sur les concepts du modèle objet OOA [Coad], en particulier :– les liens structurels (agrégation, généralisation,
composition),– les connexions d’instances,– les connexions de message.
• La distance entre deux objets vaut :– 1 s’il existe un lien hiérarchique entre eux,– 10 s’il existe une connexion d’instance ou de message
entre deux objets,– au plus court chemin dans les autres cas
1 - Distance structuro-connective
VII - Classification automatique de schémas objets
Akoka & Wattiau 39
• s’appuie sur les concepts du modèle objet OOD, en particulier :
– les liens d’héritage,
– les relations uses for entre les classes.
• La distance entre deux objets vaut :
– 1 s’il existe un lien d’héritage entre eux,
– 10 s’il existe une relation uses for avec des cardinalités 1-+, 1-*, 1-? entre eux,
– 100 s’il existe une relation uses for avec une cardinalité *+,** ou ++
– ou au plus court chemin dans les autres cas.
2 - Distance catégorielle
VII - Classification automatique de schémas objets
Akoka & Wattiau 40
• s’appuie sur les concepts du modèle des objets naturels, qui s’apparente plus à un modèle E-R étendu :
– les liens de généralisation,
– les associations de cardinalité minimale nulle,
– les dépendances d’existence,
– les autres liaisons sémantiques.
• La distance entre deux entités vaut :
– 1 s’il existe une association de card. min. 1 et aucune généralisation, ni dépendance d’existence ni assoc. de card. min. 0
– au plus court chemin si elles sont dans un même sous-graphe connexe, et à l’infini sinon.
3 - Distance naturelle
VII - Classification automatique de schémas objets
Akoka & Wattiau 41
• Un intérêt du modèle objet est qu’il intègre des caractéristiques de traitement
• Les distances communicatives utilisent le concept de message pour définir la proximité entre deux objets
• Nous utilisons le modèle POOM (Parallel Object Oriented Model) qui est un modèle objet incluant le parallélisme
4 - Distances communicatives
VII - Classification automatique de schémas objets
Akoka & Wattiau 42
Formalisme graphique de POOM
Entité ou Relation
# Attribut 1 Attribut 2... Attribut n
Etape 1
Etape 2
Méthode 10 Méthode 20
Méthode 30
Attributs de l'objet statique
Attributs de l'objet
dynamique
Nom de l'objet
Identifiant de l'objet
Evénement interne
Méthode publique
Message
Méthode privée
Akoka & Wattiau 43
• La distance communicative simple s’appuie sur la communication entre deux objets : l’existence d’un flux de messages entre objets traduit un lien sémantique entre ces objets.
• d(i,j) = 1 si un message existe entre les objets i et j
sinon d(i,j) est égal au plus court chemin de messages entre i et j
VII - Classification automatique de schémas objets
4 - Distances communicatives
Akoka & Wattiau 44
1
d(i,j) = ------- où fk est la fréquence du k -ème message fk entre les objets i et j
sinon d(i,j) = min d(i,k) + d(k,j) k
• La distance communicative fréquente s’appuie aussi sur la communication entre deux objets : l’existence d’un flux de messages entre objets traduit un lien sémantique entre ces objets.
• Elle intègre de plus la notion de fréquence de messages: plus deux objets communiquent fréquemment, plus ils sont proches sémantiquement
VII - Classification automatique de schémas objets
4 - Distances communicatives
Akoka & Wattiau 45
• La distance structuro-connective permet de retrouver les sujets d’OOA
• La distance catégorielle repère les catégories du modèle OOD
• La distance naturelle isole les objets du modèle des objets naturels
• La distance communicative fréquente permet de regrouper dans une classe les objets appartenant au même processus
VII - Classification automatique de schémas objets
5 - Conclusion
Akoka & Wattiau 46
VIII - Intégration vs Classification de schémas conceptuels
Critères Intégrationgration Classification
Définition A partir de plusieurschémas, construire un seul
Partitionner un schéma enplusieurs
Principe Eliminer les problèmes determinologie, détecter lesrecouvrements, etc.
Définir une distance entreles éléments, séparer leséléments les plus éloignés
Objectifs obtenir une vue unique offrir des vues détailléesPositionnement après conception et
validation des vuesaprès validation duschéma conceptuel
Pointscommuns
s'appuient sur lasémantique
et sont utiles pour lesgrands schémas
Automatisation partielle complète sur la base d'unedistance
Akoka & Wattiau 47
• La classification de schémas peut être utilisée après intégration pour valider cette dernière et retrouver les vues initiales
VIII - Autres applications
•La classification de tuples peut être utilisée pour définir un partitionnement de B.D. relationnelles parallèles
•La classification d’attributs peut être utilisée pour alléger le processus de comparaison avant intégration des vues