Note App (Calepin) – Rétro-engineering
Objectif
Analyser une application simple de prise de notes
sans documentation au départ.
Le but est de : - comprendre le fonctionnement de l’application - comprendre les actions de l’utilisateur - comprendre les données utilisées - faire des diagrammes simples
Description du projet
Cette application permet à l’utilisateur de : - créer une note - écrire du texte - valider une note - lire une note validée (lecture seule)
Le projet est une analyse de l’application (rétro-engineering).
Structure du projet
src/: code de l’application (HTML / JavaScript)docs/: documentation et diagrammesREADME.md: description du projet
1. Cas d’utilisation (Use Case)
Ce diagramme montre ce que l’utilisateur peut faire.
Actions possibles : - créer une note - écrire ou modifier le texte - valider la note - consulter une note validée
Image :

Fichier :
- use-cases.md
2. Diagramme de séquence
Ce diagramme montre les échanges entre : - l’utilisateur - la vue (View) - le contrôle (Control) - le modèle (Model)
Exemple : - l’utilisateur clique sur Validate - le contrôle traite l’action - le modèle enregistre la note - la vue affiche le résultat
Image :

Fichier :
- sequence-validate-note.md
3. Diagramme d’activité
Ce diagramme montre les étapes internes du système.
Étapes : 1. clic sur le bouton Validate 2. récupération du texte 3. enregistrement dans le modèle 4. affichage en lecture seule
Image :

Fichier :
- activity-validate-note.md
4. Modèle des données (Diagramme de classes)
Ce diagramme montre les données principales.
Classes : - Note (id, content) - Model (liste de notes)
Relations : - le modèle gère plusieurs notes
Image :

Fichier :
- class-diagram.md
5. Wireframe
Le wireframe montre l’interface de l’application.
États : - aucune note - note en modification - note validée (lecture seule)
Image :

6. Propositions d’amélioration
Idées simples : - mieux organiser le code - séparer les responsabilités - ajouter des commentaires - améliorer l’interface
Fichier :
- interventions.md
Technologies utilisées
- HTML
- JavaScript
- Markdown
- PlantUML
- draw.io
Liens
Dépôt GitLab : https://gitlab.com/ahmadola111-group/note-app-retroengineering
Documentation (site) : https://ahmad-docs-b3e3cc.gitlab.io/sexta/