Students should be able to save at least one take per assignment from session to session. They don't need to be able to save more than that.
Say they are practicing and they have 4 takes, but their best score is an 88%. Why would they save the other three? Just save the best one.
This seems like a realistic and reasonable request, and DESPERATELY needed, especially in the education setting. This encourages kids to keep coming back to the program to continually try to get a better score, which is what makes this GUIDED practice, and not just practice.
When a kid does a take and gets 85%, they actually have to sit there and choose between turning it in and get a B for sure or coming back later to try for a better grade, but possibly getting a worse one. Most of my students are choosing the "devil they know", so to speak. In other words, I see this actually teaching children to accept mediocrity.
I'm no programmer, but if they just made submitting a two-step process, it wouldn't take much more resources than it does now. When they submit an assignment, just give them two buttons: "send to teacher now" and "save for later". The buttons do the exact same thing, except the "save for later" button does everything except send it. Later, if the kid gets a better score and again choose "save for later", the earlier take is replaced. Or, if that's the take they want to turn in, just have an option to pull up the saved take, and finalize the submission.
As it is, if a kid submits an assignment in the first session, the system keeps a record of it and puts it in my gradebook, so we know the servers can handle one recording per kid per assignment. In my suggestion, the teacher wouldn't be able to see that one recording until it is formally submitted and secondly it would be rewritable (in case the student wants to replace it with a better take).