WS1.1 — Navigation Framework Analysis

WS1.1 — Navigation Framework Analysis

Purpose: Deep analysis of six organizational frameworks for redesigning the QuranFlow admin backend navigation. Each framework is evaluated on its organizing philosophy, application to the current 35+ screen system, assumptions about the user, strengths, risks, affinity with the current structure, and natural opportunities. A comparison matrix at the end scores all six against key evaluation criteria.

Inputs: Admin Capability Map (35+ screens, 9 nav sections), Admin Navigation Interview Report (pain points, mental model, workarounds), Redesign Plan (framework descriptions)

Date: March 2026


Context: What We Are Reorganizing

The current admin backend has 9 top-level sections containing 35+ distinct screens:

The interview revealed that single admin workflows routinely span 5-9 screens across multiple sections, that the Settings section is a "catch-all" for misplaced items, that the Dashboard provides no actionable information, and that billing — the admin's biggest pain point — has zero backend presence.


Framework 1: Object-Based (Current State)

Principle

Object-based navigation organizes the interface around data types or database entities. Each top-level section corresponds to a noun — Students, Semesters, Lessons, Reports — and contains all CRUD operations for that entity type. The user navigates by asking "what kind of thing am I working with?" and then going to the section that houses that thing. This is the most common pattern in developer-built admin panels because it mirrors the underlying database structure: one table, one section.

Application to QuranFlow

This is the current state. The navigation maps almost directly to the backend's controller and table structure:

Representative items and their current placement:

Item Current Section Why it's here
Payment Plans SETTINGS It's a configuration entity (payment_plans table)
Welcome Package SETTINGS It's semester resource upload — but placed by exclusion, not logic
Teacher Assignment Criteria SETTINGS It's a rule set for TA matching — placed in Settings as catch-all
TA Schedules APPOINTMENTS It's schedule data for TAs — grouped with appointment data

Proposed Navigation Structure

├── Dashboard
│
├── Semesters
│
├── Program
│   ├── Video Lessons
│   ├── Submissions (Assessments)
│   ├── Resources
│   ├── Live Sessions
│   ├── Recordings
│   ├── Tutorials
│   ├── MCQ Questions
│   └── Quizzes
│
├── People
│   ├── Students
│   ├── Teaching Assistants
│   ├── Admins
│   └── Students Management (grab-bag)
│
├── Reports
│   ├── Student Report
│   ├── TA Reports
│   ├── Payments
│   ├── Promoted Students
│   ├── Failed Sign Ups
│   ├── Referrals
│   └── Specific Reports
│
├── Appointments
│   ├── Upcoming Appointments
│   ├── TA Schedules
│   └── Holidays
│
├── Billing (NEW)
│   ├── Subscription Overview (NEW) — student subscription list with Stripe data
│   ├── Payment Plans                ← from Settings
│   ├── Coupons                      ← from Settings
│   ├── Family Plans (NEW) — replaces Google Sheet tracking
│   └── Scholarships & Deferments (NEW) — replaces Google Sheet tracking
│
├── Settings
│   ├── Notifications
│   ├── Tags
│   ├── Settings (General)
│   ├── Operations
│   ├── Email Management
│   ├── Welcome Package
│   ├── Teacher Assignment Criteria
│   ├── Logs
│   └── Support Links               ← from Students Management grab-bag

How This Addresses Key Needs

This structure is the minimal-disruption option — it preserves the current layout and adds only where gaps exist. Billing gap (Q5, Q9): A new top-level Billing section is added, pulling Payment Plans and Coupons out of Settings and adding new screens for subscriptions, family plans, and scholarships. However, billing remains disconnected from student profiles — you still must navigate away from People to see payment data. Consolidated student profile (Q2): Not addressed. The Students detail page remains shallow; payment, appointment, and submission data live in separate sections. Semester setup fragmentation (Q1): Not addressed. Setup still spans Semesters, Program (8 screens), Settings (Welcome Package, Email Management, Tags, Teacher Assignment Criteria), and Appointments — the same 11+ screens across 4+ sections. Dashboard problem (Q6, Q7): Not addressed structurally. The Dashboard screen exists but the object model provides no mechanism for alert logic or contextual prompts — that would require bolting on capabilities foreign to the framework. Settings catch-all (Q6): Marginally improved. Payment Plans and Coupons move to Billing, but Welcome Package, Teacher Assignment Criteria, Email Management, and Operations remain in Settings despite belonging to other domains.

Assumptions About the User

The object-based model assumes the admin thinks in database terms: "I need to edit a student" or "I need to create a lesson." It assumes the user can decompose any task into its constituent data objects and knows which object to start with. It also assumes that tasks are simple enough to complete within a single object context — create a student, edit a lesson, view a report.

This assumption breaks down when tasks are relational rather than entity-scoped. Setting up a semester is not a "semester task" — it requires touching video lessons, submissions, resources, live sessions, quizzes, welcome packages, email templates, tags, teacher assignment criteria, and TA schedules. The object model forces the admin to manually traverse the object graph that the system does not expose.

Strengths

Risks

Affinity with Current State

This is the current state. 100% of the existing structure survives because the framework describes what already exists. The question is not whether it survives but whether it should.

Natural Opportunities

Minimal. The object-based model does not naturally enable new capabilities — it enables new entities. Adding billing would mean adding a Billing section with CRUD screens for subscriptions, payment plans, and scholarships. But the model does not enable the relational capabilities the admin needs: seeing a student's payment status on their profile, linking deactivation to subscription cancellation, or surfacing failed payments on a dashboard. These require breaking the object-per-section boundary, which is exactly what the object model resists.


Framework 2: Domain-Based (From Interview)

Principle

Domain-based navigation organizes the interface around areas of responsibility — coherent bundles of activity that a role owner manages as a unit. Instead of grouping by data type, it groups by accountability: everything the admin needs for "student management" lives together, even if the underlying data spans multiple tables. The organizing question shifts from "what kind of thing is this?" to "whose job is this?" or "what part of the operation does this belong to?"

Application to QuranFlow

The admin proposed seven domains in interview Q4. Applying these to the current 35+ screens:

Student Management — everything that affects individual students:

Semester Management — the container that governs enrollment and time:

Content — passive material students consume:

Scheduling — all live interactions:

Teacher Management — everything about TAs:

Reporting — all analytics and exports:

Admin / Misc — system-level configuration:

Proposed Navigation Structure

