|
Home
/ Research / Thesis
|
| Abstract TOC Intro. Partie 1 Partie 2 Partie 3 Conclusion Annexes Biblio. | |
|
Chapitre 1 : Les Concepts Objets de la Méthode COSYf Chapitre 2 : La Modélisation de Documents Multimédias Chapitre 3 : La Modelisation d'Hyperdocuments Multimédias Educatifs Chapitre 4 : La Démarche |
|
|
Chapitre 1
1. Le Modèle Orienté Objet de Base 1.1 Introduction au Concept d'Objet 1.2 Le Concept de Classe 1.3 La Relation d'Instance 1.4 La Relation d'Héritage 1.5 Les Schémas de Classe COSYf 2. Les Formalismes 2.1 Les Formalismes Graphiques 2.2 Le Formalisme Textuel 3. Les Règles du Modèle Orienté Objet 3.1 Les Règles Liées au concept de Classe 3.2 Les Règles Liées à la Relation d'Instance 3.3 Les Règles Liées à la Relation d'Héritage 3.4 Les Règles Liées aux Schémas de Classes 4. Les Règles Liées aux Formalismes Graphiques 5. Conclusion
L'objectif de ce chapitre est de définir les concepts objets de COSYf. Ce sont les différents concepts du modèle orienté objet COSYf, les règles de cohérence et de complétude et les formalismes associés. 1. Le modele oriente objet de COSYf Le modèle orienté objet est dans notre méthode le modèle de base sur lequel les autres modèles vont venir s'appuyer. Ces modèles sont relatifs à la modélisation des documents multimédias, des hyperdocuments multimédias et au domaine de la formation. Le modèle orienté objet de base ne peut être l'unique modèle proposé au concepteur. En effet, l'approche orientée objet établit une modélisation fortement modulaire du monde réel. Pour que cette modélisation soit cohérente, il est nécessaire que les règles attachées aux modèles soient très précises afin d'obtenir un schéma le plus cohérent possible. C'est pour cela que nous allons enrichir le modèle orienté objet de base de concepts et de règles supplémentaires afin de fournir au concepteur le modèle le plus riche possible évitant toute ambiguïté ou incohérence. Notre modèle orienté objet de base est un modèle qui se veut le plus général possible afin d'être utilisable pour toute la modélisation du système de formation multimédia (bases de données, acteurs, etc.). C'est un modèle conceptuel indépendant de tous les problèmes d'implantation. Nous allons donc décrire dans cette section tous les concepts du modèle orienté objet et les règles liées aux concepts qui fixent l'utilisation de ceux-ci. 1.1 Introduction au Concept d'Objet Un objet est une entité qui simule une réalité, simple ou complexe du monde réel. Cette réalité peut être soit un élément physique, soit une entité conceptuelle. Un objet est défini : - par une structure : à travers ses attributs, - par un comportement : à travers ses méthodes. Un attribut définit une relation de composition entre l'objet lui-même et un autre objet. Un objet ne possède qu'une partie visible, nommée interface, qui est composée de certaines de ses méthodes. Ces méthodes, nommées méthodes publiques, sont l'unique moyen de manipuler un objet. Cette notion correspond au principe d'encapsulation de la structure, de l'état et du comportement d'un objet. Les objets de même type sont regroupés dans des classes. La création d'un objet, nommé instance, consiste à instancier une classe. Cette notion définit la relation d'instance entre une instance et sa classe mère. Tout objet possède un identifiant indépendant de sa valeur. La suppression d'une instance consiste à détruire à la fois le lien d'instance, l'objet lui-même et son identifiant. Ainsi, tout objet a un cycle de vie borné par sa création et sa suppression. Pour définir ce cycle de vie, il nous faut introduire les notions d'état et d'échelle de temps. L'échelle de temps universelle T est représenté par l'ensemble des instants (t1, ..., ti, ti+1, ..., tn) tel que " ti, tj Î T, (i < j) Þ (ti < tj). L'état d'un objet qui se détermine par rapport à un instant t de T est représenté par l'ensemble E des valeurs des attributs de l'objet. Ainsi, soit soit EOi l'ensemble des états ek=1 à m d'un objet Oi. Alors nous pouvons formaliser les bornes du cycle de vie d'un objet Oi par : - Oi.e1 qui est la création de l'objet Oi, - Oi.el qui sont des modifications de l'objet Oi, - Oi.em qui est la suppression de l'objet Oi. La relation d'héritage permet de regrouper, ou plus exactement de factoriser des classes ayant les mêmes propriétés dans une classe de niveau hiérarchique supérieur. 1.2 Le Concept de Classe Une classe regroupe un ensemble d'objets ayant les mêmes attributs et méthodes. Le schéma d'une classe définit sa structure, c'est-à-dire ses attributs, et son comportement, c'est-à-dire ses méthodes, qui permettent de créer de nouvelles instances de cette classe. Le schéma d'une classe peut ne pas comporter d'attributs, mais seulement des méthodes. Le schéma d'une classe indique également les différentes relations avec les autres classes. L'extension d'une classe désigne l'ensemble de ses instances. Un schéma de classes définit un ensemble de classes et les liens entre celles-ci. Ces liens peuvent être des liens de composition (cf. § 1.2.1), des liens d'héritage (cf. § 1.4) et/ou des liens d'instances (cf. § 1.3).
1.2.1 Les Concepts d'Attribut et de Lien de Composition Chaque attribut est défini sur une classe appelée classe composante. Cette classe peut être : - soit une classe prédéfinie dans le modèle orienté objet COSYf, - soit sur une classe définie par le concepteur. La valeur prise par chaque attribut correspond à l'identifiant d'une instance de la classe composante. La classe dans laquelle l'attribut est défini est appelé classe composite. Nous avons alors un lien de composition entre la classe composite et la classe composante. Ce lien de composition correspond au niveau le plus faible d'intégration entre la classe composite et la classe composante : c'est un lien de composition de type association. C'est-à-dire que l'existence de la classe composite et de la classe composante ne sont pas liés à l'existence du lien de composition. Ainsi, la suppression du lien de composition n'entraîne ni la suppression de la composite, ni celle de la classe composante. En effet, les classes prédéfinies (cf. § 1.5.1) du modèle orienté objet COSYf ou leurs sous-classes se doivent d'exister indépendamment de toutes autres classes. Une typologie des différents liens de composition, en fonction du degré de couplage entre classe composite et classe composante, est faite dans le chapitre 2 lorsque nous définissons notre modèle de documents multimédia. Un lien de composition peut être : - soit monovalué : l'attribut de la classe composite a pour valeur l'identifiant d'une instance de la classe composante ; - soit multivalué : l'attribut de la classe composite a pour valeur l'identifiant d'une instance de type ensemble, liste, etc.. C'est cette instance qui contient toutes les valeurs des instances des classes composantes. 1.2.2 Le Concept de Méthode Les méthodes sont le seul moyen de modifier la vie et l'état d'un objet. En effet, ce sont les méthodes qui définissent le comportement d'un objet. Il s'agit d'un comportement intra-classes lorsque les méthodes modifient l'état d'un objet, c'est-à-dire les valeurs de ses attributs. Il s'agit d'un comportement inter-classes lorsque les méthodes d'un objet portent sur d'autres objets indépendants, se sont les interactions entre les différents objets.
Chaque méthode est définie par : - une signature qui décrit le nom (ou sélecteur) de la méthode, - le nom et la classe de définition d'éventuels paramètres, - la classe de définition d'un éventuel résultat que la méthode peut retourner, - le corps de la méthode. Il existe deux types de méthodes : - les méthodes publiques : elles sont inscrites dans l'interface de la classe, c'est-à-dire que ce sont les seules méthodes activables par d'autres objets ; - les méthodes privées : elles ne sont uniquement activables par l'objet lui même. Les méthodes d'un objet sont activables par l'envoi de messages à cet objet, appelé receveur. La syntaxe de ces messages est la suivante : receveur.sélecteur(paramètres). Par voie de conséquence, chaque classe comporte au minimum une méthode de création et une méthode de suppression d'instance. Cet ensemble minimal est généralement complété par un ensemble de méthodes permettant de gérer l'état des différentes instances : soit pour modifier la valeur des attributs, soit pour consulter ou éditer les attributs d'une instance. Cet ensemble de méthodes courantes est donc constitué par les méthodes : - Créer, - Supprimer, - Modifier, - Consulter, - Editer. En outre, chaque classe possède un certain nombre de méthodes ayant une portée globale, c'est-à-dire en interaction avec d'autres classes. 1.2.3 Les Concepts de Métaclasse et de Classe Générique En dehors du concept de classe (cf. 1.2), il existe d'autres types de classes. Nous n'introduisons dans ce modèle que les notions de métaclasse et de classe générique. Une métaclasse regroupe un ensemble de classes défini selon un même type, c'est-à-dire ayant la même structure et le même comportement. Instancier une métaclasse correspond à créer une nouvelle classe. Cette notion de métaclasse est primordiale puisqu'elle structure la modélisation. En effet, elle offre au concepteur des classes non modifiables (par l'ajout de nouveaux attributs ou méthodes) qu'il peut utiliser dans sa propre modélisation. Ainsi, plus un modèle propose un schéma de métaclasse important et riche, plus la modélisation se trouve facilitée. Ainsi, plus le concepteur dispose d'un nombre important de métaclasses spécifiques au domaine du système à concevoir, moins il n'a de nouvelles classes à définir. Pour G. Booch [Booch, 92] une classe générique est un modèle de classe (non typée). Alors que pour B. Meyer [Meyer, 90], une classe générique est une classe qui est implémentée de la même façon quels que soient les éléments qu'elle contient. Ainsi, dans notre modèle, une classe générique est une classe dont les classes de définition des attributs (ou classes composantes) ne sont pas définies. Cette notion permet de créer des classes dont il est impossible de connaître les classes de définition des attributs à l'avance. Comme exemple nous avons la classe ensemble qui être utilisée pour n'importe quel type de classe (par exemple un ensemble d'images). 1.3 La Relation d'Instance Instancier une classe correspond à créer un nouvel objet appelé instance. Chaque instance est reliée à sa classe mère par un lien d'instance. L'instance, qui a un identifiant unique, contient les valeurs associées à l'ensemble des attributs définis dans sa classe. Dans le cas particulier d'une métaclasse (cf. § 1.2.3), l'instanciation établit un lien d'instance entre une classe et sa métaclasse associée. 1.4 La Relation d'Héritage Chaque classe est au moins reliée à une autre par une relation d'héritage. Cette relation d'héritage factorise plusieurs classes ayant les mêmes structures et comportements dans une seule classe hiérarchiquement supérieure. Le lien d'héritage entre une sous classe et la super classe permet de transmettre la structure et le comportement de la super classe vers la sous classe. La définition générale de l'héritage de notre modèle correspond à celle proposée au chapitre 1 (cf. Partie I, Chapitre 1, § 2.3.3.2). Nous complétons cette définition par le fait que l'héritage que nous avons retenu est un héritage par spécialisation contrairement à certains auteurs comme [Atkinson, 89] qui proposent différents types d'héritage. C'est-à-dire que les attributs et/ou méthodes des sous classes sont plus spécifiques ou supplémentaires que ceux de la super classe. Par exemple, la classe Commentaire comporte des attributs supplémentaires (le sujet, l'auteur, etc.) par rapport à sa super classe Son. L'ensemble des classes de notre modèle est organisé en une hiérarchie d'héritage qui a pour racine une classe Objet. Notre modèle autorise qu'une classe hérite de plusieurs classes. Cette notion d'héritage multiple permet de définir de nouvelles classes par fusion des attributs et des méthodes de plusieurs autres classes. 1.5 Les Schémas de Classes COSYf Le schéma de classes du modèle orienté objet COSYf ne comporte que des métaclasses. En effet, c'est au concepteur de définir les différentes classes nécessaires à son modèle de système de formation multimédia. Ces différentes classes forme le schéma partiel de classes d'un système de formation multimédia particulier. Un schéma global de classes du modèle orienté objet COSYf est composé de ces deux niveaux principaux que sont le niveau métaclasse et le niveau classe. Chaque niveau principal peut évidemment comporter plusieurs sous niveaux (cf. Figure II.1.4). Cette hiérarchisation à deux niveaux permet de différencier les classes du modèle orienté objet COSYf des classes définies par le concepteur. 1.5.1 Le Niveau Métaclasse Le niveau métaclasse correspond aux différentes classes (ou métaclasses) proposées par le modèle orienté objet de COSYf. Ces classes sont factorisées par six classes qui sont hiérarchiquement d'un niveau inférieur à celui de la classe Objet (cf. Figure II.1.4). Ces six classes sont : - la classe Primitive qui regroupe les classes permettant de représenter les objets atomiques primitifs de base (entier, réel, chaîne, booléen, etc.). Ces classes correspondent aux types de données classiques disponibles dans la plupart des langages de programmation et assortis des opérateurs usuels ; - la classe Médiatique3 qui regroupe les classes permettant de représenter les objets atomiques médiatiques (texte, graphique, audio, image et vidéo). Ces objets médiatiques correspondent aux entités médiatiques présentées plus haut (cf. Partie I, Chapitre 1, § 1.1). A cette classe, nous rajoutons la classe Intervalles conformément à la définition faite d'un intervalle temporel par [Allen, 83]. Un intervalle temporel correspond à une durée de temps caractérisée par deux points finaux, ou instants sur l'échelle de temps universelle définie précédemment (cf. § 1.1) ; - la classe Interactive3 qui regroupe les différentes classes permettant de représenter les objets atomiques d'interfaces (bouton, région, etc.). Ces objets sont des entités qui prennent en compte l'interaction avec l'utilisateur ; - la classe Collection3 qui regroupe les classes génériques de type ensemble, liste ou encore pile ; - la classe Contrainte qui permet la modélisation des documents multimédias (cf. Chapitre 2) ; - la classe Hyperstructure Educative qui correspond aux différentes classes permettant la modélisation des hyperdocuments multimédias éducatifs (cf. Chapitre 3) ; Ce niveau métaclasse peut comporter un sous niveau correspondant à des métaclasses définies par le concepteur, à partir des métaclasses du modèle COSYf. La création de ces métaclasses doit se faire à titre exceptionnel. Un exemple d'utilisation correspond au cas d'une métaclasse nécessaire à la modélisation d'un système de formation multimédia et qui serait non prévue par le modèle COSYf originel. Une fois cette métaclasse validée, elle serait ensuite incorporée aux autres métaclasses du modèle COSYf. 1.5.2 Le Niveau Classe Le niveau classe correspond aux différentes classes et sous classes d'un modèle particulier de système de formation multimédia. Ces classes sont créées par le concepteur à partir des différentes métaclasses proposées par notre modèle COSYf. La création d'une classe résulte de la définition soit d'un lien d'instance, soit d'un lien d'héritage avec une métaclasse (ou plusieurs métaclasses dans le cas d'un multi héritage). A un modèle particulier de système de formation multimédia peut correspondre l'implantation de plusieurs systèmes de formation multimédia. En effet, la définition des différentes classes d'un modèle particulier est réutilisable. Enfin, l'instanciation de ces classes permet d'obtenir les instances nécessaires à l'élaboration d'un système de formation multimédia correspondant au modèle défini par le concepteur. Nous appelons niveau instance cet ensemble d'instances. A un niveau classe peut évidemment correspondre plusieurs niveaux instances différents. 2. Les Formalismes Les formalismes que nous associons à notre modèle orienté objet de base correspondent aux deux niveaux principaux (métaclasse et classe) et ainsi qu'au niveau instance. Ils permettent de représenter les différentes structures, comportements et liens (composition, héritage et instance). Notre modèle propose différents formalismes graphiques et un formalisme textuel. 2.1 Les Formalismes Graphiques Les différents formalismes graphiques que nous définissons permettent de donner une vue plus globale des objets (métaclasse, classe, instance) que le formalisme textuel. 2.1.1 Les Formalismes Graphiques des Objets Ces formalismes graphiques représentent seulement le nom des différents objets et des liens qui les unissent. Les formalismes graphiques simples représentant les différents objets (classe, métaclasse, classe générique et instance) sont définis dans le tableau II.1.1. Tableau II.1.1 : Formalismes graphiques simples des objets
Quelque soit le type de la classe (classe, métaclasse, classe générique) il est possible de compléter ces formalismes par l'ajout des méthodes publiques et/ou privées de la classe. Cela donne le formalisme graphique du schéma partiel d'une classe (cf. figure II.1.1). Les méthodes publiques sont formalisées à l'aide d'un trait plein, alors que les méthodes privées sont formalisées à l'aide d'un trait discontinu.
Figure II.1.1 : Formalisme graphique du schéma partiel d'une classe Ce formalisme graphique peut être encore plus détaillé avec l'ajout des attributs et de leur classe de définition (cf. Figure II.1.2).
Figure II.1.2 : Formalisme graphique du schéma complet d'une classe
Tout comme les classes, le formalisme graphique d'une instance peut être complété par l'ajout des valeurs d'attributs (cf. Figure II.1.3).
Figure II.1.3 : Formalisme graphique complet d'une instance 2.1.2 Les Formalismes Graphiques des Liens entre Objets Les formalismes représentant les différents liens (composition, héritage et instance) entre les objets sont définis dans le tableau II.1.2.
Tableau II.1.2 : Formalismes graphiques des liens entre objets
Tableau II.1.2 (suite) : Formalismes graphiques des liens entre objets
(a) Pour le lien d'héritage, la super classe peut être soit une classe, soit une métaclasse ou soit une classe générique. (b) Le lien de composition peut être étiqueté par : - le type de lien de composition. Dans notre modèle orienté objet de base, le lien par défaut est de type Association. Dans ce cas le label est optionnel ; - la cardinalité. Dans le cas où le lien est multi-valué, ce label indique le nombre d'objets composants. (c) Le premier type de lien d'instance permet de créer une instance soit à partir d'une classe, soit à partir d'une classe générique. (d) Le second type de lien d'instance permet, à partir d'une métaclasse, de créer soit une classe, soit une classe générique. A partir de ces formalismes graphiques de base, nous définissons des formalismes graphiques pour un ensemble plus complexe d'objets. Ces formalismes permettent d'obtenir une meilleure perception des classes du système de formation multimédia à modéliser. Ces diagrammes sont : - le diagramme des liens d'héritage, - le diagramme des liens de composition, - le diagramme d'un schéma de classes, - le diagramme du comportement des classes. Notre méthode ne prévoit pas de diagramme de cycle de vie des objets comme peuvent le proposer certains auteurs [Rolland, 88] [Brunet, 93]. En effet, nous considérons que ce type de diagramme relève de l'étape d'analyse et non de l'étape de conception. Nous considérons que le dossier d'analyse, sur lequel se base l'étape de conception, contient déjà le cycle de vie de chaque objet. 2.1.2.1 Le Diagramme des Liens d'Héritage Ce formalisme est la représentation sous la forme d'arbre des différents liens de d'héritage existants entre un ensemble d'objets. Dans le cas de l'héritage multiple, le graphe n'est plus un arbre mais un treillis. Comme exemple de diagramme des liens d'héritage, nous représentons le niveau métaclasse du modèle orienté objet COSYf (cf. Figure II.1.4).
Figure II.1.4 : Diagramme des liens d'héritage du modèle orienté objet COSYf 2.1.2.2 Le Diagramme des Liens de Composition Ce formalisme est la représentation sous la forme d'arbre des différents liens de composition existants entre un ensemble d'objets. Sur ce diagramme, la représentation des liens de composition vers les classes atomiques primitives, médiatiques ou interactives, c'est-à-dire les métaclasses entier, réel, texte, image, bouton, etc. n'est pas obligatoire. Comme exemple de diagramme des liens de composition (cf. Figure II.1.5), nous prenons le cas d'une entité concept qui est composée d'un contenu et d'une illustration qui est elle-même composée d'une photo et d'un commentaire. Les différentes entités sont modélisées à l'aide de classes et reliées entre elles par des liens de composition afin de ne former qu'un tout : la classe Concept.
Figure II.1.5 : Diagramme des liens de composition de la classe Concept 2.1.2.3 Le Diagramme d'un Schéma de Classes D'ailleurs, il est possible de représenter les deux diagrammes précédents sur un seul même diagramme. Sur ce diagramme il est également possible de représenter des liens d'instances entre métaclasses et classes. Dans la cadre d'une méthode de conception, bien que le niveau instance, c'est-à-dire la représentation des liens d'instance entre classes et instances, apparaisse comme relativement peu intéressant il est néanmoins possible de le représenter sur ce diagramme. Comme exemple de diagramme d'un schéma de classes, nous reprenons l'exemple précédent de la classe Concept. Ainsi, l'entité photo définit une image correspondant à l'illustration. Nous considérons que la métaclasse Image définit des images de différents formats et que la photo est une image au format CD-Photo. Nous définissons alors la classe Photo comme une instance de la métaclasse Image qui ne représente que des images au format CD-Photo. Par contre, la classe Commentaire comporte des attributs supplémentaires (le sujet, l'auteur, etc.) non définis dans sa super classe Audio. Nous représentons donc sur le diagramme d'un schéma de classes (cf. Figure II.1.6), le lien d'instance entre la classe Photo et la classe Image, les liens de composition de la classe Concept et les liens d'héritage entre la classe Commentaire et la métaclasse Son ainsi que les liens d'héritage des métaclasses Image, Audio et Médiatique.
Figure II.1.6 : Diagramme d'un schéma de classes 2.1.2.4 Le Diagramme de Comportement Ce diagramme (cf. Figure II.1.7) permet de représenter les échanges entre les classes. Ces échanges décrivent la dynamique du système. Ainsi, le message échangé entre la classe A et la classe B permet l'activation d'une méthode de la classe B. Le nom du message est identique au sélecteur de la méthode de la classe B.
Figure II.1.7 : Diagramme simplifié de comportement Bien qu'il puisse y avoir un résultat en retour, le sens de la flèche n'indique que l'activation de la méthode. Tout comme pour le formalisme des classes, il est possible de préciser le nom de chaque méthode initiatrice du message (cf. Figure II.1.8).
Figure II.1.8 : Diagramme de comportement Ce diagramme sera encore complété avec la définition de notre modèle de contrainte lors de la modélisation des documents multimédias (cf. Chapitre 2).
2.2 Le Formalisme Textuel Le formalisme textuel (cf. Figure II.1.9) permet de représenter le schéma d'une classe.
Classe nom_classe Super Classe nom_super_classe_1 nom_super_classe_n Attribut nom_attribut_1 : nom_classe nom_attribut_n : nom_classe Méthodes Publiques nom_méthode_publique_1 (liste_paramètre) : nom_classe Corps description formelle du corps de la méthode Descriptif description en langage naturel du corps de la méthode Fin ... nom_méthode_publique_m (liste_paramètre) : nom_classe ... Fin Méthodes Privées nom_méthode_privée_1 (liste_paramètre) : nom_classe Corps description formelle du corps de la méthode Descriptif description en langage naturel du corps de la méthode Fin ... nom_méthode_privée_n (liste_paramètre) : nom_classe ... Fin Figure II.1.9 : Formalisme textuel informel d'un schéma de classe Ce formalisme textuel permet de spécifier le nom de la classe, le nom de la ou les super classe(s), le nom des attributs et de leur classe de définition, le nom des méthodes publiques et privées. Le ou les super classe(s) permet(tent) de définir le ou les lien(s) d'héritage. La grammaire BNF correspondant au formalisme textuel d'une classe est donnée en annexes (cf. Annexes, § 2). En ce qui concerne les attributs, nous différencions les attributs définis sur des classes du modèle COSYf (c'est-à-dire les classes prédéfinies) des attributs définis sur des classes définies par le concepteur (c'est-à-dire les classes définies). Nous rappelons que les attributs définissent des liens de composition entre classes. Le formalisme textuel correspondant à une métaclasse est le même mis à part le mot clef Métaclasse au lieu de Classe. 3. Les regles du Modèle Orienté Objet Dans cette section nous allons énoncé la liste non exhaustive des différentes règles de conformité, de cohérence et de complétude liées aux différents concepts du modèle orienté objet COSYf. Ces règles sont liées au concept de classe, à la relation d'instance, à la relation d'héritage, aux schémas de classes et aux formalismes graphiques. 3.1 Les Règles Liées au Concept de Classe Règle Classe 1 : Le nom de chaque classe est unique dans le schéma global des classes. Règle Classe 2 : Chaque nom d'attribut d'une même classe est unique. Règle Classe 3 : Chaque attribut d'une classe a une classe de définition. Règle Classe 4 : La classe de définition d'un attribut est défini dans le schéma global des classes. Règle Classe 5 : Chaque classe possède au minimum une méthode de création.
Règle Classe 7 : Les classes de définition des éventuels paramètres ou d'un éventuel résultat de chaque méthode est défini dans le schéma global des classes. 3.2 Les Règles Liées à la Relation d'Instance Règle Instance 1 : L'identifiant de chaque instance est unique. Règle Instance 2 : Les attributs d'une instance n'ont pas obligatoirement une valeur lors de leur création. 3.3 Les Règles Liées à la Relation d'Héritage Règle Héritage 1 : Un nom d'attribut n'est pas unique dans la hiérarchie d'héritage. Règle Héritage 2 : Un attribut défini dans au moins deux sous-classes doit être défini dans leur super classe. Règle Héritage 3 : Une méthode définie dans au moins deux sous-classes doit être définie dans leur super classe. Règle Héritage 4 : Toute classe du niveau métaclasse hérite de la métaclasse Objet. Règle Héritage 5 : Toute classe du niveau classe hérite au minimum d'une classe du niveau métaclasse.
3.4 Les Règles Liées aux Schémas de Classes Règle Schéma 1 : Le graphe formé par l'ensemble des liens d'héritage de tout schéma de classes est non cyclique. Règle Schéma 2 : Le graphe formé par l'ensemble des liens de composition de tout schéma de classes est non cyclique. Règle Schéma 3 : Le graphe formé par l'ensemble des liens de composition et d'héritage de tout schéma de classes est non cyclique. 4. Les Règles liees aux Formalismes Graphiques Règle Formalisme 1 : Les liens d'héritage liés à la classe Objet n'apparaissent pas obligatoirement sur le diagramme des liens d'héritage. Règle Formalisme 2 : Le diagramme de comportement des objets ne contient pas d'objet non lié. Règle Formalisme 3 : Les liens de composition vers les métaclasses atomiques primitives, médiatiques ou interactives n'apparaissent pas obligatoirement sur le diagramme des liens de composition ou sur le diagramme des schémas de classes.
5. Conclusion Ce chapitre nous a donc permis de définir d'une part le modèle orienté objet de COSYf avec ses différents concepts et règles de cohérence et de complétude mais également les différents formalismes associés à ce modèle. Notre modèle est basé sur des concepts orientés objets conformément à l'état de l'art des modèles orientés objets (cf. Partie I - Le Modèle Orienté Objet). Ceci nous permet d'affirmer que notre modèle orienté objet COSYf possède déjà une stabilité suffisante pour supporter des développements ultérieurs. |
|
Designed and Written by Jeff Merlet © 1998. |