0% found this document useful (0 votes)
48 views

Modeling With Class Diagram: Subsystem

This document provides instructions for modeling with class diagrams in StarUML, including how to create and modify various class diagram elements such as classes, interfaces, subsystems, attributes, operations, parameters, exceptions, and templates. Key steps include clicking toolbox icons or menu options to add elements, using collection editors to modify properties, and dragging and dropping elements to rearrange them.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

Modeling With Class Diagram: Subsystem

This document provides instructions for modeling with class diagrams in StarUML, including how to create and modify various class diagram elements such as classes, interfaces, subsystems, attributes, operations, parameters, exceptions, and templates. Key steps include clicking toolbox icons or menu options to add elements, using collection editors to modify properties, and dragging and dropping elements to rearrange them.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

StarUML 5.0 User Guide (Modeling with Class Diagram) http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.

html

Modeling with Class Diagram


The following elements are available in the class diagram.

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.

Procedure for creating subsystem

In order to create subsystem,

1. Click [Toolbox] -> [Class] -> [Subsystem] button.

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.

4. And press [Enter] key to have done this procedure.

Procedure for creating providing interface of subsystem.

In order to providing inteface of subsystem,

1. Create interface and susbystem.

2. Click [Toolbox] -> [Realization] button.

3. Drag from subsystem and drop to interface.

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

4. Between interface and subsystem, providing interface relationship is created finally.

In order to create interface and realization at once,

1. Double-click subsystem and subsystem quick dialog is opened.

2. Enter text in the quick dialog as following

3. Press [Enter] key and interface provided by subsystem is created .

Procedure for creating requiring interface

In order to create requiring interface, use shortcut creation syntax.

1. Double-click subsystem. At the quick dialog, enter text as follows.

2. Then subsystem connects to interface as requiring relationship.

Procedure for adding operation to subsystem

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

Subsystem can have operation. In order to add operation to subsystem,

1. Select [Collection Editor...] popup menu.

2. At the [collection editor], add operation on the [operations] tab.

3. Or click button at the quick dialog of subsystem.

4. Then a new operation is created.

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

Procedure for creating class

In order to create class,

1. Click [Toolbox] -> [Class] -> [Class] button.

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.

Proceudre for adding attribute

There are three method to add attribute to class.

using quick dialog

using model in the [main window] or the [model explorer]

using [collection editor]

In the case of using quick dialog,

1. Double-click class.

2. Press [Add Attribute] button at the quick dialog, and you can add attribute.

In the case of using model,

1. Select class in the [main window] or in the [model explorer].

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

In the last case,

1. Select [Collection Editor...] popup menu.

2. Or click button in [attributes] property on properties window.

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

Proceudre for adding operation

There are three method to add attribute to class.

using quick dialog

using model in the [main window] or the [model explorer]

using [collection editor]

In the case of using quick dialog,

1. Double-click class and class quick dialog is shown.

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.

In the last case,

1. Select [Collection Editor...] popup menu.

2. At [operations] tab of the [collection editor], you can add operation by using button.

Procedure for adding parameter to operationn

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

In order to add parameter to operation,

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.

3. Or click button in [Parameters] property on properties window.

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

Procedure for adding exception to operation:

Before this procedure, there must exist a exception or more. To do this, see "Procedure for creating signal" or
"Procedure for creating expception".

1. Click button in [RaisedSignals] property on properties window.

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.

4. The result is as follows.

Procedure for moving attribute/operation into other classss

In order to move attribute or operation into the other class,

1. Click a attribute(or operation).

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.

3. Drop it into another class.

Procedure for adding template parameter to classss

There are two way to add template parameter to class

using class model in the [main window] or the [model explorer]

using [collection editor]

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

A new template parameter is added to class. The result is as follows.

Procedure for creating port

In order to create port,

1. Click [Toolbox] -> [Class] -> [Port] button.

2. And click the class where the port will be contained in the [main window].

Procedure for creating view by draging port

You can create port by draging port from [model explorer] to main diagram.

1. Drag port in the [model explorer].

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.

3. The class has a port as follows.

Procedure for creating part

In order to create part,

1. Click [Toolbox] -> [Class] -> [Part] button.

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

Procedure for creating connector

In order to create connector,

1. Click [Toolbox] -> [Class] -> [Connector] button.

2. Drag from one part and drop to the other part in the [main window].

