The class diagram is the main building block in object oriented modeling. They are being used both for general conceptual modeling of the systematics of the application, and for detailed modeling translating the models into programming code. The classes in a class diagram represent both the main objects and or interactions in the application and the objects to be programmed.
Identify classes from the use cases and sequence diagrams. Following are the 3 classifications of classes.
1. User Service Classes (Form level objects)
2. Business Service Classes (Control level objects)
3. Data Service Classes (Entity level objects)
Below are some techniques for identifying classes. The first level is called as Analysis level classes.
1. 3 classes for each use case,
2. 1 class each for external actors,
3. 1 class each for alternate & exception flows.
Now after these, we have to exclude classes on following rules...
1. Exclude classes which don't have functionality
2. Exclude classes which do repetitive job
Now after following above rules, we will be left with following classes.
Packages which store classes
Class diagram
Likewise classes need to be defined for all the classes identified (depicted in the class package).
Here in this series on OOAD and UML, I have tried to give some simple tips and tricks for identifying use cases, preparing sequence diagrams and identifying classes. Hope you have liked the series. If you have any doubts on the process, please feel free to post a comment...
This series includes 3 parts...
Part 1. Identifying Use Cases – Use Case Diagrams
Part 2. Realizing Use Cases – Sequence Diagrams
Part 3. Identifying Classes – Class Diagrams
- Vighnesh Bendre
Identify classes from the use cases and sequence diagrams. Following are the 3 classifications of classes.
1. User Service Classes (Form level objects)
2. Business Service Classes (Control level objects)
3. Data Service Classes (Entity level objects)
Below are some techniques for identifying classes. The first level is called as Analysis level classes.
1. 3 classes for each use case,
2. 1 class each for external actors,
3. 1 class each for alternate & exception flows.
Now after these, we have to exclude classes on following rules...
1. Exclude classes which don't have functionality
2. Exclude classes which do repetitive job
Now after following above rules, we will be left with following classes.
Actors | - |
Professor | Registrar |
Student | - |
User Service Classes | - |
Authentication | Cancel Registration |
Maintain Course Details | Maintain Professor Details |
Maintain Student Details | Modify Schedule |
Notification | Record Grades |
Registration | Registration for Secondary Courses |
Sign up to Teach | View Report Card |
View Student Details | - |
Business Service Classes | - |
Cancel Registration | Exceptions |
Maintain Course Details | Maintain Professor Details |
Maintain Student Details | Modify Schedule |
Notification | Record Grades |
Registration | Authentication |
Sign up to Teach | - |
Data Service Classes | - |
Authentication | Maintain Course Details |
Maintain Professor Details | Maintain Student Details |
Record Grades | Registration |
Sign up to Teach | - |
Class diagram
Likewise classes need to be defined for all the classes identified (depicted in the class package).
Here in this series on OOAD and UML, I have tried to give some simple tips and tricks for identifying use cases, preparing sequence diagrams and identifying classes. Hope you have liked the series. If you have any doubts on the process, please feel free to post a comment...
This series includes 3 parts...
Part 1. Identifying Use Cases – Use Case Diagrams
Part 2. Realizing Use Cases – Sequence Diagrams
Part 3. Identifying Classes – Class Diagrams
- Vighnesh Bendre
Comments