Université Lyon 1
Université de Lyon
Accueil  >>  Génie logiciel (program orienté objet + UML lite)
  • Unité d'enseignement : Génie logiciel (program orienté objet + UML lite)
Nombre de crédits de l'UE : 4
Code APOGEE : PL6014MM
    Responsabilité de l'UE :
TROMEUR DERVOUT DAMIEN
 damien.tromeur-dervoutuniv-lyon1.fr
04.72.43.13.56
    Type d'enseignement
Nb heures *
Cours Magistraux (CM)
27 h
Travaux Dirigés (TD)
3 h
Travaux Pratiques (TP)
21 h
Total du volume horaire
51 h
Activité tuteurée personnelle (étudiant)
24 h
Activité tuteurée encadrée (enseignant)
12 h
Heures de Tutorat étudiant
6 h

* Ces horaires sont donnés à titre indicatif.

    Programme - Contenu de l'UE :

 

1.  Introduction à la programmation orientée objet: Notions de bases de POO: objet, classe, encapsulation , protection des données, polymorphisme, lien dynamique,  Notions d'UML.

2.  Programmation orientée objet pour le calcul scientifique : programmer en C++: classe, opérateurs, notion d'amitié, programmation générique : (template). Héritage simple , multiple, en diamant,  classe abstraite/interface, polymorphisme

3. Mise en œuvre de la bibliothèque   STL   et   de bibliothèques scientifiques  Structure de données évoluées pour le calcul scientifique : valarray, map, vector. Intégration dans un code orienté objet  complexe de calcul scientifique (hydrologie, génie des procédés,…) de nouvelles fonctionnalités numériques. Développement d'une application de caclul scientifique en mode collaboratif sous une forge via git.

4.  Optimisation de code, outils de debuggage:   Notions sur les option de compilations Intel advisor, Intel inspector, gprof, valgrind.

5. Outils pour la documentation de code: doxygen, génération de graphe UML.

 

Supports pédagogiques :

 

Logiciel d’appui : Environnement Eclipse, STL library, Boost library.

    Compétences acquises :
Méthodologiques :

Comprendre et mobiliser un large champ de  sciences et techniques

  • Mobiliser et combiner un socle de connaissances scientifiques et techniques
  • S'approprier et mobiliser de nouveaux savoirs et savoir-faire
  • Mener une veille scientifique et technologique

 

Identifier et analyser un besoin client

  • Appréhender l'environnement informatique (matériel, logiciel et système d'information) ainsi que les besoins métiers du client

Proposer une solution adaptée, dans le domaine des Mathématiques Appliquées, en prenant en compte les contraintes environnementales

  • Définir  un à plusieurs types de modélisation / discrétisation / implémentation  à différents niveaux de finesse en réponse au cahier des charges
  • Modéliser mathématiquement un problème  en s'appuyant sur une démarche scientifique dans le domaine d'application du client
  • Concevoir une méthode de résolution et un algorithme associé en réponse à un problème en prenant en compte les contraintes opérationnelles
  • Modéliser la structuration des données caractérisant  un problème complexe
  • Proposer un protocole de simulation / plan d'expérience
  • Définir et interpréter des éléments de performance pour proposer une solution optimale
  • Développer la solution choisie dans l'environnement client

Interagir avec son environnement de façon professionnelle et citoyenne

  • Rendre compte de son travail
  • Rechercher et exploiter des ressources disponibles dans son environnement


Techniques :

Capacité à programmer en orienté objet une application scientifique, en maîtrisant la structuration des données et en hiérachisant le treillis de classe.

Capacité à créer une classe interface pour  interfacer une application avec une bibliothèque scientifique existante.



Disposer d’un outil méthodologique de l'approche objet (UML2.1.1). Etre capable de mettre en œuvre les concepts de la programmation orientée objets à l’aide du langage C++ : construire une petite application simple et intervenir dans une grande application complexe. Introduire la notion d’objet en calcul scientifique.
    Modalités de contrôle des connaissances et Compétences 2020-2021:
TypeLibelléNatureCoef. 
Date de la dernière mise-à-jour : 07/06/2021
SELECT * FROM parcours INNER JOIN ue_parcours ON PAR_ID_FK=PAR_ID INNER JOIN mention ON MEN_ID = PAR_MENTION_FK WHERE PAR_ACTIVATE = 0 AND UE_ID_FK='18526' ORDER BY UE_ID_FK ASC, PAR_ID_FK ASC