Cahier des Charges Fonctionnel · Version 1.0

Madina.Dz
Phase 1 — MVP Mobile

Ce document décrit exhaustivement les fonctionnalités à développer pour la première phase de déploiement de Madina.Dz sur iOS et Android. Il couvre les 4 espaces utilisateurs, les règles métier, les flux d'usage et les exigences techniques de base.

Plateformes iOS & Android (natif ou cross-platform)
Villes pilotes Nedroma · Alger · Wilaya TBD
Phase MVP — Validation terrain
Objectif principal Usage réel, crédibilité locale
01

Introduction & Objectifs

Contexte du projet, vision générale et objectifs de la Phase 1.

Contexte

Madina.Dz est une application mobile citoyenne dont la finalité est de devenir l'infrastructure numérique des territoires algériens — une Super App reliant commerçants, citoyens et collectivités à l'échelle nationale, et intégrant à terme des services tiers via API.

La Phase 1 vise à construire le cœur de cette infrastructure : un MVP fonctionnel déployé sur 3 villes types, permettant de valider les usages réels avant toute extension géographique ou ajout de fonctionnalités avancées.

Objectifs Phase 1
Prioritaire

Valider les usages

Mesurer l'adoption réelle par les commerçants et les citoyens dans 3 territoires types. L'objectif n'est pas la rentabilité mais la preuve d'usage.

Prioritaire

Construire la crédibilité

Avoir un cas de référence solide avec données réelles pour préparer la Phase 2 de réplication régionale.

Prioritaire

Tester le modèle commercial

Valider l'approche terrain par commerciaux et le paiement unique d'inscription. Ajuster les tarifs si nécessaire.

Important

Ajuster le MVP

Identifier les fonctionnalités indispensables vs superflues. Préparer la feuille de route pour la Phase 2 à partir du retour terrain.

Principe cardinal : En Phase 1, les inscriptions professionnelles ne sont pas en self-service. Elles passent exclusivement par un commercial terrain qui se déplace, photographie, remplit la fiche et encaisse le paiement. L'auto-inscription sera ouverte en Phase 2.
02

Périmètre Phase 1

Ce qui est inclus, ce qui est exclu, et pourquoi.

✓ INCLUS

Dans le périmètre

Application mobile iOS + Android
Cartographie des professionnels par ville
Pages professionnels (commerçants, artisans, services, associations)
Statut ouvert / fermé temps réel
Bons plans (3 niveaux : Gratuit, BP, Gold)
Calendrier des événements locaux
Forum & Blog participatif citoyen
SOS / Contacts d'urgence (V1.1)
Newsletter ville + Notifications push
Encarts publicitaires localisés
Back-end administrateur
Espace B2G (collectivités)
3 villes : Nedroma, Alger, Wilaya TBD
✗ EXCLUS

Hors périmètre Phase 1

Auto-inscription des professionnels
Paiement en ligne intégré (abonnements)
E-commerce et livraison locale
Intégration de startups tierces (API Super App)
IA territoriale / Plateforme Sensible
Version web de l'application
Messagerie privée entre utilisateurs
Système de fidélité / points
Extension à d'autres villes
Multi-langue (AR en priorité Phase 2)
03

Acteurs & Profils Utilisateurs

Les 5 types d'acteurs du système et leurs droits respectifs.

Matrice des acteurs
Acteur Type Accès Mode d'entrée Paiement
Citoyen B2C Lecture + participation (forum, notes, commentaires) Auto-inscription libre (email ou phone) Gratuit
Commerçant / Artisan B2B Page + cartographie + BP + pub Inscrit par commercial terrain uniquement Paiement unique terrain (500–2000 DZD)
Prestataire de services B2B Idem commerçant Inscrit par commercial terrain Paiement unique terrain
Association B2B Page + événements + blog + BP Inscrit par commercial terrain Paiement unique terrain (tarif différencié)
Collectivité / Autorité B2G Dashboard data + diffusion officielle Compte créé par l'admin Madina.Dz Contrat partenariat
Commercial terrain Interne Création de fiches pro, encaissement Compte créé par l'admin N/A (employé)
Administrateur Admin Accès total — gestion, modération, pilotage Compte fondateurs N/A
04

Onboarding & Inscription

Flux d'entrée pour chaque type d'utilisateur.

