Class Diagram



Class diagram is a structural diagram. Class diagram represents the static view of an application. Besides visualizing, describing, and documenting a system, class diagram is also used for designing executable code of the software applications.

Class diagram describes classes and their attributes and operations. It also describes the constraints imposed on the system. Class diagram is one of the most popular UML diagram type. It is widely used in the modeling of object oriented systems.

A typical class diagram contains classes, interfaces, associations, generalization, realization, dependency and constraints.

The purpose of the class diagram is as follow:
  • Model the static view of a system.
  • Model the high level elements that form the system
  • Act as the base for object and component diagrams.
  • Code visualization and generating

Abstraction

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.

Association

An association describes a set of tuples whose values refer to typed instances. An instance of an association is called a link.A link is a tuple with one value for each end of the association, where each value is an instance of the type of the end.

AssociationClass

A model element that has both association and class properties. An AssociationClass can be seen as an association that also has class properties, or as a class that also has association properties. It not only connects a set of classifiers but also defines a set of features that belong to the relationship itself and not to any of the classifiers.

Class

A class describes a set of objects that share the same specifications of features, constraints, and semantics.

Comment

A comment is a textual annotation that can be attached to a set of elements.

Constraint

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.

Generalization

A generalization is a taxonomic relationship between a more general classifier and a more specific classifier. Each instance of the specific classifier is also an indirect instance of the general classifier. Thus, the specific classifier inherits the features of the more general classifier.

GeneralizationSet

A GeneralizationSet is a PackageableElement (from Kernel) whose instances define collections of subsets of Generalization relationships.

Package

A package is used to group elements, and provides a namespace for the grouped elements.

Realization

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.

Usage

A usage is a relationship in which one element requires another element (or set of elements) for its full implementation or operation. In the metamodel, a Usage is a Dependency in which the client requires the presence of the supplier.

No comments:

Post a Comment