What is Class Diagram ?
In this article, the general concept of class diagram is explained.
There are many steps when developing a software. One of those steps is software design. In software design step, there are many diagrams that used and one of those is class diagram.
Class diagram is a diagram that represents relation between many entities that involved in a software. The class diagram consist of attribute and behavior. The attribute represented as a field and behavior represented as a method. This is the structure of class diagram.
This is the scope notations that can be used in fields or methods inside class diagram.
This is the example of class diagram that represents book entity.
Based on the class diagram above, there are three attributes or fields in a book including id, title and author. These three fields has a private scope. In Book class there is a one method called getData() that has a return type is a book data (Book).
Relation in Class Diagram
There are many relationship types in class diagram including generalization, association, aggregation and composition.
This relationship is used to define an inheritance mechanism in class diagram. In this example, the generalization relationship is defined between Vehicle class and Car class.
This relationship is used to define a single relationship between classes that involved each other. In this example, the association relationship is used by User class and Blog class.
This relationship is used to define a relationship for a class that is a part of the another class. In this example, the aggregation relationship is used by Car class and Machine class.
This relationship is used to define a relationship between classes that involved each other and cannot be separated. In this example, the composition relationship is used by Course class and Teacher class.
Create a Class Diagram
- Define some entities that involved in a software or application. The entity could become concrete entitiy like book, user or abstract entity like course that taken by student.
- Define the attributes and behaviors of an entity. Attributes described as a fields in class whilst behaviors described as a methods in class.
- Define the scope for the fields and methods. In general, the scope for the fields is private and scoe for the methods is public or protected.
- Define the relationships between classes.
- Review the class diagram that already created to make sure the diagram is created correctly. The diagram must be correct in terms of syntax and semantics.
Correct in terms of syntax means that a diagram is defined with the correct notation or symbol. Correct in terms of semantic means that a diagram is understandable.
- Class diagram can be used to define the relationship between entities that involved in a software.
- There are many relationships that can be used in class diagram.
- Generalization can be used to define inheritance relationship between classes.
- Association can be used to define single relationship between classes.
- Aggregation can be used to define relationship for a class that is a part of the another class.
- Composition can be used to define relationship between classes that involved each other and cannot be separated.
Check out this blog post about relationships in class diagram.I hope this article is helpful to understand the concept of class diagram. If you have any thoughts you can write it in the comments section.
A guy who interested in web development and software engineering