Computing Magazine

Difference Between Generalization and Specialization

Posted on the 30 December 2023 by Badbones08 @fazii08

Generalization and Specialization are two important concepts in an Entity Relationship Diagram. There are some differences between generalization and specialization process.

ER model means an Entity Relationship model. This model defines the real-world data elements entity and their relationship for a specified database system. At external or view level, this ER model is a good option for designing database.

Conventional ER Model for database modelling is not suitable for complex data. Some a upgrades or improvements required to the current ER Model to make it ready to deal with the mind-boggling applications better.

Therefore as a feature of the Enhanced ER Model alongside different upgrades with two new ideas

  1. Generalization
  2. Specialization

The ER Model has the capacity to express database entities in a conceptual hierarchical manner. As the hierarchical system goes up, it generalizes the entities, and as we dive deep in the in the system, it gives us the more details of every entity included in the hierarchy.

In generalization move from lower level to higher level, where entities are combined together to represent a generalized view.

For example the student named ram can b generalized as student with other students which can be further generalize as person.

The reverse of generalization is specialization. The person can be student and a particular student can be ram.

What is Generalization in DBMS ?

Generalization is a bottom-up approach. If entities have some common attributes, then generalization combine these two or more entities of lower level to form a higher-level entity.

Generalization is same concept like subclass and super class system. The only difference is that it follows the bottom-up approach.

generalization in database management system,difference between generalization and specialization
Generalization

In the above example,Engineer, Doctor and Professor have some same attributes like name, address, gender therefore they all three are generalize as Person.

What is Specialization in DBMS ?

Specialization is just the opposite of generalization. In specialization, a group of entities or an entity can be divide into sub-groups. It is a top-down approach, in which one higher level entity can be divide into two or more lower level entity.

In Specialization, the concept is to find the subsets of entities that have few distinguish attributes.

specialization process in database management system, difference between generalization and specialization
Specialization in DBMS

For example – Consider an entity Account which can be further classified as sub-entities Saving and Current Account because these sub entities have some distinguish attributes.


Back to Featured Articles on Logo Paperblog