Pré. | Proc. |
Autres Relations Bloc
Les blocs sont les éléments structurels clés du SysML et peuvent participer à une variété de relations, dont certaines ont été abordées dans les sections précédentes du Guide lorsque nous avons abordé les associations. Il existe un certain nombre d'autres relations qui peuvent être utilisées lors de la définition des blocs.
Généralisation d'une relation de famille
Dans une section précédente, nous avons parlé de l'association de parties comme étant le type de relation d'association le plus fort, mais il existe une autre relation - la généralisation - qui est également très forte et qui est essentiellement utilisée pour modéliser le fait que les blocs (et d'autres classificateurs) appartiennent à la même famille. Le mot « classificateur » vient de nos langues naturelles, comme le chinois et le thaï, qui ont une manière abstraite de classer ou de regrouper des classes de noms qui ont des caractéristiques similaires ; par exemple, une ceinture et une route sont des choses longues et fines, tandis qu'une baie et une balle sont des choses round . De même, avec le SysML, la relation de généralisation est utilisée pour classer les choses et la structure peut avoir une profondeur arbitraire. À bien des égards, il est plus naturel pour les ingénieurs de lire la relation à l'envers et de dire que quelque chose est une version spécialisée de quelque chose.
Enterprise Architect permet à un ingénieur de créer ces hiérarchies de classification pour les blocs, les types de valeur, les signaux, les interfaces, les activités, etc. Un diagramme contient généralement une seule famille.
La relation peut être établie en sélectionnant d'abord l'icône « Généralisation » dans la boîte à outils, puis en effectuant un glisser-déposer de l'élément le plus spécialisé vers l'élément le plus généralisé. Vous pouvez également le faire à l'aide du Quick Linker .
Lorsqu'un Bloc participe à une hiérarchie de généralisation et possède un certain nombre de spécialisations, les connecteurs émanant du Bloc peuvent devenir désordonnés. Enterprise Architect fournit un mécanisme permettant de modifier le style de ligne en fonction d'un certain nombre de styles, mais le style le plus utile est probablement le style d'arborescence orientée verticalement, qui regroupe les têtes de la relation et permet d'aligner leurs queues en parallèle.
L'un des mécanismes de langage utiles résultant de la généralisation est que les éléments spécialisés héritent des fonctionnalités structurelles et comportementales de l'élément généralisé. Jusqu'à présent, dans les diagrammes d'exemple, l'ingénieur a choisi de ne pas afficher ces fonctionnalités héritées, mais elles peuvent être configurées pour être affichées à l'aide des sections de compartiments de la feuille de propriétés de l'élément.
Le résultat sera que les blocs spécialisés afficheront les attributs et les opérations qui ont été hérités du Bloc parent. Ceux-ci seront affichés groupés par le nom du Bloc parent. Ce mécanisme est largement utilisé en ingénierie logicielle, mais il est également utile pour l'ingénieur système où le Bloc spécialisé hérite automatiquement des fonctionnalités de son parent en vertu de son statut de « membre de la famille ». Tout comme dans une famille humaine, un Bloc spécialisé (enfant) peut remplacer les fonctionnalités structurelles ou comportementales héritées d'un parent.
Les blocs appartiennent à des familles en fonction de certains critères, et cela peut être modélisé à l'aide de l'ensemble de généralisation, qui est un mécanisme utilisé pour définir la base de l'appartenance à une famille.
Dépendance
La dépendance est une relation utile mais sémantiquement faible. C'est le « pion » de la boîte à outils des ingénieurs en matière de relations, souvent utilisée au début du processus modélisation lorsque les détails des relations entre les éléments du système n'ont pas été analysés ou ne sont tout simplement pas connus. Elle modélise le fait que l'élément (client) à l'extrémité de la relation dépend d'une certaine manière de l'élément (fournisseur) à l'extrémité de la flèche de la relation. On peut pardonner aux modélisateurs novices de dessiner cette relation dans le sens inverse, car on pense souvent que le matériel passe du fournisseur au client. Une fois que la sémantique de la relation est comprise et que l'on se rend compte que la relation ne dit rien sur la direction du flux, l'erreur ne sera pas commise.
Il existe plusieurs types de dépendance, tous pris en charge par Enterprise Architect . Le connecteur peut être créé en sélectionnant l'icône « Dépendance » dans la page « Relations Bloc SysML » de la boîte à outils, puis en cliquant sur l'élément client (extrémité de la queue) et en faisant glisser le curseur jusqu'à l'élément fournisseur (extrémité de la pointe de flèche). Le connecteur peut également être créé à l'aide de la flèche Quick Linker dans le coin supérieur droit d'un élément diagramme sélectionné. Une fois la relation créée, un stéréotype peut être choisi dans la fenêtre Propriétés du connecteur pour rendre la dépendance plus spécifique. Cette capture d'écran montre tous les stéréotypes disponibles, dont certains sont utilisés entre différents types d'éléments autres que les blocs ; par exemple, Paquetages et Exigences .
Répartition entre les blocs et les activités
La relation d'allocation peut être utilisée dans diverses circonstances, mais elle est particulièrement utile pour exprimer une relation fondamentale entre les deux éléments Comportementale et structurels les plus canoniques, à savoir l'activité et le Bloc . Cela ressemble à nos langues naturelles, où un verbe n'a pas de sens sans la présence d'un nom qui exécute l'action décrite par le verbe. Ce type d'allocation est appelé allocation fonctionnelle, et l'ingénieur comble le fossé entre ces deux aspects d'un système en trouvant un Bloc qui peut exécuter le comportement décrit par une activité.
Dans ce diagramme l'ingénieur a créé deux relations d'allocation fonctionnelle qui décrivent comment le travail spécifié dans l'activité Vérifier l'entrée sera effectué. Une relation cible le système de caméra qui est utilisé pour capturer la plaque d'immatriculation du véhicule afin de déterminer si le véhicule particulier a été autorisé à entrer. L'autre relation cible le Bloc lecteur de carte qui est utilisé pour déterminer que le propriétaire de la carte a une relation avec la station de stationnement.