Software engineering and programming systems seminar

lingi2359  2020-2021  Louvain-la-Neuve

Software engineering and programming systems seminar
En raison de la crise du COVID-19, les informations ci-dessous sont susceptibles d’être modifiées, notamment celles qui concernent le mode d’enseignement (en présentiel, en distanciel ou sous un format comodal ou hybride).
3 crédits
30.0 h
Q1
Enseignants
Legay Axel;
Langue
d'enseignement
Anglais
Thèmes abordés
Les thématiques abordées dans ce séminaire traiteront du génie logiciel et des systèmes de programmation. En particulier, les articles scientifiques utilisés seront sélectionnés dans ces domaines. 
D'une part, les étudiants sont confrontés à problématique d'une bibliographie scientifique de qualité. D'autre part, les étudiants doivent lire de la littérature scientifique (p.e des articles venant de revues internationales).
Acquis
d'apprentissage

A la fin de cette unité d’enseignement, l’étudiant est capable de :

1 Eu égard au référentiel AA du programme « Master ingénieur civil en informatique », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
  • INFO1.1-3
  • INFO3.1, INFO3.2
  • INFO5.3-4, INFO5.6
  • INFO6.1, 6.4
Eu égard au référentiel AA du programme « Master [120] en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
  • SINF1.M2-3
  • SINF3.1, SINF3.2
  • SINF5.3-4, SINF5.6
  • SINF6.1, SINF6.3, SINF6.4
L'étudiant ayant suivi avec fruit ce cours sera capable de
  • établir l'état de l'art par soi-même lorsqu'il est confronté à une problématique de recherche dépassant ses connaissances actuelles en se basant sur la littérature scientifique,
  • rédiger un rapport complet reprenant une bibliographie scientifique et explicitant sa pertinence par rapport à une thématique,
  • synthétiser un article scientifique en explicitant le contexte, les enjeux, les résultats novateurs obtenus, les potentielles applications ainsi que pistes pour des travaux ultérieurs dans le domaine,
  • communiquer oralement, en utilisant des supports multimédia efficaces, les résultats d'une recherche à un public d'informaticiens universitaires non experts du domaine en se basant sur les travaux publiés dans une revue scientifique,
  • interagir avec une personne qui présente des résultats de recherche en faisant preuve d'un regard critique et constructif par rapport aux travaux présentés. 
 
Contenu
Le séminaire portera sur des articles qui seront choisis (avec les étudiants) parmi les thèmes suivants. 
1. sécurité du code
2. blockchain (y compris les smart contracts)
3. la programmation écologique
4. La vie privée et le finger printing
5. Le test et la génération de cas de tests
6. La réparation automatique (ou non) de programmes
7. La détection de logiciels clonés.
8. La programmation par composition
9. La lisibilité du code
10. L'analyse de malware par l'intelligence artificielle
11. Deep learning et codage/protection
12. Techniques avancées de programmation concurrente. 
Les étudiants sont libres de proposer de nouveaux thèmes liés au software engineering. 
Méthodes d'enseignement

En raison de la crise du COVID-19, les informations de cette rubrique sont particulièrement susceptibles d’être modifiées.

Chaque étudiant jouera 3 rôles différents (dans les différentes sessions):
--
présentateur durant une session
--
rapporteur pour une nouvelle session
--
illustrateur pour encore une autre session
Les deux dernières impliquent la rédaction d'un rapport individuel.
Modes d'évaluation
des acquis des étudiants

En raison de la crise du COVID-19, les informations de cette rubrique sont particulièrement susceptibles d’être modifiées.

Présentation de ± 2 heures
Rapport de ± 20 pages
--
comme rapporteur ... fournit une synthèse personnelle d'une autre session
--
comme illustrateur ... montre une instanciation des modèles présentés dans certaines sessions, sur base d'une application de
ton choix
Autres infos
Il est souhaitable que le séminaire recherche soit  suivi la même année que le travail de fin d'étude car il constitue une aide méthodologique à la réalisation de celui-ci.
Il n'est pas indispensable d'avoir choisi l'option « correspondant » au séminaire pour pouvoir y participer.
Ressources
en ligne
https://moodleucl.uclouvain.be/course/view.php?id=12951
Bibliographie
D. Schmidt, M. Stal, H. Rohnertand F. Buschmann.Pattern-Oriented Software Architecture ' Patterns for Concurrent and Networked
Objects. Wiley, 2001.
--
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad and M. Stal. Pattern-Oriented Software Architecture ' A System of Patterns.
Wiley, 1996.
--
E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns ' Elements of Reusable Object-Oriented Software.Addison-Wesley,
1995.
Faculté ou entité
en charge
INFO


Programmes / formations proposant cette unité d'enseignement (UE)

Intitulé du programme
Sigle
Crédits
Prérequis
Acquis
d'apprentissage
Master [120] : ingénieur civil en informatique

Master [120] en sciences informatiques