Example of Other Notation: Representing Specialization and Generalization in UML Class Diagrams
The basic notation for specialization/generalization (see Figure 8.10) is to connect the subclasses by vertical lines to a horizontal line,which has a triangle connecting the horizontal line through another vertical line to the superclass. A blank triangle indicates a specialization/generalization with the disjoint constraint, and a filled triangle indicates an overlapping constraint. The root superclass is called the base class, and the subclasses (leaf nodes) are called leaf classes.
The above discussion and example in Figure 8.10, and the presentation in Section 7.8 gave a brief overview of UML class diagrams and terminology. We focused on the concepts that are relevant to ER and EER database modeling, rather than those concepts that are more relevant to software engineering. In UML, there are many details that we have not discussed because they are outside the scope of this book and are mainly relevant to software engineering. For example, classes can be of various types:
? Abstract classes define attributes and operations but do not have objects corresponding
to those classes. These are mainly used to specify a set of attributes
and operations that can be inherited.
? Concrete classes can have objects (entities) instantiated to belong to the
class.
? Template classes specify a template that can be further used to define other classes.
Frequently Asked Questions
Recommended Posts:
- Characteristics of the Database Approach
- View of Data
- Subclasses, Superclasses, and Inheritance
- what is database management system
- Database-System Applications
- Specialization and Generalization
- Using High-Level Conceptual Data Models for Database Design
- Purpose of Database Systems
- View of Data
- Introduction to Transaction Processing
- Database Security
- Database Languages
- Database Design
- Relational Databases
- Relational Databases