Appendix A. Glossary

Table of Contents

Glossary

Please note that this glossary covers some UML concepts which are not available in Apollo for Eclipse. This glossary is for reference only, and the entry of an item herein does not imply that it is a part of any Apollo for Eclipse release.

Glossary

Action

An action is an atomic computation that cannot be terminated externally, and changes the state of the model or returns a value.

Action State

An action state is a simple state in an activity graph representing the execution of an noninterruptible and atomic action that is followed by a transition to another state.

Activation

An activation, also known as focus of control, shows the execution of an operation and the duration of time for that operation.

Actor

An actor is a representation of an entity that interacts with and derives value from the system.

Aggregation

An aggregation relationship is a 'whole-part' relationship, e.g. a page is a part of a book.

Association

An association is a represention of a semantic relationship between instances of objects.

Association End

An association end contains a reference to a target classifier and defines the participation of the classifier in the association.

Attribute

An attribute is a logical data value of a specified type in a class which is inherent to an object. Each object of the class separately holds a value of the type.

Boundary-Control-Entity-Schema

The boundary-control-entity-schema describes a three layer architecture. The boundary layer is the user interface, control decides what to do with the information gathered from the user interface, and entity holds the data.

Branch

A branch is an element in a state machine where a single trigger leads to more than one possible outcome, each with its own guard condition.

Class

A class is a descriptor for objects that share the same methods, operations, attributes, relationships, and behavior, representing a concept within the system being modeled.

Classifier

A classifier is a model element that describes structural features and behavior. Some classifiers include: class, actor, component, data type, interface, node, and use case.

Collaboration

A collaboration describes a dynamic relationship that exists between objects. Additionally, a Classifier Role should be associated to the collaboration to illustrate the role an element plays in that collaboration.

Comment

A comment is a textual annotation attached to an element or a collection of elements that has no direct semantics, but may display semantic information.

Previously referred to as a note.

Compartment

A compartment is a division of a symbol, such as a class rectangle divided vertically into smaller rectangles. Each compartment shows the properties of the represented element.

Component

A component is a replaceable, tangible part of a system that realizes of a set of interfaces, including software code, scripts, or command files, run-time objects, documents, databases, etc.

The new UML 2.0 notation for a component is a simple box with either the component text stereotype or the graphical stereotype depicting the old notation (not supported in this release of Poseidon).

Composition

A composition is a stronger form of aggregation. A part can only be a part of one composite, and the destruction of the whole automatically implies destruction of the parts. Parts with multiplicity that is not fixed can be created after the composite has been created, but once established they live and die with it. Parts can be explicitly removed before the death of the composite.

Constraint

Constraints are expressions that represent semantic conditions or restrictions that are used to limit the use of model elements.

Constructor

A constructor is an operation within the scope of a class that creates and initializes an instance of a class. It may be used as an operation stereotype.

Container

A container is an object that exists to encompass other objects and provide operations to access or iterate over its contents. Examples of containers include arrays, lists, and sets.

Contains

A 'contains' relationship is used to describe a composition relationship; for example, an airplane contains wings.

Control Flow

Control flow represents the relationship between actions in a sequence as well as between input and output objects, shown with messages attached to associations or as solid arrows between activity symbols.

Dependency

A dependency exists between elements and expresses that elements within one package use elements from the package on which it depends, implying that a change in one element may affect or supply information needed by the other element.

Details Pane

The Details pane is a quadrant of the Poseidon work area, located in the lower right corner, which provides advanced editing and viewing capabilities for all elements.

Descriptor

A descriptor is a model element that describes the commonalities of a set of instances, including their structure, relationships, behavior, constraints, and purpose. Most elements in a model are descriptors.

Diagram

A diagram is a graphical presentation of a compilation of model elements, rendered as a graph of shapes connected by paths. Comprehension resides mainly in the topology, not in the size or placement of the symbols.

Diagram Pane

The Diagram pane is the main working area of Poseidon, where all of the diagrams are displayed.

Drill-down Navigation

Drill-down navigation is a means of moving through a model by moving from element to element via the relationships of those elements.

Element

An element is a broad term with little in the way of specific semantics and refers to an atomic constituent of a model.

Evaluation Key

An evaluation key is a key granted to a user upon request to allow that user to operate Poseidon for a limited amount of time.

Event

An event is a non-trivial occurrence with a location in time and space.

Extend

An extend relationship exists between an extension use case and a basic use case, and indicates how the behavior of the extension use case can be directly applied to the behavior defined for the base use case. The extension use case incrementally modifies the base use case in a modular way.

Extension Point

An extension point is a named marker that references a location or set of locations within the behavioral sequence for a use case, at which additional behavior can be added.

Final Key

A final key is a string provided to Poseidon in order to remove time limits and functionality limits from an evaluation copy of the software.

Final State

A final state is a state within a composite state that, when active, indicates that the activity of the enclosing composite state is complete.

Fork

A fork is a complex transition where one source state is replaced by two or more target states, thus increasing the number of active states.

Friend

A friend dependency grants an operation or class permission to use the contents of a class where there would otherwise be insufficient permission.

Generalization

A generalization is a directed relationship between two like elements, where one element is the parent element and the other is the child element. This type of relationship is also referred to as 'kind of', meaning that the child is a kind of the parent.

Guard Condition

A guard condition is a boolean expression that must be satisfied in order to enable an associated transition to fire.

Implementation Relations

An implementation relation is a relation that exists only between interfaces and classes.

Include

