Skip to main content

Gedeelde oefeningen

Doel van dit subdomein

Het subdomein Gedeelde oefeningen beschrijft de leerlingprocessen rond het delen, ontvangen, starten, opnieuw maken en verwijderen van gedeelde oefeningen.

Een leerling kan een afgeronde eigen oefening delen met een actieve vriend wanneer vriendschappen en oefeningdelen functioneel beschikbaar zijn. De ontvanger krijgt hierdoor een ontvangen gedeelde oefening. Dit is eerst een administratief ontvangstrecord. Pas wanneer de ontvanger de gedeelde oefening start, ontstaat voor de ontvanger een zelfstandige ExerciseRun met eigen voortgang, antwoorden, totalen en resultaat.

Dit subdomein vormt geen bron voor vriendschappen, relatie-uitnodigingen, berichtleesstatus of reguliere oefenvoortgang. Die processen blijven bronhoudend in de betreffende generieke of leerlingdomeinen.

Usecases

Usecase-IDNaamBeschrijving
UC-LLN-DEL-001Oefening delen met vriendLeerling deelt een afgeronde eigen oefening met een actieve vriend, waarna een ontvangen gedeelde oefening voor de ontvanger ontstaat.
UC-LLN-DEL-002Ontvangen gedeelde oefeningen bekijkenLeerling bekijkt het eigen overzicht met ontvangen gedeelde oefeningen.
UC-LLN-DEL-003Gedeelde oefening startenLeerling start een ontvangen gedeelde oefening; pas dan ontstaat een zelfstandige ontvangerrun.
UC-LLN-DEL-004Gedeelde oefening opnieuw makenLeerling maakt een ontvangen gedeelde oefening opnieuw met dezelfde gedeelde inhoud en een nieuwe zelfstandige run.
UC-LLN-DEL-005Ontvangen gedeelde oefening verwijderenLeerling verwijdert een ontvangen gedeelde oefening uit het eigen overzicht zonder brondata of afgeronde runs te verwijderen.
UC-LLN-DEL-006Delen blokkeren zonder actieve vriendenHet systeem blokkeert delen wanneer de leerling geen actieve vrienden heeft of wanneer delen functioneel niet beschikbaar is.

Relevante contexten

ContextBetekenis
LeerlingrolAlleen leerlingen kunnen leerling-leerling gedeelde oefeningen delen, ontvangen en maken.
Actieve vriendschapVoorwaarde om een oefening met een andere leerling te delen.
BronrunAfgeronde ExerciseRun van de afzender waarop de gedeelde inhoud is gebaseerd.
Ontvangen gedeelde oefeningAdministratief record dat deler, ontvanger, bronrun en snapshotcontext vastlegt.
OntvangerrunZelfstandige ExerciseRun die pas ontstaat wanneer de ontvanger start of opnieuw maakt.
SnapshotcontextHistorische niveau-, categorie- en oefeninglabels zoals ze golden op het moment van delen.
SysteemcommunicatieOptionele ingang voor de ontvanger; geen bron van waarheid voor het gedeelde record.

Domeinafbakening

Binnen dit subdomein

  • Delen van een afgeronde oefening met een actieve vriend.
  • Tonen van ontvangen gedeelde oefeningen.
  • Starten van een ontvangen gedeelde oefening.
  • Opnieuw maken van een ontvangen gedeelde oefening.
  • Verwijderen van een ontvangen gedeelde oefening uit het eigen overzicht.
  • Blokkeren van delen wanneer er geen actieve vrienden zijn of wanneer delen functioneel niet beschikbaar is.

Buiten dit subdomein

  • Vriend uitnodigen, accepteren, afwijzen of ontkoppelen.
  • Beheer van featuretoggles voor vriendschappen en delen.
  • Regulier starten van oefeningen vanuit het oefenaanbod.
  • Beantwoorden van oefenvragen en voortgang opslaan.
  • Resultaatweergave, statistieken, geschiedenis en PDF-export.
  • Account-, profiel- en toegankelijkheidsinstellingen.
  • Docentbeheer van niveaus, categorieën, oefeningen en autorisaties.
  • Lezen, openen of verwijderen van systeemberichten in de mailbox.

Bijzondere regels

  • Een gedeelde oefening wordt niet direct als ExerciseRun voor de ontvanger aangemaakt.
  • Pas wanneer de ontvanger start of opnieuw maakt, ontstaat een zelfstandige ontvangerrun.
  • De eerste start gebruikt dezelfde vraaginhoud en dezelfde vraagvolgorde als de gedeelde bronrun.
  • Een herhaling gebruikt dezelfde gedeelde inhoud; de vraagvolgorde mag opnieuw worden bepaald wanneer dat functioneel is toegestaan.
  • De bronrun van de afzender wordt nooit gewijzigd door acties van de ontvanger.
  • Ontvangerruns overschrijven elkaar niet; iedere start of herhaling heeft eigen voortgang en eigen resultaat.
  • Een ontvangen gedeelde oefening blijft historisch herleidbaar, ook wanneer de vriendschap daarna eindigt.
  • Verwijderen uit het ontvangen overzicht is een zichtbaarheidshandeling voor de ontvanger en geen hard delete van oefendata.
  • Afgeronde ontvangerruns blijven via geschiedenis beschikbaar volgens de normale geschiedenisregels.
  • Systeemberichten kunnen naar gedeelde oefeningen verwijzen, maar zijn niet de bron van waarheid voor gedeelde oefenrecords.

Popupverwijzingen

De usecases verwijzen alleen naar PopupKey. Popupteksten, knopteksten, invoerlabels, themas en varianten blijven centraal in het popupregister en popup-themes.

UsecasePopupgebruik
UC-LLN-DEL-001Selectie-, succes- en foutafhandeling rond delen.
UC-LLN-DEL-002Niet-beschikbaarafhandeling wanneer een ontvangen item niet kan worden getoond.
UC-LLN-DEL-003Niet-beschikbaar- en startfoutafhandeling.
UC-LLN-DEL-004Niet-beschikbaar- en herhaalfoutafhandeling.
UC-LLN-DEL-005Bevestiging, succes en foutafhandeling bij verwijderen uit overzicht.
UC-LLN-DEL-006Blokkade- of infomelding wanneer delen niet mogelijk is.

Diagramgebruik

Binnen dit subdomein worden vooral sequence diagrams, decision flows en data lifecycle diagrams gebruikt.

DiagramtypeGebruik binnen dit subdomein
Sequence diagramInteractie tussen leerling, frontend, backend, database, modulelaag en berichtensysteem.
Decision flowAutorisatie, beschikbaarheid, deelbaarheid en foutpaden.
Data lifecycle diagramVerschil tussen bronrun, gedeeld record en ontvangerruns.
State diagramAlleen waar de zichtbaarheid of uitvoeringstoestand van een gedeeld item verduidelijkt wordt.
ERDNiet in usecases; relationele uitwerking hoort in database-informatie.

DRY-afspraken

Dit subdomein herhaalt geen bronregels uit andere domeinen.

BrongebiedAfspraak
RelatiesVriendschappen en relatie-uitnodigingen blijven bronhoudend in generiek relatiebeheer.
Oefenen en voortgangVraagbeantwoording en voortgangsopslag blijven bronhoudend in oefenusecases.
Resultaten en geschiedenisResultaatpopup, statistieken, PDF-export en geschiedenis blijven bronhoudend in resultaatusecases.
Account/profielLogin, niveaukeuze, toegankelijkheid en profielinstellingen blijven bronhoudend in account- en profielusecases.
SysteemberichtenLeesstatus, mailbox en berichtopening blijven bronhoudend in berichtenusecases.