├── Dashboard (NEW — rebuilt as operational overview)
│
├── Student Management
│   ├── Students                         ← from People
│   ├── Student Report                   ← from Reports
│   ├── Promoted Students                ← from Reports
│   ├── Submissions (Assessments)        ← from Program
│   ├── Student Billing (NEW) — per-student payment status, subscription, Stripe data
│   └── Failed Sign Ups                  ← from Reports
│
├── Semester Management
│   ├── Semesters                        ← from top-level Semesters
│   ├── Welcome Package                  ← from Settings
│   ├── Email Management                 ← from Settings
│   ├── Operations (bulk actions)        ← from Settings
│   ├── Tags                             ← from Settings
│   └── Semester Close Workflow (NEW) — promotion, payment setup, deactivation sequence
│
├── Content
│   ├── Video Lessons                    ← from Program
│   ├── Resources                        ← from Program
│   ├── Recordings                       ← from Program
│   ├── Tutorials                        ← from Program
│   ├── MCQ Questions                    ← from Program
│   └── Quizzes                          ← from Program
│
├── Scheduling
│   ├── Live Sessions                    ← from Program
│   ├── Upcoming Appointments            ← from Appointments
│   ├── TA Schedules                     ← from Appointments
│   └── Holidays                         ← from Appointments (merged with Live Session Holidays from Students Management)
│
├── Teacher Management
│   ├── Teaching Assistants              ← from People
│   ├── Teacher Assignment Criteria      ← from Settings
│   ├── TA Reports                       ← from Reports
│   └── Student Groups (NEW — surfaced from TA detail pages into nav)
│
├── Billing & Payments (NEW)
│   ├── Payment Overview (NEW) — failed payments, expiring subscriptions, past-due accounts
│   ├── Payment Plans                    ← from Settings
│   ├── Coupons                          ← from Settings
│   ├── Family Plans (NEW) — replaces Google Sheet
│   ├── Scholarships & Deferments (NEW) — replaces Google Sheet
│   └── Payments (transaction history)   ← from Reports
│
├── Reporting
│   ├── Referrals                        ← from Reports
│   ├── Specific Reports                 ← from Reports
│   ├── Student Composition Report (NEW) — new vs. repeat vs. graduating breakdown
│   └── Logs                             ← from Settings
│
├── Admin / System
│   ├── Admins                           ← from People
│   ├── Settings (General)               ← from Settings
│   ├── Notifications                    ← from Settings
│   └── Support Links                    ← from Students Management grab-bag

How This Addresses Key Needs

Billing gap (Q5, Q9): Billing becomes a first-class top-level domain with its own section, housing Payment Plans and Coupons (moved from Settings), new screens for family plans, scholarships, and deferments (replacing Google Sheets), and a Payment Overview screen for at-a-glance billing health. Student-level billing also appears in Student Management, so the admin can see a student's payment status without leaving that domain. Consolidated student profile (Q2): Student Management groups Students, Student Report, Submissions, Promoted Students, and a new Student Billing screen. While these are still separate screens, they are now siblings in a single nav section rather than scattered across People, Reports, and Program. The foundation for a rich student profile is laid. Semester setup fragmentation (Q1): Semester Management groups Semesters, Welcome Package, Email Management, Tags, and Operations — all the configuration screens that previously lived in Settings. Content and Scheduling remain separate domains, so setup still touches 3 sections (Semester Management, Content, Scheduling) instead of 4+, and each section is more coherent. A Semester Close Workflow screen can enforce sequencing. Dashboard problem (Q6, Q7): The Dashboard is marked for rebuild as an operational overview, but the domain framework itself does not prescribe alert logic — this would need to be layered on (which is why Hub-and-Spoke is a natural complement). Settings catch-all (Q6): Fully dissolved. Every item from Settings moves to its logical domain — Welcome Package to Semester Management, Teacher Assignment Criteria to Teacher Management, Payment Plans to Billing, etc. The "Students Management" grab-bag is also eliminated: Level 0 promotion goes to Semester Management (Operations), Holidays merge with Scheduling, and Support Links go to Admin.

Assumptions About the User

The domain model assumes the admin thinks in terms of ownership areas — "I'm doing student stuff right now" or "I'm in semester mode." It assumes the user can reliably identify which domain a task belongs to and that domains are mutually exclusive enough that items don't feel like they belong in two places simultaneously.

This model matches a user who is a generalist operator — someone who wears multiple hats and switches between them throughout the day. The admin confirmed this mental model directly: she described organizing by "domains of responsibility" when asked how she would restructure navigation [Q4]. The key cognitive skill required is domain classification, not entity identification (object model) or task sequencing (workflow model).

Strengths

Risks

Affinity with Current State

Moderate. The PROGRAM section largely survives as "Content" (minus Live Sessions and Submissions). APPOINTMENTS survives as "Scheduling" (plus Live Sessions). REPORTS partially survives as "Reporting" (minus items redistributed to Student and Teacher Management). SEMESTERS is absorbed into a richer Semester Management domain. PEOPLE is split into two separate domains. SETTINGS is dissolved entirely. Roughly 40-50% of the current placement survives; the rest moves to a more logical home.

Natural Opportunities


Framework 3: Workflow/Task-Based

Principle

Workflow-based navigation organizes the interface around what the user is trying to accomplish. Instead of presenting a static menu of sections, it presents a menu of tasks or processes: "Set Up New Semester," "Handle Student Issue," "Close Semester and Promote." Each task is a guided sequence that brings the user through the relevant screens in the correct order, pre-populating context and eliminating the need to know where things live. The organizing question is not "what thing do I need?" or "what domain am I in?" but "what am I trying to do?"

Application to QuranFlow

The current 35+ screens would be reorganized into guided workflows. Representative task flows:

"Set Up New Semester" — a wizard-style sequence:

  1. Create semester record (dates, name) with inline explanations of each date field
  2. Clone or upload content (videos, submissions, resources, quizzes) — system shows what was in the previous semester and offers to copy
  3. Configure live sessions and schedules
  4. Set up welcome package
  5. Configure automation emails with preview of triggers
  6. Assign TAs and set criteria
  7. Open registration
  8. Checklist view showing completion status

This single workflow replaces what currently requires touching: Semesters, Video Lessons, Submissions, Resources, Live Sessions, Quizzes, Welcome Package, Email Management, Tags, Teacher Assignment Criteria, and TA Schedules — 11 screens across 4 sections [Q1].

"Handle Student Issue" — contextual investigation flow:

  1. Search/select student
  2. See consolidated profile (level, TA, submissions, payments, appointments, semester history)
  3. Take action (promote, reset, deactivate, adjust payment)
  4. Log resolution

"Close Semester / Promote Students" — sequenced end-of-semester process:

  1. Review EOC assessment results
  2. Handle edge cases (teacher discretion, threshold students)
  3. Finalize promotion decisions
  4. Set up payments for continuing students (after promotions, not before — addressing the interview pain point [Q3])
  5. Deactivate departing students with linked subscription cancellation
  6. Archive semester

"Manage Appointments This Week" — operational view:

  1. Calendar view of all upcoming sessions across TAs
  2. Flag conflicts and gaps
  3. Reschedule or cancel inline

Proposed Navigation Structure