An include relationship defines a dependency relationship between a source use case and a target use case in which the source use case explicitly incorporates the target use case. The source use case can see and use the target, but neither the source nor the target may access each other's attributes. Multiple include relationships may be applied to the same base use case. The same target use case may be included in multiple source use cases.

Inheritance Relations

An inheritance relation allows more specific elements to incorporate structures and behaviors that have been defined by more general elements.

Initial State

An initial state is a syntactic notation indicating the default starting place for an incoming transition to the boundary of a composite state.

Instance

An instance is an individual, concrete entity with its own identity and value. An object is an instance of a class, a link is an instance of an association

Interface

An interface is a named set of operations that characterize the behavior of an element. Interfaces do not have implementations, they lack attributes, states, and associations, they have only operations.

Interfaces may also be noted in lollipop and socket notations.

Join

A join is a location in a state machine, activity diagram, or sequence diagram where two or more concurrent threads or states combine into one thread or state.

Label

A label is a notational term for the use of a string on a diagram.

Link

A link is an instance of an association.

Lollipop

A lollipop is a type of notation used to denote an offered interface. It consists of a named circle (the interface) and an relationship drawn as a solid line. This is also known as ball notation.

Merge

A merge is a location in a state machine, activity diagram, or sequence diagram where two or more control paths come together.

Message

A message refers to the transfer of information, such as a signal or operation call, from one object to another with the expectation that activity will result. The receipt of a message instance is normally considered an instance of an event.

Metaclass

A metaclass is class whose instances are classes. Metaclasses are typically used to construct metamodels. A metaclass can be modeled as a stereotype of a class using the keyword metaclass.

Method

A method is an implementation of an operation that specifies the algorithm or procedure.

Model

A model is semantically complete abstraction of a system from a particular viewpoint.

Multiplicity

A multiplicity is a specification of the range of allowable cardinality values. It can be an explicit value, a range of values, or an expression that resolves to one or more values.

Name

A name is a string that is defined within a namespace and is used to identify a model element.

Namespace

A namespace is a part of the model in which names are defined and used, where each name has a unique meaning.

Navigation Pane

The Navigation pane is located in the top left corner of the Poseidon work area and displays model elements according to pre-determined schemas which can be selected from a dropdown menu.

Node

A node is a physical object that exists at runtime and represents a computational resource that executes components. It usually has at least a memory and often processing capability. Nodes can include, but are not limited to, computing devices, human resources, or mechanical processing resources.

Note

The Note element has undergone a name change. See 'Comment'.

Object

An object is a discrete entity with a well-defined boundary and identity that encapsulates state and behavior, an instance of a class.

Object Constraint Language (OCL)

Object Constraint Language (OCL) is a text language for specifying constraints, writing navigation expressions, boolean expressions, and other queries. It is not intended for writing actions or executable code

Object Flow State

An object flow state represents the existence of an object at a point within a computation. It can also represent the flow of control among operations in target objects.

Operation

An operation is the specification of a transformation on the state of an object or a query that returns a value to the caller of the operation.

Overview Pane

The Overview pane is located in the bottom left-hand corner of the Poseidon application and helps the user keep the big picture in mind.

Package

A package, like a file directory, is a general way to put like things together to provide organization. Packages may be nested within other packages.

Parameter

A parameter is the placeholder for an argument that can be changed, passed or returned.

Path

A path is a graphical connection between symbols, usually used to show a relationship.

Plug-in

A Plug-in is a piece of code that extends the capabilities of Poseidon. It may or may not be authored by Gentleware.

Plug-in Key

A Plug-in Key is the string given to Poseidon to activate the Plug-in.

Port

A Port is a connectable element that specifies a set of required and provided interfaces.

Profile

A profile takes a part of the UML and extends it with stereotypes for a particular purpose.

Project

A project is saved as a zipped .zuml file and contains all information regarding the model, both textual and graphical.

Realization

A realization is the relationship between an element that specifies behavior and one that provides an implementation. A specification describes a behavior or structure without specifying how the behavior will be implemented. An implementation provides the details about how to implement behavior in an effective way.

Relationship

A relationship is reified semantic connection among model elements. Types of relationships include association, generalization, and dependency.

Role

A role is a named slot within an object structure that represents the behavior of an element as it participates in a given context (in contrast to the inherent qualitites of the element).

Socket

A socket is a notation for a required interface. It is denoted as a semi-circle.

Specialization

A specialization produces a more specific description of a model element by adding children. A child element is the specialization of a parent element.

State

A state is a condition or situation during the life of an object during which it satisfies a condition, performs an activity, or waits for an event.

Stereotype

A stereotype characterizes a type of element without specifying its implementation and assists in teh creation of a new model element that is derived from an existing model element.

System

A system is collection of connected units organized to accomplish a purpose. A system can be described by one or more models, possibly from different viewpoints.

Tagged Value

A tagged value is consists of a tag-value pair and is attached to an element to hold some piece of information.

Transition

A transition is a relationship between two states within a state machine where an object in the first state will perform one or more actions and then enter the second state when a certain event occurs and guard conditions are satisfied.

Trigger

A trigger is an event whose occurrence makes a transition eligible to fire.

Type

A type is a declared classifier that the value of an attribute, parameter, or variable must hold. The actual value must be an instance of that type or one of its descendants.

Use Case

A use case defines a piece of behavior of a classifier without revealing its internal structure by describing the behavior of a system from a user's standpoint, providing a functional description of a system and its major processes, and providing a graphical description of users and interactions.

View

A view is a collection of diagrams that describe a particular aspect of the project.

Visibility

Visibility refers to an enumeration whose value determines whether a model element may be seen outside its enclosing namespace.