InformationFlows


The InformationFlows package provides mechanisms for specifying the exchange of information between entities of a system at a high level of abstraction. Information flows describe circulation of information in a system in a general manner. They do not specify the nature of the information (type, initial value), nor the mechanisms by which this information is conveyed (message passing, signal, common data store, parameter of operation, etc.). They also do not specify sequences or any control conditions. It is intended that, while modeling in detail, representation and realization links will be able to specify which model element implements the specified information flow, and how the information will be conveyed.

The contents of the InfromationFlows package is shown in Figure 413. The InformationFlows package is one of the packages of the AuxiliaryConstructs package.


InformationFlow (from InformationFlows)

Description

An Information Flow specifies that one or more information items circulate from its sources to its targets.

Attributes

None.

Associations
Constraints

[1] The sources and targets of the information flow can only be of the following kind : Actor, Node, Use Case, Artifact, Class, Component, Port, Property, Interface, Package, and InstanceSpecification except when its classifier is a relationship (i.e. it represents a link).

[2] The sources and targets of the information flow must conform with the sources and targets or conversely the target and sources of the realization relationships, if any.

[3] An information flow can only convey classifiers that are allowed to represent an information item. (see constraints on InformationItem)

Semantics

An information flow is an abstraction of the communication of an information item from its sources to its targets. It is used to abstract the communication of information between entities of a system. Sources or targets of an information flow designate sets of objects that can send or receive the conveyed information item.

When a source or a target is a classifier, it represents all the potential instances of the classifier; when it is a part, it represents all instances that can play the role specified by the part; when it is a package, it represents all potential instances of the directly or indirectly owned classifiers of the package.

An information flow may directly indicate a concrete classifier, such as a class, that is conveyed instead of using an information item.

Notation

An information flow is represented as a dependency, with the keyword <<flow>>.



Changes from UML1.x

InformationFlow does not exist in UML 1.4.

 InformationItem (from InformationFlows)


An information Item is an abstraction of all kinds of information that can be exchanged between objects. It is a kind of classifier intended for representing information at a very abstract way, which is cannot be instanciated.

One purpose of Information Items is to be able to define preliminary models, before having taken detailed modeling decisions on types or stuctures. One other purpose of information items and information flows is to abstract complex models by a less precise but more general representation of the information exchanged betwen entities of a system.

Attributes

No additional attributes.

Associations
Constraints

[4] The sources and targets of an information item (its related information flows) must designate subsets of the sources and targets of the representation information item, if any.The Classifiers that can realize an information item can only be of the following kind : Class, Interface, InformationItem, Signal, Component.

[5] An informationItem has no feature, no generalization, and no associations.

[6] It is not instanciable

Semantics

"Information" as represented by an information item encompasses all sorts of data, events, facts that are exploited inside the modeled system. For example, the information item "wage" can represent a Salary Class, or a Bonus Class (see example Figure 416). An information item does not specify the structure, the type or the nature of the represented information. It specifies at an abstract level the elements of information that will be exchanged inside a system. More accurate description will be provided by defining the classifiers represented by information item.Information items can be decomposed into more specific information item, using representation links between them. This gives the ability to express that in specific contexts (specific information flows) a specific information is exchanged.

Information Items cannot have properties, or associations. Specifying these detailed informations belongs to the represented classifiers.

Notation

Being a classifier, an information item can be represented as a name inside a rectangle. The keyword «information», or the black triangle icon on top of this rectangle indicates that it is an information item.



Representation links between a classifier and a representation item are represented as dashed lines with the keyword «representation».



An information item is usually represented attached to an information flow, or to a relationship realizing an information flow. When it is attached to an information flow (see Figure 414) its name is displayed close to the information flow line.

When it is attached to an information channel, a black triangle on the information channel indicates the direction (source and target) of the realized information flow conveying the information item, and its name is displayed close to that triangle. In the example Figure 418, two associations are realizing informations flows. The black triangle indicates that an information flow is realized, and the information item name is displayed close to the triangle.

The example Figure 417 shows the case of information items represented on connectors. When several information items having the same direction are represented, only one triangle is shown, and the list of information item names, separated by a comma is presented.

The name of the information item can be prefixed by the names of the container elements, such as a container information flow, or a container package or classifier, separated by a colon.