Modeling With Class Diagram: Subsystem
Modeling With Class Diagram: Subsystem
html
Subsystem
Package
Class
Interface
Enumeration
Signal
Exception
Port
Part
Association
DirectedAssociation
Aggregation
Composition
Generalization
Dependency
Realization
AssociationClass
Connector
Object
Link
Subsystem
Semantics
Whereas a package is a generic mechanism for organizing model elements, a subsystem represents a behavioral
unit in the physical system, and hence in the model.
2. And click at the location or boundary where subsystem will be placed in the [main window].
1 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
3. Then a subsystem is created on the class diagram and subsystem quick dialog is opened. At the quick dialog,
enter the subsystem name.
2 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
3 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Class
Semantics
A class is the descriptor for a set of objects with similar structure, behavior, and relationships.
4 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. And click at the position where class will be placed in the [main window].
3. A new class is created on the diagram and class quick dialog is opened.
4. At the quick dialog, enter the class name and press [Enter] key.
1. Double-click class.
2. Press [Add Attribute] button at the quick dialog, and you can add attribute.
2. Right-click the selected class, select [Add] -> [Attribute] popup menu, and you can do.
5 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
3. At [attribute] tab of the [collection editor], you can add attribute by using button.
6 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. Press [Add Operation] button at the quick dialog, and you can add operation.
In the case of using model, select class in the [main window] or in the [model explorer], right-click the selected
class, select [Add] -> [Operation] popup menu, and you can do.
2. At [operations] tab of the [collection editor], you can add operation by using button.
7 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
1. Select operation in the [model explorer], select [Add] -> [Parameter] popup menu, and new parameter
will be added.
2. Or select operation in the [model explorer], select [Collection Editor...] popup menu.
4. At the [Parameters] tab of the [collection editor], you can add parameter by using button.
8 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Before this procedure, there must exist a exception or more. To do this, see "Procedure for creating signal" or
"Procedure for creating expception".
2. At [Raised Signals] tab of the [collection editor], you can add exception to the operation by using
button.
9 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
3. At [Select a Signal] dialog, select signal or exception raised by operation and click [OK] button.
10 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. Drag it.
Select class in the [main window] or the [model explorer], right-click, and select [Add] ->
[TemplateParameter] popup menu. Then you can add template to class.
Select [Collection Editor...] popup menu or click button in [TemplateParameter] property on properties
window. At the [TemplateParameters] tab of the [collection editor], you can add template parameter to class
by using button.
11 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. And click the class where the port will be contained in the [main window].
You can create port by draging port from [model explorer] to main diagram.
12 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. Drop on the class in the main diagram. If it is not dropped on the class but on the other area of the diagram,
Class with port will be created.
2. And click the class where the part will be contained in the [main window].
13 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. Drag from one part and drop to the other part in the [main window].
14 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Interface
Semantics
An interface is a specifier for the externally-visible operations of a class, component, or other classifier (including
subsystems) without specification of internal structure.
2. And click at the position where interface will be placed in the [main window]. Then interface quick dialog is
opened. Enter the interface name at the quick dialog.
15 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. Drag from one(Class, Port, Part, Package, Subsytem) and drop to interface in the [main window].
2. Drag from one(Class, Port, Part, Package, Subsytem) and drop to interface in the [main window].
16 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Enumeration
Semantics
An Enumeration is a user-defined data type whose instances are a set of user-specified named enumeration literals.
The literals have a relative order but no algebra is defined on them.
2. And click at the position where enumeration will be placed in the [main window].
Signal
Semantics
A signal is a specification of an asynchronous stimulus communicated between instances. The signal is a child to
Classifier, with the parameters expressed as Attributes. A Signal is always asynchronous. A Signal is associated with
the BehavioralFeatures that raise it.
2. And click at the position where signal will be placed in the [main window].
17 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Exception
Semantics
An exception is a signal raised by behavioral features typically in case of execution faults. An Exception is associated
with the BehavioralFeatures that raise it.
2. And click at the position where exception will be placed in the [main window].
Association
Semantics
An association is an association among exactly two classifiers (including the possibility of an association from a
classifier to itself).
2. Drag from one associated and drop to another in the [main window].
18 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
19 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
3. At [Qualifiers] tab of the [collection editor], you can add qualifier to the association by using button.
20 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
DirectedAssociation
21 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
To change association to directed association, click the arrow-opposite-side association end. At the quick dialog,
uncheck navigable and association becomes directed.
Procedure for creating element having directed association by shortcut creation syntax
In order to create element having directed association, use shortcut creation syntax,
1. Double-click element. At the quick dialog, enter name of elements that have directed association after "->"
string and separate names with ",".
2. Press [Enter] key and multiple elements associated with selected element are created and arranged
automatically.
22 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Aggregation
Semantics
An aggregate is a more specific type of association. The aggregate is signified by a hollow diamond on the point
where the association connects with the classifier (association end). Aggregate adds the concept of whole and part to
the 'vanilla' association. The classifier at the hollow diamond end is the whole.
2. Drag from one associated and drop to another in the [main window].
23 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
In order to create class aggregated to selected class, use shortcut creation syntax.
1. Double-click to popup quick dialog. At the quick dialog, enter name of class aggregated to current class after
"<>-" string and separate names with ",".
2. Press [Enter] key and classes aggregated to selected class are created and arranged automatically.
Composition
Semantics
A composite is a more specific type of association. The composite is signified by a filled diamond on the point where
the association connects with the classifier (association end). Composite adds the concept of whole and part to the
"vanilla" association and responsibility for the lifetime of the parts. The classifier at the filled diamond end is the
whole.
24 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
2. Drag from one class and drop to another class composed in the [main window].
In order to create class composing selected class, use shortcut creation syntax.
1. Double-click to popup quick dialog. At the quick dialog, enter name of class composing selected class after
"<*>-" string and separate names with ",".
2. Press [Enter] key and classes composing selected class are created and arranged automatically.
25 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Generalization
Semantics
Generalization is the taxonomic relationship between a more general element (the parent) and a more specific
element (the child) that is fully consistent with the first element and that adds additional information. It is used for
classes, packages, usecases, and other elements.
2. Drag from child element and drop to parent element in the [main window].
26 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
In order to create multiple children classes inheriting selected class at once, use shortcut creation syntax.
1. Double-click to popup quick dialog. At the quick dialog, enter name of class inheriting selected class after
"<=" string and separate names with ",".
2. The children classes are created below selected class and arranged automatically.
In order to create multiple parent classes of selected class at once, use shortcut creation syntax.
1. Double-click to popup quick dialog. At the quick dialog, enter name of parent classes of selected class after
"=>" string and separate names with ",".
2. The parent classes are created above selected class and arranged automatically.
27 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Dependency
Semantics
A dependency indicates a semantic relationship between two model elements (or two sets of model elements). It
relates the model elements themselves and does not require a set of instances for its meaning. It indicates a
situation in which a change to the target element may require a change to the source element in the dependency.
2. Drag and drop between elements in the [main window] in depending direction.
28 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
In order to create element depending by selected element, use shortcut creation syntax.
1. Double-click to popup quick dialog. At the quick dialog, enter name of dependent elements by selected
element after "-->" string and separate names with ",".
2. Press [Enter] key and dependent elements by selected class are created and arranged automatically.
Realization
Semantics
A realization signifies that a relationship exists between a set of elements that form a specification (the client) and
another set of elements that form the implementation (the supplier).
2. Drag and drop between elements in the [main window] in realization direction.
29 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
In order to create target interface element of selected element, use shortcut creation syntax.
1. Double-click to popup quick dialog. At the quick dialog, enter name of interface elements of selected element
after "-@" string and separate names with ",".
2. Press [Enter] key and interface elements of selected element are created and arranged automatically.
AssociationClass
Semantics
An association class is an association that is also a class. It not only connects a set of classifiers but also defines a set
of features that belong to the relationship itself and not any of the classifiers.
2. Drag from association and drop to the class as association class in the [main window].
30 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Object
Semantics
An object represents a particular instance of a class. It has identity and attribute values. A similar notation also
represents a role within a collaboration because roles have instance-like characteristics.
2. And click at the position where object will be placed in the [main window].
31 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
In the case of using object model, select object in the [main window] or in the [model explorer], right-click the
selected object, select [Add] -> [Attribute Link] popup menu, and you can add Attribute Link.
In the other case, select [Collection Editor...] popup menu of object or click button in slots property on
properties window. At [Slots] tab of the [collection editor], you can add attribute link by using button.
Link
Semantics
A link is a tuple (list) of object references. Most commonly, it is a pair of object references. It is an instance of an
association.
2. Drag from one Object and drop to the other Object in the [main window].
32 of 33 2/6/2014 8:35 AM
StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Relationship
33 of 33 2/6/2014 8:35 AM