Generalization is a abstracting process of viewing sets of objects as a single general class by concentrating on the general characteristics of the constituent sets while suppressing or ignoring their differences. In simple terms, Generalization is a process of extracting common characteristics from two or more classes and combining them into a generalized superclass. So, it is a bottom up approach as two or lower level entities are combined to form a higher level entity. The common characteristics means here attributes or methods.
Notation of Generalization:
Generalization is represented by a triangle with a line.
Generalization is an IS_A relationship.
Aggregation is the process of compiling information on an object, thereby abstracting a higher level object. So, an entity Person is derived by aggregating the characteristics name, house_no., city and social security number(SSN).
Another form of aggregation says that it is abstracting a relationship between objects and viewing the relationship as an object. So, in Figure 3, the Enrollment relationship between entities student and Course entity can be viewed as entity REGISTRATION.
In simple terms, Aggregation is a process when relation between two entities is treated as a single entity.