Skip to main content

SKOLE-NOTB — Noticeboard Module

Module ID: SKOLE-NOTB | Version: 1.0 | Status: Active
Products: Parent App (read) · Teacher App (create/manage) · Web App (manage)

1. Overview

Scope In

  • Post, edit, soft-delete notices with title, description, type
  • All parents and staff see the same school-wide feed
  • Filter by notice_type

Scope Out

  • Targeted notices to specific grade/student (use Activities for that)
  • Email/push delivery of notices (planned)

2. Requirements

Functional Requirements (FR)

What the module must DO — actions, behaviors, and outcomes.
  • SKOLE-NOTB-FR001: The module shall allow teachers and admins to create formal notices with title, description, and type.
  • SKOLE-NOTB-FR002: The module shall support specific notice types: general, exam, holiday, fee, and circular.
  • SKOLE-NOTB-FR003: The module shall enable authorized users to edit and soft-delete existing notices.
  • SKOLE-NOTB-FR004: The module shall provide all school community members with a synchronized, school-wide notice feed.
  • SKOLE-NOTB-FR005: The module shall allow users to filter notices by their assigned type.

Non-Functional Requirements (NFR)

How well the module must do it — performance, security, and reliability.
  • SKOLE-NOTB-NFR001: The module shall perform chronological sorting by displaying notices in newest-first order.
  • SKOLE-NOTB-NFR002: The module shall behave reliably by strictly excluding soft-deleted notices (notice_deleted = 1) from all active feeds.
  • SKOLE-NOTB-NFR003: The module shall ensure consistent visibility across all platform surfaces (Parent, Teacher, and Web apps).

Constraints

Rules and boundaries — tech choices and platform restrictions.
  • C001: We must treat Noticeboard as a school-wide broadcast module, unlike the student-targeted Activities module, to ensure broad dissemination of formal information.
  • C002: We must reuse the Engagement module’s reaction capabilities to allow parents to acknowledge formal notices.

3. Sub-modules / Backlog


4. Logical Implementation

Core Query (both parent and teacher)

Error Handling


5. UI Requirements

Parent App — NoticeboardScreen

Components:

Teacher App & Web App


6. Conditional Expressions


7. Internal Module Connections


8. Database Tables

noticeboards Key Columns


9. API Endpoints