Requirements Traceability

Compliance Matrix

Detailed mapping of Data-SMARTS requirements to Universal Learning Portal implementation, with specific system locations for each capability.

88
Total Requirements
50
Fully Met
20
Partially Met
18
Not Met
68%
Coverage Score
Legend:
Met — Fully implemented
Partial — Needs enhancement
Not Met — Planned for development
Mobile App
Backend
Dashboard
DC

Data Collection

19/21 met2 partial
DC-1.1Met

Support for Early Grade Reading Assessments (EGRA) including letter naming, word reading, oral passage reading, and comprehension

Implementation Location
  • Mobile App → Assessment System → AssessmentDefinition entity
  • Mobile App → /assessment/perform → Timed section screens
  • Mobile App → /assessment/section → Letter sounds, word reading components
  • Backend → AssessmentSectionDefinition → Configurable section types
DC-1.2Met

Support for Early Grade Mathematics Assessments (EGMA) including number identification and arithmetic operations

Implementation Location
  • Mobile App → Assessment System → Same framework as EGRA
  • Mobile App → AssessmentDefinition → Configurable for math content
  • Backend → AssessmentQuestion → Supports numeric answer types
DC-1.3Met

Configurable assessment templates that can be adjusted without technical intervention

Implementation Location
  • Backend → AssessmentDefinition entity → Admin-configurable
  • Backend → AssessmentSectionDefinition → Sections, timing, scripts
  • Backend → AssessmentQuestion → Question text, scoring, order
  • Dashboard → Assessment Configuration screens
DC-1.4Met

Support for multiple languages without requiring translation of the core system

Implementation Location
  • Mobile App → app_localizations.dart → i18n framework
  • Mobile App → Assessment content stored as data, not code
  • Backend → Country entity → Language configuration
  • Backend → AssessmentDefinition → Language field for content
DC-2.1Met

Mobile-first design optimized for tablet and smartphone use in the field

Implementation Location
  • Mobile App → Flutter framework → Native mobile experience
  • Mobile App → Responsive layouts throughout 89 screens
  • Mobile App → Touch-optimized controls and buttons
  • Mobile App → Android (API 28+) and iOS (12+) support
DC-2.2Met

Intuitive user interface requiring minimal training for field staff

Implementation Location
  • Mobile App → Streamlined workflow: Login → School → Visit → Forms
  • Mobile App → Consistent navigation patterns across modules
  • Mobile App → Visual progress indicators
  • Mobile App → Script/guidance text in assessment screens
DC-3.1Met

Full offline operation for all data collection activities

Implementation Location
  • Mobile App → Realm database for local storage
  • Mobile App → OfflineQueueService → Queues all operations
  • Mobile App → All forms, schools, teachers cached locally
  • Mobile App → Works without any network connectivity
DC-3.2Met

Local storage of all forms, assessments, and reference data

Implementation Location
  • Mobile App → Realm DB → Schema version 4
  • Mobile App → 25+ entity types stored locally
  • Mobile App → ProjectForm, FormSection, FormQuestion entities
  • Mobile App → Pre-sync of reference data on login
DC-3.3Met

Automatic synchronization when connectivity is restored

Implementation Location
  • Mobile App → SyncService → 15-minute auto-sync interval
  • Mobile App → NetworkService → Connectivity monitoring
  • Mobile App → OfflineQueueService → Auto-process on reconnect
  • Mobile App → SyncService → Single-shot delta sync
DC-3.4Met

Conflict resolution for data modified both locally and remotely

Implementation Location
  • Mobile App → SyncProperties → Tracks versions
  • Mobile App → ConflictResolutionScreen → Manual resolution UI
  • Mobile App → Last-write-wins with timestamp tracking
  • Backend → Soft delete pattern preserves all versions
DC-4.1Met

Customizable timers for timed assessment sections (1-minute, 3-minute, etc.)

Implementation Location
  • Mobile App → AssessmentSectionDefinition → timed: true, timeLimit: seconds
  • Mobile App → /assessment/section → Timer component
  • Mobile App → Auto-stop when time expires
  • Backend → Configurable per section
DC-4.2Met

