# Domaine : Recommendation

## Vue d'ensemble

Le domaine **Recommendation** gère le système de recommandation de contenus basé sur la géolocalisation et les centres d'intérêt des utilisateurs. C'est un **Supporting Subdomain** clé qui différencie RoadWave des autres plateformes audio.

## Responsabilités

- **Jauges de centres d'intérêt** : Gestion et évolution dynamique des préférences utilisateurs
- **Algorithme de recommandation** : Scoring et classement des contenus pertinents
- **Interactions et navigation** : Adaptation des recommandations selon le comportement utilisateur

## Règles métier

- [Centres d'intérêt et jauges](rules/centres-interet-jauges.md)
- [Algorithme de recommandation](rules/algorithme-recommandation.md)
- [Interactions et navigation](rules/interactions-navigation.md)

## Modèle de données

- [Diagramme entités recommandation](entities/modele-recommandation.md) - Entités : USER_INTERESTS, INTEREST_CATEGORIES

## Diagrammes

- [Séquence : Scoring et recommandation]((à créer)) *(à créer si existant)*

## Tests BDD

- Features de recommandation *(voir Phase 6)*

## Ubiquitous Language

**Termes métier du domaine** :
- **Interest Gauge** : Jauge de centre d'intérêt (score de 0 à 100)
- **Interest Category** : Catégorie d'intérêt (automobile, voyage, musique, etc.)
- **Recommendation Score** : Score combinant distance géographique et affinité d'intérêt
- **Content Scoring** : Algorithme de calcul du score de pertinence
- **Geographic Priority** : Priorisation GPS > Ville > Département > Région > Pays
- **Interest Decay** : Diminution progressive de la jauge sans interaction

## Dépendances

- ✅ Dépend de : `_shared` (users, contents)
- ✅ Dépend de : `content` (métadonnées de contenus)
- ⚠️ Utilisé par : interface mobile, API publique
