Zicomi Systems Logo
contact us  |  your privacy
Company
Services
Products
Support
Resources
  OMG Standards
OMG Logo
  Have You Heard?
UML Diagrams
Zicomi Systems publishes some UML example diagrams online from the world famous UML dictionary.
more...
Version 2.5 Released
Zicomi Systems is delighted to announce that version 2.5 of Zicomi Mentor is released. With support for UML 2.0 and all thirteen UML diagrams
more...
Zicomi Systems' Director
speaks about the UML at Objects by Design - an informative interview
more...
Partner Programme
Zicom Systems is delighted to announce a new world wide partner programme, become a partner today.
more...
OMG Member
Zicom Systems is made a member of the OMG!
UML Element Description
Abstract Class
Abstract Class    
An abstract class is a class that cannot be directly instantiated. . It cannot have attributes or methods and but can contain abstract operations. It is semantically equivalent to an interface, and can participate in relationships such as generalization dependencies, and association with some restrictions.
Abstraction
Abstraction    
An abstraction is a type of dependency and therefore a directed relationship between one or more clients (tail end) and one or more suppliers (arrowhead end). The elements represent the same concept but may be an expression of the concept at different stages of evolution, be views that hide or reveal detail, or be a representation from a different viewpoint. An abstraction can be used as an element in its own right, although it has a number of stereotypes that make its application more precise.
Action
Action    
An action is an executable activity node. It is the atomic unit of processing or behavior specification in an activity. An action may receive inputs in the form of control flows and object flows (the latter via input pins) and passes the results of its processing or transformations to one or more outgoing control flows or object flows (the latter via output pins) and onto downstream nodes. Execution of the action cannot begin until all its prerequisites are satisfied. Typically this means that all incoming control flows have control tokens and all input pins have object tokens.
Activity
Activity    
An activity is a classifier that describes a set of nodes and flows that specify a coordinated behavior made up of subordinate behaviors called actions. The nodes can be actions that are the atomic executable units of behavior, control nodes that coordinate flows or object nodes that can store objects or data. The flows (edges) can be control flows that carry control tokens or object flows, which carry object (data) tokens. An activity can participate in generalization relationships with other activities, and can also have sub activities that form a hierarchy. Activities are based on token flow where the execution of one node results in token flows that ultimately affect other nodes.
Activity Final Node
Activity Final Node    
An activity final node is a type of final node that stops an activity. When a token arrives at an activity final node all flows in the enclosing activity are stopped and the activity is terminated. The token arriving at the activity final node is itself destroyed. Any tokens that are offered on the incoming edges of the activity are accepted and object nodes declared as outputs are offered to the output edges of the enclosing activity.
Activity Partition
Activity Partition    
An activity partition is a type of activity group that specifies that a number of elements in an activity have something in common. Partitions may be oriented horizontally or vertically, and except in the case that a partition is a dimension can contain other partitions down to any level of nesting. Partitions have no effect on the execution of an activity or the nodes and edges contained within it.
Actor
Actor    
An actor can be represented by a classifier (rectangular) symbol. Both this form and the more commonly seen stick-person form have the same semantics. The rectangular form is sometimes used when representing a system actor but it can also be used to represent a human actor. When an actor has properties and these need to be displayed as part of a diagram the rectangular form can be used; the properties appear in a separate compartment.
Actor
Actor    
An actor represents a set of roles that a user plays with an entity (system, subsystem or a class). Actors can be human or other systems, subsystems or classes that represent things outside of the entity. The actor "communicates" with the entity by sending a series of messages backwards and forwards.
Actor Generalization
Actor Generalization    
Actor generalization is a way of factoring out commonality that exists between a number of actors. The actors must be of the same type or family, and have associations with the same set of use cases. The specialized actors may add or remove associations, and can always stand in the place of the parent or more generalized actor. The more generalized actor is often, but not always, abstract.
Actor Generalization (tree)
Actor Generalization (tree)    
Actor generalization can be represented in a single path (tree). When a number of generalization relationships exist and the children have the same parent the lines can be combined into a single path and drawn with a tree. This doesn't change the semantics of the individual relationships; it is simply a more compact and convenient style for representing the relationships. A tree that has three branches represents three discrete and separately defined generalization relationships.
Actor Instance
Actor Instance    
An actor instance is a specific instance of an actor using the entity being modeled, which is most typically a system but could be a subsystem or a class. It has unique identity as well as attribute values, which determine its state at any point in time. An actor instance communicates with one or more instances of use cases sending message instances.
Actor-Use case Association
Actor-Use case Association    
An actor-use case association is a semantic relationship between an actor and a use case. This association is typically not named and consists of exactly two association ends. The association ends are simply the end parts of the association where they connect to the actor at one end and the use case at the other. It is the association's ends that may have a number of adornments that express the rich structural semantics of the relationship.
Aggregate
Aggregate    
The value of aggregate for the aggregation property of an association end signifies a whole-part relationship between two classifiers. An association, with one of its ends specifying a value of aggregate is commonly called an aggregation relationship. It is a stronger than an unadorned association end, adding a concept of a whole (hollow diamond end) part relationship. The whole does not have responsibility for the lifetime of the parts. Only one end of a binary association can be adorned with an aggregation symbol. Formally it is one of three values that can be set for the aggregation property of an association end the others being none and composite.
Alternatives (Combined Fragment)
Alternatives (Combined Fragment)    
An alternatives interaction operator (signified by the value of alt) defines a combined fragment where one or more behavior options or choices are expressed. One (and only one) of the alternatives (operands) can execute and only when the guard condition evaluates to TRUE.
Artifact (Icon Presentation)
Artifact (Icon Presentation)    
An artifact is the specification of a piece of information that is utilized or created as part of a software development process or is produced as a product of a running system. An artifact is a classifier and as such can have instances, which are the development or runtime expressions (instances) of the artifact.
Artifact (Keyword Presentation)
Artifact (Keyword Presentation)    
An artifact (keyword presentation) is a visual synonym of an artifact. It adds no additional semantics; it is simply an alternative presentation of the element. The standard form of this element is considered to be the artifact displayed with a small icon in the top left hand corner of a classifier rectangle.
Artifact Instance
Artifact Instance    
An artifact instance represents a distinct instance of an artifact. It is a piece of information that is utilized or created as part of a software development process or is produced as a product of a running system. It has a unique identity and state and defines the values of the properties specified in the artifact of which it is an example. An artifact instance can exhibit behavior, but only as a result of being an instance of an artifact.
Assembly Connector
Assembly Connector    
An assembly connector is a kind of connector that is specialized for use in component modeling. It is used to connect the provided interface or port of one component to the required interface or port of another component.
Assert (Combined Fragment)
Assert (Combined Fragment)    
An assertion interaction operator (signified by the value of assert) defines a combined fragment where the messages contained in the fragment are the only valid messages that can occur in the context. If any other messages occur they are considered to be invalid.
Association
Association    
An association is a semantic or structural relationship between classifiers. An association has a name and consists of at least two association ends. The association ends are simply the end parts of the association where they connect to classifiers. It is the association's ends that may have a number of adornments that express the rich structural semantics of the relationship.
Association Class
Association Class    
An association class has the behavior of both an association and a class. It gives an association the ability to have attributes and operations like a class. It has two distinct parts to its structure: an association part and a class part.
Association End
Association End    
An association end is the endpoint of an association that marks the point at which the line connects with a classifier. An association end has a name (role name) and a series of properties that determine the semantics of how the classifier participates in the relationship. A binary association has exactly two association ends and an n-ary association has 'n' association ends.
Asynchronous Message
Asynchronous Message    
An asynchronous message means that the caller dispatches the stimulus or message to the receiver and does not wait for a return but continues immediately with the next step in its own execution.
Asynchronous Message
Asynchronous Message    
An asynchronous message is a visual synonym of an asynchronous message. It adds no additional semantics; it is simply an example of the asynchronous message adapted for use on a communication diagram. This usage of the asynchronous message has the same form as an asynchronous message used on other interaction diagrams: a solid line with an open arrowhead directed from one lifeline to another (possibly reflexive). It is rarely used on a communication diagram as it does little to clarify the sequencing of messages. There is a single form of presentation in the three different types of interaction diagrams and the two different presentations of the timing diagram.
Asynchronous Message (State)
Asynchronous Message (State)    
An asynchronous message (state) is a visual synonym of an asynchronous message. It adds no additional semantics; it is simply an example of the asynchronous message adapted for use on a timing diagram. This usage of the asynchronous message has the same form as an asynchronous message used on other interaction diagrams: a solid line with an open arrowhead directed from one execution occurrence to another (possibly reflexive). It is listed separately because the message ends give it a different appearance from other examples. The points on the execution occurrence where the asynchronous messages end represent event occurrences and are important events in a lifeline. There is a single form of presentation in the three different types of interaction diagrams and the two different presentations of the timing diagram.
Asynchronous Message (Value)
Asynchronous Message (Value)    
An asynchronous message (value) is a visual synonym of a message. It adds no additional semantics; it is simply an example of the asynchronous message adapted for use on a timing diagram. This usage of the asynchronous message has the same form as an asynchronous message used on other interaction diagrams: a solid line with an open arrowhead directed from one lifeline to another (possibly reflexive). It is listed separately because the message ends give it a different appearance from other examples. The point on the execution occurrence where the asynchronous messages end represent event occurrences and are important events in a lifeline. There is a single form of presentation in the three different types of interaction diagrams and the two different presentations of the timing diagram.
Attribute
Attribute    
An attribute is a string item listed in the attribute compartment of a classifier. An attribute defines an aspect or dimension of a classifier. An attribute may be assigned a value when an instance of a classifier is created. It is semantically equivalent to a classifier having a composite association with another classifier of the type specified in the attribute expression.
Bag
Bag    
A value of bag specified for the property string of an association end indicates that the same instance can appear more than once in the collection. By default an association end is a set of instances, meaning that there cannot be duplicate elements. By setting the value to bag this default behavior is overridden and duplicates can occur.
Boundary
Boundary    
A boundary is a stereotyped class that is located on the periphery of the entity being modeled. Most commonly the entity is an entire system but can also be a subsystem. The boundary class communicates with actors, who exist outside the system and control, entity and other boundary classes inside the system.
Break (Combined Fragment)
Break (Combined Fragment)    
A break interaction operator (signified by the value of break) defines a combined fragment where the messages enclosed within the fragment are performed instead of the messages in the outer (enclosing) fragment. The break operator is typically used when a given message or set of messages will halt the performance of the enclosing set of messages.
Call Dependency
Call Dependency    
A call dependency connects an operation in one class, the source to an operation in another class, the target. The relationship may be made less precise by attaching either the source or target or both ends to the classes that contain the operations.
Central Buffer
Central Buffer    
A central buffer is a type of object node, which gives the node the capability of storing (buffering) tokens. It manages the tokens that arrive at incoming flows (edges) from one or more object nodes and selects which tokens and in what order these tokens will be presented to the downstream object nodes via the outgoing flows (edges).
Choice
Choice    
A choice is a pseudostate that acts a decision point. It has a single incoming transition and two or more outgoing transitions one (and only one) of which will fire as a result of the firing of the incoming transition. Each outgoing transition is guarded by a condition, which must evaluate to "TRUE" or "FALSE". A transition will fire if and only if its guard evaluates to "TRUE".
Class
Class    
A class represents some concept, physical or otherwise, in the system being modeled. Classes describe sets of things or concepts that have similar attributes, behavior and relationships. They are a higher order concept to objects, which represent instances of the class.
Collaboration
Collaboration    
A collaboration is a static construct that models the way a specific set of instances interact with each other. The instances communicate with each by exchanging stimuli in an overall effort to accomplish some purpose.
Collaboration Occurrence
Collaboration Occurrence    
A collaboration occurrence is a specific application of a collaboration to express a how a specific instance of the collaboration would be carried out by the participating classes or instances.
Comment (Note)
Comment (Note)    
A comment can contain textual information or graphical symbols that add additional information to a diagram or model. The information can take many forms from very formal, in the case of constraints, to conversational, in the case of working notes. Comments can be placed anywhere in a model or diagram, and simply by their proximity and alignment; they can be applicable to one or more elements. They may also be attached either to one or more elements by a comment attaching line.
Comment (Note) Attaching Line
Comment (Note) Attaching Line    
A comment attaching line is a dashed line that is used to attach a comment (note) to a model element in a diagram. The comment (note) attaching line is not a UML relationship and has no semantics beyond signifying that the contents of a comment apply to the model element it is attached to. A comment may be attached to any number of model elements or may exist in isolation and by placement in proximity to one or more model elements signify that it applies to those elements.
Complete
Complete    
Complete is a constraint added to a set of generalization relationships to indicate that all children have been specified. This means that any instance of the parent must be an instance of at least one of the children within the set. All children that are governed by the constraint must have the same discriminator.
Component (Icon Presentation)
Component (Icon Presentation)    
A component is a modular, deployable and replaceable part of a system, it contains model elements and packages them to present a set of interfaces.
Component (keyword)
Component (keyword)    
A component (keyword) is a visual synonym of a component. It adds no additional semantics; it is simply an alternative presentation of the element.
Component (lugged)
Component (lugged)    
A component (lugged) is a visual synonym of a component. It adds no additional semantics; it is simply an alternative presentation of the element. This presentation style was used in versions of UML prior to UML 2.0, it has been superseded but may still be used as an alternative presentation.
Component Instance
Component Instance    
A component instance represents a distinct instance of a component. It has a unique identity and attribute values, which determine its state at any point in time. A component instance can exhibit behavior, but only as a result of being an instance of a component. A component instance is an instance of one and only one component.
Component Instance
Component Instance    
A component instance (lugged) is a visual synonym of a component instance. It adds no additional semantics; it is simply an alternative presentation of the element. This presentation style was used in versions of UML prior to UML 2.0. It has been superseded but may still be used as an alternative presentation.
Composite
Composite    
The value of composite for the aggregation property of an association end signifies a whole-part relationship between two classifiers where the whole has responsibility for the parts. An association, with one of its ends specifying a value of composite, is commonly called a composition relationship. It is stronger than an unadorned association end, adding the concept of whole (filled diamond end) and part relationship. It is also stronger than an aggregate, because the classifier at the whole end has responsibility for the lifetime of any parts. Only one end of a binary association can be adorned with a composition symbol. Formally it is one of three values that can be set for the aggregation property of an association end the others being none and aggregate.
Composite State
Composite State    
A composite state can contain other states and can be one of two types: simple or orthogonal. If it contains just one region it is termed a simple (non-orthogonal) composite state, if it contains two or more regions it is termed an orthogonal composite state. Each region contains a disjoint (mutually exclusive) set of vertices and transitions. Each region of a composite state can have one (and only one) initial pseudostate and any number of final states. An incoming transition that targets the boundary of a composite state is semantically equivalent to a transition to each initial pseudostates in every region of the composite state. A state is not complete until every region of the composite state is complete.
Composite State (HiddenDecomposition)
Composite State (HiddenDecomposition)    
A composite state with a hidden decomposition indicator icon is semantically equivalent to a composite state that explicitly displays its contents (other vertices and transitions). It is a useful notation or presentation option used to hide the detail of a composite state. See Composite State for details.
Connector
Connector    
A connector is a feature that is used in the description of composite structures. It specifies that two or more instances are able to communicate with each other in some way. The connector does not specify how the communication is achieved but simply that it is possible. In practice the instances may be able to communicate because there is a link (instance of an association) connecting the elements or because one instance has access to another through parameter passing.
Consider (Combined Fragment)
Consider (Combined Fragment)    
A consider interaction operator (signified by the value of consider) defines a combined fragment where the messages listed are to be considered within the fragment. The messages defined as part of the operator are drawn in the fragment.
Continuation
Continuation    
A continuation is an interaction fragment that is used with alternative and weak sequencing combined fragments. It is a device that expresses the continuation of the different branches of the enclosing combined fragment.
Control
Control    
A control is a stereotyped class whose responsibility is to manage other classes and their interactions. It communicates with boundary classes positioned on the entity periphery, other control classes and entity classes.
Control Flow
Control Flow    
A control flow is a directed connection (flow) between two activity nodes. As soon as the activity node at the source (tail) end of the flow is finished it presents tokens to the control flow at the target (arrowhead) end of the flow. A control flow can only carry control tokens; it cannot carry object (data) tokens. There are rules that determine whether tokens can flow along the control flow and these are determined by the type of activity nodes at the source and target of the flow. In the case of complete activities a control flow may define a weight, which specifies the minimum number of tokens that must flow along the control flow as a group.
Create Dependency
Create Dependency    
A create dependency is a usage dependency that signifies that one or more of the operations on the client (tail end) create instances of the supplier classifier (arrowhead end).
Unified Modeling Language and UML are either registered

trademarks or trademarks of Object Management Group, Inc. in the

United States and/or other countries.