SlideShare une entreprise Scribd logo
1  sur  16
Modèle navigationnel
(Mnav)
TRANSFORMATION DU DIAGRAMME DE CLASSE UML EN UN MODÈLE
NAVIGATIONNEL(PARTIE I)
Soukaina EL HAYOUNI
Notions de l’objet
 Objet physique : entité tangible et visible, une chose concrète qui affecte
les sens, et particulièrement la vue.
 Exemple : un avion, une image, un stylo…
 Objet informatique : En informatique, un objet est un conteneur
symbolique, qui possède sa propre existence et incorpore des informations
et des mécanismes en rapport avec une chose tangible du monde réel, et
manipulés dans un programme. C'est le concept central de
la programmation orientée objet.
 Exemple : un vecteur de valeur, un fichier jpeg….
2
Comment passer du conceptuel au
modèle objet ?
 Le passage du diagramme de classe de UML à l’Objet est rendu facile par
le modèle dit navigationnel (outil didactique pour le niveau conceptuel)
inspiré de la notation proposée par Christian Soutou.
 Le modèle Mnav joue le rôle de pivot ou d’étape entre le diagramme de
classe de UML et le modèle d’implémentation objet.
 Le Mnav ne remplace pas la vérification et le renforcement des contraintes
du modèle, lesquelles devront être prises en charge par les méthodes
spécialisées de chaque interface de classe.
 Le Mnav fournit une structure qui incorpore explicitement certaines
contraintes du modèle mais pas toutes.
3
Modèle navigationnel (Mnav)
 Objectif :
 Faciliter le passage vers l’objet par un ensemble de règles de transposition : Diagramme
de classe  navigationnel  objet
 Favoriser la visualisation des structures complexes et des chemins de navigation
possibles en conservant la notation d’objet.
 Représenter concrètement le plus de contraintes possibles pouvant être spécifiées par le
langage DDL du SGBD.
 Lacune :
 Devient rapidement encombré et encombrant pour des modèles complexe.
 Ne représente pas bien le partage des types entre différentes parties d’un modèle
UML(classes) complexe
 Pourquoi Mnav ?
 Le modèle introduit des liens de type REF (implémentation avec l’OID + autres
informations)entre les classe UML.
4
Quelque définitions clés du Mnav
 Classe externe: la classe UML sera rendu dans le Mnav par une classe dite
externe qui est en quelque sorte au plan informatique un type (structure
nommée) défini par ses attributs.
Une classe externe définit des objets autonome (dont l’existence ne
dépend pas d’un autre objet) dans la base, possède une valeur + un oid qui
rend l’objet persistant.
 OID : est un identifiant d’objet unique, non réutilisable pour toute la vie de
la base. Un objet ayant un oid est persistant dans la base. Il est représenté
par un rond blanc ou noir.
 Classe interne : Une classe interne est une classe capable de définir des
objets (sans oid propre) mais sans oid dont la persistance exige son
imbrication dans un objet nommées et ont chacune une interface
5
Les attributs de Mnav
 Attributs simple :
L’attribut simple est idem à celui de UML: type atomique avec ses
opérations primitives régulières et implicites:
Exemple : un entier avec ses opérations arithmétiques valides
une chaine avec son opérateur de concaténation, …
 Attributs complexe :
L’attribut complexe permet d’abandonner la forme normale FN1 du modèle
relationnel en ajoutant une structure de tuple pour regrouper plusieurs
attributs éventuellement de types différents.(struct)
L’attribut complexe a un type (complexe) mais aucune méthode de traitement
associé. Cette carence sera cependant contournée par une autre approche.
6
Lien: simple avec une classe interne ou
externe
 Lien simple :
 Un lien est établi entre un attribut et une classe interne ou externe.
 Un lien simple associé une valeur d’un attribut à 1 objet de la classe
interne ou externe.
 Ce lien peut être vide (rond blanc) ou obligatoirement valué par un
oid(rond noir).
7
Lien multiple avec une classe interne
ou externe
 Lien multiple:
 Un lien est établi entre un attribut et une classe interne ou externe.
 Un lien multiple pour un attribut y associe à 0 ou plusieurs objets de la
