Dans de nombreux secteurs industriels, les systèmes informatiques se caractérisent par une durée de vie particulièrement longue, une grande
échelle, et par la manipulation continue de volumes de données toujours croissants. Ils sont en outre soumis à des besoins constants d'évolution. Ces systèmes ne reposent pas uniquement sur du développement logiciel isolé : ils doivent intégrer leur environnement matériel et humain, tout en s'interfaçant avec des systèmes informatiques préexistants.
De tels systèmes, appelés systèmes informatiques complexes, requièrent, pour fonctionner correctement, des ingénieurs possédant
des connaissances approfondies en conception, en vérification et en programmation. lls doivent par ailleurs maîtriser l'ingénierie des
besoins, l'architecture logicielle et matérielle, et être capables de piloter des projets en tenant compte du contexte industriel et des
dimensions humaines.
De tels systèmes doivent être conçus en fonction des environnements dans lesquels ils seront exploités et opérés, sans négliger les
contraintes liées à leur maintenance, tant matérielle que logicielle. Les plates-formes d'exécution sont souvent construites avec des progiciels métier et/ou des progiciels système présentant leurs propres contraintes, et s'appuient de manière croissante, sur
des bibliothèques de composants et des logiciels libres. L'ingénierie de ces applications mobilise ainsi l'ensemble des dimensions de
l'ingénierie des systèmes et des logiciels.
Le cursus AISL de la formation d'ingénieurs en informatique du Conservatoire national des arts et métiers (CNAM) a pour objectif de
former des professionnels capables de concevoir, de développer et de maintenir des systèmes logiciels complexes.
Pour compléter le parcours d'approfondissement AISL il est nécessaire de suivre l'un des deux sous-parcours : « Full-Stack » ou « Architecture Logicielle ».
Ces deux parcours ont en commun l'UE
GLG206 (approfondissement de la conduite de projet ) et se distinguent essentiellement par leurs pré-requis
et leur dernière UE de spécialisation (qui est une UE de projet),
GLG204 pour le sous-parcours full-stack et
GLG207 pour le sous-parcours Architecture Logicielle.
Le sous parcours Full-StackPré-requis :
NFP121 et
NFP122.
Le sous-parcours Full-Stack vise à former des ingénieurs maîtrisant
l'ensemble de la chaîne de développement d'applications d'entreprise,
de la conception au développement, du front-end au back-end. Il met
l'accent sur les compétences en développement web moderne, en
intégrant les dernières technologies et frameworks.
Il combine une solide connaissance des concepts et technologies
back-end, tant sur le plan technique qu'architectural, et une maîtrise
des technologies front-end modernes. Les étudiants apprennent à
concevoir des applications web robustes, évolutives et maintenables,
en s'appuyant sur des outils et des méthodes de développement,
notamment agiles.
La formation propose un équilibre entre compétences techniques et
connaissances théoriques, afin de permettre aux diplômés de s'adapter
durablement à un secteur en évolution constante.
Ce parcours est constitué des UES :
- GLG206 (Conduite de projet informatique - Approfondissement) ;
- GLG203 (Architecture Logicielle Java) ou NSY208 (Architecture, patterns et intégration);
- GLG204, UE de projet qui couvre l'intégralité d'un projet concret et
personnel, de l'expression des besoins à l'implémentation effective
du logiciel.
Le sous parcours Architecture LogicielleLe parcours Architecture Logicielle a pour ambition de développer les compétences nécessaires à la conception et au pilotage de systèmes informatiques complexes selon une approche structurée et maîtrisée. Il couvre l'ensemble du cycle de vie du développement, de l'expression des besoins à la validation, en privilégiant la cohérence d'ensemble plutôt que le seul niveau d'implémentation.
La formation intègre les fondamentaux de la conduite de projet : management, méthodes agiles, planification, gestion des risques et
coordination des équipes. Elle met en lumière les mécanismes garantissant la qualité logicielle tels que l'ingénierie des
exigences, l'intégration continue, le système qualité et les activités de vérification.
Une attention particulière est portée à la conception d'architectures robustes, aptes à satisfaire des exigences non fonctionnelles
(performance, sécurité, maintenabilité, scalabilité). Le programme aborde l'ingénierie dirigée par les modèles, le lien entre modélisation et stratégie de tests, ainsi que les méthodes d'intégration logicielle.
Enfin, la problématique de l'évolutivité des systèmes occupe une place centrale : concevoir aujourd'hui des architectures capables d'évoluer
demain. L'objectif est de former des professionnels capables de prendre des décisions structurantes, d'assurer la qualité et de
maîtriser la complexité des projets logiciels.
Ce parcours est constitué des UES :
- GLG206 (Conduite de projet informatique - Approfondissement) ;
- GLG203 (Architecture Logicielle Java) ou NSY208 (Architecture, patterns et intégration);
- GLG207, UE de projet