kolibri
kolibri copied to clipboard
Make a copy of a class
Overview
The problem: Make a copy of a class after learners and coaches are enrolled
Context: Request from a KHGP grantee (Lewa): They said that they have huge classes of students and that most of their classes are the same students in each. They've requested an option to make copies of classes to eliminate the step of re-enrolling students each time.
In a conversation with Lewa, they mentioned that they have multiple classes with the same set of learners (i.e. Grade 6 Science has the same learners as Grade 6 English). Currently, they have to create a new class and then enroll learners 1 by 1 into each class. This process is time consuming (particularly when there are hundreds of learners in a facility) and they would prefer to be able to make a copy of an existing class, then change the name and change the coaches.
Workarounds: They are currently using the bulk user upload feature to automatically sort larger groups of learners into classes
Consequences: Info source and product: General Kolibri community Learning Platform
Resources: https://www.figma.com/design/85JijqOnl86LVIdpIVZ0SY/Make-a-copy-of-a-class?node-id=215-1572&t=72bp2EwNjDdaqBPp-4
Accessibility Requirements
@jredrejo Cc @jtamiace @marcellamaki
Here's a quick overview of the UX changes I have made to solve this problem on the linked Figma:
Accessing the new Action
- In the class list, I replaced the Delete button with a menu (ellipsis) icon, indicating more options.
- On the class page itself, I added a "Copy Class" action adjacent to the class title, next to "Rename Class" action.
Menu Dropdown
- When the menu icon is clicked, a dropdown appears. One of the primary actions is "Copy Class".
Modal Actions:
- Once "Copy Class" is clicked, a modal appears.
- Naming: Provide a field prompting users to rename the copied class. Default name is “Copy of [original class name]”.
- Copying Participants: Offering checkboxes with clear labels: "Copy Learners" and "Copy Coaches"
Confirmation:
- At the bottom of the modal, there are "Copy Class" and cancel buttons.
- Following the class copy completion, users are directed to the new class and met with a "Class copied successfully!" notification.
PS. Next steps/thoughts: @lauradanforth
- I am considering adding an additional action to the modal action allowing users to modify their Coach and Learner selections under/next to both checkboxes, with a dropdown list and/or a search bar to add or remove coaches/learners.
- Also, is there any need to still include a guided option that adapts their current workaround. So for large classes, a hint about the bulk upload feature like: "Consider bulk upload for large classes."
- Advanced Automation (Optional): Acknowledging Lewa's routinely patterned classes feedback, maybe we want to introduce a "Class Templates" or "Class Groups" feature to conveniently recreate similar classes?
@tomiwaoLE thanks for sharing, this is great (and exciting!)
All of these changes look appropriate for the use case described. For consistency with the Lessons and Quizzes pages, I might also suggest an 'Options' drop down that lists 'Rename Class' and 'Copy Class' instead of having them as separate buttons but defer to you.
Re the other questions:
I am considering adding an additional action to the modal action allowing users to modify their Coach and Learner selections under/next to both checkboxes, with a dropdown list and/or a search bar to add or remove coaches/learners.
Yes please!! I can imagine situations where a class is copied but only some of the Coaches or Learners are kept, and then it becomes a pain to remove users one by one. Search bar makes sense for large class sizes.
Also, is there any need to still include a guided option that adapts their current workaround. So for large classes, a hint about the bulk upload feature like: "Consider bulk upload for large classes."
I like this idea because I think the bulk upload option is currently not obvious, since it's hidden in the Data tab. I think we'd need to be able to direct people there though (either with a link or information on where to click).
Advanced Automation (Optional): Acknowledging Lewa's routinely patterned classes feedback, maybe we want to introduce a "Class Templates" or "Class Groups" feature to conveniently recreate similar classes?
I'm having trouble visualizing what this would look like but I like it!
Thank you for the valuable feedback @lauradanforth
'Options' Dropdown List: I love this suggestion and will incorporate it into the design.
Yes please!! I can imagine situations where a class is copied but only some of the Coaches or Learners are kept, and then it becomes a pain to remove users one by one. Search bar makes sense for large class sizes.
I'll delve into finding a solution for this. However, if I feel it overcomplicates the interface, I'll reconsider it.
I like this idea because I think the bulk upload option is currently not obvious, since it's hidden in the Data tab. I think we'd need to be able to direct people there though (either with a link or information on where to click).
I'll work on making this more accessible within the interface.
Thanks again!
Hey @lauradanforth,
I've updated the feature to allow users to easily copy a class and select associated coaches. Plus search functionality for users to easily filter the coach list.
I've chosen to omit the option to copy learners assigned to classes due to:
- Feedback from Richard, highlighting that the primary use case leans towards copying coaches. This is because class resources are often reused across different academic years, which would entail different sets of learners.
- UI constraints. Incorporating this feature would complicate the UI, especially for managing larger classes within limited screen space.
Looking forward to your thoughts!
Thanks @tomiwaoLE ! I think I need further clarification on the expected flow. In your design, are the learners automatically being copied along with the class, and then they can be added/removed after the class has been copied?
The primary use case in the feedback shared above by Lewa was needing to copy learners (i.e. the same learners are in Grade 6 Science class as in Grade 6 English class, just with different teachers. Same thing if Grade 6 students move to Grade 7), which I think contradicts @rtibbles's feedback unless I'm misinterpreting. Let's chat if that's easier to help clarify. But I can't tell from the design if the full set of learners is also being included.
This is the flow I have in mind:
- An admin navigates to an existing Class page, where there's a button to "Copy Class"
- A copy of the Class is made, including all of the assigned coaches and enrolled learners
- Once on the new class page, the admin can manually remove any coaches or learners that aren't relevant. This would avoid the UI constraint of having a long list of learners in a pop up modal.
The designs you have make sense to me though if all learners are being copied automatically and can be edited later. It's nice to be able to change the coaches upfront since those will likely be unique from class to class (whereas the learners are more likely to be consistent).
All sub issues and follow up issues are completed