├── Dashboard (NEW — task launcher + active workflow tracker)
│
├── Semester Setup Wizard (NEW — guided multi-step flow)
│   ├── Step 1: Create/Edit Semester       (uses: Semesters)
│   ├── Step 2: Upload/Clone Video Lessons (uses: Video Lessons ← from Program)
│   ├── Step 3: Upload/Clone Submissions   (uses: Submissions ← from Program)
│   ├── Step 4: Upload/Clone Resources     (uses: Resources ← from Program)
│   ├── Step 5: Upload/Clone Tutorials     (uses: Tutorials ← from Program)
│   ├── Step 6: Upload/Clone MCQ Questions & Quizzes (uses: MCQ Questions, Quizzes ← from Program)
│   ├── Step 7: Configure Live Sessions    (uses: Live Sessions ← from Program)
│   ├── Step 8: Set Up Welcome Package     (uses: Welcome Package ← from Settings)
│   ├── Step 9: Configure Email Automation (uses: Email Management ← from Settings)
│   ├── Step 10: Set Up Tags               (uses: Tags ← from Settings)
│   ├── Step 11: Assign TAs & Criteria     (uses: Teacher Assignment Criteria ← from Settings, Teaching Assistants ← from People)
│   ├── Step 12: Configure TA Schedules    (uses: TA Schedules ← from Appointments)
│   ├── Step 13: Set Holidays              (uses: Holidays ← from Appointments)
│   └── Step 14: Open Registration — checklist summary + go-live
│
├── Student Support Flow (NEW — contextual investigation)
│   ├── Search/Select Student              (uses: Students ← from People)
│   ├── Consolidated Student View (NEW) — profile, submissions, payments, appointments, history
│   │   (merges data from: Students, Student Report ← from Reports, Submissions ← from Program,
│   │    Payments ← from Reports, Upcoming Appointments ← from Appointments)
│   ├── Student Billing View (NEW) — subscription, payment history, Stripe data
│   └── Take Action — promote, reset, deactivate + cancel subscription, adjust payment
│
├── Semester Close Workflow (NEW — sequenced end-of-semester)
│   ├── Step 1: Review EOC Assessments (NEW)
│   ├── Step 2: Handle Edge Cases (NEW) — teacher discretion, threshold students
│   ├── Step 3: Finalize Promotions        (uses: Promoted Students ← from Reports, Operations bulk promote ← from Settings)
│   ├── Step 4: Set Up Payments for Continuing Students (NEW — after promotions, not before)
│   ├── Step 5: Deactivate Departing Students (NEW — linked deactivation + Stripe cancellation)
│   └── Step 6: Archive Semester           (uses: Semesters)
│
├── Manage Appointments (NEW — weekly operations view)
│   ├── Calendar View (NEW) — all sessions + 1:1 appointments across all TAs
│   ├── Upcoming Appointments              ← from Appointments
│   ├── TA Schedules                       ← from Appointments
│   └── Holidays                           ← from Appointments
│
├── Daily Monitoring (NEW — reactive operations)
│   ├── Submission Review Queue (NEW) — TAs with >48hr backlog, students falling behind
│   ├── Payment Alerts (NEW) — failed payments, expiring subscriptions
│   ├── Recordings                         ← from Program
│   └── App Issue Reports (NEW)
│
├── Direct Access (fallback for ad-hoc tasks)
│   ├── Students                           ← from People
│   ├── Teaching Assistants                ← from People
│   ├── Admins                             ← from People
│   ├── Student Report                     ← from Reports
│   ├── TA Reports                         ← from Reports
│   ├── Payments (transaction history)     ← from Reports
│   ├── Failed Sign Ups                    ← from Reports
│   ├── Referrals                          ← from Reports
│   ├── Specific Reports                   ← from Reports
│   ├── Video Lessons                      ← from Program
│   ├── Submissions (Assessments)          ← from Program
│   ├── Resources                          ← from Program
│   ├── Live Sessions                      ← from Program
│   ├── Tutorials                          ← from Program
│   ├── MCQ Questions                      ← from Program
│   ├── Quizzes                            ← from Program
│   └── Students Management (grab-bag — tools redistributed to workflows)
│
├── Billing Configuration
│   ├── Payment Plans                      ← from Settings
│   ├── Coupons                            ← from Settings
│   ├── Family Plans (NEW)
│   ├── Scholarships & Deferments (NEW)
│   └── Subscription Overview (NEW)
│
├── System Admin
│   ├── Settings (General)                 ← from Settings
│   ├── Notifications                      ← from Settings
│   ├── Operations                         ← from Settings
│   ├── Logs                               ← from Settings
│   ├── Support Links                      ← from Students Management grab-bag
│   └── Email Management                   ← from Settings (also embedded in Semester Setup)

How This Addresses Key Needs

Billing gap (Q5, Q9): Billing is woven into workflows and has a persistent Billing Configuration section. Student Support Flow includes a Student Billing View with Stripe data. Semester Close Workflow includes payment setup as Step 4, sequenced after promotions (directly fixing the Q3 pain point). Daily Monitoring surfaces payment alerts proactively. Consolidated student profile (Q2): The Student Support Flow creates a Consolidated Student View that merges profile, submissions, payments, appointments, and semester history into a single investigation context — the most direct answer to Q2 of any framework. However, this view only exists within the workflow; ad-hoc access requires the Direct Access fallback. Semester setup fragmentation (Q1): Eliminated by design. The Semester Setup Wizard is a single 14-step guided flow that replaces the current 11-screen, 4-section journey. Content cloning is offered at each step. A checklist tracks completion. This is the framework's signature strength. Dashboard problem (Q6, Q7): The Dashboard becomes a task launcher and active-workflow tracker; Daily Monitoring captures the alert-driven items from Q7 (TA response times, failed payments, students falling behind). Together they replace the passive dashboard with an action-oriented surface. Settings catch-all (Q6): Fully dissolved. Every Settings item is absorbed into a workflow step (Welcome Package, Email Management, Tags, Teacher Assignment Criteria become steps in Semester Setup), a billing section (Payment Plans, Coupons), or System Admin (Settings, Logs, Operations, Notifications). The "Students Management" grab-bag is dissolved: Level 0 promotion becomes part of Semester Close Workflow.

Assumptions About the User

The workflow model assumes the admin's tasks are predictable, repetitive, and sequenceable. It assumes that most work can be decomposed into a finite set of known procedures, and that presenting tools in procedural order reduces errors and cognitive load. The user does not need to know the system's internal structure — only what they want to accomplish.

