- architecture.md : structure Next.js, modifications Navigation.tsx, page équipe - configuration.md : rings standards adopt|trial|assess|hold, migration - deploiement.md : script Python, Navigation.tsx, processus de build détaillé - developpement.md : nouvelles commandes, scripts, gestion profils équipe - contribution.md : format business, rings standards, métadonnées complètes - guide-page-equipe.md : architecture hybride, script Python, troubleshooting - guide-radar-business.md : rings standards, migration, navigation - troubleshooting.md : nouveau document avec problèmes courants et solutions - README.md : liens mis à jour, nouvelles fonctionnalités - FORMAT-BLIP.md : rings standards adopt|trial|assess|hold
301 lines
8.7 KiB
Markdown
301 lines
8.7 KiB
Markdown
# Guide de contribution
|
|
|
|
## Vue d'ensemble
|
|
|
|
Ce guide explique comment contribuer au Technology Radar AJR en ajoutant, modifiant ou supprimant des technologies (blips) et des profils équipe.
|
|
|
|
## Processus de contribution
|
|
|
|
### 1. Préparer l'environnement
|
|
|
|
Voir le [guide de développement](./developpement.md) pour l'installation et la configuration de l'environnement local.
|
|
|
|
### 2. Créer une branche
|
|
|
|
```bash
|
|
git checkout -b feature/nom-de-la-technologie
|
|
```
|
|
|
|
### 3. Ajouter ou modifier un blip
|
|
|
|
#### Ajouter un nouveau blip
|
|
|
|
1. Créer un fichier Markdown dans le dossier de release approprié :
|
|
```
|
|
radar-business/2025-01-15/nom-technologie.md
|
|
```
|
|
|
|
2. Utiliser le format standard avec toutes les métadonnées :
|
|
|
|
```markdown
|
|
---
|
|
title: "Nom de la technologie"
|
|
ring: adopt|trial|assess|hold
|
|
quadrant: technologies-differentiantes|technologies-commodite|technologies-risque|technologies-emergentes
|
|
tags: [tag1, tag2]
|
|
businessImpact: high|medium|low
|
|
costToReplace: 0
|
|
revenueImpact: indirect
|
|
riskLevel: medium
|
|
competencyLevel: beginner
|
|
maintenanceCost: 0
|
|
differentiation: high
|
|
teamCoverage: 1
|
|
skillGap: high
|
|
---
|
|
|
|
Description de la technologie.
|
|
|
|
## Impact Business
|
|
|
|
Description de l'impact sur le business.
|
|
|
|
## Coûts
|
|
|
|
- Coût de remplacement : 0€
|
|
- Coût de maintenance annuel : 0€
|
|
|
|
## Compétences
|
|
|
|
- Nombre de personnes maîtrisant : 1
|
|
- Membres de l'équipe : pseudo
|
|
- Niveau moyen : beginner
|
|
- Risque de compétence manquante : high
|
|
|
|
## Recommandations
|
|
|
|
Recommandations stratégiques pour cette technologie.
|
|
```
|
|
|
|
Voir `radar-business/FORMAT-BLIP.md` pour le format complet.
|
|
|
|
#### Modifier un blip existant
|
|
|
|
1. Localiser le fichier dans `radar-business/2025-01-15/`
|
|
2. Modifier le contenu ou les métadonnées
|
|
3. Si vous changez le ring ou le quadrant, documenter la raison
|
|
4. **Important** : Vérifier que le ring est standard (adopt, trial, assess, hold)
|
|
|
|
#### Supprimer un blip
|
|
|
|
Si une technologie doit être retirée du radar :
|
|
- La déplacer vers le ring "hold" plutôt que de la supprimer
|
|
- Ou la supprimer complètement si elle n'est plus pertinente
|
|
|
|
### 4. Ajouter ou modifier un profil équipe
|
|
|
|
#### Ajouter un profil équipe
|
|
|
|
1. Créer un fichier Markdown dans `docs/data/team/` :
|
|
```
|
|
docs/data/team/pseudo.md
|
|
```
|
|
|
|
2. Utiliser le format standard :
|
|
|
|
```markdown
|
|
---
|
|
name: "pseudo"
|
|
fullName: "Nom complet"
|
|
role: "Rôle"
|
|
availability: 50
|
|
seniorityLevel: expert
|
|
yearsExperience: 8
|
|
joinDate: "2016-01"
|
|
interests: ["Mobile", "Infrastructure"]
|
|
skills:
|
|
- name: "Flutter"
|
|
level: expert
|
|
years: 4
|
|
lastUsed: "2024-12"
|
|
softSkills:
|
|
- "Autonomie"
|
|
projects:
|
|
- "Projet1"
|
|
---
|
|
```
|
|
|
|
3. Régénérer les données équipe :
|
|
```bash
|
|
node scripts/generate-team-visualization-data.js
|
|
```
|
|
|
|
### 5. Tester localement
|
|
|
|
```bash
|
|
npm run serve-business
|
|
```
|
|
|
|
Vérifier :
|
|
- L'affichage correct du blip
|
|
- Le positionnement dans le bon quadrant et ring
|
|
- La lisibilité du contenu
|
|
- Le fonctionnement des tags
|
|
- La page équipe (`/team`) affiche correctement les données
|
|
|
|
### 6. Commiter les changements
|
|
|
|
```bash
|
|
git add radar-business/2025-01-15/nom-technologie.md
|
|
git add docs/data/team/pseudo.md
|
|
git add public/team-visualization-data.json
|
|
git commit -m "feat: ajouter [technologie] au quadrant [quadrant]"
|
|
```
|
|
|
|
### 7. Pousser et créer une pull request
|
|
|
|
```bash
|
|
git push origin feature/nom-de-la-technologie
|
|
```
|
|
|
|
Créer une pull request sur le dépôt Git.
|
|
|
|
## Guidelines de contenu
|
|
|
|
### Choix du ring
|
|
|
|
- **Adopt** : Technologies recommandées et utilisées avec succès en production. Stables, éprouvées, peuvent être adoptées en toute confiance pour de nouveaux projets.
|
|
- **Trial** : Technologies à essayer. Prometteuses et testées avec succès dans certains contextes. À considérer pour de nouveaux projets.
|
|
- **Assess** : Technologies à évaluer. Prometteuses mais nécessitent une évaluation approfondie avant adoption. À surveiller et tester.
|
|
- **Hold** : Technologies à éviter ou à remplacer. Présentent des risques, sont obsolètes ou ne sont plus recommandées. À éviter pour de nouveaux projets.
|
|
|
|
**Important** : Les anciens rings (core, strategic, support, legacy) ne sont plus utilisés. Tous les blips doivent utiliser les rings standards (adopt, trial, assess, hold).
|
|
|
|
### Choix du quadrant
|
|
|
|
- **Technologies Différenciantes** : Créent un avantage concurrentiel et de la valeur différenciante
|
|
- **Technologies de Commodité** : Nécessaires mais non différenciantes, à optimiser pour réduire les coûts
|
|
- **Technologies à Risque** : Obsolètes, coûteuses, à migrer ou remplacer
|
|
- **Technologies Émergentes** : Opportunités futures, à évaluer et potentiellement adopter
|
|
|
|
### Tags
|
|
|
|
Utiliser les tags établis :
|
|
- architecture
|
|
- security
|
|
- devops
|
|
- frontend
|
|
- agile
|
|
- coding
|
|
- quality assurance
|
|
- ci/cd
|
|
- ux/ui
|
|
- documentation
|
|
- blockchain
|
|
- infrastructure
|
|
- dataviz
|
|
- mobile
|
|
|
|
Ajouter plusieurs tags si la technologie couvre plusieurs domaines.
|
|
|
|
### Qualité du contenu
|
|
|
|
- **Clarté** : Description claire et concise
|
|
- **Pertinence** : Focus sur l'utilisation dans l'écosystème Duniter/Ğ1
|
|
- **Objectivité** : Présenter les avantages et inconvénients
|
|
- **Concision** : Rester factuel et éviter les détails superflus
|
|
- **Métadonnées complètes** : Remplir toutes les métadonnées business
|
|
|
|
## Format des commits
|
|
|
|
Utiliser des messages de commit clairs :
|
|
|
|
```
|
|
feat: ajouter [technologie] au quadrant [quadrant]
|
|
fix: corriger la description de [technologie]
|
|
update: déplacer [technologie] de trial à adopt
|
|
docs: améliorer la documentation de [technologie]
|
|
feat(team): ajouter profil [pseudo]
|
|
fix(team): mettre à jour compétences de [pseudo]
|
|
```
|
|
|
|
## Créer une nouvelle release
|
|
|
|
Quand créer une nouvelle release :
|
|
|
|
1. **Périodicité** : Généralement tous les 3-6 mois
|
|
2. **Changements significatifs** : Plusieurs nouveaux blips ou changements majeurs
|
|
3. **Événements** : Après des évaluations importantes
|
|
|
|
### Processus de release
|
|
|
|
1. Créer un nouveau dossier avec la date :
|
|
```bash
|
|
mkdir radar-business/2025-07-15
|
|
```
|
|
|
|
2. Copier les blips pertinents depuis la release précédente
|
|
|
|
3. Ajouter les nouveaux blips
|
|
|
|
4. Mettre à jour les blips existants si nécessaire (changement de ring, quadrant, description)
|
|
|
|
5. **Migrer les rings si nécessaire** : S'assurer que tous les blips utilisent les rings standards
|
|
|
|
6. Documenter les changements majeurs
|
|
|
|
## Migration des rings
|
|
|
|
Si vous avez des blips avec les anciens rings, utilisez ce mapping :
|
|
|
|
- **core** → **adopt** : Technologies fondamentales en production
|
|
- **strategic** → **assess** : Technologies prometteuses à évaluer
|
|
- **support** → **adopt** : Technologies utilisées en production
|
|
- **trial** → **trial** : Déjà correct
|
|
- **legacy** → **hold** : Technologies obsolètes à remplacer
|
|
|
|
Le script `scripts/migrate-rings.sh` peut être utilisé pour automatiser cette migration.
|
|
|
|
## Review process
|
|
|
|
Les contributions sont revues pour :
|
|
|
|
- **Exactitude** : Les informations sont correctes
|
|
- **Pertinence** : La technologie est pertinente pour l'écosystème
|
|
- **Format** : Le format Markdown est correct
|
|
- **Classification** : Le ring et quadrant sont appropriés
|
|
- **Rings standards** : Utilisation des rings standards (adopt, trial, assess, hold)
|
|
- **Métadonnées** : Toutes les métadonnées business sont remplies
|
|
- **Qualité** : Le contenu est clair et utile
|
|
|
|
## Questions fréquentes
|
|
|
|
### Puis-je ajouter une technologie que je n'ai pas encore utilisée ?
|
|
|
|
Non. Le radar ne contient que des technologies testées au moins une fois par l'équipe.
|
|
|
|
### Comment décider entre deux quadrants ?
|
|
|
|
Choisir le quadrant le plus approprié selon l'impact business. Si c'est ambigu, discuter avec l'équipe.
|
|
|
|
### Puis-je modifier un blip d'une release précédente ?
|
|
|
|
Généralement non. Les releases précédentes sont figées. Créer un nouveau blip dans la release actuelle si nécessaire.
|
|
|
|
### Comment gérer les technologies obsolètes ?
|
|
|
|
Les déplacer vers le ring "hold" avec une explication de pourquoi elles ne sont plus recommandées.
|
|
|
|
### Quels rings dois-je utiliser ?
|
|
|
|
Toujours utiliser les rings standards : **adopt**, **trial**, **assess**, **hold**. Les anciens rings (core, strategic, support, legacy) ne sont plus utilisés.
|
|
|
|
### Comment mettre à jour les données équipe ?
|
|
|
|
1. Modifier les fichiers dans `docs/data/team/*.md`
|
|
2. Régénérer les données : `node scripts/generate-team-visualization-data.js`
|
|
3. Commiter les deux fichiers (profils + données JSON)
|
|
|
|
## Ressources
|
|
|
|
- [Guide de développement](./developpement.md)
|
|
- [Configuration](./configuration.md)
|
|
- [Architecture](./architecture.md)
|
|
- [Format des blips](../radar-business/FORMAT-BLIP.md)
|
|
- [Guide page équipe](./guide-page-equipe.md)
|
|
- Framework source : https://github.com/AOEpeople/aoe_technology_radar
|
|
|
|
## Contact
|
|
|
|
Pour toute question sur les contributions, contacter l'équipe AJR ou ouvrir une issue sur le dépôt Git.
|