Design Help Wanted: College Course Selection Tree System
Hi. I'm tinkering with an idea for creating a dynamic selection system for college courses purely for a personal project. My god-daughter will be attending our local community college in the fall (still undecided in her major) and the complicated array of mandated-courses / elective-courses / section-schedules / and graduation requirements is just plain crazy, especially when trying to select courses in combination with her work schedule availability.
I want to build a simple system that would allow her to input a specific degree choice and her work schedule, have the system then identify all the must/should/optional courses she could take, and create a tree of optional schedules for her.
I am not worried about the interface (I feel I can cobble together something there) but I could use some suggestions (design patterns maybe?) for how to build a dynamic tree that is based on the colleges catalog (with all its course<>degree interdependencies).
Example1: If she takes course A on Fridays at noon then all conflicting courses in the schedule will be greyed-out (become non-selectable) as will any courses that conflict with her work schedule.
Example2: When she decides on a major then all required/related courses will be highlighted, factoring in any courses already taken. Optional courses that support that major will be available and courses that are irrelevant will be greyed-out.
This is much like an employee scheduling system except that there is only one "employee" and there are a lot more factors than just hours and skills.
Any suggestions would be welcome, including any suggestions of any programming languages/frameworks/etc more suited to such a project.
Thanks in advance.
Re: Design Help Wanted: College Course Selection Tree System
The complexity of such programs is notoriously underestimated. Most likely your god-daughter will have finished her studies long before you finish the program. I would go for an off the shelf program anytime.
Originally Posted by Oldtimer
Course selection is more straightforward than it first may seem. Required courses never conflict and elective courses don't conflict if they're selected from a recommended pool (alternatively from different time blocks). The college administration can assist in this process. And if there's a conflict with work then work simply must give otherwise priorities are wrong. Employers usually are positive to reshuffling of work hours if the purpose is education.
So rather than struggling with a difficult program of questionable practical value I suggest you find other ways to support your god-daughter. Discussion partner, homework help, etcetera.