Hi hifce
What ideas have you had so far? Open questions are good but good to start with something :-)
Summer Sale! All accounts are 50% off this week.
Hello everyone,
I would like to make a small app on student schedules. How would you recommend shaping a weekly schedule for students. What objects, models, algorithm, relationships?
I know I'm describing this super vaguely, but want to ask as an open-ended question.
I'm a newbie and I really appreciate all the brainstorming!
Thank you so much!
Hi hifce
What ideas have you had so far? Open questions are good but good to start with something :-)
@Screenbeetle Hey, thank you for getting the conversation started. Here's what I think:
I will need a model for each of the below:
Student
This will reflect a student's info, class, schedule reference.
Schedule
This will reflect a map for timeblocks.
Timeblock
This will define different time blocks for different classes, student groups, different days, even different individual students.
So student will have one schedule. (schedule_id) and basic info about the student
Will have time block pool per student or object. For example student A (student_id) will have a schedule which will glue all time blocks for that specific student. (an array of timeblock_id)
This will define the day of the week, the time interval and serve for lego pieces for the schedule.
Still thinking for the rest of the relationships...
What do you think?
Did I mention that I'm a newbie?
Morning.
You have outlined a good start. You are probably missing a model/table to handle classes. Also - what defines a student group?
What you have now is called conceptual model.
You should get pen and paper and write down some requirements you really want to have and some that would be nice to have. And iterate your conceptual model on it again. Nothing fancy just a list.
After you are satisfied with conceptual model move on and create yourself logical (data) model (most important one) list all attributes, PKs, FKs, and IDs and data types and normalise it. Table names are not so important at this stage and just hit the nail so its pretty clear what that entity (or entity set) means.
After that make ER diagram (of logical model) and share it here.
Note: you can use free tool as mysql workbench to design database model, workbench does some normalisation for you (for example M:N relation is always through pivot table).
@Screenbeetle and @kyslik Thank you so much for your response to my question.
I've noted down everything you pointed out.
Yes, I'm missing some of the below models: Classroom Teacher Group (Student's College or Class)
I call it the generic "group" name because there will be pull-outs from classrooms to small groups in the application, hopefully.
Yesterday, I've started reading the whole Laravel documentation from scratch and hopefully when @JeffreyWay starts building a series on shaping DB I will start watching them as well. In the meantime, I'll work on your suggestions and revisit this topic hopefully next Friday, or Saturday.
Thank you so much again!
All additional suggestions are very much appreciated. Please keep this post active for this newbie!
Thank y'all...
This would be a good series to watch: https://laracasts.com/series/lets-build-a-forum-with-laravel
Vertabelo is a pretty nice tool for laying out database schemas, and if you are a student you can get a free account. https://my.vertabelo.com/sign-up/create-academic
Take a look at iStudiez Pro and My Class Schedule (second one is free) to get general idea of what features should be included. I've started using schedule app after I had to ask for research paper help online as the assignment slipped out of my mind completely.
Please or to participate in this conversation.