Files
poupoule/cahierDesCharges.md
T
2026-09-25 11:02:14 +02:00

6.7 KiB
Raw Blame History

Cahier des charges — Mon Poulailler

1. Contexte

Le projet Mon Poulailler vise à créer une application web de gestion d’un poulailler.

Dans la gestion quotidienne d’un poulailler, il est important de connaître :

  • le nombre de poules et de coqs ;
  • l’identité et les caractéristiques de chaque animal ;
  • l’état de santé ;
  • les périodes de ponte (début, durée, fin) ;
  • les périodes de couvage ;
  • l’historique des animaux décédés.

L’application doit permettre de suivre ces informations de façon centralisée et à jour.

2. Objectif

Disposer d’une vue claire et à jour de l’état du poulailler : effectifs, animaux actifs, périodes de ponte et de couvage, et archives.

3. Périmètre

3.1 Inclus

  • Authentification (création de comptes, connexion) ;
  • gestion des poules et des coqs ;
  • suivi des périodes de ponte et de couvage ;
  • statistiques d’effectifs en temps réel ;
  • archivage des animaux décédés ;
  • déploiement local via Docker.

3.2 Hors périmètre (version initiale)

  • Application mobile native ;
  • notifications push / alertes automatiques ;
  • suivi vétérinaire détaillé (ordonnances, traitements) ;
  • gestion multi-poulaillers ;
  • synchronisation cloud / multi-appareils hors réseau local ;
  • inventaire des œufs au quotidien (sauf si lié explicitement à une période de ponte).

4. Utilisateurs

Profil Description Droits principaux
Administrateur Responsable du poulailler / de l’application Créer des comptes, gérer tous les animaux
Utilisateur Personne qui s’occupe des poules Gérer les poules et les coqs (sans création de comptes)

5. Fonctionnalités

5.1 Authentification et comptes

  • Création de comptes (réservée à l’administrateur) ;
  • connexion par identifiant et mot de passe ;
  • déconnexion ;
  • deux profils : Admin et Utilisateur.
Action Admin Utilisateur
Se connecter / se déconnecter Oui Oui
Créer un compte Oui Non
Gérer poules et coqs Oui Oui
Consulter les statistiques Oui Oui
Consulter les archives Oui Oui

5.2 Gestion des animaux (poules et coqs)

Pour chaque animal, l’application permet de renseigner et consulter :

Donnée Description
Identifiant unique Identifiant technique unique dans l’application
Photo Image de l’animal
Couleur de bague Couleur de la bague d’identification
Numéro de bague Numéro associé à la bague
Date de naissance Date de naissance (ou date d’arrivée si inconnue)
Type Poule ou coq
État de santé Indication simple de l’état de santé
Date de fin de vie Renseignée lorsque l’animal décède

Actions attendues :

  • créer un animal ;
  • modifier ses informations ;
  • consulter sa fiche détaillée ;
  • marquer un animal comme décédé (passe en archive) ;
  • lister les animaux actifs ;
  • lister les animaux archivés (décédés).

5.3 Périodes de ponte (poules uniquement)

  • Enregistrer une ou plusieurs périodes de ponte ;
  • pour chaque période : date de début, date de fin (optionnelle si en cours), éventuellement une remarque ;
  • indiquer si la poule pond actuellement.

5.4 Périodes de couvage (poules uniquement)

  • Enregistrer une ou plusieurs périodes de couvage ;
  • pour chaque période : date de début, date de fin (optionnelle si en cours), éventuellement une remarque ;
  • indiquer si la poule est actuellement en couvage.

5.5 Statistiques

Affichage en temps réel (après chaque action ou au chargement) :

  • nombre de poules actives ;
  • nombre de coqs actifs ;
  • nombre total d’animaux actifs ;
  • nombre de poules actuellement en couvage ;
  • nombre de poules actuellement en ponte (souhaitable).

5.6 Archives

  • Vue dédiée aux animaux décédés ;
  • conservation des informations (identité, bagues, dates, historique de ponte / couvage) ;
  • pas de suppression définitive obligatoire en v1 (possibilité de la prévoir plus tard).

6. Exigences non fonctionnelles

Exigence Attendu
Accessibilité Interface utilisable sur ordinateur et tablette (responsive de base)
Performance Réponses rapides sur un usage local (peu d’utilisateurs simultanés)
Sécurité Mots de passe stockés de façon sécurisée (hachage) ; accès réservé aux utilisateurs authentifiés
Disponibilité Application disponible en local via Docker
Ergonomie Navigation simple : liste, fiche animal, statistiques, archives
Données Persistance via fichiers JSON ; sauvegarde manuelle possible en copiant les fichiers

7. Spécifications techniques

Élément Choix
Type d’application Application web
Hébergement Local, via Docker
Front-end HTML, CSS, JavaScript
Back-end JavaScript (Node.js recommandé)
Base de données Fichiers JSON (stockage documentaire)

7.1 Architecture cible (indicatif)

  • Interface web servie par le back-end ;
  • API métier pour authentification et CRUD animaux / périodes ;
  • persistance dans un ou plusieurs fichiers JSON montés en volume Docker.

7.2 Contraintes techniques

  • Fonctionnement hors cloud, en environnement local ;
  • pas de dépendance à une base relationnelle en v1 ;
  • les données doivent survivre à un redémarrage du conteneur (volume Docker).

8. Modèle de données (indicatif)

Utilisateur

  • id, login, motDePasseHash, profil (admin | utilisateur)

Animal

  • id, type (poule | coq), photo, couleurBague, numeroBague, dateNaissance, etatSante, dateFinDeVie (nullable), actif (booléen)

PeriodePonte

  • id, idAnimal, dateDebut, dateFin (nullable), remarque

PeriodeCouvage

  • id, idAnimal, dateDebut, dateFin (nullable), remarque

9. Critères d’acceptation (v1)

  • Un administrateur peut créer un compte utilisateur et se connecter.
  • Un utilisateur connecté peut ajouter une poule avec photo, bague, date de naissance.
  • Un utilisateur peut enregistrer une période de ponte et une période de couvage.
  • Les statistiques affichent correctement le nombre de poules, de coqs et de poules en couvage.
  • Marquer une poule comme décédée la retire de la liste active et l’ajoute aux archives.
  • L’application démarre via Docker et conserve les données après redémarrage.

10. Livrables

  • Code source de l’application ;
  • Dockerfile / docker-compose pour le lancement local ;
  • documentation courte de démarrage (installation, comptes, sauvegarde des JSON) ;
  • le présent cahier des charges à jour.

11. Evolutions possibles (hors v1)

  • Suivi quotidien des œufs collectés ;
  • alertes (fin de ponte, couvage prolongé) ;
  • export CSV / PDF ;
  • multi-poulaillers ;
  • application mobile.