classe interne ou externe.
 Ce lien peut être vide (rond blanc) ou obligatoirement valué par un oid(rond
noir).
8
Attribut complexe: tuples et
ensemble/classe externe et interne
 Tuple : est une structure logique linéaire formée d’attributs simples ou
complexes mais sans interface.
 Un attribut complexe définit des valeurs dont l’existence dépend que de l’objet
externe qui les héberge. Il est représenté par une structure non nommée et
sans interface. Ce n’est pas une classe interne mais uniquement une structure
pour y ranger des valeurs.
 L’attribut « laSpecialite » est associé à une structure de tuple (similaire à une
struct ).
9
Attribut associé à un seul objet
 Un attribut associé à un seul objet d’une classe est représenté par un lien
simple vers une casse interne.
10
Attribut d’ensemble ordonné
d’objets(v)
 Un attribut d’ensemble ordonné d’objets est rendu par un lien interne
multiple concrétisée par une structure de type varray.
 Les éléments de l’attribut lesSpecialites sont stockés dans un varray
(similaire à un tableau ou un array et noté V). Chaque entrée est indicée et
peut être soit une valeur soit un objet interne. Le varray a des attributs
propres qui pourraient être considérés comme des fonctions prédéfinies et
non modifiable.
11
Attribut d’ensemble non ordonné
d’objets
 Un attribut d’ensemble d’objets est rendu par un lien interne multiple vers
une classe interne.
 lesSpecialites est un ensemble{} d’objets internes non vide. Chaque objet
de l’ensemble est associé à l’interface de la classe interne.
12
Passage de UML au Relationnel
 Modèle UML : les classe UML sont des concepts logique apparentés à la
notion de type (avec la technologie oracle)
13
Passage de l’UML Atelier-Employe au
Mnav
L’association UML est rendue par un lien externe qui utilise une référence pour
associer un ou plusieurs objets de la classe Employe. La multiplicité minimale 0
du cote Atelier est représentée par le cercle blanc. La multiplicité minimale de 1
le serait par le rond noir.
14
Autre représentation Atelier-Employer
(sans attribut)
15
Partie II
16

Contenu connexe

Tendances

UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
Mansouri Khalifa
 

Tendances (20)

TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Igl cours 3 - introduction à uml
Igl   cours 3 - introduction à umlIgl   cours 3 - introduction à uml
Igl cours 3 - introduction à uml
 
Uml classes Par les exemples
Uml classes Par les exemplesUml classes Par les exemples
Uml classes Par les exemples
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
Cours des bases de données
Cours des bases de données Cours des bases de données
Cours des bases de données
 
Chp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionChp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat Transition
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Cours uml
Cours umlCours uml
Cours uml
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 
applications-reparties
applications-repartiesapplications-reparties
applications-reparties
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Chp2 - SOA
Chp2 - SOAChp2 - SOA
Chp2 - SOA
 
Chapitre II. METHODE D'ANALYSE P2 MCD .pptx
Chapitre II. METHODE D'ANALYSE P2 MCD .pptxChapitre II. METHODE D'ANALYSE P2 MCD .pptx
Chapitre II. METHODE D'ANALYSE P2 MCD .pptx
 
PROJET JAVA BD MySQL
PROJET JAVA BD MySQLPROJET JAVA BD MySQL
PROJET JAVA BD MySQL
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développement
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
 
Introduction aux bases de données
Introduction aux bases de donnéesIntroduction aux bases de données
Introduction aux bases de données
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction Mansouri
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop
 

Similaire à Modèle navigationnel (Mnav)

Diagramme de classe
Diagramme de classeDiagramme de classe
Diagramme de classe
Ilhem Daoudi
 
Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011
yassine kchiri
 
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptPROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
EddySHANGA
 

Similaire à Modèle navigationnel (Mnav) (20)

Chapitre_5_Génie logiciel et UML.pdf
Chapitre_5_Génie logiciel et UML.pdfChapitre_5_Génie logiciel et UML.pdf
Chapitre_5_Génie logiciel et UML.pdf
 