This model assumes a user who benefits from structure and guardrails. It is strongest for infrequent, high-stakes tasks (like semester setup, which happens a few times a year) and weakest for frequent, ad-hoc tasks (like checking a student's status, which is unpredictable and variable).

Strengths

Risks

Affinity with Current State

Low. Almost nothing survives in its current form. The 9 top-level sections disappear entirely, replaced by a set of task flows. Individual screens may persist as steps within workflows, but their navigation context changes completely. The admin would need to relearn how to find everything. The PROGRAM section's 8 screens would be disaggregated across multiple workflows (some in semester setup, some in daily monitoring). SETTINGS would be dissolved. REPORTS might survive as a standalone area for ad-hoc queries, but most reporting would be embedded in the workflows that produce the data.

Natural Opportunities


Framework 4: Phase-Based / Temporal

Principle

Phase-based navigation adapts the interface based on where the organization is in its operational cycle. For QuranFlow, this means the semester lifecycle: setup, active, and close. During each phase, the tools relevant to that phase are promoted to prominence — prominent placement, larger tiles, top of the sidebar — while tools irrelevant to the current phase are demoted or hidden. A persistent layer remains available for tasks that do not vary by phase. The organizing question is "what time is it?" — the system's temporal state determines what the admin sees.

Application to QuranFlow

The interview confirmed three distinct phases with distinct tool needs [Q1, Q2, Q3]:

Setup Phase (before semester start):

Active Phase (during semester):

Close Phase (end of semester):

Persistent Layer (always available regardless of phase):

Proposed Navigation Structure

The sidebar adapts based on the current semester phase. Items marked [prominent] are promoted to the top of the sidebar with visual emphasis during that phase. Items marked [demoted] are collapsed into a "More" group or shown with reduced visual weight. The Persistent Layer is always visible regardless of phase.

SETUP PHASE (before semester start):

├── Setup Checklist (NEW) — phase-aware progress tracker [prominent]
│
├── Semester Configuration [prominent]
│   ├── Semesters
│   ├── Welcome Package                  ← from Settings
│   ├── Email Management                 ← from Settings
│   └── Tags                             ← from Settings
│
├── Content Upload [prominent]
│   ├── Video Lessons                    ← from Program
│   ├── Submissions (Assessments)        ← from Program
│   ├── Resources                        ← from Program
│   ├── Recordings                       ← from Program
│   ├── Tutorials                        ← from Program
│   ├── MCQ Questions                    ← from Program
│   └── Quizzes                          ← from Program
│
├── Scheduling Setup [prominent]
│   ├── Live Sessions                    ← from Program
│   ├── TA Schedules                     ← from Appointments
│   ├── Holidays                         ← from Appointments
│   └── Teacher Assignment Criteria      ← from Settings
│
├── TA Assignment [prominent]
│   ├── Teaching Assistants              ← from People
│   └── Student Groups (NEW)
│
├── ── ── [demoted below fold] ── ── ──
│   ├── Student Report                   ← from Reports [demoted — no students yet]
│   ├── TA Reports                       ← from Reports [demoted]
│   ├── Submissions review               [demoted — no submissions yet]
│   ├── Upcoming Appointments            ← from Appointments [demoted]
│   └── Promoted Students                ← from Reports [demoted]
│
├── Persistent Layer (always visible — see below)

ACTIVE PHASE (during semester):

├── Dashboard (NEW — rebuilt with alerts) [prominent]
│   ├── Students falling behind (NEW)
│   ├── TA response time flags (NEW)
│   ├── Failed payment alerts (NEW)
│   └── Appointment utilization (NEW)
│
├── Student Support [prominent]
│   ├── Students                         ← from People
│   ├── Student Report                   ← from Reports
│   ├── Submissions (Assessments)        ← from Program
│   └── Student Billing (NEW) — per-student payment/subscription data
│
├── Scheduling [prominent]
│   ├── Live Sessions                    ← from Program
│   ├── Upcoming Appointments            ← from Appointments
│   ├── TA Schedules (view mode)         ← from Appointments
│   └── Holidays                         ← from Appointments
│
├── Content (view/edit) [standard]
│   ├── Video Lessons                    ← from Program
│   ├── Resources                        ← from Program
│   ├── Recordings                       ← from Program
│   ├── Tutorials                        ← from Program
│   ├── MCQ Questions                    ← from Program
│   └── Quizzes                          ← from Program
│
├── ── ── [demoted below fold] ── ── ──
│   ├── Welcome Package                  ← from Settings [demoted — setup complete]
│   ├── Email Management                 ← from Settings [demoted]
│   ├── Operations                       ← from Settings [demoted — no bulk actions mid-semester]
│   └── Semester Configuration           [demoted — already configured]
│
├── Persistent Layer (always visible — see below)

CLOSE PHASE (end of semester):

├── Semester Close Checklist (NEW) [prominent]
│
├── Assessment & Promotion [prominent]
│   ├── Student Report                   ← from Reports
│   ├── EOC Assessment Review (NEW)
│   ├── Promoted Students                ← from Reports
│   └── Operations (bulk promote)        ← from Settings
│
├── Payment Setup [prominent] — sequenced AFTER promotions
│   ├── Payment Plans                    ← from Settings
│   ├── Continuing Student Billing (NEW) — set up Stripe for next semester
│   └── Deactivation Workflow (NEW) — linked deactivation + subscription cancel
│
├── Student Support [standard]
│   ├── Students                         ← from People
│   ├── Submissions (Assessments)        ← from Program
│   └── Student Billing (NEW)
│
├── Semester Transition [prominent]
│   ├── Semesters — archive current, prepare next
│   └── Auto-Transition Trigger (NEW)
│
├── ── ── [demoted below fold] ── ── ──
│   ├── Content Upload                   [demoted — not uploading during close]
│   ├── Welcome Package                  ← from Settings [demoted]
│   ├── Recordings                       ← from Program [demoted]
│   └── Tutorials                        ← from Program [demoted]
│
├── Persistent Layer (always visible — see below)

PERSISTENT LAYER (always visible in all phases):

├── Students                             ← from People
├── Teaching Assistants                  ← from People
├── Admins                               ← from People
├── Billing & Payments
│   ├── Payment Overview (NEW) — failed payments, subscription health
│   ├── Payment Plans                    ← from Settings
│   ├── Coupons                          ← from Settings
│   ├── Family Plans (NEW)
│   ├── Scholarships & Deferments (NEW)
│   └── Payments (transaction history)   ← from Reports
├── Reports
│   ├── TA Reports                       ← from Reports
│   ├── Failed Sign Ups                  ← from Reports
│   ├── Referrals                        ← from Reports
│   └── Specific Reports                 ← from Reports
├── System
│   ├── Settings (General)               ← from Settings
│   ├── Notifications                    ← from Settings
│   ├── Logs                             ← from Settings
│   └── Support Links                    ← from Students Management grab-bag

How This Addresses Key Needs

Billing gap (Q5, Q9): Billing appears in the Persistent Layer (always available) with a full section including Payment Overview, Payment Plans, Coupons, Family Plans, and Scholarships. During Close Phase, billing is elevated to a prominent position for continuing-student payment setup. During Active Phase, the Dashboard surfaces payment alerts. This is the most contextually nuanced billing treatment — it adapts its prominence to when billing matters most. Consolidated student profile (Q2): Partially addressed. During Active Phase and Close Phase, Student Support groups Students, Student Report, Submissions, and a new Student Billing screen. These are co-located in the sidebar during the phases when student investigation is most frequent. However, a true consolidated single-page profile is not inherent to the framework. Semester setup fragmentation (Q1): Directly addressed. During Setup Phase, every screen needed for semester configuration is promoted to the top of the sidebar: Semester Configuration, Content Upload, Scheduling Setup, and TA Assignment. The admin no longer hunts across sections — the phase brings all setup tools together. A Setup Checklist tracks progress. Dashboard problem (Q6, Q7): During Active Phase, the Dashboard is the primary prominent element, rebuilt with the exact alerts from Q7: students falling behind, TA response times, failed payments, appointment utilization. The phase model naturally makes the dashboard prominent when its alerts are most actionable. Settings catch-all (Q6): Fully dissolved. Each Settings item is redistributed to its phase-relevant location: Welcome Package and Email Management to Setup Phase's Semester Configuration, Teacher Assignment Criteria to Scheduling Setup, Payment Plans to Close Phase and Persistent Layer Billing, etc. The "Students Management" grab-bag is dissolved: its tools are absorbed into the phases where they are used.

Assumptions About the User

The phase model assumes the admin's work is strongly correlated with the semester lifecycle — that the tools needed in week 1 of setup are fundamentally different from those needed in week 8 of active teaching, which are different from those needed during close. It assumes the admin will benefit from having irrelevant tools hidden rather than feeling disoriented by a changing interface.

This model assumes a user who works in distinct modes and who would appreciate the system "knowing" what they need. It is strongest for a single power user who understands the phases and weakest for secondary users who do not track the semester lifecycle and would be confused by navigation that changes on them.

Strengths

Risks

Affinity with Current State

Low to moderate. The current structure is entirely phase-independent — every section is always visible. The phase model would require dismantling the current sections and reassigning every screen to a phase (or the persistent layer). Some current groupings would survive within a phase (the PROGRAM screens would largely map to setup phase), but the navigational container changes entirely. The persistent layer might resemble a simplified version of the current nav, but the overall experience would feel fundamentally different.

Natural Opportunities


Framework 5: Entity-Centric / CRM-Style

Principle

Entity-centric navigation starts from the premise that most admin work is centered on a specific entity — a particular student, a specific semester, a given TA. Instead of organizing by data type, domain, or task, the interface organizes around entity selection: the admin identifies who or what they are working with, and the system presents a comprehensive page showing everything about that entity. Each entity page is a mini-application with tabs or sections covering all related data — profile, submissions, payments, appointments, history. The organizing question is "who or what am I dealing with?"

Application to QuranFlow

The current 35+ screens would collapse into a small number of entity types, each with rich detail pages:

Student Entity Page (replaces parts of: Students, Student Report, Submissions, Payments, Appointments):

Semester Entity Page (replaces parts of: Semesters, Video Lessons, Submissions, Resources, Live Sessions, Recordings, Tutorials, MCQ Questions, Quizzes, Welcome Package, Email Management, Tags):

TA Entity Page (replaces parts of: Teaching Assistants, TA Schedules, TA Reports, Student Groups):

Cross-cutting sections (not entity-specific):

Proposed Navigation Structure

├── Global Search (NEW — primary navigation mechanism, always accessible)
│
├── Students (entity list → entity pages)
│   └── [Student Entity Page] (NEW — rich detail page per student)
│       ├── Tab: Profile                 (uses: Students ← from People)
│       ├── Tab: Submissions             (uses: Submissions ← from Program)
│       ├── Tab: Payments (NEW) — subscription status, history, Stripe data, family plan, scholarship/deferment
│       ├── Tab: Appointments            (uses: Upcoming Appointments ← from Appointments)
│       ├── Tab: Semester History (NEW) — every semester, level, pass/fail, electives
│       └── Tab: Actions — promote, reset progress, deactivate + cancel subscription, resend registration
│       (merges data from: Students, Student Report ← from Reports, Submissions ← from Program,
│        Payments ← from Reports, Promoted Students ← from Reports, Upcoming Appointments ← from Appointments)
│
├── Semesters (entity list → entity pages)
│   └── [Semester Entity Page] (NEW — comprehensive semester hub)
│       ├── Tab: Overview                (uses: Semesters)
│       │   ├── Dates, status, registration settings with inline documentation
│       │   └── Auto-transition controls (NEW)
│       ├── Tab: Content Status (NEW) — checklist of all content with upload status per level
│       │   ├── Video Lessons            ← from Program
│       │   ├── Submissions (Assessments)← from Program
│       │   ├── Resources                ← from Program
│       │   ├── Recordings               ← from Program
│       │   ├── Tutorials                ← from Program
│       │   ├── MCQ Questions            ← from Program
│       │   └── Quizzes                  ← from Program
│       ├── Tab: Enrollment (NEW) — student list for this semester with levels, statuses, filtering
│       ├── Tab: Automation              (uses: Email Management ← from Settings, Tags ← from Settings)
│       ├── Tab: Welcome Package         (uses: Welcome Package ← from Settings)
│       └── Tab: Scheduling              (uses: Live Sessions ← from Program)
│
├── Teachers (entity list → entity pages)
│   └── [TA Entity Page] (NEW — comprehensive TA hub)
│       ├── Tab: Profile                 (uses: Teaching Assistants ← from People)
│       ├── Tab: Schedule                (uses: TA Schedules ← from Appointments)
│       │   └── Includes holidays        (uses: Holidays ← from Appointments)
│       ├── Tab: Students & Groups (NEW) — assigned students, groups, submission review queue
│       │   (uses: Student Groups, currently only on TA detail pages)
│       ├── Tab: Performance (NEW) — response times, review counts, student outcomes
│       │   (uses: TA Reports ← from Reports)
│       └── Tab: Assignment Rules        (uses: Teacher Assignment Criteria ← from Settings)
│
├── Cross-Entity Sections
│   ├── Dashboard (NEW — rebuilt as operational alert surface)
│   │   ├── Students falling behind (links to filtered student list)
│   │   ├── TA response time flags (links to filtered TA list)
│   │   ├── Failed payment alerts (links to student entity pages)
│   │   ├── Appointment utilization (links to scheduling view)
│   │   └── Semester status prompts (links to semester entity page)
│   │
│   ├── Billing Overview (NEW)
│   │   ├── Subscription Health (NEW) — aggregate view of all active subscriptions
│   │   ├── Failed Payments (NEW) — list with links to student entity pages
│   │   ├── Payment Plans                ← from Settings
│   │   ├── Coupons                      ← from Settings
│   │   ├── Family Plans (NEW) — replaces Google Sheet
│   │   └── Scholarships & Deferments (NEW) — replaces Google Sheet
│   │   (Payments transaction history ← from Reports — embedded here)
│   │
│   ├── Scheduling Overview (NEW — cross-entity calendar)
│   │   ├── Calendar View (NEW) — all live sessions + 1:1 appointments across all TAs
│   │   ├── Upcoming Appointments        ← from Appointments
│   │   └── Holidays (system-wide view)  ← from Appointments
│   │
│   ├── Reports (aggregate analytics not tied to a single entity)
│   │   ├── Student Report               ← from Reports (also accessible from Student Entity Page)
│   │   ├── Failed Sign Ups              ← from Reports
│   │   ├── Referrals                    ← from Reports
│   │   ├── Specific Reports             ← from Reports
│   │   ├── Student Composition (NEW) — new vs. repeat vs. graduating
│   │   └── Promoted Students            ← from Reports (also accessible from Student Entity Page)
│   │
│   ├── Operations
│   │   ├── Bulk Promote (Year 1 → Year 2)    ← from Settings (Operations)
│   │   ├── Bulk User Registration             ← from Settings (Operations)
│   │   └── Data Migration                     ← from Settings (Operations)
│   │
│   └── Admin Tools
│       ├── Admins                       ← from People
│       ├── Settings (General)           ← from Settings
│       ├── Notifications                ← from Settings
│       ├── Logs                         ← from Settings
│       └── Support Links                ← from Students Management grab-bag

How This Addresses Key Needs

Billing gap (Q5, Q9): Billing is addressed at two levels. At the entity level, every Student Entity Page has a Payments tab showing subscription status, payment history, family plan membership, scholarship/deferment flags, and Stripe data — this is the admin's primary billing use case ("what is this student's payment situation?"). At the aggregate level, a Billing Overview section provides subscription health dashboards, failed payment lists, and configuration screens for Payment Plans, Coupons, Family Plans, and Scholarships. This dual approach means the admin never leaves the student context for individual billing questions and has a dedicated section for billing operations. Consolidated student profile (Q2): This is the framework's defining strength. The Student Entity Page is precisely what the admin requested: level, TA, gender, semester history, submission count, payment status, appointments — all on one page with tabs. Every piece of student data currently scattered across People, Reports, Program, Appointments, and Stripe is consolidated into a single entity page. This is the most complete answer to Q2 of any framework. Semester setup fragmentation (Q1): The Semester Entity Page puts dates, content status (with per-level completion tracking), enrollment, automation (email + tags), welcome package, and scheduling on a single tabbed page. What currently requires 11 screens across 4 sections becomes a single entity page. The Content Status tab functions as a built-in checklist showing what has been uploaded and what is missing. Dashboard problem (Q6, Q7): The Dashboard is rebuilt as a cross-entity alert surface. Each alert links directly to the relevant entity page with context preserved — clicking "3 failed payments" opens a filtered student list where each student links to their entity page with the Payments tab active. The entity model makes these deep links natural because every alert resolves to an entity. Settings catch-all (Q6): Fully dissolved. Every item from Settings is absorbed into an entity page tab (Teacher Assignment Criteria → TA Entity Page, Welcome Package → Semester Entity Page, Email Management → Semester Entity Page, Tags → Semester Entity Page) or a cross-entity section (Payment Plans → Billing Overview, Logs → Admin Tools). Nothing remains in a catch-all.

Assumptions About the User

The entity model assumes most admin work begins with knowing who or what they are working with. "A student emailed with a problem" — the admin starts by finding that student. "I need to set up the spring semester" — the admin starts by selecting that semester. The user needs the skill of entity identification and search, not domain classification or workflow sequencing.

This model is strongest for support-style work where the trigger is an entity (a student, a TA) and weakest for aggregate or cross-entity work where the trigger is a question ("how many students are behind?" or "what's the overall payment status?"). It assumes the admin already knows which entity to start with.

Strengths

Risks

Affinity with Current State

Low. The current structure organizes by data type with shallow detail pages. The entity model requires deep detail pages that consolidate data from across the system. No current section survives intact — each is disaggregated and redistributed across entity pages. The Students list page survives as the entry point to Student Entity Pages, but the detail page it links to would be completely rebuilt. Similarly for Semesters and TAs. The PROGRAM section (8 screens) is entirely absorbed into Semester Entity Pages. The SETTINGS section is dissolved. The REPORTS section partially survives as a cross-cutting area.

Natural Opportunities


Framework 6: Hub-and-Spoke / Dashboard-Driven

Principle

Hub-and-spoke navigation places a central dashboard at the center of the admin experience. This dashboard is not a passive overview (like the current one) but an active operational nerve center that detects exceptions, surfaces alerts, and links directly to the context where action is needed. The "hub" answers the question "what needs my attention right now?" Each alert or tile on the dashboard is a "spoke" that links to the relevant screen with context preserved — clicking "3 failed payments" takes the admin directly to a filtered list of those 3 students with payment actions available. The spoke sections still exist for direct access when the admin knows where to go, but the hub is the primary entry point for most reactive work.

Application to QuranFlow

The Hub (Dashboard) — rebuilt from scratch based on interview Q7:

Alert / Tile Data Source Spoke Destination
"5 students falling behind on submissions" Submission count vs. expected pace Filtered student list with submission details
"2 TAs with >48hr response time" Submission review timestamps TA list filtered to flagged TAs with review queues
"3 failed payments this week" Stripe webhook / API Payment issue list with student profiles and Stripe links
"Year 2: 4 of 12 appointments used this week" Appointment data Appointment calendar filtered to Year 2
"Semester close: 6 items remaining" Phase-aware checklist Semester configuration with incomplete items highlighted
"2 app issues reported by students" Student issue reports (new feature) Issue queue with student context

Spoke Sections (secondary nav, for direct access):

The spoke sections resemble a simplified domain-based structure. The key difference is that the dashboard, not the sidebar, is the primary workspace.

Proposed Navigation Structure

├── HUB: Dashboard (NEW — rebuilt as operational nerve center)
│   ├── Alert: "X students falling behind on submissions" (NEW)
│   │   └── → links to filtered Students list with submission details
│   ├── Alert: "X TAs with >48hr response time" (NEW)
│   │   └── → links to filtered Teaching Assistants list with review queues
│   ├── Alert: "X failed payments this week" (NEW)
│   │   └── → links to Payment Issues list with student profiles
│   ├── Alert: "Year 2: X of Y appointments used this week" (NEW)
│   │   └── → links to Upcoming Appointments filtered to Year 2
│   ├── Tile: "Semester [setup/close]: X items remaining" (NEW)
│   │   └── → links to Semester setup checklist
│   ├── Alert: "X app issues reported by students" (NEW)
│   │   └── → links to Issue Queue (NEW)
│   ├── Tile: Student body snapshot (NEW) — new vs. repeat vs. graduating
│   └── Quick actions: Search student, View today's appointments, Send notification
│
├── SPOKE: Students
│   ├── Students (list + search)         ← from People
│   ├── Student Report                   ← from Reports
│   ├── Promoted Students                ← from Reports
│   └── Failed Sign Ups                  ← from Reports
│
├── SPOKE: Semesters
│   ├── Semesters (list + setup status)
│   ├── Semester Setup Checklist (NEW) — what's configured, what's missing
│   ├── Welcome Package                  ← from Settings
│   ├── Email Management                 ← from Settings
│   ├── Tags                             ← from Settings
│   └── Operations (bulk actions)        ← from Settings
│
├── SPOKE: Content
│   ├── Video Lessons                    ← from Program
│   ├── Submissions (Assessments)        ← from Program
│   ├── Resources                        ← from Program
│   ├── Recordings                       ← from Program
│   ├── Tutorials                        ← from Program
│   ├── MCQ Questions                    ← from Program
│   └── Quizzes                          ← from Program
│
├── SPOKE: Scheduling
│   ├── Calendar View (NEW) — all live sessions + 1:1 appointments across TAs
│   ├── Live Sessions                    ← from Program
│   ├── Upcoming Appointments            ← from Appointments
│   ├── TA Schedules                     ← from Appointments
│   └── Holidays                         ← from Appointments (merged with Live Session Holidays from Students Management)
│
├── SPOKE: Teachers
│   ├── Teaching Assistants              ← from People
│   ├── Teacher Assignment Criteria      ← from Settings
│   ├── TA Reports                       ← from Reports
│   └── Student Groups (NEW — surfaced from TA detail pages)
│
├── SPOKE: Billing (NEW)
│   ├── Payment Overview (NEW) — subscription health, at-risk accounts, failed payments
│   ├── Payments (transaction history)   ← from Reports
│   ├── Payment Plans                    ← from Settings
│   ├── Coupons                          ← from Settings
│   ├── Family Plans (NEW) — replaces Google Sheet
│   └── Scholarships & Deferments (NEW) — replaces Google Sheet
│
├── SPOKE: Reports
│   ├── Referrals                        ← from Reports
│   ├── Specific Reports                 ← from Reports
│   ├── Student Composition (NEW) — new vs. repeat vs. graduating
│   └── Logs                             ← from Settings
│
├── SPOKE: Admin
│   ├── Admins                           ← from People
│   ├── Settings (General)               ← from Settings
│   ├── Notifications                    ← from Settings
│   ├── Support Links                    ← from Students Management grab-bag
│   └── Issue Queue (NEW) — student-reported app issues

How This Addresses Key Needs

Billing gap (Q5, Q9): Billing is addressed at two layers — the hub and the spoke — making it the most natural billing integration of any framework. The Dashboard surfaces billing exceptions proactively: failed payment alerts, expiring subscriptions, and past-due installments appear as tiles the admin sees immediately on login, eliminating the need to remember to check Stripe. The Billing spoke provides the persistent home for configuration and investigation: Payment Overview shows subscription health at a glance, Payment Plans and Coupons move from Settings, and new screens for Family Plans and Scholarships replace Google Sheets. The admin explicitly requested failed payment alerts on the dashboard [Q7] — this framework makes that the central organizing principle. Consolidated student profile (Q2): Partially addressed at the spoke level. The Students spoke groups Students, Student Report, Promoted Students, and Failed Sign Ups. Submissions remain in the Content spoke; Payments are in the Billing spoke. The hub model does not inherently produce a consolidated student page — but it is fully compatible with rich student detail pages (Entity-Centric concepts can be layered in). The hub's contribution is that clicking a dashboard alert like "3 students falling behind" takes the admin directly to those students with context preserved. Semester setup fragmentation (Q1): The Semesters spoke groups the semester record with Welcome Package, Email Management, Tags, and Operations — all previously scattered across Settings. Content and Scheduling remain in their own spokes, so setup still touches 3 spokes (Semesters, Content, Scheduling). However, the Dashboard adds a "Semester setup: X items remaining" tile that provides the checklist/progress-tracking the admin needs without requiring a guided wizard. This borrows the workflow concept as a dashboard feature. Dashboard problem (Q6, Q7): This is the framework's defining strength. The Dashboard is rebuilt from scratch as the admin's operational nerve center, directly implementing her Q7 wish list: app issues, appointment utilization, TA response time alerts, failed payment alerts, students falling behind. Every tile links to a filtered view in a spoke section with context preserved. The admin shifts from reactive (learning about problems when students email) to proactive (the system surfaces problems before they escalate). Settings catch-all (Q6): Fully dissolved. The spoke sections use a domain-like organization that distributes every Settings item to its logical home: Welcome Package and Email Management to Semesters, Teacher Assignment Criteria to Teachers, Payment Plans and Coupons to Billing, Logs to Reports, Support Links to Admin. The "Students Management" grab-bag is eliminated: Level 0 promotion goes to Semesters (Operations), Holidays merge into Scheduling, Support Links go to Admin.

Assumptions About the User

The hub model assumes most admin work is reactive — responding to issues that have already occurred or are about to occur. The system detects problems and presents them; the admin resolves them. This shifts the admin from a proactive navigator ("I'll go check if anyone has failed payments") to a reactive responder ("the system tells me 3 payments failed"). The user needs the skill of triage — assessing alerts and deciding what to act on — rather than navigation — knowing where to find things.

This model is strongest when the system has enough data and logic to reliably detect exceptions. It is weakest when the admin needs to do planned, proactive work (like semester setup) that is not triggered by an alert.

Strengths

Risks

Affinity with Current State

Moderate to high. The spoke sections can closely mirror the current structure (or a mildly reorganized version of it). The DASHBOARD screen would be completely rebuilt, but the rest of the nav could survive with minimal changes. This makes hub-and-spoke the lowest-disruption framework — the existing sections persist, and the improvement comes from adding an intelligent layer on top. Alternatively, the spoke sections could be reorganized into domains (creating a hybrid with Framework 2), which would increase disruption but also increase coherence.

Natural Opportunities


Framework Interactions

Before scoring each framework individually, it is worth mapping which frameworks are complementary (can be combined into a coherent hybrid) and which are competing (cannot coexist as co-equal organizing principles). This mapping sets up the hybrid candidates that will be evaluated in step 1.4.


Comparison Matrix

The following matrix scores each framework against four key evaluation criteria, using a 1-5 scale (1 = poor fit, 5 = excellent fit).

Scoring Criteria Definitions

Matrix

Framework Mental Model Match Implementation Effort Secondary User Fit Billing Accommodation Total
1. Object-Based (current) 2 5 4 2 13
2. Domain-Based 5 4 3 4 16
3. Workflow/Task-Based 3 2 2 2 9
4. Phase-Based / Temporal 3 2 1 2 8
5. Entity-Centric / CRM 4 1 3 4 12
6. Hub-and-Spoke 3 3 5 5 16

Score Rationale

Object-Based (current)

Domain-Based

Workflow/Task-Based

Phase-Based / Temporal

Entity-Centric / CRM

Hub-and-Spoke

Observations

Two frameworks tie at the top with a score of 16: Domain-Based and Hub-and-Spoke. This is notable because they are complementary, not competitive — domain-based excels at organizing the sections while hub-and-spoke excels at surfacing what matters now. A hybrid that uses domain-based spoke sections with a hub dashboard would score the maximum on multiple criteria.

Three frameworks score lowest (8-9): Phase-Based and Workflow-Based. Both have valuable concepts to borrow (phase-aware prompts, guided checklists) but significant risks as standalone navigation paradigms. They are best used as features within another framework rather than as the organizing principle.

Entity-Centric scores in the middle (12), held back primarily by implementation effort. Its concept of rich entity pages is the most direct solution to the admin's concrete requests (consolidated student profile, semester setup page), but building those pages is the most expensive option. The entity-centric concept is valuable; the entity-centric framework is expensive.

The matrix also reveals important patterns about hybrid potential. Domain-Based and Hub-and-Spoke are the most natural combination: Domain-Based provides the highest organizational structure score (Mental Model Match: 5) while Hub-and-Spoke provides the highest alert visibility scores (Secondary User Fit: 5, Billing Accommodation: 5). A hybrid inherits both strengths without either framework's primary weakness. Entity-Centric concepts — particularly rich entity pages with tabs — can be used within any framework without being the framework; a Domain-Based system with CRM-style Student and Semester pages gets the entity model's concrete benefits without its implementation cost as a standalone paradigm. Similarly, Phase-Based concepts (temporal prompts on the dashboard) and Workflow concepts (guided checklists for semester setup) are best deployed as features within a hybrid rather than as the organizing principle. This explains why three frameworks score low as standalone systems but contain high-value concepts: they are feature donors, not framework candidates.

This matrix feeds into the pre-filtering step (1.3) and candidate definition step (1.4) of the Redesign Plan.


Improvements and Opportunities Summary

The following is a consolidated list of every improvement opportunity identified across all six framework analyses. Each entry notes which framework(s) surfaced the opportunity, what interview evidence supports it, and whether it represents a net-new capability (does not exist today) or an enhancement of an existing capability.

  1. Semester setup checklist with progress tracking — Emerged from: Workflow (step completion state), Entity-Centric (Semester Entity Page content-status tab), Hub-and-Spoke (phase-aware dashboard tile). Evidence: Semester setup requires 11 screens across 4 sections [Q1]; admin does "extensive double-checking" after setup [Q8]. Type: NEW capability. The current system has no way to track setup completion status.

  2. Sequenced semester close (promotions before payments) — Emerged from: Workflow (enforced step order), Phase-Based (close phase tool prominence). Evidence: Stripe payment setup currently happens before promotion decisions are finalized, causing cascading corrections [Q3]. Type: ENHANCEMENT. The actions exist today but are unsequenced; this adds enforced ordering.

  3. Consolidated student profile — Emerged from: Entity-Centric (Student Entity Page with tabs), Domain-Based (student data grouped under Student Management). Evidence: Admin wants to see "level, TA, gender, semester history, submission count, and payment status" on one screen [Q2]. Type: NEW capability. Current student detail page shows only basic profile data without submissions, payments, or history.

  4. Alert-driven dashboard (operational hub) — Emerged from: Hub-and-Spoke (core principle). Evidence: Admin described current dashboard as "inaccurate and unhelpful" [Q6] and provided detailed wish list: app issues, appointment utilization, TA response times, failed payments, students falling behind [Q7]. Type: NEW capability. Current dashboard is a passive overview with no alerts or actionable links.

  5. Billing integration (failed payments, subscription status, payment history) — Emerged from: Hub-and-Spoke (billing alerts as dashboard tiles), Entity-Centric (Payment tab on student profiles), Domain-Based (Billing as a domain). Evidence: Billing is the admin's biggest pain point [Q5, Q9]; currently managed entirely in Stripe and Google Sheets with no backend presence. Type: NEW capability. Zero billing functionality exists in the backend today.

  6. TA performance monitoring (response times, review backlogs, outcomes) — Emerged from: Entity-Centric (TA Entity Page performance tab), Hub-and-Spoke (TA response time alerts), Domain-Based (Teacher Management domain). Evidence: Admin tracks TA performance in Google Sheets [Q2]; wants response time alerts [Q7]. Type: NEW capability. No TA performance data is surfaced in the backend.

  7. Phase-aware dashboard prompts — Emerged from: Phase-Based (core concept), Hub-and-Spoke (semester status tiles). Evidence: Admin's work follows three distinct phases — setup [Q1], active [Q2], close [Q3] — with distinct tool needs for each. Type: NEW capability. The system currently has no temporal awareness.

  8. Automatic semester status transitions — Emerged from: Phase-Based (temporal awareness infrastructure). Evidence: Admin requested auto-activation/deactivation based on start date; manual status switching is "risky" and "accidentally leaving an old semester active corrupts student profiles" [Q1]. Type: ENHANCEMENT. Semester status exists but must be switched manually.

  9. Contextual help text (per-domain, per-step) — Emerged from: Domain-Based (documentation structured by responsibility area), Workflow (inline guidance at each step). Evidence: Admin requested "clear inline documentation explaining what each feature does and how it affects other processes" [Q9]. Type: NEW capability. No inline documentation exists today. Domain-based structure enables help organized by responsibility area; workflow structure enables help at each procedural step.

  10. Search-first navigation — Emerged from: Entity-Centric (entity selection as primary nav mechanism). Evidence: Admin's support workflow already follows a search-first pattern — find student, then investigate [Q2]. Type: NEW capability. No global search exists in the backend.

  11. Semester content cloning (setup wizard action) — Emerged from: Workflow (clone-from-previous step in semester setup wizard). Evidence: The admin's most avoided task is re-uploading content each semester [Q8]; the workflow model naturally offers "clone from previous semester" at the point of need. Type: NEW capability. All content must be manually re-uploaded each semester.

  12. Student issue reporting system — Emerged from: Hub-and-Spoke (dashboard tile for "app issues reported by students" [Q7]). Evidence: The admin requested this as a dashboard feature; students currently have no in-app mechanism to report issues, and the admin has no queue to review them [Q7]. Type: NEW capability. This is a net-new communication channel between students and admin that does not exist in any form today. Should be a requirement for any framework.

  13. Linked deactivation + payment cancellation — Emerged from: Entity-Centric (Actions tab on Student Entity Page), Workflow (deactivation as a step in semester close). Evidence: Student deactivation is currently a disconnected two-step process — backend deactivation and Stripe subscription cancellation are performed separately with no link between them [Q3]. Type: ENHANCEMENT. Both actions exist but are decoupled across two systems. Any framework should enable a single "deactivate student" action that handles both.

  14. Content versioning / persistent content across semesters — Emerged from: Workflow (semester setup wizard with clone option), Entity-Centric (Semester Entity Page content-status tab). Evidence: Re-uploading content each semester is the admin's most avoided task [Q8]. Beyond the clone action in item 11, this is the deeper infrastructure: content that persists across semesters, with versioning so updates to a video lesson propagate without re-upload. Type: NEW capability. No content versioning or persistence infrastructure exists. This is framework-agnostic and should be a requirement regardless of navigation paradigm.

  15. Role-based navigation simplification — Emerged from: Hub-and-Spoke (spoke sections usable by secondary users independently of the hub), Domain-Based (secondary user navigation risk [Q4]). Evidence: TAs and view-only admins currently see the same navigation as the power admin, creating unnecessary complexity. Type: NEW capability. The backend has no role-based navigation filtering today. Any framework should support showing a simplified nav based on user role.

  16. Inline documentation system (framework-agnostic infrastructure) — Emerged from: All frameworks (each benefits from it, none inherently produce it). Evidence: The admin explicitly requested "clear inline documentation explaining what each feature does and how it affects other processes" [Q9]; navigation currently "lacks documentation and logic" [Q6]. Type: NEW capability. Distinct from item 9 (which is about structuring help content by domain or step), this is about building the system: tooltip infrastructure, field-level help, "what does this affect?" callouts, and a documentation content model. Framework-agnostic but critical.

  17. EOC assessment integration — Emerged from: Workflow (semester close sequence includes EOC review), Phase-Based (close phase surfaces assessment tools). Evidence: EOC assessments are currently tracked in Google Sheets populated by teachers [Q2]. Type: NEW capability. Bringing this into the backend would eliminate a major external dependency that currently forces the admin out of the system during semester close.

  18. Initial placement assessment tracking — Emerged from: Entity-Centric (Student Entity Page semester history), Domain-Based (Student Management domain). Evidence: Initial placement assessments have "no home in the backend" [Q2] and are tracked externally. Type: NEW capability. A new tracking capability needed regardless of framework.

  19. Student body composition reporting — Emerged from: Domain-Based (Reporting domain), Hub-and-Spoke (dashboard tile potential). Evidence: There is no report showing the breakdown of new vs. repeat vs. graduating students [Q2]. Type: NEW capability. A new reporting capability that would support enrollment planning and program health monitoring.