Support for traditional stopping rules in reading assessments

Implementation Location
  • Mobile App → Assessment screens → Early termination logic
  • Mobile App → Consecutive error tracking
  • Backend → AssessmentSectionDefinition → stoppingRules field
DC-4.3Met

Flexible scoring modes: positive marking (count correct) and negative marking (count errors)

Implementation Location
  • Mobile App → SectionAnswer → Stores raw answers
  • Mobile App → Score calculation based on mode
  • Backend → AssessmentSectionDefinition → scoringMode field
  • Backend → Configurable per assessment type
DC-5.1Partial

Audio recording for oral assessments with noise suppression

Implementation Location
  • Mobile App → Audio capture capability exists
  • Mobile App → Files stored locally and synced to S3
Note: Basic audio recording implemented. Advanced noise suppression requires enhancement.
DC-5.2Met

Photo capture for documentation and verification

Implementation Location
  • Mobile App → PhotoService → Camera/gallery integration
  • Mobile App → FormQuestion type: PHOTO
  • Mobile App → AWS S3 upload with compression
  • Mobile App → Offline queue for photo uploads
DC-5.3Met

GPS coordinate capture for each assessment session

Implementation Location
  • Mobile App → LocationService → GPS capture
  • Mobile App → SchoolVisit → latitude, longitude fields
  • Mobile App → Location embedded object with accuracy
  • Mobile App → Geolocator package integration
DC-5.4Met

Timestamp recording for all data entries

Implementation Location
  • Mobile App → All entities have createdAt, updatedAt
  • Mobile App → SectionAnswer → startTime, endTime
  • Backend → Audit timestamps on all records
  • Backend → Flyway migrations track schema changes
DC-6.1Met

Bulk import of learner lists via Excel/CSV

Implementation Location
  • Backend → Bulk import API endpoints
  • Backend → CSV/Excel parsing utilities
  • Dashboard → Import screens for schools, pupils, teachers
DC-6.2Met

Pre-loading of school and class roster information

Implementation Location
  • Mobile App → Initial sync loads all assigned schools
  • Mobile App → Teacher and pupil data pre-cached
  • Backend → Scoped data sync based on user role
DC-6.3Met

Unique learner identification for longitudinal tracking

Implementation Location
  • Mobile App → Pupil entity with UUID
  • Backend → Pupil → Unique ID generation
  • Backend → PupilAssessment links to pupilId
  • Backend → Historical assessment data preserved
DC-6.4Partial

Statistical sampling tools with stratification options

Implementation Location
  • Backend → Query DSL supports filtering by region/district
  • Backend → Random selection capabilities
Note: Basic sampling available. Advanced stratification tools need enhancement for full statistical sampling.
DQ

Data Cleaning

7/17 met7 partial
DQ-1.1Met

Field-level validation during data entry (format, range, required fields)

Implementation Location
  • Mobile App → FormQuestion → validation field (JSON rules)
  • Mobile App → Real-time validation on input
  • Mobile App → Required field indicators
  • Backend → Entity validation annotations
DQ-1.2Partial

Cross-field consistency checks (e.g., age vs grade level)

Implementation Location
  • Backend → Custom validation logic in services
  • Backend → Business rule checks on save
Note: Basic cross-field validation exists. More comprehensive consistency rules can be added.
DQ-1.3Met

Immediate feedback to data collectors on validation errors

Implementation Location
  • Mobile App → Inline error messages on forms
  • Mobile App → Visual indicators (red borders, icons)
  • Mobile App → Prevents submission until errors fixed
DQ-1.4Met

Configurable validation rules per assessment type

Implementation Location
  • Mobile App → FormQuestion → validation JSON field
  • Backend → ProjectForm → Form-level validation config
  • Backend → Admin-configurable without code changes
DQ-2.1Partial

Automatic detection of duplicate records based on configurable criteria

Implementation Location
  • Backend → Unique constraints on key fields
  • Backend → creationId prevents duplicate submissions
  • Backend → School merging capability exists
Note: Duplicate prevention exists. Fuzzy matching for detection needs enhancement.
DQ-2.2Not Met

Fuzzy matching for name variations and data entry errors

