diff --git a/.editorconfig b/.editorconfig index 3722d56..8385d43 100644 --- a/.editorconfig +++ b/.editorconfig @@ -24,3 +24,6 @@ indent_style = tab [*.{pbxproj,plist,entitlements,xcsettings}] indent_style = tab + +[*.gantt] +insert_final_newline = unset diff --git a/Documentation/README.md b/Documentation/README.md new file mode 100644 index 0000000..d1f6c87 --- /dev/null +++ b/Documentation/README.md @@ -0,0 +1,14 @@ +# Diagrammes + +## Diagramme UML + +Les modélisation UML du projet sont disponibles sous forme de [PlantUML](https://www.plantuml.com) dans ce dossier. Les diagrammes sont générés automatiquement à partir des fichiers `.puml` afin de pouvoir être versionnés et mis à jour facilement. Vous pouvez les consulter en récupérant le contenu des fichiers et en les prévisualisant sur [PlantUML](https://www.plantuml.com/plantuml). + +- [Diagramme de classes](./UML/class-diagram.puml) +- [Diagramme d'activités](./UML/activity-diagram.puml) +- [Diagramme de cas d'utilisation](./UML/use-case-diagram.puml) +- [Diagramme d'états](./UML/state-diagram.puml) + +## Diagramme de Gantt + +La modélisation du diagramme de Gantt est générée automatiquement à partir du fichier [gant-diagram.gantt](./gantt-diagram.gantt) en utilisant n'importe quel outil de visualisation de diagramme de Gantt. Vous pouvez par exemple installer [GanttProject](https://www.ganttproject.biz/) ou utiliser l'outil en ligne [Online Gantt](https://www.onlinegantt.com/#/gantt). diff --git a/Documentation/UML/README.md b/Documentation/UML/README.md deleted file mode 100644 index 0b2c5dc..0000000 --- a/Documentation/UML/README.md +++ /dev/null @@ -1,10 +0,0 @@ -# Diagramme UML - -Les modélisation UML du projet sont disponibles sous forme de [PlantUML](https://www.plantuml.com) dans ce dossier. Les diagrammes sont générés automatiquement à partir des fichiers `.puml` afin de pouvoir être versionnés et mis à jour facilement. Vous pouvez les consulter en récupérant le contenu des fichiers et en les prévisualisant sur [PlantUML](https://www.plantuml.com/plantuml). - -## Diagrammes - -- [Diagramme de classes](./class-diagram.puml) -- [Diagramme d'activités](./activity-diagram.puml) -- [Diagramme de cas d'utilisation](./use-case-diagram.puml) -- [Diagramme d'états](./state-diagram.puml) diff --git a/Documentation/gantt-diagram.gantt b/Documentation/gantt-diagram.gantt new file mode 100644 index 0000000..64fac1d --- /dev/null +++ b/Documentation/gantt-diagram.gantt @@ -0,0 +1 @@ +{"data":[{"TaskID":1,"TaskName":"Analyse et Conception","StartDate":"2024-11-18T07:00:00.000Z","EndDate":"2024-12-06T16:00:00.000Z","Duration":15,"Predecessor":null,"resources":[],"Progress":47,"color":"","info":"


","DurationUnit":"day","subtasks":[{"TaskID":2,"TaskName":"Diagrammes UML ","StartDate":"2024-11-18T07:00:00.000Z","EndDate":"2024-12-02T16:00:00.000Z","Duration":11,"Predecessor":null,"resources":[],"Progress":48,"color":"","info":"


","DurationUnit":"day","subtasks":[{"TaskID":6,"TaskName":"Diagramme de cas d'utilisation","StartDate":"2024-11-18T07:00:00.000Z","EndDate":"2024-11-29T16:00:00.000Z","Duration":10,"Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"Progress":100,"color":"61","info":"


","DurationUnit":"day"},{"TaskID":7,"TaskName":"Diagramme d'activités","StartDate":"2024-11-18T07:00:00.000Z","EndDate":"2024-12-02T16:00:00.000Z","Duration":11,"Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"Progress":50,"color":"61","info":"


","DurationUnit":"day"},{"TaskID":8,"TaskName":"Diagramme de classes","StartDate":"2024-11-18T07:00:00.000Z","EndDate":"2024-11-29T16:00:00.000Z","Duration":10,"Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"Progress":0,"color":"61","info":"


","DurationUnit":"day"},{"TaskID":12,"TaskName":"Diagramme d'états du joueur","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-02T16:00:00.000Z","Duration":1,"Progress":0,"color":"61","Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"info":"


","DurationUnit":"day"}]},{"TaskID":3,"TaskName":"Diagramme de Gantt","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-06T16:00:00.000Z","Duration":5,"Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"Progress":50,"color":"61","info":"


