iss8ab advanced software engineering
Transcription
iss8ab advanced software engineering
ISS8AB ADVANCED SOFTWARE ENGINEERING ISS8AB Crédits : 2 ECTS Advanced Software Engineering Durée : 21 heures Semestre : S8 Responsable(s) : Laurent CIARLETTA, Maître de Conférences, [email protected] Mots clés : Assemblage de composants, architecture logicielle, J2EE, .NET, Web Services, MDA/MDE Pré requis : Programmation orientée objet, Software Engineering, Réseau Objectif général : Conception des systèmes et logiciels complexes par assemblage de composants Ce cours aborde la notion d'architecture logicielle par assemblage de composants logiciels pour réaliser des applications complexes, des applications d'entreprises. Il montre principalement comment assembler des composants logiciels et construire des interfaces au-dessus de ces assemblages. On arrive ainsi à une approche architecturale des logiciels, ainsi que des aspects d'interfaçage. Les travaux dirigés permettent daborder principalement deux environnements de déploiement de composants logiciels : l'environnement .NET, et les composants logiciels en Java, incluant à la fois les JavaBeans pour la programmation visuelle, et lenvironnement Java 2 J2EE (EJB). La présentation des concepts en regard des technologies telles que CORBA et la programmation de services Web, ainsi que les MDA / MDE (Model Driven Archtiecture / Engineering) et l'intégration d'applications depuis les mobiles jusqu'au Cloud élargiront les perspectives de ce cours. Compétences : Description et verbes opérationnels Niveaux Connaître Comprendre les concepts liés à l'architecture logicielle, à la programmation par composant, les technologies dominantes les différentes architectures et solutions mises en oeuvre, leurs différences, leurs similarités et leur complémentarité Appliquer Mise en oeuvre sur des questions ponctuelles et sur une application fil-rouge Analyser Besoins et solutions pertinentes, utilisation d'outils de débogage et de mesures de performances distribués Synthétiser Évaluer Conception, réalisation et évaluation d'une application par assemblage de composants existant et réalisation d'un ensemble de composants différentiant Les choix de frameworks, de middleware, de langages de plateformes Évaluations : Test écrit Contrôle continu Oral, soutenance Projet Rapport