Architecture logicielle (ARCVannes)

Description

L'architecture logicielle a émergé comme un domaine clé de l'informatique pour le développement de systèmes à logiciel prépondérant, notamment dans le cadre des systèmes complexes, cybersécurisés. Cette UE couvre les aspects théoriques et pratiques de ce champ disciplinaire. Elle vise à donner une connaissance solide des principaux concepts, théories et langages pour la conception architecturale des systèmes à logiciel prépondérant. Elle met l'accent à la fois sur les aspects pratiques des langages de description et d'analyse des architectures logicielles supportés par des mécanismes et outils que sur les aspects formels pour traiter les architectures logicielles cybersécurisées. L'UE couvre ainsi les connaissances et compétences pour décrire, valider, vérifier et raffiner formellement les modèles architecturaux afin de générer et faire évoluer dynamiquement, à la volée, des systèmes cybersécurisés à logiciel prépondérant. Elle présente d'une part, l'état de l'art du domaine et d'autre part, ses axes de recherche.

Mots-clés

Modèle, Métamodèles, Transformation de modèles, Refactoring, Contrats

Contenu

Partie 1. Des modèles objets à la méta-modélisation - Réflexion - Méta-programmation versus métamodéisation, Modèles et méta-modèles, Langages de modélisation et langages de description des métamodèles - Modèles du cycle de développement Partie 2. Transformations de modèles - Les différents standards, dont QVT - Vérification des transformations, traçabiité des tests et contrats de transformations Partie 3. Des exigences à la génération de code - Modélisation des exigences - Refactoring, application de patrons de conception et tests de qualité Partie 4. Applications de l'ingénierie de modèles aux systèmes cybersécurisés à logiciel prépondérant

Compétences acquises

Savoir et savoir faire associés : - Maîtriser les notion de modèles, métamodèles et transformation de modèles - Connaissance des principes généraux de la conception basée sur les modèles - Savoir utiliser l'ingénierie dirigée par les modèles pour automatiser l'analyse des exigences, réaliser des refactorings de systèmes et appliquer automatiquement des patrons de conception.

Enseignant

Flavio Oquendo