Développement d’une application

L’objectif de ce projet a été de développer un site web pour le Centre Ressource Autisme de Bretagne. Ce site devait mettre à disposition des informations, sous la forme de pages, sur les différents services et ressources pouvant aider les familles à s’informer sur les troubles du neurodéveloppement. Ce site se nomme “Parcours en clair”.

Ce site accueille deux types d’interfaces. D’un côté, une interface visiteur, simplement pour la visualisation de pages et la consultation d’informations. De l’autre, des comptes utilisateurs avec un rôle de rédacteur, d’organisation, d’administrateur et de super-administrateur. Le site doit permettre à des organisations d’ajouter de nouvelles pages. Ceci peut également se faire avec des rédacteurs, affiliés à leur organisation. Plus le rôle est important, plus il y a de permissions à prendre en compte. Les rédacteurs ne peuvent modifier que les pages qui leur sont attribuées, les organisations peuvent gérer leurs rédacteurs et leurs pages, les administrateurs ont la charge de l’ensemble des pages de services et de ressources, avec certains paramètres, et enfin, les super-administrateurs peuvent gérer tout le site. En effet, le site est conçu de sorte à être le plus modifiable possible.

▶︎ Démarches et prises de décisions

Lors de cette SAÉ, il y a plusieurs démarches et prises de décisions au fil du déroulé du projet.

Dans un premier temps, il a fallu faire un choix au niveau des langages de programmation. Nous avons essayé d’analyser les meilleures technologies disponibles et d’en tirer le meilleur. Au fil de l’année, nous en avons découvert d’autres qui auraient pu mieux convenir, notamment au niveau de la base de données. Nous avons fait avec ce que nous connaissions, de la manière la plus efficace possible.

Dans un second temps est arrivée la répartition des tâches. Nous avons procédé de sorte à ce que personne n’ait rien à faire. Cela veut dire que le travail était attribué en fonction des capacités et du temps disponible de chacun. Par exemple, si l’un de mes camarades finissait une tâche et pas moi, alors ce camarade prenait une tâche supplémentaire, même s’il faisait donc plus de travail sur le papier. Nous avons réfléchi dans une logique d’efficacité, pas forcément d’égalité des tâches. Même si nous n’avons peut-être pas tous effectué la même quantité au final, j’estime que chacun a fait ce qu’il pouvait, de son mieux, et que personne n’a moins travaillé que les autres. Chacun a été assigné à un rôle précis au sein du projet, en matière de développement. Par exemple, le serveur, le visuel, la base de données, etc.

Enfin, il a fallu prendre des décisions autour des fonctionnalités à implémenter. En effet, certains éléments du sujet requéraient notre attention sur leur complexité. Nous avons donc dû en discuter, faire des modélisations, des tests, pour faire le meilleur choix, celui correspondant au mieux à la vision qu’avait notre cliente. Nous avons donc fait le choix conséquent de rendre le site le plus éditable possible, à nos risques et périls.

J’ai été très impliqué au cours du projet, surtout en tant que scrum master, n’hésitant pas à travailler en dehors de l’IUT afin de le terminer correctement et dans les temps. Le travail à l’extérieur était d’ailleurs souvent réalisé en solitaire, dans le but d’utiliser le temps où tout le monde n’était pas disponible. Quand cela était possible, nous nous retrouvions régulièrement à l’IUT où nous faisions des points réguliers pour améliorer la qualité du projet.

▶︎ Ressources utilisées

L’ensemble des ressources vues au cours de l’année ont été mobilisées pour ce projet. Même si les langages utilisés n’étaient pas ceux vus en cours, les manières de réfléchir aux problèmes complexes et à la mise en place de l’environnement ont été précieuses pour mener ce projet à bien. Nous avons d’ailleurs pu tirer les leçons de ce qui n’allait pas l’année précédente, pour nous améliorer.

▶︎ Maîtrise des apprentissages

Avec ce projet, je pense avoir maîtrisé les apprentissages requis.

En ce qui concerne la réalisation, nous avons créé une application en partant d’un simple sujet pour arriver à quelque chose de beaucoup plus complexe. Nous avons pu implémenter de nombreuses fonctionnalités à partir des exigences demandées, tout en garantissant au mieux une certaine ergonomie et une certaine accessibilité. Le public visé étant potentiellement concerné par des troubles neurodivergents, c’est un détail que nous devions prendre en compte en termes d’interface.

Pour l’optimisation, nous avons essayé de garantir un échange d’informations entre le serveur et l’affichage, rapide, fluide et sécurisé. J’ai notamment dû travailler sur la base de données, ce qui a résulté en une structure complexe tout en devant garantir une édition presque totale du site. Notre objectif était de proposer une solution rapide et peu gourmande en mémoire pour garantir la meilleure expérience possible au regard de ce qui nous était demandé.

Pour l’administration, c’est une partie dont je ne me suis pas occupé personnellement. Nous avons mis en place, grâce à l’un de mes camarades, un serveur distant sur lequel nous avons hébergé notre site, qui était donc disponible en ligne, à des fins de tests tout au long du développement. Ayant accès à la machine, j’ai pu observer les manières de procéder et je sais que j’ai encore des progrès à faire. J’en comprends l’importance et je ne peux que m’améliorer. Un autre de mes camarades a aussi travaillé sur la sécurisation des échanges, pour empêcher d’éventuelles fuites de données.

Pour la gestion, j’ai élaboré la structure de la base de données de notre site web, devant prendre en compte les comptes utilisateurs, les pages, les catégories de filtre, les historiques de modification et même les statistiques de visite. Cet ensemble hétérogène a résulté en une base complexe mais conçue de sorte à pouvoir l’utiliser de la manière la plus simple possible, notamment avec l’ajout de procédures et de triggers.