Note: Fuzzy matching algorithms not yet implemented. Planned for future development.
DQ-2.3Partial

Duplicate resolution workflow with merge capabilities

Implementation Location
  • Backend → School merge functionality exists
  • Backend → duplication_status field on District
Note: School merging available. Full workflow UI needs enhancement.
DQ-2.4Met

Prevention of duplicate submissions through unique identifiers

Implementation Location
  • Mobile App → UUID generation for all entities
  • Mobile App → creationId on TeacherVisit, SchoolVisit
  • Backend → Idempotent operations using creation IDs
  • Backend → Database unique constraints
DQ-3.1Not Met

Statistical outlier detection for assessment scores

Note: Statistical outlier detection not yet implemented. Planned for analytics enhancement.
DQ-3.2Not Met

Pattern analysis to identify suspicious data (e.g., identical scores)

Note: Pattern analysis not yet implemented. Planned for data quality module.
DQ-3.3Partial

Flagging of unusual response patterns for review

Implementation Location
  • Backend → SchoolVisit → validationDecision field
  • Backend → Manual flagging capability exists
Note: Manual flagging exists. Automated pattern detection planned.
DQ-4.1Partial

Monitoring of required field completion rates

Implementation Location
  • Backend → Query DSL can aggregate completion data
  • Backend → isComplete flag on visits
Note: Data available for monitoring. Dedicated dashboard needed.
DQ-4.2Met

Identification of partially completed assessments

Implementation Location
  • Mobile App → PupilAssessment → status field (IN_PROGRESS, COMPLETED)
  • Mobile App → Incomplete assessments visible in list
  • Backend → Status tracking in database
DQ-5.1Partial

Multi-level review and approval process for flagged data

Implementation Location
  • Backend → validationDecision field on SchoolVisit
  • Backend → Role-based access for reviewers
Note: Basic approval exists. Full multi-level workflow needs enhancement.
DQ-6.1Met

Complete audit trail of all data modifications

Implementation Location
  • Backend → Soft delete pattern preserves all data
  • Backend → createdAt, updatedAt on all entities
  • Backend → SyncProperties tracks sync history
  • Backend → Flyway migrations versioned
DQ-6.2Partial

Recording of original values before any changes

Implementation Location
  • Backend → Soft delete never removes data
  • Backend → SyncProperties → serverVersion, localVersion
Note: Versions tracked. Full change history logging planned.
DQ-6.3Met

User attribution for all edits and approvals

Implementation Location
  • Mobile App → monitorId on all visits and assessments
  • Backend → User context on all operations
  • Backend → Manager/Monitor attribution on records
AN

Analysis & Reporting

8/15 met4 partial
AN-1.1Met

Real-time dashboards showing key performance indicators

Implementation Location
  • Mobile App → MonitoringDashboard screen
  • Backend → Query DSL for aggregations
  • Dashboard → KPI widgets and charts
AN-1.2Partial

Customizable dashboard layouts per user role

Implementation Location
  • Backend → Role-based data scoping
  • Backend → Different views per role type
Note: Role-based filtering exists. Drag-and-drop layout customization planned.
AN-1.3Met

Drill-down capability from summary to detailed views

Implementation Location
  • Mobile App → Navigation: Country → Region → District → School
  • Mobile App → Tap on metrics to see details
  • Dashboard → Hierarchical navigation
AN-2.1Met

Pre-built report templates for common reporting needs

Implementation Location
  • Backend → Query DSL with predefined queries
  • Backend → Standard report endpoints
  • Mobile App → SchoolReportScreen, VisitReportScreen
AN-2.2Not Met

Custom report builder with drag-and-drop functionality

Note: Custom report builder not yet implemented. Planned for dashboard enhancement.
AN-2.3Not Met

Scheduled report generation and distribution

Note: Scheduled reports not yet implemented. Planned for automation features.
AN-2.4Partial

Multiple export formats (PDF, Excel, CSV)

Implementation Location
  • Backend → CSV export capabilities
  • Backend → Data export endpoints
Note: CSV export exists. PDF generation planned.
AN-3.1Met

Longitudinal tracking of learner performance over time

