← Toutes les SAÉ
SAÉ 2 : Onitama .NET MAUI
SAÉ 2.01 · Semestre 2 · 2026

SAÉ 2 : Développement d'une application avec IHM

Contexte : SAÉ 2.01 · Développement d'une application avec IHM Équipe : Binôme Durée : 18 semaines (~200 h) Encadrement : Sujet imposé, conception autonome Stack : C# · .NET MAUI · XAML

Contexte

Projet mené en binôme sur 18 semaines (environ 200 heures) au second semestre de ma première année, soit le plus long projet de mon cursus à ce jour. Le sujet et la technologie étaient imposés, mais nous étions autonomes sur toute la conception : architecture, découpage des classes, planning et répartition des tâches. Un enseignant référent suivait notre avancement et validait chaque livrable intermédiaire, à la manière d'un client.

Cette SAÉ mobilise principalement la compétence C5 (Conduire un projet), ainsi que C1 (Réaliser un développement d'application) et C6 (Collaborer au sein d'une équipe informatique).

Objectif

Adapter le jeu de plateau Onitama en application bureau avec C# / .NET MAUI / XAML. L'attendu ne se limitait pas au programme : il fallait livrer une application jouable avec son interface graphique, mais aussi piloter le projet avec de vrais outils de gestion : user stories, wireframes, diagrammes de conception, tableaux de tests et documents de suivi. La qualité de la démarche comptait autant que le code produit.

Nous avons également dû produire une identité visuelle pour le jeu, l'interface faisant partie intégrante de l'évaluation.

Ce que j'ai réalisé

Ma contribution personnelle a porté surtout sur la conception technique et la logique du jeu. J'ai participé à la modélisation des classes principales (joueurs, pions, cartes et plateau) ainsi qu'à l'organisation de l'architecture, en séparant les données de la logique métier. J'ai développé plusieurs fonctionnalités centrales : la gestion du plateau, le calcul des déplacements autorisés à partir des cartes, l'alternance des tours et les conditions de victoire. J'ai donc apporté une part importante dans la structure du projet, la cohérence du code et le développement de la logique fonctionnelle.

Capture d'écran du menu principal de l'application Onitama
Le menu principal de l'application, réalisé en XAML
Logo du jeu Onitama
Onitama, identité visuelle du jeu adapté

Difficultés & apprentissages

La principale difficulté a été la traduction des règles du jeu en code : gérer correctement les déplacements induits par chaque carte, l'alternance des tours et les conditions de victoire s'est révélé bien plus subtil que prévu. Pour nous en sortir, nous avons pris le temps de restructurer les classes, de séparer franchement la logique métier des données, et de tester beaucoup plus régulièrement plutôt qu'en fin de cycle.

Le second point dur a été le travail à deux sur une même base de code : sans découpage clair, nous nous marchions dessus. Ce projet m'a appris à mieux organiser mon code, à travailler proprement en équipe et surtout à comprendre l'importance de la conception avant le développement.

Résultats

Les livrables du projet étaient l'application Onitama elle-même, les diagrammes de conception, les user stories, les wireframes, les tableaux de tests et les documents de suivi. Le projet a été livré et soutenu en fin de semestre avec une application jouable de bout en bout. Ce dont je suis le plus fier : avoir participé à la création d'une application jouable, structurée et cohérente sur le plan technique, et l'avoir tenue sur 18 semaines sans que le code devienne illisible.

Ce que j'ai gagné
  • Le passage réel à la programmation orientée objet : modéliser un domaine en classes cohérentes, et non enchaîner des fonctions.
  • La conduite de projet sur la durée : planning, livrables intermédiaires, points d'étape avec un référent qui joue le rôle du client.
  • Le travail à deux sur un même dépôt Git : branches, conflits, relectures croisées.
  • Une première expérience de .NET MAUI et XAML, qui est exactement la technologie de ma spécialité de BUT2.
Voir le code sur GitLab