Content is user-generated and unverified.

Cahier des charges - Application de gestion scolaire pour établissements primaires

1. Contexte et objectifs

1.1 Présentation du contexte

L'école primaire moderne accueille en moyenne 200 à 400 élèves répartis sur 5 niveaux (CP à CM2), avec 8 à 16 classes selon la taille de l'établissement. Elle emploie une équipe pédagogique de 10 à 20 enseignants, un directeur, et du personnel administratif (secrétaire, comptable, surveillants).

Les besoins spécifiques identifiés :

  • Communication parent-école : information en temps réel sur la scolarité de l'enfant
  • Gestion administrative : simplification des processus d'inscription et de suivi
  • Transparence financière : suivi des paiements et des services (cantine, garderie, activités)
  • Organisation pédagogique : planification des cours, suivi des présences, évaluation
  • Visibilité externe : présentation de l'établissement et de ses programmes

1.2 Objectifs fonctionnels

Visibilité en ligne :

  • Présenter l'école, son projet pédagogique et ses valeurs
  • Informer sur les programmes et méthodes d'enseignement
  • Communiquer les actualités et événements

Simplification des inscriptions :

  • Dématérialiser le processus d'inscription
  • Réduire les déplacements des parents
  • Accélérer le traitement des dossiers

Amélioration de la communication :

  • Faciliter les échanges parent-enseignant
  • Centraliser les informations sur la scolarité
  • Notifier en temps réel les événements importants

2. Interfaces et utilisateurs

2.1 Site public (non authentifié)

Page d'accueil :

  • Présentation générale de l'école (histoire, valeurs, équipe)
  • Actualités récentes et événements à venir
  • Accès rapide aux formulaires d'inscription

Informations pédagogiques :

  • Programmes par niveau (CP à CM2)
  • Méthodes d'enseignement et projets éducatifs
  • Activités périscolaires proposées
  • Horaires et organisation de la journée type

Informations pratiques :

  • Calendrier scolaire et vacances
  • Tarifs (scolarité, cantine, garderie, activités)
  • Plan d'accès et coordonnées
  • Règlement intérieur

Actualités :

  • Articles sur la vie de l'école
  • Photos des événements (sorties, spectacles, fêtes)
  • Annonces importantes

2.2 Formulaire d'inscription

Étape 1 - Informations élève :

  • État civil complet (nom, prénom, date de naissance, lieu)
  • Adresse de résidence
  • Niveau souhaité et année scolaire
  • Besoins spécifiques (allergie, PAI, aménagements)

Étape 2 - Informations parents/responsables :

  • Coordonnées complètes (père, mère, responsable légal)
  • Profession et employeur
  • Contacts d'urgence
  • Autorisation de sortie et personnes habilitées

Étape 3 - Services souhaités :

  • Inscription cantine (régime alimentaire, allergies)
  • Garderie matin et/ou soir
  • Activités périscolaires
  • Transport scolaire si applicable

