Besoin d'aide et d'information?

Fonctionnalités

Actuellement seulement les courses auto-chonomètrées par le participant sont supportées.
Un départ en masse (départ du chronomètre simultané) ou une gestion du chronométrage par un organisateur n'est pas supporté.

Il est impératif d'avoir du réseau au départ et à l'arrivée (Wifi ou 3G/4G).
Le mode offline n'est pas supporté.

Il est nécessaire que le participant ait:
- un téléphone mobile (Android ou iOS)
- avec accès au réseau et internet activé
- des données en disponible
- un browser (testé avec Safari et Chrome).
- un email pour l'inscription

L'utilisation de montre GPS n'est pas supporté.

- M'inscrire à une course/catégorie
- Consulter la liste des participants
- Consulter les résultats en temps réél
- Démarrer-arrêter-remettre à zéro mon chrono
- Demander les informations relatives à ma personne (protection des données)

- Créer/modifier/supprimer une course
- Créer/modifier/supprimer une catégorie d'une course, avec une période de validité de départ et fin de course
- Obtenir les liens directs sur chaque catégorie pour l'inscription et les résultats (pour communication aux participants)
- Modifier un temps de départ ou d'arrivée de chaque participant
- Créer/modifier/supprimer l'attribution d'un dossard à une personne
- Créer/modifier/supprimer les informations liées à une personne

Pour les participants

Chez moi, ou juste avant la course
1) Je clique sur le lien d'inscription (site web de la course ou email)
2) Je rempli le formulaire dans le browser
3) Je reçois un email avec lien pour gérer mon chronométrage

Sur site de la course
4) Je suis au départ, je clique sur le lien reçu par email, 3... 2... 1... Je démarre le chrono et obtiens la confirmation visuel... et je cours!
5) A l'arrivée, si le browser est toujours ouvert, je stoppe mon chrono directement, sinon je clique à nouveau sur le lien reçu pour stopper mon chrono.
6) J'obtiens directement mon classement du moment. Je peux également par la suite consulter le classement régulièrement pour voir l'évolution.

Optionnellement:
7) Je peux si je le désire effacer mon temps, pour courir à nouveau. Mon classement est alors perdu! Cette option est pratique pour pouvoir tester le chronométrage au calme avant la course... ou essayer de remonter dans le classement....

Pour les organisateurs

D'un compte fourni sur le système avec un identifiant (Client_id) et un clé secrète (Client_secret) pour pouvoir accèder au option d'administrateur.
De préférence un ordinateur (Mac ou Windows) ou une tablette (Android ou iOS) avec accès internet avec un browser (testé avec Chrome). Le téléphone mobile est également supporté mais moins pratique (format d'écran).

Mise en place d'une nouvelle course
1) Je me connecte en admin (menu en haut à droite) avec mon identifiant et ma clé
2) Je crée une course depuis l'onglet "Courses->Liste de départ et résultats" (menu en haut)
3) Je sélectionne la course nouvellement créée, et je peux alors créer une ou plusieurs catégories
4) Je peux pour chaque catégorie , copier les liens pour l'inscription et les résultats pour les mettre à disposition dans mon site web ou email destiné aux participants

Durant les inscriptions
5) Depuis le même onglet "Courses->Liste de départ et résultats", je peux voir les inscriptions
6) Sur demande d'un participant, je peux également créer une nouvelle personne et assigner un nouveau dossard. Pour se faire:
7) Depuis l'onglet "Courses->Participants", j'ai liste de l'ensemble des participants de toutes mes courses. Je peux au besoin créer/modifier/effacer un participant (cliquer sur le tableau pour sélectionner un participant existant)
8) Depuis l'onglet "Courses->Liste de départ et résultats", je peux créer/modifier/supprimer l'attribution d'un dossard à une personne/participant. Note: Cette onglet ne supprimera par les participants, mais uniquement le dossard. De plus une modification de dossard renverra un nouveau lien pour la gestion du chronométrage et rendra obsolète le précédent.

