We need to differentiate between students directly assigned to a team member and students assigned to a team member via a classroom.
User Stories:
As a user, I want to view and/or manage which students a team member is directly assigned to, so that I can ensure they are connected to the correct students.
As a user, I want to view and/or manage which classrooms a team member is assigned to, so that I can ensure they are connected to the correct classrooms.
Acceptance Criteria:
Given the user is a paraprofessional or Related Service provider, they can view classrooms, but can not manage/edit classroom
Given the user is a parent, they can not view classrooms or manage/edit them
Given the user is a teacher, administrator, case manager/lead teacher, lead teacher/administrator, multi-level lead teacher, they can view and manage/edit the classroom
Given the user is any other role than parent, they can view classrooms
Given a team member has not yet been assigned to any students in the building(s) the user has access to, the user will see the assigned students empty state
Given a team member has been assigned to students in a building the user has access to, the user will see all of the students assigned to the team member who belong to a building the user has access to
Given no students exist in any of the buildings both the team member and the user have access to, the user will see the available students empty state
Given no students in any of the buildings both the team member and the user have access to match the search criteria, the user will see the available students empty state
Given students exist under the assigned column, the team member will have access to those students.
Given a student has been removed from the assigned column and the student is not connected to the team member via a classroom, the team member will not have access to that student.
Given a student has been removed from the assigned column and the student IS connected to the team member via a classroom, the team member WILL have access to that student.
Given a team member has not been assigned to any classrooms associated with a building the user has access to, the user will see the classroom assignments empty state
Given a team member has been assigned to a classroom associated with a building the user has access to, the user will see that classroom and the associated students listed under classroom assignments
Given a team member has been assigned to a classroom, they will have access to all of the students in the classroom
Given the user has permission to Manage Classrooms, they will have the option to unassign a user from a classroom
Given a team member has been unassigned from a classroom, and they are not connected to the students either via direct assignment or though another classroom, the team member will no longer have access to those students.
Given a team member has been unassigned from a classroom, and they ARE connected to the students either via direct assignment or through another classroom, the team member WILL have access to those students.
Given the user has permission to Manage Classrooms, they will have the option to assign the user to a classroom.
Given the user chooses to add the team member to an existing classroom, the user will see a list of all classrooms belonging to a building both the user and the team members have access to.
Given the user has assigned the team member to an existing classroom, that classroom will now show under classroom assignments
Given the user chooses to add a new classroom for the team member, the user will see the create classroom modal
Given the user creates a new classroom for the team member, that classroom will appear under classroom assignments.
Given a classroom was created via an integration, team members cannot be added to or removed from that classroom.
Design: https://www.figma.com/file/gdwMnbpudJxuzVrORrOGvd/Ed-Member-Site-UX?node-id=11343%3A118208
General Concept
UI
When a user clicks on Manage in Classrooms and View in the Manage Team Members section, the user will see the new profile page
If the user clicks Edit, they will see the Edit Team Member screen ( see more in Add Team Member doc)
If the user clicks Save and close button, they will return to the Manage Team Members screen
If the user clicks Assign students, they will visit the Assign students page
Business Rules
This applies to all non-admin team member EXCEPT those in a family member (parent) role
Parents will continue to be assigned as before and will not see Classrooms
Paraprofessionals or Related Service Provider Roles will not see the Edit button on the Manage Team Member or on the View Profile page
All roles EXCEPT parents will be able to view Classrooms
All other roles will be able to View and Edit Team Members
Role and Building Changes
UI
When a user changes buildings and loses permissions in old building, a modal will popup to warn the user if they will no longer have access to the students.
If the user changes building and the team member was the only team member in the classroom, the same modal will popup to warn the user that the classroom will be deleted since there must be a team member in a classroom
Building Rules
Building changes that result in a loss of permissions will impact team members ability to access students
Building changes that impact permissions coupled with being the only team member in the room will result in classroom deletion
There must be a team member in a classroom or it is deleted and can not be reinstated
In case of any changes of Buildings, Regions, Roles - we will show information pop-up
Building, Region Changes:If Building, region is being unassigned:
1.1. Remove the member from the classrooms of the building
1.1.If Team Member is the only member in the classrooms - Classrooms will be deleted
1.2. If Team Member has direct students - All students will be unassigned
1.3. If Admin has multiple assigned buildings, regions - students will deleted from classrooms from unassigned building, region. If no students students will be assigned to this classroom after deletion, classroom will be deletedRoles Changes:If the role changes from Non-Admin to Admin: Team Member will be unassigned from all classrooms, All classrooms will be deleted where Team Member is the only member, direct students will be unassigned.
If the role changes from Admin to Any(Non-Admin or Role without View Classrooms Permission): All Admin classroom will be deleted.
If the role changes from Non-Admin to the Role without View Classrooms Permission - Team Member will be unassigned from all classrooms, All classrooms will be deleted where Team Member is the only member. Direct Student will not be deleted
Building Selector
UI
The user will select the building for which they wish to create student/classroom assignments
Business Rules
We will list all buildings to which both the user and the team member belong
We will list the buildings alphabetically
We will default to the first building in the list
This is a single select filter
Available Students
UI
This section will list all active students that belong to the selected building
The user may search for a student by name
If no students match the search OR if no students are active at the selected building, we will show a message stating “No students found. Please visit Manage Students to add a student. If you have already added a student, please check your building selection above.”
When the user clicks on a student, they will see 3 horizontal dots. Clicking these dots will reveal the option to assign/unassign the student via no classroom or to the selected classroom if a classroom has been created
If a classroom has not been created, the user will only be able to Assign the student without a classroom until it has been created
The user will also see any classroom the student currently belongs highlighted under the Assigned Classrooms area.
If the selected classroom was created via integration, we will show the lock icon
Business Rules
We will list all students that belong to the selected building
Students will be listed alphabetically by last name (but displayed as First Name Last Name)
Team Members will only have the option to Assign student (no classroom) if they have not created a classroom
Students can only be assigned to a classroom that belongs to the same building the student belongs to
If the student has not yet been assigned directly to the team member, we will show the option to Assign to Students
If the student has been assigned directly to the team member, we will show the option to Unassign from Students
If the student has not yet been assigned to the selected classroom, we will show the option to Assign to Selected Classroom if a classroom has been created
If the student has been assigned to the selected classroom, we will show the option to Unassign from the Selected Classroom
If the selected classroom was created via Integration, the student cannot be assigned/unassigned from the classroom
Assigned Students
UI
This section will list all students currently directly assigned to the team member
The user may mass unassign students by selecting the unassign option at the top of the screen
The user may also unassign individual students by selecting the unassign option next to the student’s name
The user may search the list to find an assigned student.
If no students match the search, we will show a message stating “No students match this name. Please assign the student from the Available Students list. If the student was already assigned, please check your building selection above.”
If no students have been assigned, the user will see a message instructing them to select students from those available
Business Rules
Students listed under Assigned will be assigned to the team member
Students will be listed alphabetically by last name (but displayed as First Name Last Name)
We will list all students assigned to the team member from the selected building (multi-account team members)
If a student is unassigned from a team member here, the team member will no longer be assigned or have access to the student UNLESS the student and team member both belong to the same classroom
Students added via integration will be assigned via classrooms - not direct assignment.
Classroom Assignments
UI
Here, we will show all classrooms the team member is assigned to
The user may mass unassign classrooms by selecting the unassign option at the top of the screen
The user may also unassign individual classrooms by selecting the unassign option next to the classroom name
Classrooms created via integration will show a lock icon and no unassign button
For all assigned classrooms, we will show a list of students currently assigned to the classroom
The user may mass unassign all students from the selected classroom by selecting the unassign all option next to students
The user may also unassign an individual student from the classroom by selecting the 3 dots next to the student’s name
If a classroom was created via an integration, the classroom and all associated students will show the lock icon
If the team member is not assigned to any classrooms, they will see the empty state. From here, the user may click to add the team member to an existing classroom or create a new classroom (see next sections)
If the user wishes to assign the team member to a classroom, they may also click the add button (see below)
Business Rules
Users with permission to View Classrooms will see the list of Classrooms (associated with a building the user currently has access to) to which the team member currently belongs
Classrooms listed under Classroom Assignments are assigned to the team member
Classrooms will be listed alphabetically
Students will be listed alphabetically by last name (but displayed as First Name Last Name)
We will auto-select the first classroom in the list
Selected classroom will be indicated
The total number of classrooms assigned to the Team Member will display in the top right hand corner of Assigned Classrooms
The team member will have access to all students assigned to the classroom. If a team member is unassigned from a classroom, they will no longer have access to those students unless they are directly assigned to the student or connected via another classroom.
If the classroom was created via integration, the lock icon will show and the unassign button will not show. This is true for both classrooms and the students within the classroom.
If the user clicks Unassign All, the team member will be removed from all classrooms except those created via integration
Add Existing Classroom
UI
If the user clicks on add existing classroom,
They will see the modal to assign the user to an existing classroom
The user may search for a classroom by name
The user may click ADD to add one or more classrooms
The user may click the subtraction symbol to unselect the classroom
When the user clicks the Save button, the modal will close and the team member will be assigned to the classroom
Business Rules
The Users that have permission to Manage Classrooms will see the list of Classrooms associated with a building to which the both the user and team member currently belongs
Users with permission to Manage Classrooms will have the ability to assign a classroom to the team member
Classrooms created via integration will show lock icon and cannot be added
Add New Classroom
UI
If the user clicks on Add New Classroom, they will see add classroom form (assign team member screen will be faded in background)
First, the user will select an icon and classroom name
Clicking Save will save this classroom
If the user does not type in a classroom name they will see the message, “ Please type in a classroom name to save”
Users will return to the Assign Students and Classrooms screen once they save
Business Rules
Users with permission to Manage Classrooms will have the ability to add a new classroom
The star icon will be selected by default
Classroom must have a name and icon
Footer
UI
The lock icon will show in the footer with explainer text
The user may click the save button to save all assignment changes. This will allow the user to save the changes and select another building before closing the screen.
The user may click the Done button to close the assignment screen.
If the user clicks Done without saving, they will see a message reminding them to save their changes. If the user clicks Save, we will save their changes and return the user to Manage Team Members. If the user clicks Don’t Save, we will not save the changes & will return the user to Manage Team Members. If the user clicks Cancel, we will not save any changes and will return the user to the Assign Students and Classrooms screen.
Business Rules
Clicking Save will save all changes
If the user clicks Done without saving, no changes will be made