---
# System prepended metadata

title: Audit OZ

---

# Notes Audit OZ


### Grille d'évaluation
| Critère                   | Score (1-5) | taux fiabilité du score |
|---------------------------|-------------|-------------------------|
| Structure et Organisation |           5 | 85%
| Qualité du Code           |           5 | 75%
| Performance               |           4 | 50%
| Gestion des Erreurs       |           ? | 
| Tests                     |           2 | 90%
| Accessibilité             |           1 | 75%
| Sécurité                  |           3 | 60%
| Build et Déploiement      |           4 | 40%
| Documentation             |           5 | 80%
| Bibliothèques et Dépendances |        5 | 95%
| Expérience Utilisateur (UX) |         5 | 90%


## Audit

### Choix techniques

- react-native +1
- sans expo (mais choix contextuel légitime et conscience des évolution récentes) 0
- recoil (flux propre) +1
- react-navigation (standard unique) +1
- styled-components (un des standards parmi les plus utilisé) +1
- express (standard) +1
- prisma (un standard du moment mais mauvais, peut malgré tout être suffisant) opinion 0
- pas de typescript (standard recommendé) opinion 0 / -1
- utilisation de fcm pour les push notifications (standard unique)

### base de données

- modèle de données normalisé
- système propre de migrations (via prisma)
- pas d'injection possible sql grâce à l'utilisation de l'ORM (à vérifier qu'il n'y pas de concaténations sauvages dans le code, même si très peu probable)

### resilience

- local first +1
- gestion de la rétro compat, et blocage des versions non maintenues

### documentation technique

- documentation exhaustive sur les structures de données
- présentation complète et super cohérente


### dette technique

- minimale à vue d'oeil

### tests

- tests e2e: pas suffisament de tests (choix stratégique pour avancer rapidement) mais progression en cours sur le sujet
- test unitaires: sur la roadmap


### gestion de project

- l'équipe est consciente des améliorations à apporter, bugs à corriger, faiblesses éventuelles et a une vision claire du projet (ce qui est un indicateur très rassurant concernant la maintenabilité du projet)
- procédures prévues pour faciliter les recettages (cheats applicatifs élégants)

### RGAA

- manquant


#### structure fichiers code source

#### app

- classique et propre: scenes, components, recoil (model) +1

#### backend

- bien découplé, propre


## Privacy

- nickel si id secure
- tracking anonyme



## Questions

- id is uuid (or any secure unpredictible) ?
    - réponse: à améliorer
- structure fichier: app mobile containers in scene (mutualised) and components ? (pas le besoin)
    - containers dans les components (components non agnostiques du métier)


## Partager

- expo-updates + https://github.com/umbertoghio/self-hosted-expo-updates-server/

---

- matomo_id [link]()
- ips, isWellLocated [link](https://github.com/SocialGouv/ozensemble/blob/master/api/src/controllers/user.js#L78)
- urls hard coded [link](https://github.com/SocialGouv/ozensemble/blob/b4fe84daa2db9c87ce85d0f6cd62badd294c4a6d/app/src/services/shareApp.js#L8)
- styled-componant vs nativewind
- dead code [link](https://github.com/SocialGouv/ozensemble/blob/b4fe84daa2db9c87ce85d0f6cd62badd294c4a6d/api/src/utils.js#L5)