Pendant et après la course
9) Sur demande d'un participant, depuis l'onglet "Courses->Liste de départ et résultats",  je peux modifier le temps de départ et d'arrivée d'un participant en le séléctionnant sur la liste.

Pour effacer une course, il ne faut aucune catégorie associée. Il est donc nécessaire d'effacer préalablement toutes les catégories associées à cette course.

Pour effacer une catégorie, il ne faut aucun dossard associé. Il est donc nécessaire d'effacer préalablement tous les dossards associés à cette catégorie.

Pour effacer une personne/participant, il ne faut aucun dossard associé. Il est donc nécessaire d'effacer préalablement tous les dossards associés à cette personne de toutes les courses et catégories.

Modifier les données associées à cette personne en mettant par exemple anonyme sur tous les champs. Cela permet de supprimer l'ensembles de ses données personnelles sur toutes les courses et catégories, et sans modifier le classement.

Cela arrive malheureusement avec des adresses de type google/gmail... et de manière systématique sur les mêmes personnes. Malgré le fait que rien n'est présent dans les spams, il s'agit bien d'un filtre au niveau de google/gmail. Il n'y a pas d'autre solution à ce jour que de compléter le résultat manuellement par l'admin.

Soyons honnête, l'interface graphique n'est pas satisfaisante et présente malheureusement des bugs...
Prenez soins de toujours utiliser le lien fournit (incluant ?tenant=...) dans l'adresse.
En cas de problème, actualiser la page.
Egalement, la sélection du menu course après le login présente une fenêtre "Veuillez patienter..." qui ne se termine jamais. Sélectionnez directement "liste de départ et résultats" pour gérer vos courses sans se souciller de ce message.

Général

Imaginées et définies: OUI.... Planifiées: NON
Selon le temps, le besoin, et l'envie... il y a notamment:
- Interface graphique: refonte complète
- Amélioration de la gestion du login admin, et création de compte en self-service
- Support de départ en masse
- Support de chonométrage par l'organisateur (start/stop) éventuellement à l'aide de QR code à scanner
...

Oui. Je peux communiquer l'interface backend (doc swagger), mettre à disposition une plateforme de developpement et de qualité... et j'ai même des diagrammes de séquences pour présenter tout ça. L'intégration n'est pas compliquée et très standard.

Du point de vue technique, j'ai utilisé une technologie serverless, pour des raison de coûts et facilité de maintenance. Par contre, le premier chargement peut prendre plusieurs secondes... Et oui, je pourrais payer plus pour résoudre cette limitation...

Cette application a été initialement faite pour la course à pied de village MyRun4Help à Chevilly, Suisse.
Il s'agit d'une course permettant de récolter des fonds pour des personnes et associations en personnes de handicaps 1 fois par an.
Au départ, la chronométrage s'est fait durant plusieurs années avec simplement du Excel et des Macros, manuellement, avec 3 PC en parallèle, du papier pour compléter le tout... et surtout une équipe de choc qui faisait que les résultats n'étaient pas parfait... mais plus ou moins corrects pour pas loin de 800 participants sur la journée! Puis...

COVID

Plus de départ en groupe, mais une édition sur une semaine selon désir des participants... Donc nouveaux besoins et l'ancien système ne pouvait plus fonctionner. Il fallait:
- un système simple (pas de compte à créer)
- En self-service (le système réside sur la confiance, il n'y a aucun intérêt à tricher)
- Résultat en temps réél disponible par tous pour ajouter un peu de challenge
- Utiliser du matériel que chacun possède (pas de montre GPS, tracker ou autre)

Je n'ai pas trouvé à ce moment de système répondant à ce besoin... Alternativement une simple pointeuse mécanique pouvait faire l'affaire... mais pas avec des résultats en temps réél...

J'ai donc décidé de m'y coller et de passer de nombreuses soirées pour également tester des technologies et pratiques dont je m'attelle à mettre en place dans mon travail... Pour les connaisseurs: Cloud, Serverless, DB No SQL, DevOps, Pipeline, CI/CD, Automatic Testing, API Management, Authentication, Multi-tenant, Sécurité OWASP top 10, ... et j'en passe!