Architectures Microservices pour l’OpenData

Proposition de stage ou de mémoire

Architectures Microservices pour l’OpenData

Proposition de stage ou de mémoire

Profil Étudiant(e) en Master/Bachelier en informatique
Prérequis Expérience pratique de Linux.
Bonne compréhension de l’anglais technique écrit
Sont un plus :
familiarité avec les outils de déploiement automatique (ex : Chef, Ansible, Puppet, Saltstack) et d’intégration continue.
Familiarité avec le concept d’API REST
Durée Minimum 10 semaines.

Contexte

Selon Martin Fowler, concepteur d’architectures logicielles, les architectures microservices pourraient se définir comme suit :
"the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies." [1]

De par leur caractéristiques, les architectures microservices sont conçues pour des environnements Cloud et sont scalables. Les architectures microservices sont donc adaptées à de nombreux types d’applications mais compte tenu de leurs spécifités elles semblent particulièrement convenir aux applications de collecte, d’intégration et de publication de données Open Data [2] qui utilisent les mêmes types de protocoles réseau et peuvent connaître de forts besoins de scalabilité.

L’objectif du stage est d’étudier les architectures microservices, leurs caractéristiques et évolutions, puis de les appliquer sur une étude de cas dans le domaine de l’Open Data et enfin de dégager les spécificités de ce domaine dans l’emploi des microservices.

Travail à réaliser

  1. Établissement d’un état de l’art dans les domaines
    1. des architectures microservices
    2. des applications de réalisation de services open data
  2. Conception d’une plateforme Open Data à base de micro services, de préférence par modification d’un application Open Data existante, portant sur la gestion et la publication de données ouvertes selon le modèle du 5 star open data (http://5stardata.info)
  3. Élaboration de la plateforme

Mots-clefs

Open Data, micro-services, API, déploiement automatisé

Encadrement

L’entièreté du travail sera encadré. Le stagiaire utilisera une plateforme de développement permettant le suivi constant de ses progrès. Il devra également faire preuve d’autonomie et d’esprit critique lorsque des choix techniques et technologiques devront être opérés.

Contact : Sébastien Dupont (sebastien.dupont@cetic.be) et Fabrice Estiévenart (fabrice.estievenart@cetic.be)

Références