Diagramme de classe
Diagramme de classeDiagramme de classe
Diagramme de classe
 
Uml upxp2
Uml upxp2Uml upxp2
Uml upxp2
 
Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011
 
Modélisation avec UML
Modélisation avec UMLModélisation avec UML
Modélisation avec UML
 
CPOO.pdf
CPOO.pdfCPOO.pdf
CPOO.pdf
 
4711538.pptx
4711538.pptx4711538.pptx
4711538.pptx
 
Tp3 - UML
Tp3 - UMLTp3 - UML
Tp3 - UML
 
.NET
.NET.NET
.NET
 
coursUML4.pdf
coursUML4.pdfcoursUML4.pdf
coursUML4.pdf
 
Diagramme d'Objet
Diagramme d'ObjetDiagramme d'Objet
Diagramme d'Objet
 
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.pptPROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
PROGRAMMATION 2e GENIE PARTIE THEORIE.ppt
 
Java cours n° 2 - classe-objet-constructeur
Java   cours n° 2 - classe-objet-constructeurJava   cours n° 2 - classe-objet-constructeur
Java cours n° 2 - classe-objet-constructeur
 
Support de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdfSupport de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdf
 
Classes et Objets.pdf
Classes et Objets.pdfClasses et Objets.pdf
Classes et Objets.pdf
 
7_Chapitre6_Les collections.pdf
7_Chapitre6_Les collections.pdf7_Chapitre6_Les collections.pdf
7_Chapitre6_Les collections.pdf
 
CM uml-diag-statiques
CM uml-diag-statiquesCM uml-diag-statiques
CM uml-diag-statiques
 
ACSI.pptx
ACSI.pptxACSI.pptx
ACSI.pptx
 
11-Cours de Géniel Logiciel
11-Cours de Géniel Logiciel11-Cours de Géniel Logiciel
11-Cours de Géniel Logiciel
 
Cours1 2 gdmm
Cours1 2 gdmmCours1 2 gdmm
Cours1 2 gdmm
 

