# 1. Shared Goal Setting

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 1. Shared Goal Setting

### 1.1 Goal Template Library
**What it does:** The Super Admin manages the library of goal templates so parents and students can start from proven goal structures.

**Sub-features:**
- Template creation: the creation of a goal template
- Template categories: the categories of goal templates
- Template parameters: the parameters of the template (target, duration)
- Template enablement: the template toggled active or inactive
- Template gallery: the gallery of available goal templates
- Available on web
- Event logging (action performed)
- Audit logging of goal template library

**Super Admin User Journey:**
1. As a Super Admin, open the goal template library.
2. Create a goal template with target and duration.
3. Assign the template to a category.
4. Activate the template and verify it appears in the gallery.

**Rules & Edge Cases:**
- A template creation requires a name and a target.
- A template category groups the templates by theme.
- A template parameter defines the target and duration.
- A template enablement controls whether it can be used.
- A template gallery lists the active templates.
- A template in use cannot be deleted; it must be unassigned first.
- Template actions are audit-logged with the actor and timestamp.

### 1.2 Collaborative Goal Creation
**What it does:** The Super Admin enables the collaborative goal creation so parents and students set goals together.

**Sub-features:**
- Goal initiation: the initiation of a goal by a parent or student
- Goal co-editing: the co-editing of the goal by both parties
- Goal agreement: the agreement of both parties on the goal
- Goal assignment: the assignment of the goal to the student
- Goal status: the status of the collaborative goal
- Available on web
- Event logging (action performed)
- Audit logging of collaborative goal creation

**Super Admin User Journey:**
1. As a Super Admin, open the collaborative goal creation.
2. Enable the goal initiation and co-editing.
3. Set the goal agreement requirement.
4. Verify the goal assignment and status.

**Rules & Edge Cases:**
- A goal initiation is started by a parent or a student.
- A goal co-editing allows both parties to edit the goal.
- A goal agreement requires both parties to accept the goal.
- A goal assignment links the goal to the student.
- A goal status reflects the state (draft, agreed, active, completed).
- A goal without agreement cannot be activated.
- Goal actions are audit-logged with the actor and timestamp.

### 1.3 Goal Progress Tracking
**What it does:** The Super Admin enables the goal progress tracking so parents and students track progress collaboratively.

**Sub-features:**
- Progress updates: the updates to the goal progress
- Progress visibility: the visibility of the progress to both parties
- Progress milestones: the milestones within the goal
- Progress alerts: the alerts on goal progress
- Progress history: the history of the goal progress
- Available on web
- Event logging (action performed)
- Audit logging of goal progress tracking

**Super Admin User Journey:**
1. As a Super Admin, open the goal progress tracking.
2. Enable the progress updates and visibility.
3. Set the progress milestones and alerts.
4. Review the progress history.

**Rules & Edge Cases:**
- A progress update records the change in the goal progress.
- A progress visibility makes the progress visible to both parties.
- A progress milestone marks a checkpoint in the goal.
- A progress alert notifies on a milestone or a stall.
- A progress history stores the past updates.
- A progress update outside the goal window is rejected.
- Tracking actions are audit-logged with the actor and timestamp.

### 1.4 Milestone Celebration
**What it does:** The Super Admin enables the milestone celebration so parents and students celebrate milestones together.

**Sub-features:**
- Celebration trigger: the trigger for a milestone celebration
- Celebration message: the message for the celebration
- Celebration badge: the badge awarded for the milestone
- Celebration sharing: the sharing of the celebration with the family
- Celebration log: the log of the celebrations
- Available on web
- Event logging (action performed)
- Audit logging of milestone celebration

**Super Admin User Journey:**
1. As a Super Admin, open the milestone celebration.
2. Set the celebration trigger and message.
3. Assign the celebration badge.
4. Enable the celebration sharing and review the log.

**Rules & Edge Cases:**
- A celebration trigger fires when a milestone is reached.
- A celebration message is the text of the celebration.
- A celebration badge is the badge awarded for the milestone.
- A celebration sharing sends the celebration to the family.
- A celebration log records the past celebrations.
- A celebration for an unmet milestone is not triggered.
- Celebration actions are audit-logged with the actor and timestamp.

### 1.5 Parent Challenges
**What it does:** The Super Admin manages the parent challenges so parents can engage in learning activities with their children.

**Sub-features:**
- Challenge creation: the creation of a parent challenge
- Challenge type: the type of the challenge (read alongside, quiz together)
- Challenge assignment: the assignment of the challenge to a family
- Challenge completion: the completion of the challenge
- Challenge reward: the reward for completing the challenge
- Available on web
- Event logging (action performed)
- Audit logging of parent challenges

**Super Admin User Journey:**
1. As a Super Admin, open the parent challenges.
2. Create a challenge with a type.
3. Assign the challenge to a family.
4. Track the completion and reward.

**Rules & Edge Cases:**
- A challenge creation requires a name and a type.
- A challenge type is read alongside or quiz together.
- A challenge assignment links the challenge to a family.
- A challenge completion is recorded when the family completes it.
- A challenge reward is granted on completion.
- A challenge with no assignment is not active.
- Challenge actions are audit-logged with the actor and timestamp.
