mathly / docs /project.prd
3v324v23's picture
feat: Implement skill learning and mastery features
66fd359
Raw History Blame Contribute Delete
4.8 kB
The app is written from scratch. Kept from the current app:
- the exercises (app/math_algebra9.json)
- the drawing board (static/math-board.js, static/board-math.js, static/vendor/mathlive)
Glossary:
- skill (诪讬讜诪谞讜转): a specific topic like 驻讬专讜拽 讟专讬谞讜诐
- exercise (转专讙讬诇): a qustion on a certain topic, can be either open ended or multiple choice
- lesson (砖讬注讜专): set of skills like 讟讻谞讬拽讛 讗诇讙讘专讬转 1
- quiz (讘讜讞谉): a test on a single lesson, can be retaken, best grade wins. each retake draws new questions.
it is the only quiz type (no one-time summary quiz); its best grade is the lesson's grade
- exrcise test (诪讘讞谉 转专讙讜诇): a timed test on a set of a lessons, can be retaken, best grade wins
- simulation test (诪讘讞谉 住讬诪诇讜爪讬讛): a timed test on a set of a lessons, one time only
- test: real life test, appears in app as a date + the lessons it covers + number of questions and time limit
(default 12 questions, 90 minutes). set by the teacher
Goals:
The app helps the student to:
1. master the skills - done by the path
2. get ready for the real life tests - done by the test countdown plan
Goal 1: Mastering the skills (the path)
Each skill goes through these stages:
1. worked example: the student sees a full solution and is asked "why this step?"
2. faded examples: steps are removed one at a time, the student fills them in
3. practice: immediate feedback that names the specific mistake.
after a wrong answer, the student gets a similar question (not the same one)
4. mastered: 3 correct answers in a row, without hints, across at least 2 different days.
a mastered skill stays mastered (math does not rot)
Skill states:
- not started
- learning
- mastered
Path rules:
- all lessons are open: the student can enter any lesson at any time, in any order
Goal 2: Getting ready for the real test
The teacher sets the test date and the lessons it covers.
The app plans backwards from the date:
- until 9 days before: finish the path for all the covered lessons
- 9-7 days before: exercise tests (诪讘讞谉 转专讙讜诇) - timed, mixing all the covered lessons.
each result points back to the weak skills in the path (see "Exercise tests" below)
- final week: simulation test (诪讘讞谉 住讬诪诇讜爪讬讛) - required. one attempt, open until the test day,
same length and timing as the real test, feedback only at the end
- last days: targeted review of the skills that failed in the simulation,
light mixed review the day before
Exercise tests:
- assigned by the app: created automatically when the teacher sets the test,
and placed on the student's countdown
- the teacher can also send one to the class as an assignment
- the student can start or retake one at any time. each retake draws new questions, best grade wins
- same length and timing as the simulation test, feedback only at the end
- weak skill: a skill in "learning" state, or one failed in a previous exercise test
- 2 exercise tests, then the simulation test:
| days before the test | step | weak skills | other covered skills |
|----------------------|----------------------------|-------------|----------------------|
| ~9 | exercise test 1 | 60% | 40% |
| ~7 | exercise test 2 | 30% | 70% |
| ~5 | simulation test (required) | - | like the real test |
| 4 -> 1 | review the skills that failed in the simulation |
- if the test is set less than 9 days ahead, keep the same order with shorter gaps
Readiness meter (per test):
- % of the covered skills that are mastered
- recent exercise test grades
- simulation test grade
Student Screen:
- home
- my assignments (讛诪砖讬诪讜转 砖诇讬): homewords submitted by the teacher
- remider on the upcoming test: days left, readiness meter, today's task (from the closest test)
-
- path
- grades
- collection
Teacher Screen:
- assignments
- give an assignment. load it from:
- the computer (file upload)
- the app's drawing board (math-board.js)
- a picture (camera)
- check assignments: review each student's submitted answers and give feedback/grade
- tests
- set a real life test: date + the lessons it covers
- see who took the required simulation test
- class heat map
- rows: students, columns: skills
- each cell is colored by the skill state (not started / learning / mastered)
- period tabs: sep-dec, jan-jun
- student lesson coverage
- rows: students, columns: lessons
- each cell shows how much of the lesson the student covered: % of its skills mastered + the best quiz (讘讜讞谉) grade
- period tabs: sep-dec, jan-jun