Files
dofus-manager/docs/brainstorming-session-results.md
2026-01-19 08:52:38 +01:00

368 lines
16 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Brainstorming Session Results
**Session Date:** 2026-01-17
**Facilitator:** Business Analyst Mary
**Participant:** Theo
---
## Executive Summary
**Topic:** Création d'un site web de gestion de comptes et personnages pour le MMORPG Dofus
**Session Goals:** Idéation ciblée sur le développement produit — remplacer un tableur complexe (60+ personnages, dizaines de comptes) par une application web moderne et fonctionnelle.
**Techniques Used:**
- First Principles Thinking
- Mind Mapping
- SCAMPER (Substitute, Combine, Adapt, Modify, Put to other uses, Eliminate)
**Total Ideas Generated:** 25+
### Key Themes Identified:
- La gestion multi-comptes avec contrainte de non-simultanéité est un besoin fondamental
- Le filtrage et la recherche multicritères sont essentiels pour 60+ personnages
- Les actions groupées (bulk update) réduiront drastiquement le temps de maintenance
- L'intégration avec DofusDB éliminera la saisie manuelle des données de référence
- L'outil doit évoluer d'un simple tracker vers un assistant de jeu complet
---
## Technique Sessions
### First Principles Thinking
**Description:** Identification des problèmes fondamentaux que le tableur actuel résout mal, en partant des besoins réels de l'utilisateur.
#### Problèmes identifiés:
1. **Vue d'ensemble impossible** — 60+ personnages en colonnes horizontales ne tiennent pas à l'écran
2. **Modifications fragiles** — Risque de tout casser, heures perdues à réparer le formatage
3. **Contraintes non gérées** — La règle "pas 2 persos du même compte simultanément" est gérée mentalement
4. **Pas de filtrage** — Parcours visuel fastidieux pour trouver "qui n'a pas fait X"
5. **Manque de dynamisme** — Données statiques, pas de synchronisation, pas de totaux automatiques
#### Cas d'usage principaux:
1. Voir quels personnages sont sur quels comptes
2. Ajouter un nouveau personnage monté
3. Voir sur quels persos/teams un Dofus n'est pas fait
4. Mettre à jour les recherchés faits
5. Voir et gérer les monnaies (Doplons, Orichor, Kamas de glace...)
6. Composer des teams valides (contrainte compte)
7. Planifier les "run kamas brut" (multi-persos même compte pour maximiser kamas)
#### Insights Discovered:
- Les teams sont généralement fixes (team principale de 8, teams succès Panda/Enu/Elio/Iop)
- Mais parfois composition dynamique nécessaire (ex: 3 Cra + 5 mules pour PL)
- L'outil sert à planifier les sessions de jeu ET à vérifier en temps réel pendant le jeu
#### Notable Connections:
- Le système de récompenses Dofus est complexe : ressources/Dofus = 1x par compte, mais kamas = par perso
- Les métiers sont maintenant liés au compte+serveur, pas au personnage
- Le bonus XP par compte favorise la stratégie "run kamas brut"
---
### Mind Mapping
**Description:** Cartographie des entités, relations et fonctionnalités de l'application.
#### Modèle de données identifié:
```
┌─────────────────────────────────────────────────────────────────────┐
│ COMPTE │
│ - Nom │
│ - Ogrines (par compte) │
│ - Récompenses succès débloquées (Dofus, ressources = 1x/compte) │
└─────────────────────┬───────────────────────────────────────────────┘
┌─────────────┴─────────────┐
│ │
▼ ▼
┌───────────────────┐ ┌─────────────────────────┐
│ COMPTE + SERVEUR │ │ PERSONNAGE │
│ - Métiers (niv.) │ │ - Pseudo │
│ - Bonus XP perso │ │ - Classe │
│ le plus haut │ │ - Niveau │
└───────────────────┘ │ - Serveur │
│ - Monnaies │
│ - Progression quêtes │
│ - Recherchés faits │
│ - Donjons (tous succès) │
└───────────┬─────────────┘
│ N:M
┌──────▼──────┐
│ TEAM │
│ - Nom │
│ - Type │
│ - Membres[] │
└─────────────┘
```
#### Modules fonctionnels:
1. **Comptes** — Liste, CRUD, ogrines, récompenses succès
2. **Personnages** — Liste, filtres, CRUD, monnaies, progression
3. **Teams** — Créer, valider contraintes comptes, statut global
4. **Objectifs** — Définir, arborescence quêtes, % progression
5. **Progression** — Quêtes Dofus, donjons (tous types succès), recherchés
6. **Recherche & Filtres** — Multicritères, par team, par compte, "qui n'a pas fait"
7. **Données API** — DofusDB pour import quêtes/succès/donjons
8. **Analytics** — Kamas brut potentiel, stats par compte, tendances
---
### SCAMPER Analysis
#### S — Substitute (Substituer)
| Avant (Tableur) | Après (App) |
|-----------------|-------------|
| Colonnes par personnage | Fiches individuelles avec vue détaillée |
| "x" manuels | Checkboxes avec date auto + bulk update |
| Navigation horizontale infinie | Filtres + recherche + pagination |
| Copier-coller pour nouveau perso | Formulaire de création guidé |
**Retenu:** Checkboxes intelligentes avec bulk update — le plus impactant pour réduire le temps de maintenance.
#### C — Combine (Combiner)
1.**Team + Progression** → Vue "Statut de ma team" avec % completion
2.**Recherche + Action** → Résultats filtrés directement actionnables
3.**Objectif + Notification** → Alertes "Il te reste X pour finir ton objectif"
4.**Import API + Validation** → DofusDB comme source de vérité
#### A — Adapt (Adapter)
1. ❌ Kanban (non retenu)
2.**Filtres façon e-commerce** → Sidebar avec facettes cliquables
3.**Dashboards analytics** → Widgets personnalisables
4.**Multi-select façon Gmail** → Sélection + actions groupées
#### M — Modify (Modifier/Amplifier)
1. ❌ Highlighting des manques (non retenu)
2.**Réduire les clics** → Raccourcis clavier, actions au survol
3.**Amplifier vue compte** → Page dédiée avec tous persos + stats
4.**Simplifier monnaies** → Total agrégé avec drill-down
#### P — Put to other uses (Autres usages)
1.**Planificateur de session** → "J'ai 2h, que faire ?" avec suggestions
2.**Partage guilde/amis** → Export/lien pour coordination
3.**Journal d'activité** → Timeline, stats hebdo/mensuelles
4.**Calculateur rentabilité** → ROI kamas brut par perso
#### E — Eliminate (Éliminer)
1.**Saisie manuelle quêtes/donjons** → Tout depuis DofusDB
2.**Doublons de données** → 1 perso = 1 entité unique
3.**Navigation profonde** → 2 clics max depuis dashboard
4.**Exhaustivité obligatoire** → Tracking opt-in par catégorie
#### R — Reverse (Inverser)
- Non retenu — le modèle mental actuel (perso → compte → team) reste pertinent
---
## Idea Categorization
### Immediate Opportunities
*Ideas ready to implement now (MVP)*
1. **Gestion CRUD Comptes/Personnages/Teams**
- Description: Créer, lire, modifier, supprimer les entités principales
- Why immediate: Fondation de l'application
- Resources needed: PostgreSQL schema, API routes, formulaires React
2. **Filtres multicritères**
- Description: Filtrer par classe, team, compte, niveau, statut progression
- Why immediate: Résout le problème principal de "vue d'ensemble impossible"
- Resources needed: UI filtres sidebar, logique de requêtes
3. **Checkboxes + Bulk Update**
- Description: Cocher fait/pas fait avec date auto, actions groupées par team
- Why immediate: Résout le problème de "modifications fragiles"
- Resources needed: UI checkboxes, bulk actions API
4. **Vue statut team avec % completion**
- Description: Tableau croisé team × succès avec pourcentage d'avancement
- Why immediate: Cas d'usage fréquent "quelle team a pas fait X"
- Resources needed: Calculs agrégés, composant tableau
5. **Validation contrainte compte**
- Description: Empêcher 2 persos du même compte dans une team active
- Why immediate: Règle métier fondamentale du jeu
- Resources needed: Logique de validation, feedback UI
6. **Monnaies par perso + total**
- Description: Tracker les monnaies, afficher total agrégé
- Why immediate: Besoin exprimé, données déjà dans le tableur
- Resources needed: Champs monnaies, widget total
7. **Intégration DofusDB**
- Description: Import des données de référence (quêtes, donjons, succès)
- Why immediate: Élimine la saisie manuelle, réduit les erreurs
- Resources needed: Client API DofusDB, sync initiale
### Future Innovations
*Ideas requiring development/research*
1. **Dashboard avec widgets**
- Description: Vue d'accueil personnalisable avec KPIs
- Development needed: Système de widgets drag & drop
- Timeline estimate: V2
2. **Objectifs + alertes progression**
- Description: Définir des objectifs, recevoir notifications
- Development needed: Système de notifications, tracking objectifs
- Timeline estimate: V2
3. **Raccourcis clavier**
- Description: Navigation et actions rapides au clavier
- Development needed: Hook keyboard, documentation raccourcis
- Timeline estimate: V2
4. **Arborescence quêtes Dofus**
- Description: Visualisation des dépendances de quêtes (style n1ark.com)
- Development needed: Parser DofusDB pour dépendances, UI graphe
- Timeline estimate: V3
5. **Planificateur de session**
- Description: "J'ai 2h" → suggestions basées sur objectifs/rentabilité
- Development needed: Algorithme de priorisation, UI planning
- Timeline estimate: V3
### Moonshots
*Ambitious, transformative concepts*
1. **Partage guilde/amis**
- Description: Liens publics ou export pour coordination multi-joueurs
- Transformative potential: Transformer l'outil solo en outil communautaire
- Challenges to overcome: Authentification, permissions, vie privée
2. **Journal d'activité**
- Description: Timeline des actions, statistiques temporelles
- Transformative potential: Visualiser sa progression sur le long terme
- Challenges to overcome: Volume de données, performance, rétention
3. **Calculateur rentabilité kamas brut**
- Description: ROI par perso (XP investi vs kamas potentiels)
- Transformative potential: Optimisation stratégique du temps de jeu
- Challenges to overcome: Données de kamas par quête, formules complexes
### Insights & Learnings
*Key realizations from the session*
- **Contrainte compte = règle métier centrale**: Toute l'application doit être consciente qu'on ne peut pas jouer 2 persos du même compte simultanément
- **Récompenses 1x/compte vs N/perso**: Le système de récompenses Dofus a une dualité importante à modéliser
- **Run kamas brut = méta actuelle**: L'application doit supporter cette stratégie de jeu populaire
- **Métiers = compte+serveur maintenant**: Changement récent du jeu à prendre en compte dans le modèle
- **Teams fixes + composition dynamique**: Les deux modes coexistent
---
## Action Planning
### Top 3 Priority Ideas
#### #1 Priority: CRUD + Modèle de données robuste
- **Rationale:** Fondation de toute l'application, impossible d'avancer sans
- **Next steps:**
1. Définir le schéma PostgreSQL complet
2. Créer les migrations
3. Implémenter les API routes CRUD
4. Créer les formulaires React
- **Resources needed:** PostgreSQL, Drizzle/Prisma, TanStack Start
- **Timeline:** Premier sprint
#### #2 Priority: Filtres multicritères + Vue liste
- **Rationale:** Résout le problème #1 (vue d'ensemble impossible)
- **Next steps:**
1. Concevoir l'UI des filtres (sidebar facettes)
2. Implémenter la logique de filtrage côté serveur
3. Créer le composant liste avec pagination
4. Ajouter les filtres rapides (classe, team, compte)
- **Resources needed:** TanStack Table, composants UI
- **Timeline:** Deuxième sprint
#### #3 Priority: Intégration DofusDB
- **Rationale:** Élimine la saisie manuelle, source de vérité pour les données de jeu
- **Next steps:**
1. Explorer l'API DofusDB, documenter les endpoints utiles
2. Créer un client API TypeScript
3. Script d'import initial (quêtes, donjons, succès, recherchés)
4. Synchronisation périodique
- **Resources needed:** Documentation API DofusDB, cron jobs
- **Timeline:** En parallèle des sprints 1-2
---
## Reflection & Follow-up
### What Worked Well
- First Principles pour identifier les vrais problèmes vs les symptômes
- SCAMPER pour générer des améliorations concrètes vs le tableur
- Analyse du fichier existant pour comprendre la structure de données réelle
- Focus sur l'idéation produit plutôt qu'exploration technique
### Areas for Further Exploration
- **API DofusDB**: Explorer les endpoints disponibles, limites, authentification
- **Arborescence quêtes**: Étudier comment n1ark.com structure les dépendances
- **UX mobile/tablette**: L'outil sera-t-il utilisé sur second écran pendant le jeu ?
- **Import données existantes**: Comment migrer le tableur actuel vers l'app ?
### Recommended Follow-up Techniques
- **User Story Mapping**: Pour détailler les parcours utilisateur du MVP
- **Event Storming**: Pour modéliser les événements métier (perso créé, succès validé, etc.)
- **Wireframing**: Pour valider l'UX avant développement
### Questions That Emerged
- Faut-il un système d'authentification ou l'app reste-t-elle mono-utilisateur ?
- Comment gérer les mises à jour du jeu (nouveaux donjons, quêtes) ?
- Faut-il supporter plusieurs serveurs Dofus ou juste Agride ?
- Comment importer les données du tableur existant ?
### Next Session Planning
- **Suggested topics:** Architecture technique détaillée, schéma de base de données, wireframes UI
- **Recommended timeframe:** Avant de commencer le développement
- **Preparation needed:** Explorer l'API DofusDB, lister toutes les entités à tracker
---
## Technical Stack
| Composant | Technologie |
|-----------|-------------|
| Frontend | React + TanStack Start |
| Backend | TanStack Start (full-stack) |
| Base de données | PostgreSQL |
| Conteneurisation | Docker |
| Hébergement | Serveur dédié personnel |
| API externe | DofusDB |
---
## Appendix: Données du tableur analysé
Le tableur source contient:
- **60+ personnages** sur plusieurs dizaines de comptes
- **Serveur principal**: Agride
- **Classes représentées**: Cra, Enutrof, Eliotrope, Iop, Pandawa, Sadida, Eniripsa, Huppermage, Steamer, Zobal, Feca, Roublard, Ouginak, Sacrieur, Sram, Xelor, Osamodas
- **Niveaux**: Tous niveau 200
- **Quêtes Dofus trackées**: Turquoise, Pourpre, Émeraude, Des Glaces, Abyssal, Nébuleux, Domakuro, Dorigami, Tacheté, Vulbis
- **Donjons trackés**: Par paliers (1-50, 51-100, 101-150, 151-190, 191-200) avec succès variés
- **Monnaies**: Doplons, Almatons, Pages calendrier, Orichor, Kamas de glace, Perles des profondeurs, Alitons, Trukdivins
- **Recherchés**: Par région (Astrub, Château d'Amakna, Saharach, Frigost I/II/III, Enutrosor, Srambad, Xélorium, etc.)
- **Teams identifiées**: Main Team (8 persos), Songe, PL, Team succès, Team succes vierge
---
*Session facilitated using the BMAD-METHOD brainstorming framework*