Currently, I've created 2 classes: Students and Courses. All we're going to focus on here are the proficiencies. So, each course_type has their own set of proficiencies (saved in course_proficiencies - and each course has a course type). Once a student signs up for a course, I want to be able to track how many proficiencies they have completed (once a student completes a proficiency, a row is added to student_proficiencies).
a schema http://slickrocksolutions.com/test/schema.png
Now.. In order to get proficiencies(and completed proficiencies), should I create a new class called StudentProficiencies with getCourseProficiencies() and getCompletedProficienciesByStudent($studentID), or, should I do something:
$course->getCourseProficiencies();
$student->getCompletedProficiencies($courseId);
And, how would you recommend me adding a proficiency? If I don't create a new class, it could be:
$student->completeProficiency($proficiencyId, $courseId);
Any thoughts?