Citoyen — Inscription B2C
Téléchargement app
Choix de la ville
Inscription (email/phone)
Vérification OTP
Accès à la carte
US-C-001
En tant que citoyen, je veux pouvoir m'inscrire en moins de 2 minutes avec mon numéro de téléphone, sans avoir à renseigner d'informations complexes.
✓ Inscription par phone + OTP SMS · ✓ Inscription alternative par email · ✓ Aucune info obligatoire sauf ville de résidence · ✓ Accès à la carte sans inscription (mode consultation)
US-C-002
En tant que citoyen non inscrit, je veux pouvoir consulter la carte et les pages professionnels sans créer de compte.
✓ Accès lecture libre · ✓ Blocage des fonctions participatives (notes, commentaires, forum) · ✓ Invitation douce à s'inscrire sur ces actions
Professionnel — Inscription B2B (terrain)
Commercial se déplace
Prise de photos
Saisie fiche dans l'app admin terrain
Encaissement paiement
Envoi des accès au pro
Validation admin centrale
US-B-001
En tant que commercial terrain, je veux pouvoir créer une fiche professionnelle complète depuis mon téléphone en moins de 15 minutes, photos incluses.
✓ App commercial (ou interface dédiée dans l'admin) · ✓ Upload photos directement depuis la caméra · ✓ Saisie : nom, catégorie, adresse, horaires, phone, description, statut · ✓ Géolocalisation automatique du point sur la carte · ✓ Attribution automatique de login/mdp provisoire au pro · ✓ Notification envoyée au pro à la création
US-B-002
En tant que professionnel inscrit, je veux accéder à mon espace de gestion (tableau de bord) avec les identifiants transmis par le commercial.
✓ Connexion par email ou phone + mot de passe · ✓ Forcer le changement de mdp à la 1ère connexion · ✓ Tableau de bord : stats de vues, bons plans actifs, statut ouvert/fermé
Entrée dans la ville — Écran d'accueil
US-C-003
En tant qu'utilisateur, je veux arriver sur une cartographie nationale et sélectionner ma ville pour accéder à son espace local.
✓ Carte nationale au chargement · ✓ Détection automatique de la ville par géolocalisation (avec permission) · ✓ Recherche manuelle par nom de ville · ✓ Navigation par région · ✓ Mémorisation de la ville par défaut
05

Cartographie

La fonctionnalité centrale de l'application — la carte vivante de la ville.

Principe clé : La carte est le point d'entrée principal. Elle doit être rapide, lisible et refléter l'état réel de la ville en temps quasi-réel. Chaque point sur la carte est une fiche professionnelle active.
Affichage carte
US-CARTO-001
En tant que citoyen, je veux voir sur la carte tous les professionnels de ma ville avec leur statut ouvert/fermé visible directement sur le point.
✓ Marqueurs colorés : vert = ouvert, gris = fermé, orange = horaires non renseignés · ✓ Marqueur Gold spécial (doré) pour les BP Gold actifs · ✓ Regroupement (clustering) des marqueurs au zoom faible · ✓ Dézoomer sur la ville par défaut
US-CARTO-002
En tant que citoyen, je veux pouvoir filtrer la carte par catégorie pour n'afficher que les commerces qui m'intéressent.
✓ Filtres par catégorie (Restauration, Épicerie, Santé, Services, Artisans, Associations…) · ✓ Filtre multi-sélection possible · ✓ Filtre "Ouvert maintenant" · ✓ Filtre "Bon plan actif" · ✓ Réinitialisation des filtres en un tap
US-CARTO-003
En tant que citoyen, je veux tapper sur un marqueur pour avoir un aperçu rapide du professionnel sans quitter la carte.
✓ Bottom sheet au tap : photo, nom, catégorie, statut, note moyenne · ✓ Bouton "Voir la page complète" · ✓ Bouton "Itinéraire" (ouvre Maps natif) · ✓ Indication du bon plan actif si présent
Recherche
US-CARTO-004
En tant que citoyen, je veux rechercher un commerce par nom ou par type d'activité depuis la carte.
✓ Barre de recherche textuelle toujours accessible · ✓ Recherche par nom exact ou approximatif (fuzzy) · ✓ Recherche par catégorie/thème · ✓ Résultats en liste ET positionnés sur la carte · ✓ Suggestions au fil de la frappe · ✓ Recherche historique (dernières recherches)
carte.principale
Barre recherche + filtres
CARTE VILLE
⊕ marqueurs
🍽️
🛒
💊
✂️
bottom.sheet
CARTE (partielle)
📷 photo
Nom · Catégorie · ⭐ 4.2
Voir page
Itinéraire
recherche
🔍 Rechercher dans la ville...
Résultat 1
Résultat 2
Résultat 3
Résultat 4
Résultat 5
06

Pages Professionnels

La fiche de chaque professionnel inscrit — vitrine numérique officielle dans l'app.

Contenu de la page
Champ Obligatoire Modifiable par Description
Photos (galerie) Oui (min. 1) Commercial + Pro Photos de devanture, intérieur, produits. Max 10 photos.
Nom Oui Admin seulement après validation Nom officiel de l'établissement
Catégorie Oui Admin Liste de catégories prédéfinies + sous-catégories
Adresse Oui Commercial + Admin Adresse textuelle + position GPS sur la carte
Téléphone Oui Pro Appel direct depuis la fiche (tap to call)
Horaires Recommandé Pro Horaires par jour de la semaine + jours fériés
Description Non Pro Texte libre (max 500 caractères)
Statut ouvert/fermé Non Pro (temps réel) Bouton toggle accessible depuis le tableau de bord
Note moyenne Auto Calculé automatiquement Moyenne des notes citoyens (1-5 étoiles)
Commentaires Auto Citoyens inscrits Fil de commentaires avec modération
Bons plans actifs Auto Pro Affichage des bons plans en cours sur la fiche
Événements Non Pro (associations) Événements liés à cet acteur
User Stories — Page Pro
US-PAGE-001
En tant que citoyen, je veux pouvoir noter et commenter un commerce après y être allé.
✓ Note 1 à 5 étoiles · ✓ 1 note max par utilisateur par fiche · ✓ Possibilité de modifier sa note · ✓ Commentaire optionnel (max 300 chars) · ✓ Modération a posteriori par admin · ✓ Signalement possible par d'autres utilisateurs
US-PAGE-002
En tant que professionnel, je veux mettre à jour mon statut ouvert/fermé depuis mon téléphone en 2 secondes.
✓ Bouton toggle visible dès l'accueil du tableau de bord pro · ✓ Mise à jour immédiate sur la carte pour tous les utilisateurs · ✓ Possibilité de définir une fermeture temporaire avec message (ex: "Fermé pour congé jusqu'au XX")
US-PAGE-003
En tant que professionnel, je veux voir les statistiques de consultation de ma page.
✓ Nombre de vues (7j / 30j) · ✓ Nombre de taps "Itinéraire" · ✓ Nombre de taps "Appeler" · ✓ Nombre de bons plans consultés · ✓ Note moyenne et évolution
Catégories prédéfinies

🍽️ Restauration

Restaurants, fast-food, cafés, pâtisseries, boulangeries, pizzerias…

🛒 Commerce

Épiceries, supérettes, alimentation générale, marchés…

💊 Santé

Pharmacies, médecins, cliniques, dentistes, opticiens…

✂️ Services personnels

Coiffeurs, barbiers, esthéticiennes, pressing, laveries…

🔧 Artisanat & Réparation

Électriciens, plombiers, mécaniciens, cordonniers, couturiers…

📚 Éducation & Culture

Écoles, centres de formation, librairies, associations culturelles…

🏢 Services professionnels

Agences, bureaux, imprimeries, bureaux de change…

🤝 Associations

Associations civiles, ONG locales, clubs sportifs, amicales…

🏠 Autre

Catégorie générique pour tout ce qui ne rentre pas ailleurs.

07

Bons Plans

Le moteur d'engagement des professionnels et d'intérêt des citoyens — 3 niveaux de visibilité.

Les 3 niveaux de Bon Plan
GRATUIT

BP Basique

Inclus dans l'inscription. 1 bon plan actif par mois maximum. Apparaît dans la liste chronologique standard. Notification envoyée aux abonnés de la ville.

SPONSORISÉ

BP Bon Plan

Abonnement mensuel. Remonte en tête de la liste des bons plans. Apparaît en priorité dans les résultats de recherche. Badge "Sponsorisé" discret. Jusqu'à 2 BP actifs simultanément.

⭐ GOLD

BP Gold

Abonnement mensuel premium. Marqueur doré visible directement sur la carte. Apparaît en 1ère position dans la liste. Pop-up optionnel sur la carte. Jusqu'à 3 BP actifs simultanément.

Contenu d'un Bon Plan
TitreObligatoire · 60 caractères max
DescriptionObligatoire · 280 caractères max
PhotoObligatoire · 1 photo · Format carré ou 16:9
Date de débutObligatoire · Ne peut pas être dans le passé
Date de finObligatoire · Max 30 jours après début
Type d'offreOptionnel · Réduction % / Promotion / Nouvel arrivage / Offre limitée
ConditionsOptionnel · 150 caractères max
User Stories — Bons Plans
US-BP-001
En tant que professionnel, je veux publier un bon plan depuis mon tableau de bord en moins de 5 minutes.
✓ Formulaire simple en 4 champs · ✓ Aperçu avant publication · ✓ Notification automatique envoyée aux utilisateurs de la ville à la publication · ✓ Rejet si quota mensuel atteint (selon niveau)
US-BP-002
En tant que citoyen, je veux avoir un espace dédié aux bons plans de ma ville avec les offres actives en cours.
✓ Onglet "Bons Plans" dans la navigation principale · ✓ Liste triée : Gold en tête, puis BP Sponsorisés, puis Gratuits · ✓ Filtre par catégorie · ✓ Filtre "Se termine bientôt" · ✓ Indication du nombre de jours restants · ✓ Tap sur un BP → fiche du professionnel
US-BP-003
En tant que citoyen, je veux recevoir une notification quand un nouveau bon plan est publié dans ma ville.
✓ Notification push opt-in · ✓ Paramétrable par catégorie · ✓ Max 3 notifications/jour pour éviter le spam
08

Calendrier & Événements

La vie événementielle de la ville — marchés, fêtes, activités, événements institutionnels.

Qui peut publier un événement ?
Associations

Événements associatifs

Activités, ateliers, rencontres, collectes. Liés à leur page officielle.

Professionnels

Événements commerciaux

Soldes, inaugurations, soirées, animations. Obligatoirement locaux.

Collectivités

Événements officiels

Fêtes nationales, marchés communaux, événements municipaux. Avec badge officiel.

Contenu d'un Événement
TitreObligatoire · 80 caractères max
DescriptionObligatoire · 500 caractères max
Photo de couvertureObligatoire
Date & heure de débutObligatoire
Date & heure de finObligatoire
LieuObligatoire · Adresse texte + point sur carte
OrganisateurAuto · Lié à la page du professionnel/association
PartenairesOptionnel · Mention d'autres acteurs locaux inscrits
Lien externeOptionnel · Site web ou formulaire d'inscription
User Stories — Calendrier
US-CAL-001
En tant que citoyen, je veux voir tous les événements à venir dans ma ville dans un calendrier visuel.
✓ Vue liste et vue calendrier mensuel · ✓ Filtres par type (culturel, commercial, associatif, officiel) · ✓ Notification optionnelle pour les événements favoris · ✓ Partage d'un événement (lien ou réseau social)
US-CAL-002
En tant qu'association, je veux publier un événement et mentionner mes partenaires locaux pour leur donner de la visibilité.
✓ Champ "partenaires" avec recherche parmi les pros inscrits · ✓ Les partenaires reçoivent une notification · ✓ L'événement apparaît sur les pages de tous les partenaires mentionnés
09

Forum & Blog Participatif

L'espace d'expression citoyenne — discussions, retours d'expérience, actualité locale.

Règle absolue : Tout contenu publié sur le forum/blog concerne obligatoirement la ville ou la région. Les sujets hors-territoire sont hors-périmètre. Cette règle est appliquée par la modération admin.
Structure du Forum/Blog

FORUM Discussions & Questions

Tout citoyen inscrit peut ouvrir un fil de discussion
Catégories : Vie pratique / Actualité locale / Question aux habitants / Retour d'expérience / Histoire & Culture
Système de réponses (threading à 1 niveau max)
Likes / reactions sur les posts
Signalement de contenu inapproprié
Modération a posteriori par l'admin

BLOG Articles & Actualités

Articles longs (avec titre, corps, image de couverture, catégorie)
Publiés par citoyens OU associations OU collectivités
Validation admin avant publication (modération a priori pour le blog)
Articles sponsorisés des associations : remontent en priorité + badge
Catégories : Actualité / Histoire / Événement vécu / Opinion / Guide pratique
User Stories — Forum/Blog
US-FORUM-001
En tant que citoyen, je veux lancer une discussion sur un sujet local et obtenir des réponses des autres habitants.
✓ Création post : titre + corps + catégorie + photo optionnelle · ✓ Notification aux abonnés de la catégorie · ✓ Tri par date / popularité · ✓ Épinglage par admin des discussions importantes
US-FORUM-002
En tant que citoyen, je veux partager mon retour d'expérience sur un événement local sous forme d'article.
✓ Formulaire article avec éditeur texte simple (gras, liens, photos) · ✓ Soumission pour modération · ✓ Notification à l'auteur lors de la publication · ✓ Possibilité de mentionner des professionnels inscrits
10

SOS & Contacts d'Urgence

Accès rapide aux numéros et adresses essentiels — fonctionnalité V1.1 (post-lancement initial).

V1.1 : Cette fonctionnalité est prévue pour la première mise à jour post-lancement, pas pour le MVP initial. Elle est documentée ici pour que le développement soit anticipé.
Contenu SOS par ville

🚑 Urgences médicales

Hôpitaux, cliniques, SAMU, services de garde. Numéros + adresse + itinéraire direct.

🚒 Sécurité

Police, gendarmerie, pompiers, protection civile. Numéros d'urgence nationaux + locaux.

🏛️ Services essentiels

Mairie, APC, daïra, services des eaux, électricité (Sonelgaz), numéros utiles de la wilaya.

US-SOS-001
En tant que citoyen, je veux accéder aux contacts d'urgence de ma ville en moins de 3 secondes, même sans connexion internet.
✓ Accessible depuis le menu principal avec icône distincte · ✓ Données mises en cache localement · ✓ Tap sur un numéro = appel immédiat · ✓ Géolocalisation de l'hôpital le plus proche · ✓ Mise à jour par l'admin lorsque les infos changent
11

Newsletter & Notifications

Les canaux de communication entre la ville et ses citoyens.

Types de notifications
Type Déclencheur Qui envoie Opt-in/out
Nouveau Bon Plan Publication d'un BP par un pro Automatique Opt-out possible (par catégorie)
Nouvel événement Publication d'un événement Automatique Opt-out possible
Actualité officielle Publication par collectivité Collectivité (via B2G) Recommandé opt-in par défaut
Newsletter ville Hebdomadaire (configurable) Admin Madina.Dz Opt-in explicite
Réponse forum Réponse à un post que j'ai créé Automatique Opt-out possible
Commentaire sur ma fiche Nouveau commentaire sur fiche pro Automatique Non désactivable (pro)
US-NOTIF-001
En tant que citoyen, je veux gérer mes préférences de notification depuis les réglages de l'application.
✓ Page Réglages > Notifications · ✓ Toggle par type de notification · ✓ Filtre par catégorie de commerçant pour les BP · ✓ Plages horaires de non-dérangement (DND)
Règle anti-spam : Maximum 5 notifications push par jour par utilisateur, toutes sources confondues. Les BP Gold sont prioritaires dans la file, les BP Basiques sont regroupés en digest quotidien si limite atteinte.
12

Publicité & Sponsoring

Les encarts publicitaires natifs localisés — ultra-ciblés, non intrusifs, intégrés au design.

Emplacements publicitaires Phase 1
Emplacement Format Fréquence Niveau de visibilité
Liste des Bons Plans Carte native (intégrée à la liste) 1 encart / 5 résultats Élevée
Résultats de recherche Résultat épinglé en tête 1 par recherche Très élevée
Fil du Forum/Blog Post natif sponsorisé 1 encart / 8 posts Moyenne
Calendrier Événement mis en avant 1 en tête de liste Élevée
Carte (Gold uniquement) Marqueur doré + pop-up Permanent tant qu'actif Maximale
Principe : Toute publicité est strictement locale — elle ne peut être achetée que par des professionnels inscrits dans la même ville. Aucune pub nationale ou externe en Phase 1. Le ciblage est géographique par définition.
13

Back-end Administrateur

L'interface de pilotage de Madina.Dz — accessible via web (dashboard admin).

Note : Le back-end admin est une interface web (pas mobile). C'est le seul élément web de la Phase 1. Il est accessible uniquement aux administrateurs et commerciaux terrain de Madina.Dz.
Modules du back-end

MODULE Gestion des professionnels

Liste de tous les pros inscrits par ville avec statut (actif, expiré, suspendu)
Création de fiche (interface commercial terrain)
Modification de toute fiche par l'admin
Suspension / suppression d'une fiche
Gestion des dates d'expiration des inscriptions
Alerte automatique 30j avant expiration
Historique des paiements par pro

MODULE Modération des contenus

File de modération des articles blog (validation avant publication)
Signalements citoyens (commentaires, posts forum)
Suppression de contenu inapproprié
Suspension temporaire ou définitive d'un utilisateur
Épinglage de discussions importantes

MODULE Pilotage par ville

Dashboard par ville : nb pros actifs, nb utilisateurs inscrits, taux d'usage quotidien
Suivi des bons plans publiés et consultés
Suivi activité forum/blog
Export CSV des indicateurs
Gestion des catégories de commerces par ville

MODULE Gestion des commerciaux

Création de comptes commerciaux terrain
Attribution à une ville / zone
Suivi des fiches créées par commercial (nb, date, qualité)
Suivi des encaissements déclarés
14

Espace B2G — Collectivités

L'interface réservée aux autorités locales et nationales — données et diffusion officielle.

RÉCEPTION

Données territoriales

La collectivité accède à un tableau de bord anonymisé des usages de sa ville : commerces les plus consultés, heures de pointe d'utilisation, catégories les plus recherchées, activité citoyenne sur le forum.

DIFFUSION

Communication officielle

La collectivité peut publier des actualités officielles, des notifications d'intérêt public et des événements institutionnels. Ces contenus apparaissent avec un badge officiel et une priorité d'affichage.

US-BTG-001
En tant que représentant de la collectivité, je veux diffuser une information urgente (coupure d'eau, alerte météo) à tous les citoyens de la ville via l'application.
✓ Accès à un formulaire de notification d'urgence · ✓ Notification push envoyée à tous les utilisateurs de la ville · ✓ Affichage en tête du fil d'actualité avec badge "OFFICIEL" · ✓ Validation par l'admin Madina.Dz avant envoi (sauf urgence marquée)
Règle de gouvernance : Les comptes B2G sont créés et validés manuellement par l'admin Madina.Dz. Aucune collectivité ne peut créer son propre compte. Toute communication officielle passe par une validation avant publication, sauf les alertes d'urgence validées au préalable.
15

Exigences Techniques

Contraintes et recommandations pour le développement de la Phase 1.

Plateformes cibles
iOS

Apple iOS

Version minimale supportée : iOS 14+. Distribution via App Store Algeria. Respect des Human Interface Guidelines (HIG) d'Apple.

Android

Google Android

Version minimale supportée : Android 8.0 (API 26)+. Distribution via Google Play Store. Respect des Material Design Guidelines.

Exigences fonctionnelles clés
Exigence Niveau Détail
Temps de chargement carte MUST Carte affichée en moins de 3 secondes sur 3G
Mode hors-ligne partiel MUST Contacts SOS + dernière version de la carte en cache
Notifications push MUST Via FCM (Android) et APNs (iOS)
Géolocalisation MUST Permission demandée, fonctionnement dégradé sans
Upload photos MUST Depuis caméra ou galerie, compression automatique <1MB
Appel direct MUST tap-to-call sur tous les numéros de téléphone
Partage externe SHOULD Partage d'une fiche ou d'un événement via lien universel
Internationalisation SHOULD Architecture i18n dès le départ (AR prévu Phase 2)
Dark/Light mode COULD Suivi du mode système de l'appareil
Cartographie
Librairie de cartographie à choisir entre : Mapbox, Google Maps SDK, ou OpenStreetMap (Leaflet). Favoriser Mapbox pour la personnalisation visuelle.
Les données de localisation des professionnels sont stockées en coordonnées GPS (lat/lng).
Clustering des marqueurs obligatoire dès 20+ points visibles.
Le SDK de cartographie doit être sélectionné avant le début du développement — ce choix impacte les coûts à l'échelle.
Architecture recommandée
FRONT

Application mobile

Framework cross-platform recommandé (React Native ou Flutter) pour réduire les coûts de développement en Phase 1 et maintenir une codebase unique. Natif pur si ressources disponibles.

BACK

Backend & API

API REST ou GraphQL. Base de données relationnelle (PostgreSQL recommandé). Stockage médias : S3-compatible. Authentification : JWT + OTP SMS. Infrastructure : cloud scalable (AWS, GCP, ou OVH pour souveraineté).

16

Sécurité & Données

Principes de protection des données et de sécurité applicative.

Données personnelles
OBLIGATOIRE
Collecte minimale : seuls les champs nécessaires au service sont demandés
Aucune revente ou transmission de données personnelles à des tiers
Chiffrement des données en transit (HTTPS/TLS obligatoire)
Chiffrement des mots de passe (bcrypt ou argon2)
Possibilité pour l'utilisateur de supprimer son compte et ses données
Politique de confidentialité accessible depuis l'app avant inscription
RECOMMANDÉ
Logs d'accès aux données administrateur
Rate limiting sur les endpoints d'API (anti-scraping)
Validation côté serveur de toutes les entrées utilisateur
Expiration des sessions après inactivité (configurable)
Conformité : Les données des utilisateurs algériens sont soumises à la loi 18-07 relative à la protection des personnes physiques dans le traitement des données à caractère personnel. La politique de confidentialité doit être rédigée en conformité avec ce texte.
17

KPIs & Indicateurs de Succès Phase 1

Ce qui détermine si la Phase 1 est réussie — et quand passer à la Phase 2.

Rappel : L'objectif de la Phase 1 est la crédibilité et l'usage réel, pas la rentabilité. Ces KPIs mesurent l'adoption et la qualité d'usage, pas le chiffre d'affaires.
Indicateurs cibles (par ville, à 8 semaines)
Pros inscrits
50+
Fiches professionnelles actives par ville pilote
Utilisateurs inscrits
200+
Comptes citoyens actifs par ville
Taux d'usage quotidien
30%
% d'utilisateurs actifs au moins 1 fois / semaine
Statuts mis à jour
60%
% de pros qui utilisent le toggle ouvert/fermé
Bons plans publiés
20+
BP actifs publiés par ville sur 4 semaines
Note app stores
4.0+
Note moyenne sur App Store et Google Play
Critères de passage en Phase 2
CONDITIONS DE PASSAGE
Au moins 2 des 3 villes pilotes atteignent les KPIs cibles
Processus commercial terrain validé et reproductible (temps moyen d'inscription <20 min)
Aucun bug critique identifié non résolu depuis plus de 7 jours
Retours terrain collectés et intégrés dans le backlog Phase 2
Modèle tarifaire validé (taux de refus commercial <40%)
18

Hors Périmètre & Prochaines Phases

Ce qui est explicitement reporté — et dans quelle phase cela sera adressé.

Fonctionnalité Raison du report Phase cible
Auto-inscription des pros Qualité de la donnée non maîtrisable sans commercial terrain Phase 2
Paiement en ligne (abonnements BP) Complexité réglementaire + priorité à la validation d'usage Phase 2
Version arabe de l'app Ressources de traduction + test UX RTL Phase 2
Messagerie privée Non prioritaire pour le MVP, risque de modération élevé Phase 3
E-commerce & livraison locale Complexité logistique, hors MVP Phase 3
Intégration startups tierces (API) Nécessite un flux d'utilisateurs établi Phase 3–4
IA territoriale / Plateforme Sensible Nécessite un volume de données suffisant sur plusieurs villes Phase 4
Version web de l'application Mobile first. Web uniquement pour le back-end admin. Post Phase 2
Système de fidélité / points Complexité non justifiée en Phase 1 À évaluer Phase 3
Principe de discipline : Tout développement non aligné avec la priorité de la Phase 1 (usage réel + crédibilité locale) est refusé, même s'il semble "facile à faire". La valeur de ce CDC est autant dans ce qu'il exclut que dans ce qu'il inclut.
Madina.Dz

Cahier des Charges Fonctionnel · Phase 1 · Version 1.0
Document interne confidentiel — Associés & Porteurs de projet