Poly'Event

Logo de Polytech Nice Sophia
Compétences
Java
Java

Poly'Event

Contexte du projet : Projet des modules d'ISA (Introduction to Software Architecture) et DevOps – 4ᵉ année du cursus Sciences Informatiques à Polytech Nice Sophia

Date : Mars – Juin 2018

Rôle : Développeur J2EE/EJB, Architecte logiciel, Mainteneur du pipeline d'intégration et déploiement continu

Équipe :

  • Nikita Rousseau (Développeur C#/.NET, Architecte logiciel, Mainteneur du pipeline d'intégration et déploiement continu)
  • Guillaume Casagrande (Développeur J2EE/EJB, Architecte logiciel)
  • Antoine Steyer (Développeur J2EE/EJB, Architecte logiciel)

Technologies :

  • Java J2EE / EJB (Cœur d'application, Composants principaux)
  • JUnit (Tests)
  • C# / .NET (Service externe de planning)
  • Maven (Gestion de dépendances, segmentation de l'application en paquets distincts)
  • Jenkins (Pipeline d'intégration et de déploiement continu)
  • Docker (Déploiement)
  • Git (Gestion de versions)

Ce projet constitue le projet fil rouge du double module https://github.com/mosser/isa-devops">ISA (Introduction to Software Architecture) et DevOps de 4ᵉ année du cursus Sciences Informatique de Polytech Nice Sophia. Il s'agit d'une plateforme aidant à l'organisation d'évènements sur le campus en proposant la possibilité de réserver des salles et du matériel à des horaires précises.

D'un point de vue technique, ce projet m'aura permis de découvrir la programmation orientée composants, permettant d'isoler des ensembles cohérents de la logique d'application les uns des autres (utilisation de J2EE et de la spécification EJB), et d'être éveillé aux problématiques de l'architecture logicielle. J'ai pu également découvrir les problématiques liées au domaine du DevOps, notamment sur les différents niveaux de tests d'application et sur la configuration d'un pipeline d'intégration et de déploiement en continu avec Jenkins. Il nous aura ainsi été possible de segmenter l'application en plusieurs paquets Maven, chacun avec ses propres dépendances. Enfin, il nous aura été possible d'expérimenter des processus de déploiement au travers d'images Docker (création de Dockerfiles, configuration de Docker Compose, envoi d'images sur Docker Hub).