Accueil Finances personnelles En généralisant en UML 2 - des nuls

En généralisant en UML 2 - des nuls

Vidéo: UML Diagrammes de Cas d'utilisation Tutoriel 2024

Vidéo: UML Diagrammes de Cas d'utilisation Tutoriel 2024
Anonim

Il est naturel de classer les objets dans des catégories et d'organiser les catégories en sous-catégories. Si vous cherchez un endroit où vivre, vous vous trouvez à classer une unité d'habitation comme une maison, un appartement, une maison en rangée, une copropriété, un manoir, et ainsi de suite. Les maisons peuvent, à leur tour, être davantage organisées par des styles tels que ranch, split-level, colonial, et saltbox. UML vous fournit une notation pour capturer ces types de classifications - également connues sous le nom de généralisation et spécialisation - et les utilise comme modélisateur et programmeur.

Certains développeurs orientés objet vont faire de grands efforts pour économiser un peu de travail. Quand ils peuvent modéliser quelque chose et le réutiliser, ils sont intéressés. S'ils peuvent écrire une méthode (code de programme pour une opération) pour une classe seulement une fois et l'utiliser plusieurs fois, alors inscrivez-les pour une productivité plus élevée. Si vous voulez gagner du temps en spécifiant une fois les attributs et les opérations, puis en les réutilisant plusieurs fois, lisez la suite.

Lorsque vous définissez des classes, vous pouvez remarquer que certaines classes ont les mêmes attributs ou les mêmes opérations. Lorsque c'est le cas, vous placez ces fonctionnalités communes (attributs, opérations, etc.) dans une classe plus générique appelée superclasse . Les classes qui partagent les caractéristiques communes sont appelées sous-classes de la superclasse. Par exemple, la longueur du matériel enregistré sur une bande vidéo, une bande audio, un disque compact ou un film cinématographique est un attribut des quatre types de supports enregistrés. Ces classes peuvent également partager d'autres attributs, tels que leurs dimensions physiques et la date à laquelle chacun a été utilisé pour effectuer un enregistrement. Dans ce cas, la superclasse serait RecordedMedia, les sous-classes seraient Videotape, Audiotape, CompactDisc et MovieFilm, et certains attributs partagés pourraient inclure recordedLength et totalLength.

Ce processus de recherche d'attributs ou d'opérations similaires entre classes est connu sous le nom de généralisation . Par exemple, vous généraliser l'attribut recordLength dans une classe plus générique appelée RecordedMedia. Le processus pour montrer une généralisation en UML est simple:

1. Identifiez les sous-classes.

Recherchez des classes ayant les mêmes attributs et / ou opérations. Ces classes sont vos sous-classes.

2. Créer une superclasse.

Fournir une superclasse pour contenir les attributs communs et / ou les opérations des sous-classes. Donnez à la superclasse un nom qui catégorise toutes les sous-classes. Placer la superclasse au-dessus des sous-classes dans le diagramme facilite la lecture mais n'est pas nécessaire.

3. Ajoutez des fonctionnalités communes à la superclasse.

Supprimez les attributs communs et les opérations des sous-classes et placez-les (une fois) dans la superclasse.

4. Dessinez une relation de généralisation.

Vous tracez une ligne de généralisation de chaque sous-classe vers la superclasse. En UML, la ligne de généralisation est représentée par une ligne continue avec une pointe de flèche vide à l'extrémité de la superclasse. En UML, une ligne avec la pointe de flèche vide qui connecte une sous-classe à une superclasse s'appelle une relation de généralisation.

Après avoir créé une super-classe avec les caractéristiques communes telles que les attributs et les opérations, les sous-classes héritent de ces entités de la super-classe. De cette façon, il vous suffit d'écrire les caractéristiques communes une fois dans la superclasse au lieu de plusieurs fois dans chacune des sous-classes.

