F2B304A : Ingénierie du développement logiciel


Retour
Imprimer la fiche programme
Code analytique: EDF02B304
Responsable  : Fabien DAGNAT   
Programmé en UVF2B304

Présentation :

L'implantation est une étape importante du cycle de vie d'un logiciel. Cette implantation peut se faire dans des langages différents, suivant des paradigmes de programmation très différents. Comprendre ces paradigmes est fondamental pour des élèves ingénieurs souhaitant développer leur carrière dans le (vaste) domaine du développement de logiciels. En effet, il est nécessaire de choisir en connaissance de cause (avantages ou bénéfices et inconvénients ou coûts) un (ou des) langages adaptés à un développement.

Pour illustrer cette diversité et faciliter cette compréhension, divers domaines sont explorés dans l'UV avec des degrés de détails variés. D'abord, divers paradigmes modernes de programmation de haut niveau sont abordés (programmation par composants, par aspects). Ensuite, les principaux langages de programmation, leurs avantages et leurs défauts, les cadres dans lesquels ils sont particulièrement adaptés, sont abordés. Enfin, nous nous attardons sur toutes les interactions que le développeur logiciel doit avoir avec les autres acteurs du métier (concepteur, administrateur système, utilisateurs, ...).

Objectifs pédagogiques :


  • Comprendre les concepts de base (compilation, machine virtuelle, typage) liés à la notion de programme
  • Comprendre différents paradigmes modernes de programmation de haut niveau
  • Appliquer les principes de la programmation par composants ou par aspects pour réaliser un programme simple
  • Choisir un paradigme de programmation pour un développement logiciel
  • Appliquer le patron de conception MVC pour construire une interface homme-machine
  • Construire des programmes suivant le paradigme fonctionnel
  • Construire un compilateur pour un langage simple

Pré-requis :

Cette UV repose sur :

Pré-requis :
Expliquer les concepts de base associés au modèle objet (Comprendre – savoir conceptuel)
Identifier les responsabilités d'une classe (Comprendre – savoir procédural)
Identifier les relations entre les classes d'une application objet (Comprendre – savoir procédural)
Utiliser le modèle objet pour développer une application dans un langage objet (Appliquer – savoir procédural)
Comprendre les différentes étapes du cycle de développement d'un logiciel (Comprendre – savoir conceptuel)

Volume horaire : 63h


Contenu détaillé :

L'UV sera décomposé en 5 parties :

Une partie introductive sur les bases nécessaires à l'UV et sur un panorama des paradigmes et des langages de programmation.
Un focus sur la programmation événementielle en se servant de la programmation d'Interface Homme Machine comme support.
Un focus sur la programmation fonctionnelle et la compilation en réalisant en Ocaml un compilateur pour un micro-langage à objet.
Un focus sur la programmation par composant et par aspect en s'intéressant à la programmation côté serveur.
Enfin, une partie conclusive pour aider les élèves à faire du liant entre tous les domaines explorés et être à même d'extrapoler les concepts abordés durant les trois focus.



Année 2016/2017
Dernière mise à jour le 27-APR-16
Validation par le responsable de programme le


IMT Atlantique
Campus de Brest
Technopôle Brest-Iroise
CS 83818
29238 Brest Cedex 3
France

Tél  +33 (0)2 29 00 11 11
Fax +33 (0)2 29 00 10 00