I'm new to this forum and i would be really greatful if I could get some help!
Someone I know has his own tuition school and I must develop a website for him and I dont know lot about anythng to be honest. Not a great programmer or not very good with databases. It is more of a college project.
I'm developing it with PHP and xhtml, css etc.. and using MySql as the database.
At the moment I am trying to design an Entity Relationship Diagram and im seriously struggling. I will give a description of the functionality of the site and any help would be appreciated.
The site will have four separate sections. A students section, teachers section, parents section and administrator section.
Students can first sign up to the College to get their MyCollege privileges. When joining up the student will have to enter such information as name, address, date of birth, year at school, contact details etc…
Once the student has an account on the College site he/she can log in to their own unique section of the site where they can view/edit/delete their personal details.
They will then be able to enroll in a number of services, including various courses (English, Maths, Science etc...) which will show in dept information about the actual course including teacher, course outline, times etc…
If a student attempts to enroll in a course which is full, or the time is clashing with another couyrse the student is enrolled in, the system will not allow the student to sign up to the chosen course, instead an email will be sent to the administrator of the site informing him that a new student wishes to sign up for a course. Because this student will already be a member of the system and all of his/her details will be in the database, it will be easy for the admin to contact the student and discuss other options.
If the course is available then the student will have the option to pay upon arrival to their first class or pay online via PayPal.
The student will then be added to the chosen course. Supervised study is another service available to the student. This will work in a similar fashion to the course enrolment, except instead of different subjects there will be different packages or time slots. E.g there is an evening study time slot and also a Saturday study time slot. When the student is enrolled in the supervised study service he/she will be able to view timetables and seating arrangements unique to them.
The teacher sign up will be similar to that of the student except some of the personal details will be different. The teacher can log in to their own unique MyCollege which will have different functionality than the student’s section. If for example the teacher is tutoring in more than one course, he/she will be able to click on the course of choice, for example English, then the teacher will be able to see all of the students enrolled in that course.
They will then be able to click into each of the individual students to see some of their information (non personal). The teacher will be able to grade students, leave comments and make recommendations about students which the administrator can later take on board, do out reports to give feedback to the parents and students themselves.
The teacher will be able to upload lecture material from previous classes to that only the students enrolled in his/her course can view. The teacher will also be able to interactively take attendance on the system which will all be logged and attendance reports can then be generated on this information. A function where if the student is missing a class, an automatic email/SMS is sent out to the parent of the student is also needed.
There will be a parents section where by the parent of a student attending the college can log in and observe how their son/daughter is doing; how their attendance is, how their academic performance is doing and if their keeping up with the material, and also to see if their teacher has any comments.
The administrators section will be able to look at all aspects of the system. From approving students when they sign up, to checking attendance, checking academic performance of the students, making sure lecture material is being uploaded, adding/editing and removing members and teachers, reporting. Basically the admin will control every aspect of the system.
Yea it is a college project, but it has to be for a client/company so I'm developing it for my friend but it is a project. One of our requirements is to have an ERD. I think that student,teacher,parent,course,study,admin are entities but after that im getting stuck!
Study is a service.. at the college students can avail of a supervised study service. So for example there is an evening supervised study session and also a saturday supervised study session. admin is administrator - the person who will control all aspects of the site.
I dont have a problem with identifying the attributes. I just want to make sure I get all of the entities correct (including associative entities) and I dont leave out any important ones.
Also i want to make sure I get the relationships right.