Ingénierie logicielle des systèmes distribués (11B*)
Le XXIe siècle est celui du tout distribué. Les calculs sont répartis entre des machines différentes et collaborent pour réaliser un calcul global. Les données utilisées par ces calculs sont hébergées par des éléments de stockage qui peuvent être physiquement éloignés. Concevoir et développer des logiciels dont le calcul et les données sont répartis est donc crucial pour les futurs ingénieurs.
Développer de tels logiciels requiert de l’ingénieur la maîtrise de méthodes et outils théoriques et pratiques permettant de garantir le fonctionnement du logiciel. Les maintenir ou utiliser requiert en plus la compréhension des concepts et algorithmes sous-jacents aux plates-formes et architectures techniques et technologiques utilisées. Cette maîtrise conceptuelle, technique et technologique de ces logiciels et les méthodes d’ingénierie permettant de les développer constitue donc un élément clé de compétitivité pour les futurs ingénieurs.
L’ambition de cette TAF est de fournir aux étudiants des méthodes et outils fondamentaux, tant théoriques que pratiques dans la conception et le développement de systèmes logiciels distribués. L’étudiant sera ainsi à même d’appréhender les concepts théoriques de base sous-jacents à ces systèmes, de réaliser de choix stratégiques en termes de briques logicielles à produire ou utiliser et d’avoir un regard critique sur les performances et la fiabilité qu’on peut réserver à un logiciel distribué. En termes de pédagogie, la TAF reposera sur une approche pragmatique et pratique mais l’abstraction et la théorie seront utilisées lorsqu’elles permettent de conceptualiser pour mieux comprendre les solutions techniques et technologiques existantes et d’évoluer dans un contexte très changeant.
Liens avec le profil de l’ingénieur de l’IMT Atlantique
Les logiciels distribués sont omniprésents dans notre société. Les grands acteurs du numérique mais aussi les grands groupes, les PME et les institutions publiques se tournent de plus en plus vers le Web et le mobile. Les applications s’appuyant sur ce type de technologies se basent sur des concepts et utilisent des abstractions issues de l’informatique répartie. L’ingénieur IMT Atlantique doit être acteur de la création de ces nouvelles applications.
De plus, la transition énergétique repose, entre autres, sur l’utilisation d’applications pour le contrôle de la production et la distribution d’énergie mais aussi sur des applications qui per- mettent l’utilisation intelligente de celle-ci (par ex. les villes intelligentes). La nature répartie de ces applications (coopération d’éléments intelligents entre des lieux de production et de consommation d’énergie qui sont distants) nécessite des ingénieurs capables de comprendre les mécanismes sous-jacents et des technologies récentes pour les réaliser.
À l’issue de cette TAF, les étudiants seront capables de :
- contribuer à la conception, réalisation et validation d’un logiciel distribué,
- proposer une solution algorithmique, architecturale ou de plate-forme pour la réalisation d’un logiciel distribué,
- avoir un regard critique sur les performances ou la fiabilité d’un logiciel distribué.
Débouchés
Les compétences acquises dans cette TAF permettent d’envisager plusieurs types de métiers associés au monde du logiciel : architecte logiciel, chef de projet de développement, analyste responsable d’applications informatiques. Cette TAF ne vise aucun type d’entreprise en particulier. Les compétences à la sortie peuvent être mises à contribution dans toute entreprise qui développe les applications distribuées d’aujourd’hui. Des exemples ? Les services en ligne (commerce, communication, travail collaboratif, etc), le cloud computing, edge computing, blockchain, analyse big data, map-reduce, consensus, ...
Tous les secteurs d’activité sont des cibles du fait de l’importance des logiciels distribués. Les entreprises, de grande et moyenne taille, peuvent être spécialisées dans le développement logiciel (éditeurs comme Microsoft, RedHat ou Bull ; fournisseurs de services comme Google ou Orange ; entreprises de services numériques comme Sopra-Steria ou Altran Technologies) ou avoir besoin de logiciels distribués pour leur activité (banques, marine nationale, santé, . . .).
Équipe pédagogique : Isabel Amigo, Matthieu Arzel, Jean-Christophe Bach, Amer Baghdadi, Antoine Beugnard, Fabien Dagnat, Jérôme Kerdreux, Yvon Kermarrec, Laurent Lecornu, Christophe Lohr, Issam Rebai, Mayte Segarra, Jacques Simonin