Class Diagram

From PlugIT Wiki

Jump to: navigation, search


Class Diagram

Management Summary

The class diagram provides the possibility to present the structure of the system which should be developed. It can answer the question, how data and the behavior of my system structured.

Dimensions of the language:

Perspective (Role of End user):








Relevance for Use Case:


Maturity Level:



The meaning of the model's concept and their relations is specified.


Modelling concepts and functionalities, level of formalism, graphical notation
The basic concepts of a class diagram are:

  • a class

A class describes a set of objects that share the same specifications of features, constraints, and semantics. The notation of a class is a rectangle containing three compartments stacked vertically. The top compartment shows the class's name, the middle compartment lists the class's attributes and the bottom compartment list the class's operations.

  • an interface

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. It can be represented by a rectangle containing two compartments stacked vertically. The top compartment shows the interface name and the middle compartment shows a list of interface's operations.

  • A package

A package is used to group elements, and provides a namespace for the grouped elements. It can be represented by a large rectangle with a smaller rectangle (or tab) above its upper left corner.

  • Associations
  • Between these concepts are various relationships possible, often marked with different
  • The most used and important associations are
    • A generalization describes a taxonomic relationship between a more general classifier and a more specific classifier. The more specific classifier inherits the features of the more general classifier. This generalization is represented using a line with a hollow triangle as an arrowhead. The arrowhead points to the classifier representing the general classifier.
    • An association describes a semantic relationship that can occur between classifiers. Binary associations are usually represented as a line.
    • An aggregation represents a part-whole relationship. It is represented by a hollow diamond shape on the containing class.
    • A composition is a stronger variant of the aggregation. If a container is destroyed, usually every instance that it contains is destroyed as well. Usually, a filled diamond shape is used to present the relationship.



Overview modelling languages