Modèle navigationnel (Mnav)

  • 1. Modèle navigationnel (Mnav) TRANSFORMATION DU DIAGRAMME DE CLASSE UML EN UN MODÈLE NAVIGATIONNEL(PARTIE I) Soukaina EL HAYOUNI
  • 2. Notions de l’objet  Objet physique : entité tangible et visible, une chose concrète qui affecte les sens, et particulièrement la vue.  Exemple : un avion, une image, un stylo…  Objet informatique : En informatique, un objet est un conteneur symbolique, qui possède sa propre existence et incorpore des informations et des mécanismes en rapport avec une chose tangible du monde réel, et manipulés dans un programme. C'est le concept central de la programmation orientée objet.  Exemple : un vecteur de valeur, un fichier jpeg…. 2
  • 3. Comment passer du conceptuel au modèle objet ?  Le passage du diagramme de classe de UML à l’Objet est rendu facile par le modèle dit navigationnel (outil didactique pour le niveau conceptuel) inspiré de la notation proposée par Christian Soutou.  Le modèle Mnav joue le rôle de pivot ou d’étape entre le diagramme de classe de UML et le modèle d’implémentation objet.  Le Mnav ne remplace pas la vérification et le renforcement des contraintes du modèle, lesquelles devront être prises en charge par les méthodes spécialisées de chaque interface de classe.  Le Mnav fournit une structure qui incorpore explicitement certaines contraintes du modèle mais pas toutes. 3
  • 4. Modèle navigationnel (Mnav)  Objectif :  Faciliter le passage vers l’objet par un ensemble de règles de transposition : Diagramme de classe  navigationnel  objet  Favoriser la visualisation des structures complexes et des chemins de navigation possibles en conservant la notation d’objet.  Représenter concrètement le plus de contraintes possibles pouvant être spécifiées par le langage DDL du SGBD.  Lacune :  Devient rapidement encombré et encombrant pour des modèles complexe.  Ne représente pas bien le partage des types entre différentes parties d’un modèle UML(classes) complexe  Pourquoi Mnav ?  Le modèle introduit des liens de type REF (implémentation avec l’OID + autres informations)entre les classe UML. 4
  • 5. Quelque définitions clés du Mnav  Classe externe: la classe UML sera rendu dans le Mnav par une classe dite externe qui est en quelque sorte au plan informatique un type (structure nommée) défini par ses attributs. Une classe externe définit des objets autonome (dont l’existence ne dépend pas d’un autre objet) dans la base, possède une valeur + un oid qui rend l’objet persistant.  OID : est un identifiant d’objet unique, non réutilisable pour toute la vie de la base. Un objet ayant un oid est persistant dans la base. Il est représenté par un rond blanc ou noir.  Classe interne : Une classe interne est une classe capable de définir des objets (sans oid propre) mais sans oid dont la persistance exige son imbrication dans un objet nommées et ont chacune une interface 5
  • 6. Les attributs de Mnav  Attributs simple : L’attribut simple est idem à celui de UML: type atomique avec ses opérations primitives régulières et implicites: Exemple : un entier avec ses opérations arithmétiques valides une chaine avec son opérateur de concaténation, …  Attributs complexe : L’attribut complexe permet d’abandonner la forme normale FN1 du modèle relationnel en ajoutant une structure de tuple pour regrouper plusieurs attributs éventuellement de types différents.(struct) L’attribut complexe a un type (complexe) mais aucune méthode de traitement associé. Cette carence sera cependant contournée par une autre approche. 6
  • 7. Lien: simple avec une classe interne ou externe  Lien simple :  Un lien est établi entre un attribut et une classe interne ou externe.  Un lien simple associé une valeur d’un attribut à 1 objet de la classe interne ou externe.  Ce lien peut être vide (rond blanc) ou obligatoirement valué par un oid(rond noir). 7
  • 8. Lien multiple avec une classe interne ou externe  Lien multiple:  Un lien est établi entre un attribut et une classe interne ou externe.  Un lien multiple pour un attribut y associe à 0 ou plusieurs objets de la classe interne ou externe.  Ce lien peut être vide (rond blanc) ou obligatoirement valué par un oid(rond noir). 8
  • 9. Attribut complexe: tuples et ensemble/classe externe et interne  Tuple : est une structure logique linéaire formée d’attributs simples ou complexes mais sans interface.  Un attribut complexe définit des valeurs dont l’existence dépend que de l’objet externe qui les héberge. Il est représenté par une structure non nommée et sans interface. Ce n’est pas une classe interne mais uniquement une structure pour y ranger des valeurs.  L’attribut « laSpecialite » est associé à une structure de tuple (similaire à une struct ). 9
  • 10. Attribut associé à un seul objet  Un attribut associé à un seul objet d’une classe est représenté par un lien simple vers une casse interne. 10
  • 11. Attribut d’ensemble ordonné d’objets(v)  Un attribut d’ensemble ordonné d’objets est rendu par un lien interne multiple concrétisée par une structure de type varray.  Les éléments de l’attribut lesSpecialites sont stockés dans un varray (similaire à un tableau ou un array et noté V). Chaque entrée est indicée et peut être soit une valeur soit un objet interne. Le varray a des attributs propres qui pourraient être considérés comme des fonctions prédéfinies et non modifiable. 11
  • 12. Attribut d’ensemble non ordonné d’objets  Un attribut d’ensemble d’objets est rendu par un lien interne multiple vers une classe interne.  lesSpecialites est un ensemble{} d’objets internes non vide. Chaque objet de l’ensemble est associé à l’interface de la classe interne. 12
  • 13. Passage de UML au Relationnel  Modèle UML : les classe UML sont des concepts logique apparentés à la notion de type (avec la technologie oracle) 13
  • 14. Passage de l’UML Atelier-Employe au Mnav L’association UML est rendue par un lien externe qui utilise une référence pour associer un ou plusieurs objets de la classe Employe. La multiplicité minimale 0 du cote Atelier est représentée par le cercle blanc. La multiplicité minimale de 1 le serait par le rond noir. 14