New_Micro_Learning/docs/domain-model.md

32 خطوط
1.8 KiB
Markdown

# Domain Model
## Core aggregates
- Organization owns users, teams, subscriptions, taxonomy, content, assignments, and analytics.
- Course owns ordered CourseVersions. A published version is immutable; editing forks a draft.
- CourseVersion owns Modules, Lessons, Blocks, Assessments, and version-aware taxonomy mappings.
- Assignment targets learners, teams, or rules and references the assigned CourseVersion.
- LearningAttempt records delivery state against the assigned version.
## Taxonomy
- TaxonomyType is organization-defined and has a stable identifier and semantic key.
- TaxonomyNode has a stable identifier, optional parent, status, code, metadata, and revision history.
- TaxonomyRelationship supports typed non-tree relationships without requiring a graph database.
- ContentTaxonomyMapping links a versioned content object to a node with mapping type, relative weight, source, and confirmation state.
- Inherited mappings are resolved, never copied to every descendant.
Circular hierarchies are invalid. Referenced nodes are archived rather than deleted.
## Evidence and capability
- EvidenceRecord is immutable and traces learner, taxonomy node, origin, type, normalized value, strength, course version, mapping snapshot, and occurrence time.
- ScoringModel versions all calculation policies.
- CapabilityScore is the current projection; CapabilitySnapshot preserves history.
- SkillExpectation defines an expected level for a learner, team, role, or job family.
- SkillGap exists only where an expectation exists.
- ContentCoverageMetric separates learning, practice, assessment, scenario, and evidence coverage.
Capability score is a strength/recency-weighted evidence projection. Confidence separately reflects effective evidence volume, strength, recency, diversity, and consistency. Exposure alone cannot yield high confidence.