Implementation Location
  • Mobile App → PupilAssessmentsScreen → History view
  • Backend → Pupil → Multiple PupilAssessment records
  • Backend → Historical data preserved indefinitely
AN-3.2Partial

Year-over-year comparison of assessment results

Implementation Location
  • Backend → CountryTerm entity → schoolYear field
  • Backend → Query DSL can filter by date ranges
Note: Data structure supports comparison. Dedicated comparison views planned.
AN-4.1Partial

Map-based visualization of performance by region

Implementation Location
  • Mobile App → Google Maps integration
  • Mobile App → SchoolLocationScreen → Map view
  • Backend → DistrictPolygon → Geographic boundaries
Note: Map infrastructure exists. Performance heat maps planned.
AN-4.2Not Met

Heat maps showing areas of concern or success

Note: Heat map visualization not yet implemented. Geographic data structure ready.
AN-5.1Met

Performance comparison across schools, districts, and regions

Implementation Location
  • Backend → Query DSL supports group-by aggregations
  • Backend → Geographic hierarchy queries
  • Dashboard → Comparison tables and charts
AN-5.2Met

Performance bands and proficiency levels

Implementation Location
  • Mobile App → SectionAnswer → bracket field
  • Backend → AssessmentSectionDefinition → analysisBrackets
  • Backend → Configurable proficiency thresholds
AN-6.1Met

Bulk data export for external analysis

Implementation Location
  • Backend → Export API endpoints
  • Backend → CSV data dumps
  • Backend → Scoped by user permissions
AN-6.2Met

API access for integration with other systems

Implementation Location
  • Backend → REST API → 150+ operations
  • Backend → REST API with delta sync protocol
  • Backend → Token-based authentication
AD

Administration

16/22 met6 partial
AD-1.1Met

Support for multiple independent organizations within a single deployment

Implementation Location
  • Backend → Organisation entity (root tenant)
  • Backend → All data scoped to organisation
  • Backend → Complete data isolation
AD-1.2Met

Data isolation between organizations with no cross-tenant data leakage

Implementation Location
  • Backend → Mandatory organisation_id on queries
  • Backend → Service layer enforces scoping
  • Backend → No cross-tenant joins possible
AD-1.3Partial

Organization-specific branding and configuration options

Implementation Location
  • Backend → Organisation → Configuration fields
  • Backend → Country → Custom labels (regionLabel, districtLabel)
Note: Configuration exists. Visual branding customization planned.
AD-1.4Met

Hierarchical organization structure (country > region > district)

Implementation Location
  • Backend → Country → Region → District → School hierarchy
  • Mobile App → Full hierarchy navigation
  • Backend → Geographic scoping throughout
AD-2.1Met

Predefined roles for common user types (Admin, Monitor, Teacher, etc.)

Implementation Location
  • Backend → Monitor → dtype: PROJECT_STAFF, REGION_OFFICIAL, COUNTRY_OFFICIAL
  • Backend → Manager → admin, senior, finance flags
  • Backend → Teacher → dbRoles array
  • Mobile App → Role-based screen access
AD-2.2Partial

Custom role definition with granular permissions

Implementation Location
  • Backend → Existing role types with flags
  • Backend → ManagerProject → Project-level access
Note: Role types exist. Full permission matrix editor planned.
AD-2.3Met

Geographic scope restrictions (access only to assigned areas)

Implementation Location
  • Backend → Monitor → regionId scoping
  • Backend → OfficialOperatingDistrict → District assignments
  • Mobile App → Only assigned schools visible
  • Backend → Query filters by user scope
AD-2.4Partial

Feature-level access control (read, write, delete, export)

Implementation Location
  • Backend → Role-based API access
  • Backend → Soft delete (admin-only hard delete)
Note: Role-based access exists. Fine-grained feature permissions planned.
AD-3.1Met

User provisioning and deprovisioning workflows

Implementation Location
  • Backend → Manager/Monitor CRUD operations
  • Backend → isActive flag for deprovisioning
  • Backend → Spring Security integration
AD-3.2Met

Bulk user import via CSV/Excel

Implementation Location
  • Backend → Bulk import endpoints
  • Backend → CSV parsing for monitors, teachers
  • Dashboard → Import wizard screens
