# FabNum — Planification macro Vues synthétiques dérivées de [EVOLUTIONS.md](EVOLUTIONS.md). **Date** : 2026-04-02 --- ## 1. Présentation synthétique temporelle ``` T0 T1 T2 T3 Horizon │ │ │ │ │ │ PHASE 1 │ PHASE 2 │ PHASE 3 │ PHASE 4 │ │ Fondations │ Modèle & Stockage │ Données & Sources │ Fiches & API │ │ │ │ │ │ │ ┌─────────────────┐ │ ┌─────────────────┐ │ ┌─────────────────┐ │ ┌───────────────┐ │ ┌──────────────┐ │ │ P7 Validation │ │ │ P3 Modèle de │ │ │ P2 Gestion des │ │ │ P5 Templates │ │ │ P10 Énergie │ │ │ niveaux (revue │→│ │ données │→│ │ sources (//P2 │→│ │ et génération │ │ │ et eau │ │ │ littérature) │ │ │ structuré │ │ │ dès phase 2) │ │ │ fiches │ │ │ │ │ └─────────────────┘ │ └─────────────────┘ │ └─────────────────┘ │ └───────────────┘ │ │ P11 Géo fine │ │ ┌─────────────────┐ │ ┌─────────────────┐ │ ┌─────────────────┐ │ ┌───────────────┐ │ │ │ │ │ P6 Spike techno │ │ │ P6 Implém. │ │ │ P4 Amorçage │ │ │ P1 API REST │ │ │ P9 Multi- │ │ │ base données │ │ │ stockage retenu │ │ │ 3M+1C+1PF │ │ │ + rôles │ │ │ sectoriel │ │ │ (Docker/serveur)│ │ │ │ │ │ + audit exhaust. │ │ │ │ │ └──────────────┘ │ └─────────────────┘ │ └─────────────────┘ │ └─────────────────┘ │ ├───────────────┤ │ │ │ │ │ │ P8 Services, │ │ │ │ │ │ │ sécu, profils │ │ │ ║ │ ║ │ ║ │ └───────────────┘ │ │ parallèle │ séquentiel │ P2 // dès Ph.2 │ │ │ │ │ │ │ ├─────────────────────┼─────────────────────┼─────────────────────┤ │ │ MVP = Phases 1+2+3 │ │ │ └─────────────────────┴─────────────────────┴─────────────────────┘ │ ``` **Légende** : M = minerai, C = composant, PF = produit final, // = parallèle --- ## 2. Macro-DAF (Diagramme d'Activités Fonctionnel) Vue par **fonctions métier** — ce que fait le système, pour qui, et dans quel ordre. ``` ┌─────────────────────────────────────────────────────────────────────────────────────┐ │ FABNUM — ACTIVITÉS FONCTIONNELLES │ ├─────────────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F1. MODÉLISER LA CHAÎNE DE VALEUR │ │ │ │ ├─ F1.1 Valider les niveaux de décomposition (revue litt.) │ │ │ │ ├─ F1.2 Définir les intitulés génériques des niveaux │ │ │ │ ├─ F1.3 Définir les critères d'arrêt (profondeur) │ │ │ │ └─ F1.4 Gérer les chaînes principales et connexes │ │ │ │ Acteurs : Admin │ │ │ └──────────────┬───────────────────────────────────────────────────┘ │ │ ▼ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F2. STRUCTURER ET QUALIFIER LES DONNÉES │ │ │ │ ├─ F2.1 Spécifier les données (essentielles / informationnelles)│ │ │ │ ├─ F2.2 Définir le périmètre mesuré de chaque donnée │ │ │ │ ├─ F2.3 Identifier et catégoriser les sources │ │ │ │ ├─ F2.4 Attribuer les tiers de confiance (par source/domaine) │ │ │ │ ├─ F2.5 Qualifier les données (filtres qualité) │ │ │ │ ├─ F2.6 Arbitrer les divergences entre sources │ │ │ │ └─ F2.7 Calculer l'indice de fiabilité par donnée │ │ │ │ Acteurs : Admin │ │ │ └──────────────┬───────────────────────────────────────────────────┘ │ │ ▼ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F3. SURVEILLER ET MAINTENIR │ │ │ │ ├─ F3.1 Veiller sur les sources (huginn) │ │ │ │ ├─ F3.2 Détecter les variations anormales (alertes) │ │ │ │ ├─ F3.3 Contrôler les citations/affirmations (verify-citations)│ │ │ │ ├─ F3.4 Historiser les données et les indices │ │ │ │ └─ F3.5 Auditer l'exhaustivité des minerais │ │ │ │ Acteurs : Admin (gouvernance), Services internes (automatisé) │ │ │ └──────────────┬───────────────────────────────────────────────────┘ │ │ ▼ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F4. CALCULER LES INDICES DE CRITICITÉ │ │ │ │ ├─ F4.1 Calculer IHH, ICS, IVC, ISG (+ futurs : eau, énergie) │ │ │ │ ├─ F4.2 Pré-calculer à chaque mise à jour du graphe │ │ │ │ ├─ F4.3 Calculer les méta-indices dynamiques (sur sélection) │ │ │ │ └─ F4.4 Rétro-analyser sur des crises passées (backtesting) │ │ │ │ Acteurs : Services internes (automatisé) │ │ │ └──────────────┬───────────────────────────────────────────────────┘ │ │ ▼ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F5. PRODUIRE LES FICHES │ │ │ │ ├─ F5.1 Générer depuis les données via templates │ │ │ │ ├─ F5.2 Adapter par niveau (minerai, composant, opération...) │ │ │ │ └─ F5.3 Adapter par usage (expertise, synthèse, API/JSON) │ │ │ │ Acteurs : Services internes (automatisé) │ │ │ └──────────────┬───────────────────────────────────────────────────┘ │ │ ▼ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F6. EXPOSER ET SERVIR │ │ │ │ ├─ F6.1 Requêtage du graphe (expert / simplifié) │ │ │ │ ├─ F6.2 Consultation des fiches (tous formats) │ │ │ │ ├─ F6.3 Analyse de vulnérabilité et scénarios │ │ │ │ ├─ F6.4 Export (PDF, JSON, DOT) │ │ │ │ ├─ F6.5 Personnalisation client (projection SI) │ │ │ │ └─ F6.6 Intégration écosystème veille 360° │ │ │ │ Acteurs : Expert, Service, COMEX, Métiers, DSI │ │ │ └──────────────────────────────────────────────────────────────────┘ │ │ │ │ ┌──────────────────────────────────────────────────────────────────┐ │ │ │ F7. SÉCURISER ET CONTRÔLER (transversal)│ │ │ │ ├─ F7.1 Authentifier (utilisateur / clé API) │ │ │ │ ├─ F7.2 Autoriser par rôle (admin, expert, service) │ │ │ │ ├─ F7.3 Filtrer par profil de visibilité │ │ │ │ ├─ F7.4 Rate limiting │ │ │ │ └─ F7.5 Monitoring / observabilité │ │ │ │ Acteurs : Admin (configuration), Système (exécution) │ │ │ └──────────────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────────┘ Flux principal : F1 → F2 → F3 → F4 → F5 → F6 F3 tourne en continu (veille) F4 se déclenche à chaque mise à jour du graphe F7 est transversal à F5 et F6 ``` --- ## 3. Macro-DAT (Diagramme d'Activités Technique) Vue par **composants techniques** — ce qu'il faut construire et comment ça s'articule. ``` ┌─────────────────────────────────────────────────────────────────────────────────────┐ │ FABNUM — ARCHITECTURE TECHNIQUE │ ├─────────────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌────────────────────────────────────────────────────────┐ │ │ │ COUCHE STOCKAGE │ │ │ │ │ │ │ │ ┌──────────────────┐ ┌───────────────────────────┐ │ │ │ │ │ Base graphe │ │ Historisation │ │ │ │ │ │ (Neo4j / PG+AGE │ │ (snapshots horodatés │ │ │ │ │ │ / ArangoDB) │ │ données + indices) │ │ │ │ │ │ │ │ │ │ │ │ │ │ • Nœuds (N0-N12)│ │ • Versions des données │ │ │ │ │ │ • Arêtes + attrs│ │ • Versions des indices │ │ │ │ │ │ • Multi-graphes │ │ • Audit trail │ │ │ │ │ │ • Schéma évolutif│ │ │ │ │ │ │ └────────┬─────────┘ └─────────────┬─────────────┘ │ │ │ └───────────┼──────────────────────────┼────────────────┘ │ │ │ │ │ │ ▼ ▼ │ │ ┌────────────────────────────────────────────────────────┐ │ │ │ COUCHE MOTEUR │ │ │ │ │ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌───────────────┐ │ │ │ │ │ Calcul │ │ Arbitrage │ │ Qualification │ │ │ │ │ │ indices │ │ sources │ │ données │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ • IHH, ICS │ │ • Tier 1 win │ │ • Filtres │ │ │ │ │ │ • IVC, ISG │ │ • Convergence│ │ qualité │ │ │ │ │ │ • Méta-ind. │ │ • Alertes │ │ • Indice de │ │ │ │ │ │ • Extensible │ │ • Seuils │ │ fiabilité │ │ │ │ │ └──────────────┘ └──────────────┘ └───────────────┘ │ │ │ │ │ │ │ │ ┌──────────────┐ ┌──────────────┐ ┌───────────────┐ │ │ │ │ │ Requêtage │ │ Génération │ │ Import/Export │ │ │ │ │ │ graphe │ │ fiches │ │ │ │ │ │ │ │ │ │ │ │ • DOT (legacy)│ │ │ │ │ │ • Chemins │ │ • Templates │ │ • JSON │ │ │ │ │ │ • Filtrage │ │ niveau× │ │ • PDF │ │ │ │ │ │ • Sous-graphe│ │ usage │ │ • Backup/ │ │ │ │ │ │ • Projection │ │ • Rendu MD/ │ │ restore │ │ │ │ │ │ SI client │ │ JSON/PDF │ │ │ │ │ │ │ └──────────────┘ └──────────────┘ └───────────────┘ │ │ │ └────────────────────────┬───────────────────────────────┘ │ │ │ │ │ ┌────────────┴────────────┐ │ │ ▼ ▼ │ │ ┌─────────────────────┐ ┌─────────────────────────────────┐ │ │ │ SERVICES INTERNES │ │ API REST │ │ │ │ (non exposés) │ │ (point d'accès unique) │ │ │ │ │ │ │ │ │ │ ┌───────────────┐ │ │ ┌────────────┐ ┌────────────┐ │ │ │ │ │ Veille huginn │ │ │ │ Auth │ │ Rate │ │ │ │ │ │ sources │ │ │ │ + rôles │ │ limiting │ │ │ │ │ ├───────────────┤ │ │ ├────────────┤ ├────────────┤ │ │ │ │ │ Vérification │ │ │ │ Profils │ │ Monitoring │ │ │ │ │ │ citations │ │ │ │ visibilité │ │ logging │ │ │ │ │ ├───────────────┤ │ │ └────────────┘ └────────────┘ │ │ │ │ │ Recalcul │ │ │ │ │ │ │ │ indices │ │ │ Endpoints : │ │ │ │ ├───────────────┤ │ │ • /graphe/* (requêtage) │ │ │ │ │ Alertes │ │ │ • /fiches/* (consultation) │ │ │ │ │ (variations, │ │ │ • /analyse/* (vulnérabilités) │ │ │ │ │ convergence) │ │ │ • /indices/* (méta-indices) │ │ │ │ └───────────────┘ │ │ • /export/* (PDF, JSON, DOT) │ │ │ └─────────────────────┘ │ • /admin/* (CRUD, scripts) │ │ │ └──────────────┬──────────────────┘ │ │ │ │ │ ┌───────────────────────────┬┴──────────────────────┐ │ │ ▼ ▼ ▼ │ │ ┌─────────────────────┐ ┌──────────────────────┐ ┌─────────────────────┐ │ │ │ FRONTEND EXPERT │ │ SERVICES EXTERNES │ │ ÉCOSYSTÈME 360° │ │ │ │ (consomme l'API) │ │ (consomment l'API) │ │ (consomme l'API) │ │ │ │ │ │ │ │ │ │ │ │ • COMEX : synthèses│ │ • Génération IA │ │ • Veille strat. │ │ │ │ • Métiers : analyse│ │ rapports │ │ • IRON │ │ │ │ • DSI : dépend. SI│ │ • Agent local │ │ • Alertes │ │ │ │ │ │ client │ │ croisées │ │ │ └─────────────────────┘ └──────────────────────┘ └─────────────────────┘ │ │ │ │ ┌─────────────────────┐ │ │ │ ADMIN (scripts) │ Accès direct au moteur + API /admin/* │ │ │ • CRUD graphe │ │ │ │ • Gestion sources │ │ │ │ • Tiers, arbitrage │ │ │ │ • Backup/restore │ │ │ └─────────────────────┘ │ └─────────────────────────────────────────────────────────────────────────────────────┘ Composants à construire par phase : Phase 1 : Revue littérature (P7) + Spike base données (P6) Phase 2 : Couche stockage + Moteur (calcul, arbitrage, qualification) Phase 3 : Services internes (veille, vérification) + Import données Phase 4 : API REST + Frontend expert + Génération fiches ``` --- ## Dépendances critiques ``` P7 (niveaux) ──→ P3 (modèle) ──→ P6 impl (stockage) ──→ P4 (amorçage) ──→ P5 (fiches) │ P6 spike ─────────────────────→ P6 impl ▼ P1 (API) ──→ P8 (services) P2 (sources) ─────────────────────────────→ P4 (amorçage) Parallélisations possibles : • P7 // P6 spike (phase 1) • P2 identification // P3 + P6 impl (phase 2→3) ```