General UML Guidelines
Packing Elements
Package (Package)
General UML Guidelines
Packing Elements
Package (Package)
A package is used to group elements, and provides a namespace for the grouped elements.
A package can have one or more profile applications to indicate which profiles have been applied.
The name of the item.
A keyword is a lightweight variant of a stereotype to extend the semantics of a model element. As opposite of stereotypes, keywords does not have do be defined in a profile.
If several keywords are given, they should be separated by commas.
A stereotype defines how a model element may be extended, and enables the use of platform or domain specific terminology or notation in place of, or in addition to, the ones used for the extended metaclass.
Stereotypes should be given in the format 'profile::stererotype'. Stereotypes should be separated by commas.
A textual description of the element.
Determines where the item appears within different Namespaces within the overall model, and its accessibility.
An element of one of the following kinds:
A component represents a modular part of a system that encapsulates its contents and whose manifestation is replaceable within its environment.
In the namespace of a component, all model elements that are involved in or related to its definition are either owned or imported explicitly. This may include, for example, use cases and dependencies (e.g. mappings), packages, components, and artifacts.
A model captures a view of a physical system. It is an abstraction of the physical system, with a certain purpose.
This purpose determines what is to be included in the model and what is irrelevant. Thus the model completely describes those aspects of the physical system that are relevant to the purpose of the model, at the appropriate level of detail.
A package is used to group elements, and provides a namespace for the grouped elements.
A package can have one or more profile applications to indicate which profiles have been applied.
A profile defines limited extensions to a reference metamodel with the purpose of adapting the metamodel to a specific platform or domain.
A template parameter exposes a parameterable element as a formal template parameter of a template.
An activity is the specification of parameterized behavior as the coordinated sequencing of subordinate units whose individual elements are actions.
An actor specifies a role played by a user or any other system that interacts with the subject.
An artifact is the specification of a physical piece of information that is used or produced by a software development process, or by deployment and operation of a system.
Examples of artifacts include model files, source files, scripts, and binary executable files, a table in a database system, a development deliverable, or a word-processing document, a mail message. An artifact is the source of a deployment to a node.
An association describes a set of tuples whose values refer to typed instances. An instance of an association is called a link.
A call event models the receipt by an object of a message invoking a call of an operation.
A class describes a set of objects that share the same specifications of features, constraints, and semantics.
A class may be designated as active (i.e., each of its instances having its own thread of control) or passive (i.e., each of its instances executing within the context of some other object).
A class may also specify which signals the instances of this class handle. A class has the capability to have an internal structure and ports. Class has derived association that indicates how it may be extended through one or more stereotypes. Stereotype is the only kind of metaclass that cannot be extended by stereotypes.
A collaboration defines a set of co-operating roles used collectively to illustrate a specific functionality.
A collaboration should only show the roles and attributes required to accomplish its defined task or function. Isolating the primary roles is an exercise in simplifying the structure and clarifying the behavior, and also provides for re-use. A collaboration often implements a pattern.
A communication path is an association between two deployment targets, through which they are able to exchange signals and messages.
A component represents a modular part of a system that encapsulates its contents and whose manifestation is replaceable within its environment.
In the namespace of a component, all model elements that are involved in or related to its definition are either owned or imported explicitly. This may include, for example, use cases and dependencies (e.g. mappings), packages, components, and artifacts.
A constraint is a condition or restriction expressed in natural language text or in a machine readable language for the purpose of declaring some of the semantics of an element.
A data type is a type whose instances are identified only by their value. A data type may contain attributes to support the modeling of structured data types.
A deployment specification specifies a set of properties that determine execution parameters of a component artifact that is deployed on a node.
A deployment specification can be aimed at a specific type of container. An artifact that reifies or implements deployment specification properties is a deployment descriptor.
A device is a physical computational resource with processing capability upon which artifacts may be deployed for execution.
Devices may be complex (i.e., they may consist of other devices).
An enumeration is a data type whose values are enumerated in the model as enumeration literals.
An enumeration literal is a user-defined data value for an enumeration.
An execution environment is a node that offers an execution environment for specific types of components that are deployed on it in the form of executable artifacts.
An extension is used to indicate that the properties of a metaclass are extended through a stereotype, and gives the ability to flexibly add (and later remove) stereotypes to classes.
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 in a very abstract way, one which cannot be instantiated.
An instance specification is a model element that represents an instance in a modeled system.
An instance specification has the capability of being a deployment target in a deployment relationship, in the case that it is an instance of a node.
It is also has the capability of being a deployed artifact, if it is an instance of an artifact.
An interaction is a unit of behavior that focuses on the observable exchange of information between connectable elements.
An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations.
An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract.
The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface.
Interfaces may include receptions (in addition to operations). Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface.
A model captures a view of a physical system. It is an abstraction of the physical system, with a certain purpose.
This purpose determines what is to be included in the model and what is irrelevant. Thus the model completely describes those aspects of the physical system that are relevant to the purpose of the model, at the appropriate level of detail.
A node is computational resource upon which artifacts may be deployed for execution. Nodes can be interconnected through communication paths to define network structures.
An behavior with implementation-specific semantics.
A package is used to group elements, and provides a namespace for the grouped elements.
A package can have one or more profile applications to indicate which profiles have been applied.
A primitive type defines a predefined data type, without any relevant substructure (i.e., it has no parts in the context of UML). A primitive datatype may have an algebra and operations defined outside of UML, for example, mathematically.
A profile defines limited extensions to a reference metamodel with the purpose of adapting the metamodel to a specific platform or domain.
Only available together with the Real-Time Extension of RSA.
A protocol state machine is always defined in the context of a classifier. It specifies which operations of the classifier can be called in which state and under which condition, thus specifying the allowed call sequences on the classifier's operations.
A protocol state machine presents the possible and permitted transitions on the instances of its context classifier, together with the operations which carry the transitions. In this manner, an instance lifecycle can be created for a classifier, by specifying the order in which the operations can be activated and the states through which an instance progresses during its existence.
A signal is a specification of send request instances communicated between objects. The receiving object handles the received request instances as specified by its receptions. The data carried by a send request (which was passed to it by the send invocation occurrence that caused that request) are represented as attributes of the signal.
A signal is defined independently of the classifiers handling the signal occurrence.
State machines can be used to express the behavior of part of a system.
Behavior is modeled as a traversal of a graph of state nodes interconnected by one or more joined transition arcs that are triggered by the dispatching of series of (event) occurrences. During this traversal, the state machine executes a series of activities associated with various elements of the state machine.
A stereotype defines how an existing metaclass may be extended, and enables the use of platform or domain specific terminology or notation in place of, or in addition to, the ones used for the extended metaclass.
A template signature bundles the set of formal template parameters for a templated element.
A use case is the specification of a set of actions performed by a system, which yields an observable result that is, typically, of value for one or more actors or other stakeholders of the system.
A Class Diagram is a diagram that shows classes and interfaces and their relationships. However a class diagram may also show packages and all kind of classifier elements.
A Component Diagram is a diagram that shows components, interfaces and artifacts and their relationships. However a component diagram may also show packages and all kind of classifier elements.
A Deployment Diagram is a diagram that shows nodes and artifacts and their relationships. However a deployment diagram may also show packages and all kind of classifier elements.
A Free Form diagram is a diagram in which you can make free drawings without the restriction of using UML.
An Interaction Overview Diagram is a visual representation of a control flow of interaction..
An Object Diagram is a diagram that shows instance specification, links and slots.
A Use-Case Diagram is a diagram that shows actors and use cases and their relationships. However a Use-Case Diagram may also show packages and all kind of classifier elements.
An abstraction is a relationship that relates two elements or sets of elements that represent the same concept at different levels of abstraction or from different viewpoints.
A dependency is a relationship that signifies that a single or a set of model elements requires other model elements for their specification or implementation.
This means that the complete semantics of the depending elements is either semantically or structurally dependent on the definition of the supplier element(s).
An element import identifies an element in another package, and allows the element to be referenced using its name without a qualifier.
An information flow specifies that one or more information items circulates from its sources to its targets.
Informationflows require some kind of information channel for transmitting information items from the source to the destination. An information channel is represented in various ways depending on the nature of its sources and targets. It may berepresented by connectors, links, associations, or even dependencies.
For example, if the source and destination are partsin some composite structure such as a collaboration, then the information channel is likely to be represented by aconnector between them. Or, if the source and target are objects (which are a kind of instance specification), they may berepresented by a link that joins the two, and so on.
A package import is a relationship that allows the use of unqualified names to refer to package members from other namespaces.
A package merge defines how the contents of one package are extended by the contents of another package.
Realization is a specialized abstraction relationship between two sets of model elements, one representing a specification (the supplier) and the other represents an implementation of the latter (the client). Realization can be used to model stepwise refinement, optimizations, transformations, templates, model synthesis, framework composition, etc.
A substitution is a relationship between two classifiers signifies that the substituting classifier complies with the contract specified by the contract classifier. This implies that instances of the substituting classifier are runtime substitutable where instances of the contract classifier are expected.
A template binding represents a relationship between a templateable element and a template. A template binding specifies the substitutions of actual parameters for the formal parameters of the template.
A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. A usage is a dependency in which the client requires the presence of the supplier.
Model Guidelines generated by ![]() ![]() | Tuesday, 14 February 2017 15:17 |