Objectives
The objectives of this assignment are,
oGiving the idea of practical implementation of basic object oriented concepts like abstraction, encapsulation, inheritance, generalization, specialization, sub-typing and association.
Introduction:
In this course we are going to develop software for “School System” that will computerize all the necessary school processes. This software will facilitate the school management in running and managing the school. We will mainly focus on these aspects,
1.Teacher and Student Record Keeping
2.Student Grading
3.School Library Management
The explanations of these three parts are given below,
1.Teacher and Student Record Keeping
Our software will store record of students and teachers in the school.
a.We will store necessary attributes for students such as,
(name, age, parents name, address, class, roll no …..)
Student class may have extra attributes like borrowed book name or id and student grades as well.
b.We will store necessary attributes for teachers such as,
(name, age, NIC No, address, education, experience, teaching subjects…..)
2.Student Grading
We will store grades of each student for all subjects.
3.School Library Management System
This part will keep track of all books present in the library as well as it will keep record of borrowing and returning of books by students.
Task Description:
This Assignment is starting phase of this system in this assignment you will focus on the tasks given below:
1.You have to identify the main entities (objects) for this system.
2.You will have to find out the necessary attributes and functions that need to be associated with each object to implement the functionality mentioned above. (There will be setter and getter functions corresponding to each attribute and other necessary functions for example there may be a function borrow book in student class that may store name or id of the borrowed book by the student similarly it can have functions to store and show grades of the student).
3.You have to find out the relationships between these objects, for example teacher and student common attributes can be combined in a single base class.
4.You will make a final comprehensive object model showing all objects and their relations along with their attributes and functions.
You have to perform all these four steps give above in your solution file.
Note:
a.Use all concepts you have studied so far like abstraction, encapsulation, inheritance, generalization, specialization, sub-typing and association to students.
b.You need not to worry about data types of attributes at this moment these will be considered in next assignments.
Drawing Final Object Model:
a.You can use any tool for drawing like MS Office or Visio.
b.Or you can use open source tool Argo UML (in that case you have to install java run time environment as well links to download and install both are given on the page)
http://argouml.tigris.org/
You can install Java Runtime Environment directly from,
http://www.java.com/en/download/inc/windows_upgrade_ie.jsp
Important things to consider:
1.As happens in real world that everyone visualize a problem in different way so the solutions of all students should be according to their own thinking not taken from some source.
2.As this is preliminary phase of our system so it is recommended that you identify as much objects and their relationships as you can (some of them may be eliminated in coming assignments).
Example:
A snapshot of final object model from the solution of previous semester first assignment is shown below, (you need not to worry about data types at this moment)
Example Object Model for Learning Management System
http://img246.imageshack.us/img246/7311/hira.png
Eugene

