Retour à la constellationPROARKHEAtlas personnel

Architecture logicielle

Berk Island

Une île de dragons imaginée pour explorer les architectures multiservices.

2026Prototype académique
PROARKHEL'origine
Vue générale de Berk Island

Le sujet avait pour objectif de nous faire pratiquer une architecture multiservice. Avec le groupe, nous avons choisi de ne pas rester sur un exemple abstrait et d'imaginer notre propre jeu autour de l'île de Berk et de ses dragons.

Le prototype n'est pas allé jusqu'à toutes les fonctionnalités que nous avions imaginées, mais la partie importante du projet — la séparation des services et leur organisation — a bien été mise en place.

PLAYERLEVELDRAGONSTATS

Je me suis occupé d'une partie de l'organisation du projet et de la répartition du travail. Sur le code, j'ai principalement développé les classes représentant le joueur et les dragons, avec leurs niveaux, leurs statistiques et les méthodes permettant de faire évoluer ces données.

Le but était d'avoir un domaine suffisamment clair pour ne pas mélanger les règles du jeu avec la communication entre les services. Cela nous permettait aussi de faire évoluer une partie sans devoir comprendre l'ensemble du projet à chaque modification.

Modéliser les dragons était plus intéressant qu'une suite d'entités génériques, parce que chaque statistique devait correspondre à une règle compréhensible dans le jeu. Cette couche métier donnait un point d'appui concret à une architecture qui, autrement, aurait pu rester très théorique.

Vue rapprochée de l'île
Vue rapprochée de l'île

Organisation du projet et du travail d'équipe, puis implémentation des classes métier : joueur, dragons, niveaux, statistiques et méthodes associées.

J'ai aimé le fait de pouvoir apprendre une architecture assez formelle à travers un projet dont l'univers nous appartenait. Cela rendait les décisions plus concrètes et les échanges de groupe plus naturels.

Le prototype incomplet m'a aussi rappelé qu'une bonne architecture ne remplace pas la gestion du périmètre : il faut savoir réduire les fonctionnalités assez tôt pour terminer ce qui donne réellement de la valeur au projet.

Interface de sélection d'exploration
Interface de sélection d'exploration
JJavaDDockerMQMessage queuesµMicroservices
Projet suivant42sh