3. Between two parts, new connector is created finally.

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

Procedure for setting active class

In order to set class to active class,

1. Set class's [IsActive] property to true.

2. The result class is shown as follows.

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.

Procedure for creating interface

In order to create class,

1. Click [Toolbox] -> [Class] -> [Interface] button.

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.

3. Press [Enter] key. Then the result is as follows.

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

Procedure for creating providing relationship

In order to create providing relationship,

1. Click [Toolbox] -> [Class] -> [Realization] button.

2. Drag from one(Class, Port, Part, Package, Subsytem) and drop to interface in the [main window].

3. Then providing interface relationship is created as follows.

Procedure for creating requiring relationship

In order to create requiring relationship,

1. Click [Toolbox] -> [Class] -> [Dependency] button.

2. Drag from one(Class, Port, Part, Package, Subsytem) and drop to interface in the [main window].

3. Then requiring interface relationship is created as follows.

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.

Procedure for creating enumeration

In order to create enumeration,

1. Click [Toolbox] -> [Class] -> [Enumeration] button.

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.

Procedure for creating signal

In order to create signal,

1. Click [Toolbox] -> [Class] -> [Signal] button.

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.

Procedure for creating exception

In order to create exception,

1. Click [Toolbox] -> [Class] -> [Exception] button.

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).

Procedure for creating association

In order to create association,

1. Click [Toolbox] -> [Class] -> [Association] button.

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

3. Between two classes, a new association is created as follows.

Procedure for adding qualifier to association

In order to add qualifier to association,

1. Select association's [Collection Editor...] popup menu.

2. Or click button in [End.Qualifiers] property on properties window.

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.

4. The result is as follows.

Procedure for creating multiple classes related to current class at once

If you want to create Dog, Pig, Cat classes related to Me class

1. Double-click Me class or press [Enter] key. At quick dialog, enter as following.

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

2. Then three classes with association are created as following.

DirectedAssociation

Procedure for creating directed association

Procedure for creating directed association is equal to association's.

1. Click [Toolbox] -> [Class] -> [DirectedAssociation].

2. Drag and drop between two elements in arrow direction.

3. The result is as follows.

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

Procedure for changing association to directed association

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.

Procedure for creating aggreate

In order to create aggregation,

1. Click [Toolbox] -> [Class] -> [Aggregation] button.

2. Drag from one associated and drop to another in the [main window].

3. The result is as follows.

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

Procedure for creating aggregated class by shortcut creation syntax

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.

Procedure for creating composition

In order to create composition,

1. Click [Toolbox] -> [Class] -> [Composition] button.

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].

3. Between two classes, a new composition relationship is created as follows.

Procedure for creating composing class by shortcut creation syntax

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.

Procedure for creating generalization

In order to create generalization,

1. Click [Toolbox] -> [Class] -> [Generalization] button.

2. Drag from child element and drop to parent element in the [main window].

3. Then a new generalization is created.

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

Procedure for creating multiple children classes at once.

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.

Procedure for creating multiple parent classes at once

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.

Procedure for creating dependency

In order to create dependency,

1. Click [Toolbox] -> [Class] -> [Dependency] button.

2. Drag and drop between elements in the [main window] in depending direction.

3. A new dependency between two classes is created.

Procedure for dependent element by shortcut creation syntax

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).

Procedure for creating realization

In order to create realization,

1. Click [Toolbox] -> [Class] -> [Realization] button.

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

3. The result is as follows.

Procedure for creating realization target element of selected element

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.

Procedure for creating association class

In order to create association class,

1. Click [Toolbox] -> [Class] -> [AssociationClass] button.

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

3. The result is as follows.

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.

Procedure for creating object

In order to create object,

1. Click [Toolbox] -> [Class] -> [Object] button.

2. And click at the position where object will be placed in the [main window].

Procedure for adding AttributeLink to object

There are two way to add AttributeLink to Object.

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

using object model in the [main window] or the [model explorer]

using [collection editor]

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.

Procedure for creating link

In order to create Link,

1. Click [Toolbox] -> [Class] -> [Link] button.

2. Drag from one Object and drop to the other Object in the [main window].

3. The result is as follows.

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

Procedure for reconnecting to another element

In order to reconnect to another element,

1. Drag the end of relationship.

2. And drop it to another element.

3. Then connection's end will be changed.

33 of 33 2/6/2014 8:35 AM

You might also like