90 lines
5.8 KiB
Markdown
90 lines
5.8 KiB
Markdown
# Cartographie du Système d'Information & Architecture Technique RYM / Peakload
|
|
|
|
## 1. Vision & Principes d'Architecture Innovante
|
|
|
|
Le Système d'Information (SI) RYM / Peakload repose sur une architecture **Souveraine, SecOps et Privacy-by-Design**.
|
|
|
|
Pour répondre aux exigences d'agilité, de sécurité et d'auditabilité :
|
|
* **SecOps & Compliance-as-Code** : La conformité (ISO 27001 / ISO 9001) et les contrôles de sécurité (détection de secrets, vulnérabilités IaC) sont intégrés nativement dans la chaîne d'intégration continue (CI/CD).
|
|
* **Isolation Rootless** : L'ensemble des services applicatifs et des agents d'exécution fonctionnent sous **Podman** (sans privilèges root ni daemon centralisé).
|
|
* **Confidentialité & Traitement Edge/Local** : Les données sensibles de santé et de performance sportive sont traitées au plus près de l'utilisateur ou dans des micro-services isolés et chiffrés.
|
|
|
|
---
|
|
|
|
## 2. Choix Technologiques & Langages à Forte Communauté
|
|
|
|
Afin de garantir la pérennité, la maintenabilité et la facilité de recrutement ou de collaboration académique/industrielle, le choix s'est porté sur les langages bénéficiant des plus vastes écosystèmes open-source au monde :
|
|
|
|
| Composant / Couche | Technologie / Langage | Justification & Atouts Communautaires |
|
|
| :--- | :--- | :--- |
|
|
| **Services Backend & ML** | **Python 3.12+ (FastAPI / PyTorch)** | Standard universel en Recherche, IA/ML et Data Science. Écosystème massif, haute performance asynchrone avec FastAPI. |
|
|
| **Applications Frontend / Mobile** | **TypeScript (Node.js / React Native)** | Typage strict, sécurité à la compilation, vaste communauté et réutilisation de code inter-plateformes (Web & Mobile). |
|
|
| **Forge & CI/CD** | **Gitea + Gitea Actions (`act_runner`)** | Solution souveraine, légère et compatible avec les workflows GitHub Actions. |
|
|
| **Conteneurisation & IaC** | **Podman / Podman-Compose** | Runtime souverain, respectueux des normes OCI, sans risque d'élévation de privilèges root. |
|
|
| **Bases de Données & Cache** | **PostgreSQL + Redis** | SGBDR robuste avec support natif des données relationnelles, séries temporelles et extensions géospatiales (PostGIS). |
|
|
|
|
---
|
|
|
|
## 3. Cartographie Applicative & Flux de Données (Diagramme)
|
|
|
|
```text
|
|
[ Client Mobile / App Web ] (TypeScript / React Native)
|
|
│
|
|
│ (HTTPS / TLS 1.3 - REST & WebSockets)
|
|
▼
|
|
[ Gateway API / Proxy Reverse ] (Nginx / Caddy sur VPS Debian)
|
|
│
|
|
├───────────────┬──────────────────────────────┐
|
|
▼ ▼ ▼
|
|
[ Service Backend Core ] [ Engine ML & Analytics ] [ Forge & CI/CD ]
|
|
(Python / FastAPI) (Python / PyTorch) (Gitea + Runner)
|
|
│ │ │
|
|
▼ ▼ │
|
|
┌──────────────────────────────┐ │
|
|
│ Stockage Données & Cache │ │
|
|
│ (PostgreSQL & Redis Rootless)│ ◄─────────────────────────┘
|
|
└──────────────────────────────┘ (Audits & Scans SecOps via Podman)
|
|
```
|
|
|
|
---
|
|
|
|
## 4. Modèle Machine Learning (ML) : Pertinence, Explicabilité & Traitement des Séries Temporelles
|
|
|
|
Dans le cadre du projet RYM / Peakload, l'intégration du Machine Learning répond à un besoin métier précis : la prévention du surentraînement et l'optimisation personnalisée de la charge de travail sportive.
|
|
|
|
### A. Modélisation Hybride & Déterministe
|
|
|
|
* **Pas de "Boîte Noire" Opaque** : Utilisation prioritaire d'algorithmes statistiques et de ML explicables (Séries temporelles, Modèles autorégressifs ARIMA/Prophet, XGBoost, ou réseaux de neurones légers type LSTM/TCN sous **PyTorch**).
|
|
|
|
* **Indicateurs Clés Traités** :
|
|
|
|
* Variabilité de la Fréquence Cardiaque (VRC / HRV)
|
|
* Charge Aiguë / Chronique (ACWR - *Acute:Chronic Workload Ratio*)
|
|
* Score d'énergie et de récupération perçu (RPE)
|
|
|
|
* **Pertinence Scientifique** : Les recommandations générées reposent sur des modèles physiologiques validés cliniquement et académiquement, garantissant une traçabilité totale des décisions de l'IA.
|
|
|
|
---
|
|
|
|
## 5. Matrice de Sécurité & Traçabilité pour Audit (ISO 27001 / ISO 9001)
|
|
|
|
Pour garantir la traçabilité intégrale exigée lors des audits de conformité :
|
|
|
|
| Zone d'Audit | Mecanisme de Contrôle | Résultat / Livrable d'Audit |
|
|
| :--- | :--- | :--- |
|
|
| **Authentification Commits** | Signature GPG obligatoire sur Git | Commits vérifiés et non repudiables dans Gitea |
|
|
| **Détection de Secrets** | Scan automatique **Gitleaks** en CI | Log d'audit automatisé à chaque PR |
|
|
| **Analyse Vulnérabilités IaC** | Scan automatique **Trivy** en CI | Rapport de conformité des conteneurs/images OCI |
|
|
| **Protection des Branches** | Verrouillage de `main` + PR + Code Review | Traçabilité des approbations et du duo de validation |
|
|
| **Sécurité des Données** | Chiffrement AES-256 au repos & TLS 1.3 en transit | Conformité PSSI et RGPD |
|
|
|
|
---
|
|
|
|
## 6. Politique de Déploiement & Résilience (PRA / DRP)
|
|
|
|
* **Architecture Invariable** : Tout changement d'infrastructure est défini par du code (*Infrastructure-as-Code*) versionné dans le dépôt `rym_infrastructure`.
|
|
* **Sauvegardes Chiffrées & Extérieures** : Automatisation des sauvegardes (données + configurations) via des mécanismes de chiffrement de bout en bout et export vers un stockage souverain hors-site.
|
|
* **Test de Restauration (DRP)** : Procédures de reconstruction à froid du SI validées périodiquement.
|
|
|
|
---
|