Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Matrice d'évaluation des risques

🔗 Démo live

Outil interactif d'évaluation des risques combinant une matrice dans le navigateur (HTML/JS) et une CLI Python pour le traitement en masse et la génération de rapports.

Reconstruction en français, restructurée et enrichie du projet original risk-assessment-matrix.

Fonctionnalités

  • Matrice Probabilité × Impact (5×5) avec scoring automatique
  • Registre de risques avec catégories, responsables, mitigations et échéances
  • Carte de chaleur avec code couleur (Critique / Élevé / Modéré / Faible)
  • Persistance locale (localStorage) — le registre survit au rechargement de la page
  • Modification en place des risques existants (pas seulement ajout/suppression)
  • Recherche et filtrage dans le registre, y compris par clic sur une cellule de la matrice
  • Export JSON et CSV (CSV avec BOM UTF-8 pour un import correct dans Excel)
  • CLI Python pour import en masse de risques et génération de rapport HTML
  • Suite de tests pytest pour le moteur de scoring

Différences par rapport à l'original

Cette reconstruction n'est pas une simple traduction :

  • Bug corrigé : l'original perdait tout le registre au rechargement de la page (aucune persistance) — corrigé via localStorage.
  • Incohérence corrigée : le README original documentait une CLI à plat (--input, --risk) mais le code exigeait des sous-commandes (report, eval) non documentées — la CLI ici correspond exactement à ce qui est documenté.
  • Fonctionnalité inutilisée activée : la classe de registre originale avait une méthode update() jamais appelée par l'interface — ici, chaque risque est modifiable via un bouton "Modifier".
  • Libellés dupliqués unifiés : l'original codait en dur les libellés de probabilité/impact dans le JS alors qu'ils existaient déjà dans risk_categories.json — ici, le JS charge dynamiquement ce référentiel.
  • Tests ajoutés : l'original n'avait aucun test automatisé.

Démarrage rapide

Application navigateur (aucune installation requise)

# Ouvrir simplement dans un navigateur
start index.html

CLI Python

python -m venv .venv
.venv\Scripts\activate
pip install -r python/requirements.txt

# Générer un rapport HTML à partir du registre JSON
python -m python.main --input data/risques_exemple.json --output rapport.html

# Évaluer un risque isolé
python -m python.main --risque "Injection SQL sur le formulaire de connexion" --probabilite 4 --impact 5

# Lancer les tests
pytest tests/

Scoring des risques

Score de risque = Probabilité (1–5) × Impact (1–5)
Score Niveau Action
20–25 Critique Remédiation immédiate requise
12–19 Élevé Remédiation sous 30 jours
6–11 Modéré Remédiation sous 90 jours
1–5 Faible Acceptation ou surveillance

Structure du projet

.
├── index.html                    # Application navigateur autonome
├── src/
│   ├── matriceRisques.js         # Logique de scoring + registre persisté
│   └── export.js                 # Export JSON / CSV
├── styles/
│   └── main.css
├── data/
│   ├── categories_risques.json   # Catégories + libellés probabilité/impact
│   └── risques_exemple.json
├── python/
│   ├── main.py
│   ├── matrice_risques.py
│   ├── rapport.py
│   └── requirements.txt
└── tests/
    └── test_matrice_risques.py

Licence

MIT

About

Matrice d'évaluation des risques (Probabilité × Impact) — app navigateur + CLI Python

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages