Students Module
Managing student classes and grades
- Student Module Overview
- Students Table
- Student Terms Table
- Student Plan Table
- Enrollments Table
- Business Rules for Student Terms and Enrollments
- Business Rules for Managing Enrollments
- Assessment Results Table
- Student Logins Table
- Student Term Planner UI
- Student Programs UI
- Student Enrollment UI
- Transcript UI
Student Module Overview
Relevant Topics
A grade span covers multiple years of school and can be defined by the administrator. A plan can not exceed a grade span. The purpose of defining grade spans is to help set academic goals and gates.
A grade level is the student's year in school, first grade, second grade, third grade and so on. The term 'grade level is used to differentiate between the grade or mark a student received in a class and the year the student is in.
Schools refer to legal definitions in a jurisdiction of various grade levels. In the US this is Elementary School, grades K through 5, Middle School grades 6 through 8, and high school, grades 9 through 12.
A term is the division of the academic year into grading periods. Terms may be semesters or quarters. The term record is a record that indicates the start and end date of each term. Multiple terms are related to academic years. Terms are also related to a Term Label record.
Enrollment is the process of signing up for a class. An enrollment record in the PEMS is the class as student takes in a specific term, and stores the student's final grade. The set of completed enrollments is the information displayed on the student's transcript.
The plans are sometimes referred to as "Programs of Study." Plans are defined by the administrator as a series of classes taken across all subjects to meet an educational objective or graduation requirements over a grade span. Any number of plans may be developed, and a student may be assigned only one plan at a time. The plan contains the information needed to auto-enroll student in their classes (create enrollment records) in each term covered by the plan.
On the partner's enrollment site, prospective students complete an enrollment form. In that enrollment form, the submitter selects a location. This location in the enrollment is considered a homeroom in PEMS. When a club or organization adds new location, a new homeroom record must be added to the PEMS homeroom table.
Student Module Overview
The primary function of the SIS is to track student information, so the student table is the heart of the solution. One record is created for each student during the registration process.
Data Relationships
Students are assigned to one homeroom. This homeroom is used to place the student in the correct group in Moodle so that only approved people can see their Moodle progress.
Each student is assigned a program of study, which outlines the classes and the curriculum each student should take in which term, using enrollment template records. As a student completes a plan, they will be assigned a new plan, therefore a student can have multiple related plan records.
Each student is in a grade level, they may enter a number 0 through 12. The grade level is a field in the student record, which allows PEMS to look up and auto-enter the student's school and and grade span.
For every term the student attends the school, PEMS creates a student term record. For example, the school term may be names Fall 2023, but the student term would be Fall 2023 SVG, including the student initials to indicate the record pertains only to that one student.
For every term the student attends the school, the student takes classes or rather, Moodle courses. An enrollment record is created for each class the student takes. The enrollment record specifies the class name that appears on the transcript, the specific curriculum which is the Moodle Course, and in which student term the student is taking that class, and the grade level of the student.
When student take assessments, their results are stored in the assessment results table.
Students require log-ins to the platform. One login record is created to store all logins. The student login records are used to create the Moodle login and Key Cloak SSO user.
Students Table
A student record is made from the enrollment form submitted from the Word Press site, after the administrator approved the enrollment. Fields in the enrollment form are mapped to the student record.
Fields
Name - first, middle and last name from the enrollment form.
Start date - the date the student starts at the school, originally from the enrollment form, then updated as the student completed registration at the school.
Graduation Date - the last day of school the of the last grade level the school offers, calculated by PEMS and updated as the student progresses.
Birth Date - from the enrollment form.
Gender - from the enrollment form.
Dis enrollment date - the last day of school for the student who has transferred out of the school, blank if still enrolled.
Remaining years - PEMS calculates the number of years left to complete all years the school offers.
Enrollment Year Terms - students transfer in anytime during the school year, this is the number of terms the student may complete in their first year of enrollment. For example a school that offers two required terms, fall and spring. A student transfers to the school after the spring term starts. The student completes only one term in the Enrollment year.
School Start Term - a link to the school term in which the student begins at the school.
Current grade level - the grade level of the student which increased every year, unless they are not promoted (failed the year).
Promotion - default to promote. Select repeat if the student's grade level should not be promoted at the end of the academic year.
Student Code - The code is automatically assigned by PEMS and can not be changed by the user. The code is the student ID.
Status - planned for students who have registered but not yet started classes; active for currently enrolled and taking classes, disenrolled for students who have left the school; graduated if graduated, expelled if the student left involuntarily, suspended if the student has their access to the platform suspended with intention to re-instate.
GPA - overall GPA for the grade span the student is currently in.
Weighted GPA - overall weighted GPA for the grade span the student is currently in.
Alternate GPA - overall GPA for the grade span the student is currently in.
Alternate Weighted GPA - overall weighted GPA for the grade span the student is currently in.
Notes - long text field for discretionary use.
Student First Term - link to the student's first student term record.
Current Program - the active plan the student is currently following.
11 FEB - there is no lookup of the current program field, hence the student is not linked to the program plan, which is necessary for the transcript view
Workflow
Based on Start Date and Start Grade Level, the student's first term, graduation date, remaining year, enrollment year terms, and total remaining terms are automatically calculated. These fields are updated when there are any changes to the input fields.
The student's current grade level is increased every year on the date specified by the school administration. Unless the user selects the Promotion field to be "repeat" all students are automatically promoted to the next grade level.
The grade span field represents a planning horizon. In general, students are assigned a specific plan that specifies classes to be taken for the entire grade span. The grade span is determined and updated based on the student's current grade level.
All new student records have status = planned.
When the student is updated to active, the start date is set to the day the status field is changed, and student accounts are made throughout the system so that the student is granted full access to the system.
The current program is the active plan the student is working on. Plans may be assigned, and deactivated, but PEMS still keeps track of any plan the student worked whether or not that plan was completed. Once the student has a plan assigned, PEMS auto-enrolls the student in all the classes specified under that plan.
Student Record GPA Logic
There are four GPA fields to calculate in the student record. Calculate them all the same, recalculate when ever there is a change in the fields. Student GPAs are calculated at the close of a term. The school term status will change to past triggering the GPAs from the student terms to be included here.
If a student term status changes to past, recalculate all these fields.
For each student term, multiply the Grade Points field times the Student Term | Units Earned field
Sum all the values above
Sum all the units earned field from associated student terms.
Divide: (Grade Points x Units Earned ) / Units Earned
Enter into the respective GPA field in the student term record.
Action Items JAN 2024
| 1-MVP | TRANSCRIPT | Add the fields alternate GPA and alternate Weighted gpa - COMPLETED. Link student record to program plan table with look-up field - REMAINING. Implement GPA calculation logic - REMAINING
2-MVP | HOMEROOM| Remove link to Group record - enrollments specify group, not student records
2-MVP | HOMEROOM | Add link to Homeroom record
3-MVP | INTAKE | Complete auto-calculation of grade span, school, student code, graduation date, remaining years, enrollment year terms, total remaining terms, and link to school start term. Per 2. Student Intake Functions
3-MVP | INTAKE | deleted
Student Terms Table
Relevant Topics
A term is the division of the academic year into grading periods. Terms may be semesters or quarters. The term record is a record that indicates the start and end date of each term. Multiple terms are related to academic years. Terms are also related to a Term Label record.
Term Labels are the names of the terms a school is running, like Spring, Fall, etc. The number of Term Label records indicates the number of terms the school operates. Term Labels indicate if that term is required or optional, like a summer term.
Student Terms. There is one term record for every term the school operates. A student term record contains student-specific information about how the student performed academically in the term, such as the student's grade point average for that term. All the classes a student takes (enrollment records) are linked to the student term. A student has a term record created for each term they are in attendance.
Enrollment is the process of signing up for a class. An enrollment record in the PEMS is the class as student takes in a specific term, and stores the student's final grade. The set of completed enrollments is the information displayed on the student's transcript.
Student Terms Table Overview
Student terms are records created for each student for each term they are enrolled in the school. Where there is one school term record with a specific start and end date, there are multiple student term records with the same start and end date that are related to each individual student. Student Term records are child records to term, and also the student. They describe the many to many relationship between students and terms.
The student term records provide information on the student's academic performance in each school term, and stores the GPA achieved for that term.
Data Relationships
Fields
At Grade - the grade the student is in for that specific term. Student terms can be in the past or made for the future, so the At Grade is different that the student's current grade level.
Student Sequence - the order of the terms the student takes the term.
Term GPA - the calculated GPA for all the courses taken in that term. The term GPA appears on the student's transcript.
Term Weighted GPA - the calculated weighted GPA for all the courses taken in that term. The term GPA appears on the student's transcript.
JAN 2024 the following fields are not created:
Alternate Term GPA - the calculated alternate GPA for all the courses taken in that term. The alternate term GPA appears on the student's transcript.
Alternate Term Weighted GPA - the calculated alternate weighted GPA for all the courses taken in that term. The alternate term GPA appears on the student's transcript.
Student Program - the program/plan the student was assigned during that term.
Units attempted - the number of units of the courses enrolled in during the term.
Units earned - total units the student earned during the term, summed from the courses the student did not drop or fail.
Name - concatenate of Student ID and school term name
Other School - if the term represents coursed taken at a different school, and these courses are recorded in the SIS for the purpose of the Transcript, then the user enters the Other School
JAN 2024 the following field is not created:
Student Term Status - update the status of the student term based on the school term status.
Student Terms Automation
PEMS automatically creates student term records for the student up to the end of the student grade_span. The student's grade span is determined by the student' s grade level.
When the student is completes registration, the student term records are created for the student for the entire grade span.
However, if a student enters in the middle of a grade span, student term records are not automatically created for the past terms of the grade span.
All enrollments are child records to the student term record, and so no enrollments can be made unless there are first student term records created.
Student Term GPA Logic
See 6. Transcript GPA Calculation
| There are four GPA fields to calculate in the student term record. Calculate them all the same, recalculate when ever there is a change in the fields. |
| If enrollment status is complete and if there is a change to any enrollment grade point field, then: |
| For each enrollment, multiply the Grade Points field times the Units Earned field |
| Sum all the values above |
| Sum all the units earned field from associated enrollments. |
| Divide: (Grade Points x Units Earned ) / Units Earned |
| Enter into the respective GPA field in the student term record. |
Action Items JAN 2024
1-MVP | TRANSCRIPT | Add Student term Status, Alternate GPA and Alternate Weighted GPA fields to student term table.
1-MVP | TRANSCRIPT | Calculate all GPAs for the Transcript using the GPA Logic. Update student terms status based on school term status.
Student Plan Table
Note: student plan and student program are used to mean the exact same table
The student plan table keeps track of what plans have been assigned to the student over time. Student Plan records specify the program of study and keep track of the start date, end date, and status of the plan.
The “Student Program” table keeps the history of what program(plan) the student was completing over the years of study. Every time the current program field in the student record is changed, a record is created in the “student program” table. The “student program” record stores the program(plan) name as well as the planned start and end dates of the program. The student program table acts like a log file of changes made to the ”current program” field in the student record.
The student programs table also stores the start and end dates of the plan. For example, if the student was assigned the plan half-way through the term, the exact date the student was assigned the plan is recorded.
Data Relationships
Fields
Program Status
Active Plans - There can only be one active student plan at any given time.
Suspended Plans - Students may change plans before they are completed, in this case the plan is suspended and a new student plan record created/activated.
Completed Plans - when a student completes all the classed under that plan, the plan is marked completed.
Future - Student plan records may be made for future grade spans. If the student has a future plan already created, then the student will be auto-enrolled in the next set of classes without any need for user involvement.
Units Required - The student plan is associated to the plan record, the plan record requires a total number of units to complete the plan.
Units Completed - The units from the related completed enrollment records are summed to determine how many units have been completed under this plan.
Adherence - As the student is completing the enrollment records on schedule, then the student is in compliance with the plan. If the student is not completing the enrollment records, then the plan adherence is "below plan." If the student is completing the plan, and adding extra classes, or is completing the plan early, the Adherence is above "plan."
Plan GPA - the running GPA of all the enrollments linked to the student plan, updated as the students earn grades.
Program start date - the date the plan was started, calculated from the date of the first enrollment record was activated.
Program end date - the date the program was completed, calculated from the last enrollment record or when the status was changed by the administrator.
Program start term - a link to the school term in which the student began the plan.
Action Items JAN 2024
1-MVP | TRANSCRIPT| In the Student Plan record, deprecate Units Attempted
6-NV | ASSESSMENT | Calculate Units completed under the student plan when enrollments are complete, update units completed in the student plan record.
6-NV |ASSESSMENT |Calculate adherence by comparing the units completed in the enrollments to the student plan's template records to find if the student is staying on the plan.
6-NV | ASSESSMENT | Calculate the plan GPA from the completed student term data. NOTE, this GPA does not appear of the student transcript and is for decision making on which plan to assign in the future. There is no need to track 'other' GPAs in the student plan record in the MVP.
6-NV | ASSESSMENT | Calculate the student plan start and end dates from the status of the enrollment records.
Enrollments Table
Relevant Topics
Classes. The name of the Class appears on the student's transcript. Classes are sometimes called courses. However, PEMS does not use the term 'course' in any of its modules. In general, the word 'course' can refer to a specific class, like Algebra 1, or it may also refer to the set of classes that lead to a degree or certificate. For example, "I followed a course at the University in wine making" could mean a series of classes. The world "class" also has a secondary meaning. A student can be in the "second grade class" which would mean all students in a particular classroom. PEMS uses the word class to mean the subject of study for which units are earned, commonly called a course, such as "Algebra I". A class that is a subject of study for units can have different curriculum that fulfill it.
Curriculum generally refers to the books and exercises used by the teacher to further the student's knowledge. In Moodle, the curriculum is a Moodle Course. Any class may be taught with multiple curriculum, or different text books, and so there are multiple Moodle courses that may be used to teach a Class.
The term Course is not used in any technical sense in PEMS. Courses are created on the LMS (Moodle) platform for students to take online, but PEMS refers to courses as curriculum. For example, two different English teachers could be teaching English 9, but they assign different books to read. The class is the same as far as the school is concerned, the the material and activities the students turn in are slightly different, the classes use a different curriculum. If the teachers were making their own online courses, the activities would not be the same. Classes may use different Moodle courses to fulfill learning requirements, as they may use different curriculum.
Enrollment is the process of signing up for a class. An enrollment record in the PEMS is the class as student takes in a specific term, and stores the student's final grade. The set of completed enrollments is the information displayed on the student's transcript.
Student Terms. There is one term record for every term the school operates. A student term record contains student-specific information about how the student performed academically in the term, such as the student's grade point average for that term. All the classes a student takes (enrollment records) are linked to the student term. A student has a term record created for each term they are in attendance.
Moodle Course ID is a unique value assigned to each course developed in Moodle. Any actions triggered between the SIS and Moodle require matching on the Moodle Course ID. In PEMS the Moodle Course ID is stored in the Curriculum table "Code" field.
In Moodle, Groups are used to break up groups of students enrolled in a course. Moodle can enroll hundreds of students in one course, but the teacher would be overwhelmed to grade all the work. Therefore Moodle provides the group option. When teachers and their students are enrolled in the same group, the teacher only sees their own students. In PEMS, Moodle groups are used to block teachers from seeing students that belong to a different location. However, Moodel groups are not defined at the system level in Moodle, they must be defined in each and every course. In Summary: 1) Moodle uses Groups to hide students enrolled in the same course from other teachers. 2) Both the teacher and the student have to be in the same group. 3) Groups MUST be defined for each and every course, Groups can not be defined at the system level.
Enrollments Table Overview
The enrollment record is key to tracking the courses a student takes, when they take them, and what grade the received in the course. The enrollment record is created and managed in the SIS, but controls all the information needed to automate the enrollment of the student in the correct Moodle course. The enrollment record also contains the correct information to be displayed on the student transcripts.
Data Relationships
Enrollment records are created by mapping information from the template records associated with the assigned plan. They are not linked to the template records. Enrollment records are also linked directly to the student plan record. The student plan records functions as a historical log of what plan the student took and when the enrollment was taken.
Note: Jan 2024 the enrollment is incorrectly linked to the Program plan record, not the student plan record.
Fields
Status - the status of the student in the class. Active is enrolled in Moodle Course and working towards completion, completed is the end of the term after the grade has been entered from Moodle, planned is an enrollment record that was made for a future enrollment, suspended if the student was suspended from school, dropped if the student dropped the enrollment after starting the class. Plan change drop if the reason for the drop was an assignment of a new plan.
- "Not selected" option is no longer required and should be deprecated.
Letter Grade - The letter grade is selected from a pick list created and updated from the Marks System table - 'Letter Mark' field' in the schools module. There is no need to link to the Marks System table, this field just uses a list from the defined records.
Numeric Grade - If letter grades are not used, then numeric grades can be typed in. Numeric grades do not need to use the mark system table. Change the name of this field to Grade Points.
Weighted Points - entered from the Marks System table according to Marking Rules described below.
Alternate Grade Points - entered from the Marks System table according to Marking Rules described below.
Alternate Weighted Grade Points - entered from the Marks System table according to Marking Rules described below.
Grade Import - the raw grade imported from Moodle.
At grade - the grade level the student is at when taking the course.
Units Attempted - the number of units this course will award. The class record has the number of attempted units for this enrollment.
Units Earned - the number of units earned. A passing grade is required for all units.
Actual Start Date - sometimes students start coursed mid-term. The actual start date is the day the student was granted access in Moodle to the course.
Grading Workflow Summary
To mark the enrollment complete, the user fetches the grade from the associated Moodle course, then sets the status to complete in the enrollment status field. The student's dis-enrollment from the Moodle course is then triggered.
All completed enrollment records appear on the student's transcript.
Create Enrollment Records Workflow Summary
When a student is assigned a plan, the enrollment records are created from information in the template records associated to the assigned plan. By creating all future as well as current term enrollments, the student can be auto-enrolled in Moodle courses without further user action. The user selects the student’s plan, and then the enrollment records are created.
This approach allows the user to easily see what classes the student has left to take in order to complete the program by looking at all incomplete enrollments. Student progress towards graduation is very difficult to assess with most traditional Student Information Systems.
For the current term, the students are auto-enrolled in Moodle. Students are not enrolled in Moodle courses for any future terms.
Enrollment records can only be created if there are student term records and a student plan assigned. To create the enrollments, a plan has to be selected for the student.
Enrollment Grade Points Marking Rules
| All the grade points fields are entered based on the fields corresponding to the letter grade field in the Marking System table. |
| The transcript tag on the curriculum related to the enrollment record indicates whether the GPA can be increased (weighted). If it can be increased, then the weighted GPAs are from the Marks System Table are entered into the weighted points fields. |
| If the curriculum does not specify to weight the grade points, then the unweighted grade points from the Marking System table are entered into the enrollment weighted fields. |
| The class record controls whether the GPA should be excluded from the standard calculation or the alternate calculation. |
| If the class is to be excluded, then the grade points are zeroed. There are two types of exclusions, one for the standard and one for the alternate GPA. Both exclusions must be selected to exclude from both types of calculations. |
| To complete the logic - a student term level exclusion will need to be applied, where the term is excluded base on at_grade. This has not been specified yet, but will be added after above logic is implemented and vetted. |
Action Items Jan 2024
1-MVP | TRANSCRIPT | Create the fields: Weighted Grade Points, Alternate Grade Points, and Alternate Weighted Grade Points in the enrollment record. Change the name of numerical grade field to Grade Point. This will simplify creating the transcript. Change link in enrollment record to student plan, not programs of study.
1-MVP | TRANSCRIPT | Build Marks Rules to input all GPAs based on letter grade.
4-MVP | ADVANCEMENT | In the enrollment table - student plan field is linked to "Program of Study" This field should link to the student plan table. This issue does not affect transcript.
4-MVP | ADVANCEMENT | Status field - remove the option " not selected " (low priority clean up)
2-MVP | HOMEROOM | Deprecate link to Section - this has been replaced with SIS group (clean up)
4-MVP | ADVANCEMENT | Deprecate Curriculum Option, Class Option, Preference and Set (clean up)
2-MVP | HOMEROOM | Add association to SIS Group table, one group per enrollment, groups can be linked to multiple enrollments
Business Rules for Student Terms and Enrollments
Launching the Enrollment Process
A new student record is made in the Student Table when the enrollment form has been approved. The status of all new student records in the SIS student table is "planned." The start_date field is the student's first day of class. The start_date may change after a new student record has been created as students sometimes start earlier or later than originally planned. However, once the student status has been changed to "active", the start date may no longer change. Also, if the start date has passed, it will be assumed that it will not longer change.
Creating a Set of Student Term Records
A start date and the student's start grade level is all that is required to make the student term records. The grade level determines the student's grade span. Student term records are created for the student through the end of the grade_span. Student term records are created with new student record is created and these two essential fields are not empty.
If a new student record is made that does not have a start date or does not have a current grade level, the student records will not be made automatically. For this reason, the UI provides the user a manual option to create student term records.
Starting Mid-Grade Span
Many students will start school in the middle of a term but also in the middle of a grade span. In this case, student term records are only made for current and future terms, they are not made for past terms in the grade span that a student was not in attendance.
Selecting a Plan
When the student status is either "planned" or "active", the student's program (plan) can be selected. Making the decision on what plan to assign to the student in is an important process, it involves discussions with the student and family as well as interpretation of assessment tests that may be taken prior to first day of school, or in the first few days of active school participation.
Enrollment Records are created for the duration of the plan, not just fo the next term. So if a student is assigned plan that spans two academic years, the enrollment records are planned out for the next two years, and there are no decisions to be made on classes over this time period.
Based on the enrollment records, the PEMS integration with Moodle will auto-enroll the student in the Moodle courses. The student will not be enrolled in Moodle courses until the beginning of the term. Enrollment records in the PEMS are created for the full duration of the plan, however, Moodle course enrollment is only term by term.
Mid Plan Enrollment
Each plan specifies a starting grade level and a starting term. So a student who joins the school late in the school year may be assigned a plan that has started in the previous term or even the previous year. These students will not complete the full plan as they will start the plan mid-way through. We do not want to create enrollment records for terms the student never attended at the school.
PEMS creates enrollment records according to the template, but skips enrollments that required for past terms. Enrollment records are created only for the current term and future terms of the plan.
Triggering the Plan
When the student record is created, all the student terms are created until the end of the grade span. Then, when the program plan is selected, the enrollment records are automatically created.
Changing The Plan Prior to Start Date
Changing the plan prior to start date is straight forward, all the previous plan's enrollment records are deleted and the new plan's enrollment records are created.
Changing plans very shortly after courses started
A student may start the plan and decide the courses are not at all appropriate. A new plan must be selected. In a user-determined time frame, like less than two weeks for example. The plan may be changed, causing all related enrollment records to be deleted, and all corresponding Moodle Course enrollments to be deleted, and starting over with a new plan, new enrollment records and new Moodle course enrollments. None of the student's previous work will be saved or credit given. The user interface should require a reason for a plan being changed so soon after the student started the plan.
note: whenever there is a plan change, the plan change begin and end dates (how long the student was enrolled in that plan) is stored so that plan history may be viewed.
Changing plans after courses started and some completed
Once the courses have been started, changing plans is more complicated since the the student will have completed some of the plan's courses. but not others. So enrollment records that have not yet started will be deleted, but enrollment records the student has already completed will not be deleted.
Business Rules for Managing Enrollments
Dis-enrollment
When a student is to be dis-enrolled, the administrator will trigger the action by changing the student status field in the student record.
The date of dis-enrollment will be entered in the student record.
All enrollment records will be marked complete, and the graded fetched from Moodle. Students will be dropped from any Moodle courses.
Student access will be suspended in Key cloak.
The current transcript will be created and emailed to the email of the guardian on record.
End of Term Grading
The admin triggers fetching the grades from Moodle. The numerical values are updated in the enrollment numerical grade field.
Enrollments are linked to groups, which are linked to the teacher of record. Provide the teacher of record a table of all newly graded enrollments from Moodle. In this panel, teacher may change the grades. If the student has a poor grade, the teacher may choose the option to continue the enrollment, see below.
After reviewing all enrollments, the teacher must submit all grades, after which the teacher may no longer change them. Admins can change grades at any time during the students participate in the school.
When the grades have been submitted, and the student's enrollment is marked completed, the Moodle courses enrollment is also updated.
If all the students enrollments are marked completed, PEMS changes the status of the next term's enrollment records and to current and triggers the enrollment in the Moodle courses.
If any of the student's enrollment records were marked continued, then the administrator must manually change the status in the next term's enrollment records.
Continue Enrollment Workflow
Sometimes students do not complete all the assignments in a course, and so it makes no sense to promote them to the next course. PEMS provides teachers the ability to continue enrollment, awarding an appropriate grade but not all the units in the linked class record. If the the teacher select to continue the enrollment, PEMS will not dis enroll the student from the Moodle course.
Promoting Students
After grading is completed for the last term of the school year, all students who have completed a user-defined percent of the attempted units for the year will be automatically promoted to the next grade level.
Student who did not complete all the attempted units, because they dropped classed or revived a failing grade will not be automatically promoted.
The admin will be provided a means to review these students before choosing to promote the student to the next grade level. It may be a good idea to provide a user-defined field for the minimum percent of units completed to be automatically promoted.
Promotion to New Grade Pan
When a student's current grade level changes, then the student may be entering a new grade span. If a student is entering a new grade span, then new student term records will be made.
Completing a plan
If a student is entering a new grade span, a new plan will need to be assigned. Also, when a student completes a plan withing a grade span, the a new plan will need to be assigned. After grade promotion and the creation of all requisite student term records, provide the administrator the ability to assign a new plan.
Assessment Results Table
Assessment Results Overview
The administrator defines what the school will assess for in the Assessment Module, the assessment results table is in the Student module since an assessment result is the student's record on the assessment.
Every time the student takes and assessment, an assessment result record is entered and related to the student. Assessment codes allow the administrator to string together student assessment results. Based on the code, the assessment result record can be analyzed to better understand how a student is performing over time.
This table is fully described in Assessment Result Calcuations.
Student Logins Table
The student logins table stores student login information for Keycloak and other technologies that the school provides their students.
Create a new record, enter information, then use the GENERATE PASSWORD button to create the login. Workflow is triggered to create the student in KeyCloak and Moodle.
Data Relationships
Only one student login record is created per student.
Fields
User name - concatenate the first and last name of the student.
Password - administrator sets the password when creating the record.
SSO True/False - If true then on save KeyCloaks and Moodle users will be created.
Is IXL True/False - If true an IXL login with same user/name password will be create - PLEASE UPDATE NOT SURE
Is GrokAcademy True/False - If true a Grok login with same user/name password will be create - PLEASE UPDATE NOT SURE
Active True/False - If true then the account will be managed by Key Cloak PLEASE UPDATE NOT SURE
website - the website that the student account information will be shared with. Note: This logic may be updated based on the implementation of the homeroom module.
emailid - PLEASE UPDATE THIS FIELD DESCRIPTION
Class True/False - If true... PLEASE UPDATE THIS FIELD
Action Items Jan 2024
2-MVP | HOMEROOM| Dharm to Complete documentation of this table, VG does not completely understand it.
2-MVP | HOMEROOM| Evaluate login creation logic, in particular the website field, given the new homeroom module.
Student Term Planner UI
The Student term planner UI was created to help the administrator review the terms the student attends the school and to manually update student terms as needed.
The Student Term Planner UI is a two-level nested table with the student on the primary row. Using the plus button PEMS add a related student term record.
The following Student information is mapped to the student term record: Student Name.
Student Program is not mapped because the different student terms have potentially different programs
When the user selects the school term, PEMS concatenated the name of the student term name field, so the student term name is not directly entered by the user.
Student Programs UI
The student programs UI is used to assign students a plan. The UI is a 2-level nested table with the student at the primary record and the student plans shown below the student.
Filters are provides to sort by School and grade span.
Action Items JAN 2024
4-MVP | ADVANCEMENT | Add more filters to the header, filter by homeroom once that module is built.
Student Enrollment UI
The Student Enrollment UI is used to create enrollment records for students and to trigger student enrollment in the Moodle Courses.
The student's name must be selected from the filter at the top, this was implemented to reduce how much data is loaded in the view.
The view is a two-level nested table. The primary row is a student term. When the student is selected in the filter, the associated student term records are loaded.
The secondary row is the enrollment record. When the user clicks the plus sign, a pop-up window appears and the user may select from a set of template records.
As of JAN 2023, all template records are displayed. In this view, template records should only be displayed if they are linked to the same plan as the student.
If the user clicks the button next to the template, then an enrollment record is created and the information from the template is mapped to the enrollment record.
Transcript UI
Relevant Concepts
Student Records (SIS) Function provides an overview of what a typical transcript requires. This is the most important aspect of the SIS.
A transcript is a report of completed enrollments. Transcripts are formatted in various ways to use the minimum amount of paper. A transcript shows the classes the student has taken at the school, the grades received and the units earned.
Student Terms. There is one term record for every term the school operates. A student term record contains student-specific information about how the student performed academically in the term, such as the student's grade point average for that term. All the classes a student takes (enrollment records) are linked to the student term. A student has a term record created for each term they are in attendance.
Classes. The name of the Class appears on the student's transcript. Classes are sometimes called courses. However, PEMS does not use the term 'course' in any of its modules. In general, the word 'course' can refer to a specific class, like Algebra 1, or it may also refer to the set of classes that lead to a degree or certificate. For example, "I followed a course at the University in wine making" could mean a series of classes. The world "class" also has a secondary meaning. A student can be in the "second grade class" which would mean all students in a particular classroom. PEMS uses the word class to mean the subject of study for which units are earned, commonly called a course, such as "Algebra I". A class that is a subject of study for units can have different curriculum that fulfill it.
Curriculum generally refers to the books and exercises used by the teacher to further the student's knowledge. In Moodle, the curriculum is a Moodle Course. Any class may be taught with multiple curriculum, or different text books, and so there are multiple Moodle courses that may be used to teach a Class.
Enrollment is the process of signing up for a class. An enrollment record in the PEMS is the class as student takes in a specific term, and stores the student's final grade. The set of completed enrollments is the information displayed on the student's transcript.
Subject requirements are the number of units in total required in a subject area by a regulatory organization. For example, the NCAA may require 4 years of English and 3 years of math. The University of California may require 4 years of English and 4 years of math. The NCAA subject requirement for math is 3 years, the University of California subject requirement for math is 4 years. For University of California, the subject requirement is 4 years, the subject is math. Note: sometimes requirements are described in 'years' of study, sometimes in credits, and sometimes in units.
Compliance tags are used to help manage the different requirements of the various regulatory organizations. Not only do the regulatory organizations specify the subject requirements, they also must each approve the course description (syllabus). Students are not allowed to meet the subject requirements with any curriculum, they must meet the requirements with curriculum that has been submitted and approved to the organizations. The student's transcript must then show that the class & curriculum has been approved by the various regulatory organizations. So compliance is a property of the Moodle Course. The Moodle Course list in PEMS is called the curriculum table. There is one record in the curriculum table for each course available in Moodle. PEMS lets the administrator tag certain curriculum records with a compliance tag. If a student takes a class, English 9A, and is enrolled in a specific curriculum, or Moodle Course, the compliance tag from the associated Moodle course will appear on the transcript. Compliance tags are deliberately short to fit on the transcript pages.
Grade Point Average (GPA). The Grade Point Average is the unit-weighted average of the student's grades. Each class has a number of units (also called credits) assigned. If a student earns an A in a class worth 5 units, the total points awarded for that class is 5 (units) x 4 (points) = 20 points. For a given term all the points are added, then divided by the total units to arrive at the students GPA. In this example, 20 (total points) / 5 (units) = 4.0 GPA.
Weighted GPA. students take more advanced courses, the grade points may be increased. For example, if a student earns a A in an advanced English class of 5 units, the student earns a 5 instead of a 4 for grade points for weighted GPA. The total points for that class is 5 (units) x 5 (points) = 25 points (total). Then divide this by totals (5) for a GPA of 5.0. The higher number of points are used to calculate the student's weighted GPA. Lower number of points (4 instead of 5 points) is used for unweighted GPA.
Data Relationships
Show Enrollments
The transcript shows the student's enrollment records, and the grades in each class. The enrollment records should be organized by student term. The transcript should display all the enrollments associated to the student term.
The enrollment record is linked to a curriculum record. The curriculum record has multiple transcript tags defined. Display the transcript tags next to the enrollment record.
Show Progress to Plan
The transcript must also show progress towards completing subject requirements. The student record is associated with only one Program of Study record (plan) at any given time, the active/current plan. That plan is linked to a set of subject requirements.
The subject requirements are always determined from the active plan, the active plan is the one that is linked to the student record. Students are linked to multiple student plan records, but student plan records are not used in the transcript view.
Each enrollment is linked to one class, which is linked to one subject. Therefore each enrollment has a known subject.
The student is linked to one plan, which has a set of subject requirements. The subject requirements are displayed in the transcript using the 'transcript name' in the subject requirement record. (which is really the same as the linked subject).
The following method is used to find the units earned towards a subject requirement:
*For each subject requirement record, Sum the Units Earned field from the Enrollments that are linked to a class that is linked to the same subject as the subject requirement record.
The following information should be displayed on the bottom of the transcript.
| List subject requirements for student's current plan* | Required | Earned | To Go |
| Subject Requirement : Transcript Name | Subject Requirement : Units required | *sum units earned for enrollments with same subject | Required - Earned, use zero if negative number |
*The current plan is linked in the student record. This field should link to a school 'program of study' not the student's own plan log. As of 21 FEB 2024, there is no link at all in the field, this is only a text field. Alternatively, we can choose to select a current plan from the student plan log.
GPA Calculations Reference Information
| View GoogleSheet Example Calculations of GPA |
| The 6. Transcript GPA Calculation page describes detail on how to make GPA calculations. |
| The Enrollments Table describes the rules to update all the various Grade point fields in the enrollment record. This must be completed in order to run the transcript. |
| The Student Terms Table describes the rules to calculate GPA fields for the student term record. This must be completed in order to run the transcript. |
| The Transcript UI describes how to display Student Terms table GPA calculations as well as the student table GPA calculations on the Transcript. |
| The List of transcript tags to be displayed on the transcript is described in Programs Table. |
| The Marks System table describes how this table is used to allow users to customize the GPA calculations. |
Action Items JAN 2024
1-MVP | TRANSCRIPT | Victoria to complete data set for plans, link plan to student, create a subject requirement under every plan, and complete Marx matrix so that GPAs may be calculated. - DONE
1-MVP | TRANSCRIPT | Complete all other transcript actions in all other pages of the document - see action item summary for complete list.
1-MVP | TRANSCRIPT | Verify the method of calculating student progress is as described.
1-MVP | TRANSCRIPT| Complete the transcript page.
1-MVP | TRANSCRIPT| Provide a means to export to pdf.
1-MVP | TRANSCRIPT| Add filters to top of transcript to filter for only completed student terms, or include all terms.