Vous pouvez dire si vous avez une généralisation en regardant la langue que vous (ou d'autres) utilisez pour décrire la relation entre les classes. Notez que dans la description des supports enregistrés et de ses différents types tels que la bande vidéo plus haut dans cette section, l'expression "quatre types de supports enregistrés" est apparue. Si vous vous trouvez en utilisant des expressions telles que «type de» ou «type de», alors vous avez une généralisation sur vos mains.

Supposons qu'un de vos clients se soucie de garder la trace des documents dans une archive. Ce client a accumulé différents types de supports d'enregistrement tels que des bandes vidéo et des bandes audio. En tant que modélisateurs, vous devez capturer les différences entre ces médias ainsi que leurs similitudes. Le diagramme de la figure 1 montre les débuts de plusieurs généralisations, organisées dans une hiérarchie d'héritage .

Figure 1: Hiérarchie d'héritage simple.

Les développeurs utilisent le terme de généralisation ou d'héritage pour désigner le même concept de réutilisation des attributs et des opérations partagés que vous affichez dans une superclasse et que vous réutilisez dans des sous-classes. La généralisation fait référence au concept de généralisation des spécificités (les sous-classes) au générique (la superclasse). L'héritage fait référence à l'effet de la généralisation sur les sous-classes.

Lorsque vous voyez une relation généralisation entre classes, sa signification est très différente de celle d'une relation association entre classes. Une association est finalement une relation parmi plusieurs objets - certaines instances d'une classe ont une relation (lien) avec les instances de l'autre classe. Dans une relation de généralisation entre classes , la relation concerne vraiment les classes. Le mieux que vous puissiez dire est qu'un objet créé à partir d'une sous-classe contient toutes les caractéristiques de la sous-classe et de la superclasse.

Vous n'avez qu'un objet d'une classe dans une relation de généralisation. Même si vous montrez deux classes, la sous-classe et la super-classe, vous n'avez qu'un objet créé. Vous pouvez penser à un objet de la classe Videotape étant également un objet de la classe RecordedMedia en raison de l'héritage. La figure 2 montre un objet créé à partir de la classe Videotape avec tous ses attributs.(L'instance d'une classe est représentée comme un symbole d'objet.) Vous n'avez pas deux objets différents (un pour RecordedMedia et un pour Videotape), juste un objet. Lorsque l'objet vtu83-1023 a été créé, toutes les valeurs de ses attributs ont été définies. L'enregistrement sur la bande est de 57 minutes. La longueur totale de la bande physique est de 60 minutes. Le ruban est une vidéocassette Umatic d'une hauteur de 10 pouces, d'une largeur de 7 pouces et d'une profondeur de 1,5 pouces. L'enregistrement est analogique et un journal du contenu de la bande est attaché à la bande pour que l'archiviste puisse s'y référer.

Figure 2: Une instance montrant tous les attributs hérités.

Vous n'avez qu'une seule instance définie par une sous-classe et sa superclasse. La sous-classe et la superclasse peuvent avoir une opération de constructeur (pour créer l'instance) et une opération de destructeur (pour détruire l'instance). Lorsque votre logiciel s'exécute et que vous créez une instance d'une sous-classe, le constructeur de la superclasse est exécuté en premier, suivi du constructeur de la sous-classe. Quand vient le temps d'éliminer l'instance que vous avez créée, le destructeur de la sous-classe est appelé en premier, suivi du destructeur de la superclasse. Si les choses sont plus complexes parce que vous avez des sous-classes de sous-classes, souvenez-vous simplement que: Les constructeurs sont invoqués du haut de la hiérarchie d'héritage au bas; les destructeurs sont appelés dans l'ordre de la sous-classe la plus basse jusqu'à la superclasse la plus élevée.

En généralisant en UML 2 - des nuls

Le choix des éditeurs

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Lorsqu'un membre de l'équipe de projet est suropposée dans votre projet Microsoft Office Project 2007, vous pouvez prendre des mesures pour corriger le problème en utilisant les suggestions suivantes. Gardez à l'esprit que les circonstances de votre projet déterminent si une solution particulière est réalisable. Par exemple, vous pouvez ajouter des ressources uniquement si votre budget le permet ...

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Le concept de lignes de base multiples semble presque contraire définition d'une ligne de base. Après tout, le but d'une base de référence est de mettre l'enjeu proverbial dans le sable et de mesurer les progrès contre elle. Vous pouvez conserver plusieurs lignes de base dans Project 2013 à plusieurs fins. Considérez ces raisons: Vous avez un plan de base pour ...

Comment enregistrer une référence dans Project 2013 - mannequins

Comment enregistrer une référence dans Project 2013 - mannequins

Vous pouvez enregistrer une référence à tout moment en ouvrant la boîte de dialogue Définir la ligne de base dans Project 2013. Un paramètre - qui contrôle la manière dont le projet regroupe les données dans les tâches récapitulatives lorsque vous définissez une ligne de base pour une partie des tâches - nécessite une explication. Après avoir enregistré une base de données la première fois dans Project 2013, ...

Le choix des éditeurs

Comment classer les modèles d'analyse prédictive - mannequins

Comment classer les modèles d'analyse prédictive - mannequins

Vous avez plusieurs façons de classer les modèles utilisés pour l'analyse prédictive. En général, vous pouvez les trier en fonction des problèmes métier qu'ils résolvent et des principales fonctions métier qu'ils servent (ventes, publicité, ressources humaines ou gestion des risques, par exemple). L'implémentation mathématique utilisée dans le modèle (comme les statistiques, l'exploration de données et la machine ...

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Un exemple naturel de groupe auto-organisateur vous pouvez appliquer dans le comportement d'analyse prédictive est une colonie de fourmis à la recherche de nourriture. Les fourmis optimisent collectivement leur trajectoire de manière à prendre toujours le chemin le plus court possible vers une cible alimentaire. Même si vous essayez de déranger une colonie de fourmis et de les empêcher de ...

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Diverses statistiques, data-mining et des algorithmes d'apprentissage automatique sont disponibles pour votre modèle d'analyse prédictive. Vous êtes dans une meilleure position pour sélectionner un algorithme après avoir défini les objectifs de votre modèle et sélectionné les données sur lesquelles vous allez travailler. Certains de ces algorithmes ont été développés pour résoudre des problèmes métier spécifiques, améliorer des algorithmes existants ou fournir ...

Le choix des éditeurs

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Ne vous feront rien tout bien si vous ne pouvez pas gérer efficacement vos modèles de données. La fonction VLOOKUP est le roi de toutes les fonctions de recherche dans Excel. Le but de VLOOKUP est de trouver une valeur spécifique à partir d'une colonne de données où la valeur de ligne la plus à gauche correspond à un critère donné. Prenez ...

Excel Outils d'analyse de données - dummies

Excel Outils d'analyse de données - dummies

L'outil d'analyse d'excel est un complément utile qui fournit un ensemble complet d'outils d'analyse statistique . Voici quelques outils dans le ToolPak. Outil Analyse Anova: Facteur unique Analyse de variance pour deux échantillons ou plus Anova: Facteur double avec réplication Analyse de la variance avec deux variables indépendantes et observations multiples ...

Excelent Touches de raccourci d'entrée de données - mannequins

Excelent Touches de raccourci d'entrée de données - mannequins

Lorsque vous travaillez dans Excel et saisissez des données dans une cellule, il est essentiel pour compléter l'entrée soit en cliquant sur une autre cellule avec le pointeur de la souris ou en utilisant l'une des touches de raccourci pratiques montrées ici pour déplacer le curseur de la cellule: Appuyez sur les touches To Arrow (& uarr;, & darr; move ...