![]() |
Telelogic TAU (steve huntington) | ![]() |
Topic Title: Component Diagrams - Ball and Socket Notation Topic Summary: What's the correct way to show I/F dependencies? Created On: 23-May-2007 18:01 Status: Read Only |
Linear : Threading : Single : Branch |
![]() |
![]()
|
![]() |
|
I am trying to make a component diagram showing provided and required interfaces and the dependencies between them.
According to the UML 2 resources I have seen on the web, there are a couple of ways to do this; some people show the socket joined to the ball, others show a dependency arrow running from socket to ball.
I don't really know what the difference is, but Tau doesn't seem to offer either. All I can do is draw a dependency arrow from one component body to another.
Any suggestions?
Also, is there any way to resize the box that the signal list goes in? I have a required interface (socket) with 12 dependencies in it - with the fully-qualified names (no way to change that either) it goes off the edge of my sheet.
|
|
![]() |
|
![]() |
|
Hi Graham,
Two options exist in Tau for showing provided and required interfaces on compoenents: 1) You can draw a dependency lines to required interface classes and realization lines (dotted line with closed arrowhead) to provided (realized) interface classes. The realization line is created by dragging the generalization line from the interface to the component. 2) You can use the ball and socket notation in conjunction with ports defined on the components. Note that you must first add a port to the coponent - the direct use of ball and socket notation on a component (or other class) is not supported. Concerning the presentation of a lengthy signal list, there are a number of options to imporove things: 1) Signals can be defined in an interface class - you then only need to refer to the interface class name. 2) Signals can be collated into a signallist - you can then refer to the signallist name. 3) By defining appropriate dependencies between the packages containing and referencing the signal definitions, you should be able to use unqualified names. 4) You can use CRs between the signals to improve the form factor of the text box. /Jon |
|
![]() |
|
![]() |
|
Hi, Thanks for the reply, but I think I may not have explained the problem well enough (it's difficult without pictures). |
|
![]() |
|
![]() |
|
Hi Graham,
Thanks for the further explanation. At present the only way to connect a ball and socket on a component (class) diagram is to move the component as the ball/socket symbols cannot be resized. It is possible to show the connection of interfaces on a composite structure diagram using connector lines. Regards, /Jon |
|
![]() |
|
![]() |
|
Looking at the UML Superstructure, the recommended notation is the joined ball-and-socket as far as I can tell. I believe your b) and c) are alternate interpretations (that may be easier to support from a canvas editor perspective) but don't seem to be explicitly allowed by the specification in Table 8.2 (although see the part I copy/paste below, it seems to imply that you can use Realizations between interfaces as well as usage dependencies).
You are right, that today we can't physically connect them, but they are connected logically by the Realized and Required paths. I'll add this to the requirements database. Greg From the superstructure: Variations Variations of structure diagrams often focus on particular structural aspects, such as relationships between packages, showing instance specifications, or relationships between classes. There are no strict boundaries between different variations; it is possible to display any element you normally display in a structure diagram in any variation. The following nodes and edges are typically drawn in a component diagram: . Component . Interface . ComponentRealization, Interface Realization, Usage Dependencies . Class . Artifact . Port ------------------------- Greg Gorman Vice President, Product Management Modeling and Test Products Telelogic AB |
|
![]() |
Telelogic TAU
» TAU/Developer
»
Component Diagrams - Ball and Socket Notation
|
![]() |
FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.