Étape 4 - Pièces justificatives :

  • Upload de documents (certificat de naissance, livret de famille, justificatifs de domicile)
  • Carnet de vaccination
  • Photos d'identité
  • Certificat de radiation (si changement d'école)

Suivi du dossier :

  • Statut en temps réel (reçu, en cours, accepté, refusé)
  • Liste des pièces manquantes
  • Notifications par email et SMS
  • Possibilité de compléter le dossier

2.3 Espace parent

Tableau de bord :

  • Vue d'ensemble des enfants inscrits
  • Dernières notifications
  • Prochains événements
  • Solde du compte

Scolarité de l'enfant :

  • Emploi du temps de la classe
  • Présences et absences
  • Bulletins trimestriels
  • Cahier de liaison numérique
  • Photos et comptes-rendus de sorties

Communication :

  • Messagerie avec l'enseignant
  • Prise de rendez-vous
  • Notifications push et SMS
  • Historique des échanges

Financier :

  • Factures et échéances
  • Historique des paiements
  • Paiement en ligne sécurisé
  • Téléchargement des reçus

Services :

  • Inscription/désinscription cantine (au mois)
  • Réservation garderie ponctuelle
  • Inscription activités périscolaires
  • Signalement d'absence

2.4 Espace enseignant

Gestion de classe :

  • Liste des élèves avec photos
  • Appel électronique quotidien
  • Suivi des retards et absences
  • Notes et observations individuelles

Planning et cours :

  • Emploi du temps personnel
  • Planification des activités
  • Ressources pédagogiques partagées
  • Suivi du programme

Évaluation :

  • Saisie des notes et compétences
  • Génération des bulletins
  • Commentaires personnalisés
  • Graphiques de progression

Communication :

  • Messagerie avec les parents
  • Diffusion d'informations à la classe
  • Planification de réunions
  • Cahier de liaison numérique

2.5 Espace administratif

Gestion des inscriptions :

  • Validation des dossiers d'inscription
  • Répartition des élèves par classe
  • Listes d'attente
  • Statistiques d'effectifs

Planning établissement :

  • Emploi du temps global
  • Affectation des salles
  • Planning des enseignants
  • Organisation des activités périscolaires

Gestion financière :

  • Facturation automatisée
  • Suivi des impayés
  • Relances automatiques
  • Rapports comptables
  • Exports vers logiciel de comptabilité

Ressources humaines :

  • Gestion des congés enseignants
  • Planning des remplacements
  • Suivi des heures supplémentaires
  • Documents administratifs

Reporting :

  • Tableaux de bord avec KPI
  • Statistiques de fréquentation
  • Rapports financiers
  • Exports personnalisés

3. Fonctionnalités transversales

3.1 Authentification et gestion des rôles

Système d'authentification :

  • Connexion par email/mot de passe
  • Double authentification optionnelle
  • Récupération de mot de passe sécurisée
  • Session timeout configurable

Rôles et permissions :

  • Parent : accès limité aux données de ses enfants
  • Enseignant : accès à ses classes et élèves
  • Directeur : accès global en lecture, gestion pédagogique
  • Administrateur : accès complet, gestion technique
  • Comptable : accès aux données financières

3.2 Système de notifications

Canaux de communication :

  • Notifications in-app
  • Emails automatiques
  • SMS pour urgences
  • Push notifications mobile

Types de notifications :

  • Absences non justifiées
  • Retards répétés
  • Événements importants
  • Échéances de paiement
  • Réunions parents-professeurs

3.3 Historisation et archivage

Données élèves :

  • Historique scolaire complet
  • Conservation des bulletins
  • Traçabilité des modifications
  • Sauvegarde automatique

Données financières :

  • Historique des paiements
  • Archives des factures
  • Suivi des remboursements
  • Rapports annuels

3.4 Exports et impressions

Formats supportés :

  • PDF pour bulletins et rapports
  • Excel pour données chiffrées
  • CSV pour imports externes
  • Archives ZIP pour dossiers complets

Documents générés :

  • Bulletins trimestriels personnalisés
  • Certificats de scolarité
  • Attestations de paiement
  • Rapports statistiques

3.5 Emploi du temps

Gestion par classe :

  • Emploi du temps hebdomadaire
  • Affectation automatique des enseignants
  • Gestion des salles spécialisées
  • Adaptation aux contraintes (récréations, cantine)

Fonctionnalités avancées :

  • Détection des conflits d'horaires
  • Remplacement automatique en cas d'absence
  • Intégration des activités périscolaires
  • Export vers calendriers externes (Google, Outlook)

4. Architecture technique et sécurité

4.1 Architecture générale

Backend - NestJS :

src/
├── modules/
│   ├── auth/
│   ├── users/
│   ├── students/
│   ├── classes/
│   ├── enrollment/
│   ├── financial/
│   ├── notifications/
│   └── reports/
├── common/
│   ├── guards/
│   ├── decorators/
│   ├── pipes/
│   └── filters/
├── config/
└── database/
    ├── entities/
    ├── migrations/
    └── seeds/

Frontend - NextJS :

src/
├── app/
│   ├── (public)/
│   ├── (auth)/
│   └── api/
├── components/
│   ├── ui/
│   ├── forms/
│   └── layouts/
├── lib/
│   ├── auth/
│   ├── api/
│   └── utils/
└── types/

4.2 Base de données MySQL

Tables principales :

  • users (authentification)
  • students (élèves)
  • parents (responsables)
  • teachers (enseignants)
  • classes (classes)
  • enrollments (inscriptions)
  • grades (notes)
  • attendances (présences)
  • payments (paiements)
  • notifications (notifications)

Relations clés :

  • Un élève peut avoir plusieurs parents
  • Un parent peut avoir plusieurs enfants
  • Une classe a un enseignant principal
  • Les notes sont liées à un élève et une matière

4.3 API REST

Endpoints principaux :

/auth
  POST /login
  POST /logout
  POST /refresh

/students
  GET /students (liste paginée)
  GET /students/:id
  POST /students
  PUT /students/:id

/enrollments
  POST /enrollments
  GET /enrollments/:id/status
  PUT /enrollments/:id

/classes
  GET /classes
  GET /classes/:id/students
  GET /classes/:id/schedule

/payments
  GET /payments
  POST /payments
  GET /payments/:id/receipt

4.4 Sécurité

Chiffrement des données :

  • Chiffrement AES-256 pour données sensibles
  • Hashage bcrypt pour mots de passe
  • Certificats SSL/TLS obligatoires
  • Chiffrement base de données au repos

Contrôle d'accès :

  • JWT avec refresh tokens
  • Autorisation basée sur les rôles (RBAC)
  • Limitation du taux de requêtes
  • Logs d'audit complets

Protection des données :

  • Conformité RGPD
  • Pseudonymisation des données
  • Droit à l'oubli implémenté
  • Consentement explicite des parents

Sauvegarde et récupération :

  • Sauvegardes automatiques quotidiennes
  • Réplication de la base de données
  • Plan de reprise d'activité (PRA)
  • Tests de restauration réguliers

4.5 Performance et scalabilité

Optimisations :

  • Cache Redis pour sessions et données fréquentes
  • CDN pour ressources statiques
  • Pagination sur toutes les listes
  • Lazy loading des images

Monitoring :

  • Logs centralisés (ELK Stack)
  • Métriques applicatives (Prometheus)
  • Alertes automatiques
  • Tableau de bord de monitoring

5. Contraintes et exigences non fonctionnelles

5.1 Performance

  • Temps de réponse < 2 secondes
  • Disponibilité 99.5%
  • Support de 500 utilisateurs simultanés

5.2 Compatibilité

  • Responsive design (mobile, tablette, desktop)
  • Navigateurs modernes (Chrome, Firefox, Safari, Edge)
  • Accessibilité WCAG 2.1 niveau AA

5.3 Maintenance

  • Documentation technique complète
  • Tests unitaires et d'intégration
  • Déploiement automatisé (CI/CD)
  • Formation des utilisateurs

Ce cahier des charges définit les bases d'une application complète adaptée aux besoins spécifiques des établissements primaires, en prenant en compte les contraintes techniques, légales et pédagogiques de ce secteur.

Content is user-generated and unverified.
    Cahier des charges - Application de gestion scolaire primaire | Claude