Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parAloys Fremont Modifié depuis plus de 9 années
1
1 A llier R elations et O bjets pour M odéliser Projet Sherpa INRIA Rhône-Alpes Visite Schneider 15/09/99
2
2 Plan n Motivations n Présentation des concepts de base d'AROM n Etat actuel d'AROM n Perspectives
3
3 Motivations n Modélisation et simulation de systèmes dynamiques: 1) Nécessité d'introduire des relations dans les SRCO 2) Temporalité 3) Langage de modélisation algébrique n Cet exposé se focalise sur le 1er point
4
4 Pourquoi des relations ? n La plupart des méthodes de modélisation de données reconnaissent l'existence de 2 types d'information: l entités: décrivent les objets du domaine modélisé l relations: décrivent les liens entre ces objets
5
5 Relations en OMT n 3 types l spécialisation (héritage) l association (générale) l aggrégation (composition)
6
6 Relations en RPO n Spécialisation (toujours) n Composition (parfois) sémantique built-in n Associations ???? l sous forme d’attribut-lien sémantique du lien binaire inverse l sous forme de classes traitement des associations d’arité > 2 mais pas de mécanismes spécifiques aux associations (spécialisation) et aux classes (composition)
7
7 Notre proposition Séparer les classes et les associations représentation explicite des associations
8
8 Les concepts d’AROM l On distingue 2 niveaux distincts Le noyau : AROM min
9
9 L’architecture d’AROM
10
10 Représentation de connaissances Une base de connaissances AROM comporte l des classes et leurs instances l des associations et leurs tuples Les classes sont organisées en hiérarchies de spécialisation… de même que les associations L’héritage est simple en AROM
11
11 Classe AROM Une classe décrit un ensemble d'objets qui ont des propriétés, des contraintes et un comportement communs Une classe est décrite par son nom, sa super-classe, une liste de propriétés appelées variables et des contraintes Une variable est décrite à l’aide de facettes – de typage ( type, domain, cardinality, constraint ) –de documentation ( documentation, unit ) –d’inférence ( default, definition, attachment )
12
12 Typage des variables Le type d’une variable : - prédéfini (entier, réel, …) avec la possibilité d’utiliser les constructeurs set-of et list-of - défini à l’aide du module extensible de types (en cours) REGLE d’OR : pas de variable dont la valeur est un objet pas de lien vers d’autre(s) instance(s) si un tel lien doit être représenté, il le sera à travers une association
13
13 Une hiérarchie de classes AROM class: Enseignant variables: variable: numInsee type: string documentation: "numéro INSEE" variable: service type: float documentation: "nombre d’heures enseignées" variable: salaire type:float domain: [0.0.. 100000.0] unit: "F" variable: salaireHoraire type: float
14
14 Une hiérarchie de classes AROM class: Temporaire super-class: Enseignant class: Permanent super-class: Enseignant variables: variable: serviceMin type: integer default: 192 documentation: "nombre d’heures min. à effectuer" variable: salaireFixe type:float Enseignant TemporairePermanent
15
15 Instance dans AROM Une instance est attachée à une classe et une seule et possède un idf unique Les liens ne sont pas mémorisés au niveau des instances Exemple : instance: E1 is-a: ENSEIGNANT numInsee = "1620251454005" service = 192 salaire = 15000. salaireHoraire =
16
16 Association dans AROM n Une association représente une liaison entre des instances de deux classes ou plus non nécessairement distinctes n Elle définit un sous-ensemble du produit cartésien des classes reliées n Une association est décrite par son nom, sa super- association, ses rôles, une liste de variables, et des contraintes l Un rôle représente un accès nommé à une des instances d’une classe impliquée dans l’association l Une variable d’association est une propriété de l’association
17
17 Association dans AROM Un tuple d’une association n-aire comporte : - les valeurs des n rôles correspondant aux n instances des n classes liées par l’association + - les valeurs des variables de l’association A chaque rôle est associé une multiplicité La multiplicité max du rôle r i dans une association A sur les classes C 1, C 2,..., C n, est le nombre max de fois qu'une instance donnée de C i peut apparaître comme valeur du rôle r i dans les tuples de A
18
18 Spécialisation d’associations Les associations peuvent être structurées en hiérarchies de spécialisation On parlera (s’ ) de super-association et de sous-associations Spécialisation d’une association: l Spécialisation de la classe d’un rôle l Modification ou ajout d’une facette à une variable ou à un rôle l Ajout d’une contrainte à une variable ou à un rôle l Ajout d’une contrainte d’association l Ajout d’une variable pas de spécialisation d’association par ajout de rôle
19
19 Exemple de hiérarchie d’associations
20
20 Exemple d’association association: Enseigne roles: role: enseignant type: Enseignant multiplicity: min:0 max:1 role: cours type: Cours multiplicity: min:0 max:* role: formation type: Formation multiplicity: min:0 max: * variables: variable: volumeHoraire type: integer
21
21 Exemple de tuple tuple: Enseigne enseignant = MARTIN // MARTIN est le nom d'une instance d'Enseignant cours = BD // BD est le nom d'une instance de Cours formation = DESDCISS // DESSDCISS est le nom d'une instance de Formation volumeHoraire = 50
22
22 La plate-forme AROM n Un noyau l package de classes Java l gestion des éléments de représentation de connaissances l types et langage algébrique l API de programmation Java pour la création, consultation et modification d ’une base de connaissances n au dessus l analyseur d ’une description textuelle d ’une base l composants d ’interface graphique l composants pour la mise en forme du contenu d ’une base pour le Web
23
23 La plate-forme AROM
24
24 La plate-forme AROM n Un éditeur de bases de connaissances l conception de bases de connaissances à l’aide de notation à la UML n Une application de consultation Web l accès et édition d’une base de connaissances l technologie JSP de génération dynamique de pages HTML d’aperçu du contenu d’une base
25
25 Perspectives n court terme : attachement procédural, langage algébrique n version 1.0 en novembre n à venir : types, classification, moteur de tâches, contraintes, liaison SGBD(OO), persistance, concurrence
26
26 Le site Web d’AROM http://www.inrialpes.fr/sherpa/pub/arom
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.