Data structure diagram



A data structure diagram (DSD) is the visual representation of a certain kind of data model that contains entities, their relationships, and the constraints that are placed on them. It is an older alternative to the entity–relationship model.

The basic graphic notation elements of DSDs are boxes which represent entities. Arrow symbols represent relationships. Data structure diagrams are most useful for documenting complex data entities.

Overview
A data structure diagram is a diagram type that is used to depict the structure of data elements in the data dictionary. The data structure diagram is a graphical alternative to the composition specifications within such data dictionary entries.

The data structure diagrams is a predecessor of the entity–relationship model (E–R model). In DSDs, attributes are specified inside the entity boxes rather than outside of them, while relationships are drawn as boxes composed of attributes which specify the constraints that bind entities together. DSDs differ from the E–R model in that the E–R model focuses on the relationships between different entities, whereas DSDs focus on the relationships of the elements within an entity.

There are several styles for representing data structure diagrams, with the notable difference in the manner of defining cardinality. The choices are between arrow heads, inverted arrow heads (crow's feet), or numerical representation of the cardinality.

Bachman diagram
A Bachman diagram is a certain type of data structure diagram, and is used to design the data with a network or relational "logical" model, separating the data model from the way the data is stored in the system. The model is named after database pioneer Charles Bachman, and mostly used in computer software design.

In a relational model, a relation is the cohesion of attributes that are fully and not of every key in that relation. The coupling between the relations is based on accordant attributes. For every relation, a rectangle has to be drawn and every coupling is illustrated by a line that connects the relations. On the edge of each line, arrows indicate the cardinality: 1-to-n, 1-to-1 and n-to-n. The latter has to be avoided and must be replaced by 2 (or more) 1-to-n couplings.