Reply To: subcomponents

homepage Forums BridgePoint/xtUML Usage and Training subcomponents Reply To: subcomponents


Hi Michael,

Yes, it is possible to nest components. Interfaces and ports are created on nested components exactly the same way that they are created on non-nested components. Interfaces from the containing component may be delegated to an inner component, which sets up automatic forwarding between the inner and outer components. I recommend you take a look at the On-line course “Modeling with xtUML” and check out the Components module to see this in action.

In xtUML, each interface is a complete contract of functionality. If you want to define a smaller subset you simply create a new interface.

“Generate” is used to fire off events to state machines (class to class within the same component). “Send” is used to invoke interface operations and signals (inter-component). Components are black boxes in xtUML. They intentionally hide their internals and force interaction to go through the contractual interfaces.

Finding the right level of abstraction and encapsulation (i.e. subject matter breakdown) is definitely a balancing act at the beginning of a project. This is especially true of large systems with multiple engineers working together. Good luck!