AD-3.3Met

Self-service password reset capabilities

Implementation Location
  • Mobile App → ForgotPinScreen
  • Backend → Password reset via admin portal
  • Backend → PIN reset via admin
AD-3.4Partial

User activity tracking and audit logs

Implementation Location
  • Backend → User attribution on all records
  • Backend → Timestamps on all operations
Note: Attribution exists. Dedicated audit log UI planned.
AD-4.1Met

Flexible hierarchy levels (country, region, district, school)

Implementation Location
  • Backend → Country → Region → District → School entities
  • Backend → Full CRUD for each level
  • Mobile App → Hierarchy navigation
AD-4.2Met

Custom naming for hierarchy levels per country

Implementation Location
  • Backend → Country → regionLabel, districtLabel fields
  • Mobile App → Dynamic labels from Country config
AD-4.3Met

Geographic polygon support for district boundaries

Implementation Location
  • Backend → DistrictPolygon entity
  • Backend → points, geometry fields
  • Backend → Bounding box (north, east, south, west)
AD-4.4Met

School location management with GPS coordinates

Implementation Location
  • Mobile App → School → latitude, longitude
  • Mobile App → SchoolLocationScreen → Map view
  • Backend → GPS validation on school records
AD-5.1Met

Project-based organization of monitoring activities

Implementation Location
  • Backend → Project entity
  • Backend → ManagerProject → Project assignments
  • Backend → ProjectForm → Forms per project
  • Backend → ProjectStaff → Staff assignments
AD-5.2Met

Configurable assessment templates per project

Implementation Location
  • Backend → AssessmentDefinition → Project-scoped
  • Backend → Admin configuration without code
  • Mobile App → Syncs project-specific assessments
AD-5.3Met

Form builder for custom data collection needs

Implementation Location
  • Backend → ProjectForm → Dynamic form definition
  • Backend → FormSection → Section groupings
  • Backend → FormQuestion → 10+ question types
  • Mobile App → Dynamic form rendering
AD-6.1Partial

Real-time system health monitoring

Implementation Location
  • Backend → Health check endpoints
  • Backend → GCP Cloud Run monitoring
Note: Basic health checks exist. Comprehensive monitoring dashboard planned.
AD-6.2Partial

User activity and login tracking

Implementation Location
  • Mobile App → Session-based login tracking
  • Backend → Manager → authToken, loginPassword timestamps
Note: Login tracking exists. Activity analytics dashboard planned.
AD-6.3Met

Data sync status monitoring across devices

Implementation Location
  • Mobile App → SyncStatusScreen
  • Mobile App → PendingSyncScreen → Queue visibility
  • Mobile App → SyncProperties → Sync timestamps
AI

AI Integration

0/13 met1 partial
AI-1.1Not Met

Automatic speech recognition for oral reading assessments

Note: Speech recognition not yet implemented. Audio capture infrastructure ready for ASR integration.
AI-1.2Not Met

Support for multiple languages and accents

Note: Multi-language ASR not implemented. Data structure supports language tagging for future ASR.
AI-1.3Not Met

Real-time transcription during assessments

Note: Real-time transcription not implemented. Planned for AI enhancement phase.
AI-2.1Not Met

AI-assisted scoring for reading fluency assessments

Note: AI scoring not implemented. Manual scoring with auto-calculation exists.
AI-2.2Not Met

Pattern recognition for common error types

Note: Error pattern recognition not implemented. Data structure supports future ML analysis.
AI-2.3Not Met

Consistency checking across human scorers

Note: Inter-rater reliability checking not implemented. Planned for quality module.
AI-3.1Not Met

Early identification of at-risk learners

Note: Predictive analytics not implemented. Historical data available for future ML models.
AI-3.2Not Met

Performance trend prediction based on historical data

Note: Trend prediction not implemented. Longitudinal data structure supports future analysis.
AI-3.3Not Met

Intervention recommendation based on patterns

Note: Recommendation engine not implemented. Planned for decision support module.
AI-4.1Not Met

Comprehension answer analysis and scoring