","DurationUnit":"day"},{"TaskID":14,"TaskName":"Se documenter sur Unity","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-02T16:00:00.000Z","Duration":1,"Progress":0,"color":"61","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100},{"resourceId":"Vincent","resourceName":"Vincent","unit":100},{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"}]},{"TaskID":13,"TaskName":"Initialisation","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-13T16:00:00.000Z","Duration":10,"Progress":0,"color":"","Predecessor":null,"resources":[],"info":"


","DurationUnit":"day","subtasks":[{"TaskID":9,"TaskName":"Initialiser le projet Unity","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-02T16:00:00.000Z","Duration":1,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":10,"TaskName":"Récupération des éléments graphiques du jeu","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-13T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":11,"TaskName":"Récupération de la musique en jeu","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-13T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"info":"


","DurationUnit":"day"}]},{"TaskID":15,"TaskName":"Développement","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2025-03-28T16:00:00.000Z","Duration":85,"Progress":0,"color":"","Predecessor":null,"resources":[],"info":"


","DurationUnit":"day","subtasks":[{"TaskID":16,"TaskName":"Placer le cube, gérer sa vitesse, les sauts, la rotation et l'atterissage","StartDate":"2024-12-02T07:00:00.000Z","EndDate":"2024-12-13T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":17,"TaskName":"Gérer les collisions et la mort","StartDate":"2024-12-16T07:00:00.000Z","EndDate":"2024-12-27T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":18,"TaskName":"Gérer la sauvegarde du nombre d'essai","StartDate":"2024-12-30T07:00:00.000Z","EndDate":"2025-01-10T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":25,"TaskName":"Gérer le bumper et la fusée","StartDate":"2025-01-13T07:00:00.000Z","EndDate":"2025-01-24T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":26,"TaskName":"Gérer le sens inversé","StartDate":"2025-01-27T07:00:00.000Z","EndDate":"2025-02-07T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":27,"TaskName":"Gérer la gravité inversé","StartDate":"2025-02-10T07:00:00.000Z","EndDate":"2025-02-21T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":22,"TaskName":"Mettre en place les checkpoints pour simplifier le jeu","StartDate":"2025-02-24T07:00:00.000Z","EndDate":"2025-03-07T16:00:00.000Z","Duration":10,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Théo","resourceName":"Théo","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":19,"TaskName":"Créer un éditeur de map graphique","StartDate":"2024-12-16T07:00:00.000Z","EndDate":"2025-03-07T16:00:00.000Z","Duration":60,"Progress":0,"color":"31","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":20,"TaskName":"Créer l'interface du menu d'accueil","StartDate":"2024-12-16T07:00:00.000Z","EndDate":"2024-12-27T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":29,"TaskName":"Créer l'interface du menu pause en jeu","StartDate":"2024-12-30T07:00:00.000Z","EndDate":"2025-01-10T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":21,"TaskName":"Créer l'interface des paramètres","StartDate":"2025-01-13T07:00:00.000Z","EndDate":"2025-01-24T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":30,"TaskName":"Créer l'interface du choix des niveaux","StartDate":"2025-01-27T07:00:00.000Z","EndDate":"2025-02-21T16:00:00.000Z","Duration":20,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":28,"TaskName":"Créer l'interface d'import de map","StartDate":"2025-03-03T07:00:00.000Z","EndDate":"2025-03-14T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":23,"TaskName":"Créer l'écran des statistiques","StartDate":"2025-03-17T07:00:00.000Z","EndDate":"2025-03-28T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Djelal","resourceName":"Djelal","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":24,"TaskName":"Créer l'écran de personnalisation des skins","StartDate":"2025-01-27T07:00:00.000Z","EndDate":"2025-02-21T16:00:00.000Z","Duration":20,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"info":"


","DurationUnit":"day"},{"TaskID":31,"TaskName":"Créer l'interface des trophées","StartDate":"2025-02-24T07:00:00.000Z","EndDate":"2025-03-07T16:00:00.000Z","Duration":10,"Progress":0,"color":"271","Predecessor":"","resources":[{"resourceId":"Vincent","resourceName":"Vincent","unit":100}],"info":"


","DurationUnit":"day"}]}],"resources":[{"resourceId":"Djelal","resourceName":"Djelal"},{"resourceId":"Théo","resourceName":"Théo"},{"resourceId":"Vincent","resourceName":"Vincent"}],"projectStartDate":null,"projectEndDate":null,"advanced":{"columns":[{"name":"Task ID","width":"70","show":true},{"name":"Task Name","width":"350","show":true},{"name":"Start Date","width":"130","show":false},{"name":"End Date","width":"130","show":false},{"name":"Duration","width":"130","show":false},{"name":"Progress %","width":"150","show":false},{"name":"Dependency","width":"150","show":false},{"name":"Resources","width":"200","show":false},{"name":"Color","width":"100","show":false}],"zoomLevel":0,"timezone":"Europe/Paris","timezoneOffset":-60,"dependencyConflict":"Add Offset to Dependency","dateFormat":"yyyy-MM-dd","timeFormat":"HH:mm","firstDayOfWeek":0,"workWeek":["Monday","Tuesday","Wednesday","Thursday","Friday"],"workTime":[{"from":8,"to":12},{"from":13,"to":17}],"holidays":[]}} \ No newline at end of file