Note: NLP analysis not implemented. Text response storage supports future NLP.
AI-5.1Not Met

Detection of unusual scoring patterns

Note: Anomaly detection not implemented. Data quality module planned.
AI-6.1Partial

Context-aware help and guidance for users

Implementation Location
  • Mobile App → Assessment scripts and guidance text
  • Mobile App → ScoringGuidanceDialogScreen
Note: Static guidance exists. AI-powered contextual help planned.
AI-6.2Not Met

Automated report narrative generation

Note: Narrative generation not implemented. Planned for AI enhancement phase.

Implementation Summary

Requires Development (18)

  • DQ-2.2Fuzzy matching for name variations and data entry errors...
  • DQ-3.1Statistical outlier detection for assessment scores...
  • DQ-3.2Pattern analysis to identify suspicious data (e.g., identica...
  • AN-2.2Custom report builder with drag-and-drop functionality...
  • AN-2.3Scheduled report generation and distribution...
  • AN-4.2Heat maps showing areas of concern or success...
  • AI-1.1Automatic speech recognition for oral reading assessments...
  • AI-1.2Support for multiple languages and accents...
  • AI-1.3Real-time transcription during assessments...
  • AI-2.1AI-assisted scoring for reading fluency assessments...
  • AI-2.2Pattern recognition for common error types...
  • AI-2.3Consistency checking across human scorers...
  • AI-3.1Early identification of at-risk learners...
  • AI-3.2Performance trend prediction based on historical data...
  • AI-3.3Intervention recommendation based on patterns...
  • AI-4.1Comprehension answer analysis and scoring...
  • AI-5.1Detection of unusual scoring patterns...
  • AI-6.2Automated report narrative generation...

Needs Enhancement (20)

  • DC-5.1Audio recording for oral assessments with noise suppression...
  • DC-6.4Statistical sampling tools with stratification options...
  • DQ-1.2Cross-field consistency checks (e.g., age vs grade level)...
  • DQ-2.1Automatic detection of duplicate records based on configurab...
  • DQ-2.3Duplicate resolution workflow with merge capabilities...
  • DQ-3.3Flagging of unusual response patterns for review...
  • DQ-4.1Monitoring of required field completion rates...
  • DQ-5.1Multi-level review and approval process for flagged data...
  • DQ-6.2Recording of original values before any changes...
  • AN-1.2Customizable dashboard layouts per user role...
  • AN-2.4Multiple export formats (PDF, Excel, CSV)...
  • AN-3.2Year-over-year comparison of assessment results...
  • AN-4.1Map-based visualization of performance by region...
  • AD-1.3Organization-specific branding and configuration options...
  • AD-2.2Custom role definition with granular permissions...
  • AD-2.4Feature-level access control (read, write, delete, export)...
  • AD-3.4User activity tracking and audit logs...
  • AD-6.1Real-time system health monitoring...
  • AD-6.2User activity and login tracking...
  • AI-6.1Context-aware help and guidance for users...

Fully Implemented (50)

  • DC-1.1Support for Early Grade Reading Assessments (EGRA) including...
  • DC-1.2Support for Early Grade Mathematics Assessments (EGMA) inclu...
  • DC-1.3Configurable assessment templates that can be adjusted witho...
  • DC-1.4Support for multiple languages without requiring translation...
  • DC-2.1Mobile-first design optimized for tablet and smartphone use ...
  • DC-2.2Intuitive user interface requiring minimal training for fiel...
  • DC-3.1Full offline operation for all data collection activities...
  • DC-3.2Local storage of all forms, assessments, and reference data...
  • DC-3.3Automatic synchronization when connectivity is restored...
  • DC-3.4Conflict resolution for data modified both locally and remot...
  • DC-4.1Customizable timers for timed assessment sections (1-minute,...
  • DC-4.2Support for traditional stopping rules in reading assessment...
  • DC-4.3Flexible scoring modes: positive marking (count correct) and...
  • DC-5.2Photo capture for documentation and verification...
  • DC-5.3GPS coordinate capture for each assessment session...
  • ... and 35 more requirements fully met

Ready to Plan Implementation?

Review the requirements not yet met and create a development roadmap to achieve full compliance.