Retour
Année universitaire 2024/2025

MIAGE Informatique pour la Finance - 2ème année de Master

Crédits ECTS : 60

Les objectifs de la formation

Le parcours MIAGE-IF a pour objectif de former des informaticiens spécialistes des applications financières, capables de maîtriser tout au long de leur carrière les problématiques spécifiques à ce domaine et aptes à proposer et à mettre en œuvre les solutions adéquates. La formation est à 75% une formation dédiée aux connaissances nécessaires à l’ingénierie d’applications de haute qualité.
 

Les objectifs de la formation :

Pré-requis obligatoires

Poursuite d'études

La formation garantit une intégration rapide dans un secteur très demandeur. Les entreprises typiques en sortie de Master sont :

Débouchés : Analyste développeur, Auditeur financier, Business analyst, Chargé(e) de gestion des risques, Consultant(e), Ingénieur d’études, MOA Finance.

Ces différents métiers se situent dans la même sphère fonctionnelle, et il est très courant de passer de l’un à l’autre au cours d’une carrière. La formation assurée dans le parcours MIAGE-IF a pour but d’assurer une adaptation facile à ces différents métiers, et doit permettre à ses diplômés d’apporter des solutions innovantes par la combinaison d’une double compétence et d’une maîtrise des technologies les plus récentes.

Programme de la formation

Description de chaque enseignement

Actuariat

ECTS : 3

Description du contenu de l'enseignement :

Initier les étudiants à l’actuariat.

Actuariat des produits de taux simples en univers déterministe.
Obligations, zéro coupon.
Evaluation, courbe de taux, taux futurs, calcul du taux de rendement interne et de la valeur actuelle nette.
Principes de l’actuariat en assurance vie et IARD : tables de mortalité et de sinistre, calcul de prime.

Exemples d'implémentation en Python.

 

Compétence à acquérir :

Connaissances générales en actuariat.

Mode de contrôle des connaissances :

Examen et des contrôles de cours.


Aide à la Décision : construction d’indicateur

ECTS : 3

Description du contenu de l'enseignement :

Modélisation (définir les composants de l’indicateur) : techniques de travail collectif pour la structuration du problème : carte cognitives, focus groupe, etc.
Choix des fonctions d'agrégation : présentation de différents types d’agrégation (additive, ordinale). Analyse de leurs propriétés mathématiques
Mise ensemble des différents types de données venant de différentes sources avec différents niveaux de qualités (avec une approche de "théorie de mesurage" et analyse de signifiance)
Etude de cas avec une présentation d'un cas d'application industriel avec un intervenant industriel
 

Compétence à acquérir :

Fournir les fondements mathématiques et les outils de gestion nécessaires pour la conception et la mise en place des indicateurs composites.


Anglais

ECTS : 3

Description du contenu de l'enseignement :

Cours par niveau (selon la taille de la promotion). Une sélection de domaines liés au monde du travail, à son évolution et ses enjeux, est abordée par le biais de lectures, d'exercices apprentissage de lexique spécialisé, de présentations orales, de synthèses écrites  et de participation à des débats. 

Compétence à acquérir :

L'étudiant doit acquérir une autonomie langagière pour être capable de travailler dans un contexte international, à l'écrit comme à l'oral.
A l'issu du cours, il maîtrisera en anglais les prises de parole dans différents contextes professionnels tout comme la rédaction de documents et l'interaction avec des partenaires.

Mode de contrôle des connaissances :

Des travaux à l'écrit et à l'oral sont requis tout au long du cours. 

Bibliographie, lectures recommandées :

Lecture régulière de la presse anglophone  


Bases de données

ECTS : 0

Description du contenu de l'enseignement :

Ce cours de mise à niveau permet aux étudiants de connaître les grands principes du modèle relationnelle et de pratiquer le SQL.

Compétence à acquérir :

Mode de contrôle des connaissances :

Aucun


C++

ECTS : 3

Description du contenu de l'enseignement :

Le langage C++ est actuellement le 3e langage de programmation le plus utilisé au monde(TIOBE Programming Community Index).
Ce cours est destiné en priorité aux étudiants débutants en programmation C++.
Classes et objets (constructeurs/destructeur, Propriétés des méthodes, Surcharge des opérateurs, Objet membre)
Héritage (simple, multiple, virtuel)
Patron de fonctions et Patron de classes Pré requis : Langage C et programmation orientée-objet

Compétence à acquérir :

Former les étudiants à la programmation orientée-objet en C++.


Capitalisation et management des connaissances

ECTS : 3

Description du contenu de l'enseignement :

Le cours de capitalisation sur les connaissances de l'entreprise est une introduction au Knowledge Management (KM). Il prodigue les concepts académiques fondamentaux aussi bien que des études de cas réelles permettant d'apprécier les enjeux du management des connaissances dans les entreprises.

- Interprétations divergentes dans une entreprise étendue : contextes, cultures, intentions
- Cadre académique de l'ingénierie des connaissances, outils de cartographies cognitives
- Expertise, pouvoir, partage et rétention de connaissances
- Devenir des métiers, design thinking

Compétence à acquérir :

Concepts et enjeux du management des connaissances dans les entreprises


Data Mining/Machine learning

ECTS : 4

Description du contenu de l'enseignement :

L’évaluation se fait par examen et par un challenge Kaggle (kaggle.com)
- Introduction
- Objectifs et panorama du datamining et du Machine learning
- Méthodes non supervisées :
Réduction de dimensionnalité
Clustering :
K-means, CAH
Approches probabilistes : EA
Approches spectrales
Application à une segmentation marketing
Application au Text Mining
Règles d’association
-Méthodes supervisées :
Régression logistique
Arbre de Décision
Méthodes à Noyaux
Approches neuronales
Application au scoring
 

Compétence à acquérir :

Il s'agit d'initier les étudiants à l’apprentissage automatique (machine learning) et à la pratique de la fouille (data mining) et l’extraction de connaissances à partir des grandes masses de données. Il sera illustré par des cas concrets des exemples réalisés en session avec Python


Droit, Données et Ethique

ECTS : 3

Description du contenu de l'enseignement :

Introduction :
- Qu’est-ce que l’éthique (distinction, articulation entre éthique, droit, morale).
- De quelles données parle-t-on ?
- Pourquoi une éthique des données aujourd’hui ? Les principaux enjeux : le développement de l’Intelligence artificielle et la question du respect de dignité humaine, dépersonnalisation, déresponsabilisation, encadrement nécessaire de la gouvernance algorithmique (Cambridge Analytica)

Partie 1 : Les différentes formes d’encadrement de l’éthique des données
- L’encadrement collectif
Des obligations actuelles fixées par les Etats et l’UE (RGDP)
Des tentatives de régulation à l’échelle internationale
Une forme de responsabilité sociétale des entreprises (développement de code de conduite, d’outils de privacy by design ou by default)
- Une responsabilité individuelle : Du cas de conscience à la revendication du statut de lanceur d’alerte

Partie 2 : L’émergence de principes éthiques des données
- Les initiatives en cours :
Les recommandations de la CNIL : Vers la concrétisation d’un principe de loyauté des algorithmes et d’un principe de précaution en matière d’Intelligence Artificielle ?
Le projet de lignes directrices en matière d’éthique dans le domaine de l’IA développée par la Commission européenne
Vers une charte constitutionnelle française du numérique ?
- Les questionnements éthiques spécifiques :
La revendication d’un droit des robots
Vers la création de biens communs numériques ?
- Les bonnes pratiques sectorielles : Ethique des données dans le domaine de la finance, de l’éducation, de la santé etc.

Compétence à acquérir :

La profonde transformation numérique de nos sociétés rend nécessaire comme l’a encore récemment rappelé la CNIL de « former à l’éthique tous les maillons de la chaîne algorithmique, concepteurs, professionnels, citoyens ». La création de ce nouveau cours Données et Ethique s’inscrit dans cette optique. Il s’agit de permettre aux informaticiens de prendre conscience des implications éthiques et sociales du traitement des données qu’ils opèrent. Il s’agit aussi les informer sur l’évolution du cadre dans lesquels ils vont pouvoir ou devoir mettre en œuvre le traitement de leurs données tant à titre personnel que professionnel. L’éthique est une notion souvent difficile à cerner. Elle repose sur un ensemble de règles morales susceptibles d’orienter le comportement des individus voire des entreprises. Ces règles qu’ils s’imposent à eux-mêmes peuvent soit préfigurer, soit en réalité se superposer ou se confondre avec des règles juridiques contraignantes. Ainsi, l’éthique des données se développe à titre collectif qu’à titre individuel notamment avec la figure des lanceurs d’alerte. En outre, l’éthique des données peut varier en fonction de la catégorie de données en cause (données personnelles, non personnelles, données dite d’intérêt général etc.). Ces prémisses sont importantes pour comprendre les enjeux économiques et sociétaux autour de l’émergence actuelle des principes éthiques des données.


Entrepôts de données

ECTS : 4

Description du contenu de l'enseignement :

Introduction et définition d'un entrepôt de données, Architecture fonctionnelle, Modélisation conceptuelle, Alimentation, Stockage, Gestion et exploitation de l'entrepôt. Utilisation de l’ETL Talend en TP (Introduction Talend / Construction des premiers jobs (tri & jointure); Découverte d'autres composants Talend (filtre, condition, agrégation, gestion des erreurs); Modélisation et interaction avec la base de données; Cas pratique complet)
 

Compétence à acquérir :

Acquérir les notions de base relatives à l'acquisition, l'intégration, la modélisation et au traitement de données multidimensionnelles.


Finance de marché

ECTS : 3

Description du contenu de l'enseignement :

Le but de ce cours est de présenter les marchés financiers et de donner un aperçu des notions mathématiques utilisées pour gérer les produits dérivés. Le cours s’articule autour de la formule de Black and Scholes et se conclut par une présentation des applications les plus courantes en informatique.


Bloc introductif : tour d'horizon culturel des marchés financiers et étude de l'hypothèse d'Absence d'Opportunité d'Arbitrage.
Présentation ou rappel de diverses notions utiles : probabilités, espérance etc...
Processus discrets (temps indexé par un entier), portefeuilles de couverture.
Processus continus (temps indexé par un réel positif), formule de Black and Scholes et ses conséquences (volatilité implicite, couverture en delta neutre etc...)
Compléments (en informatique) : méthode de Monte-Carlo, Box-Muller, Intégrale stochastique, Méthode d’Euler, formule de Feynman-Kac et EDP. Implémentation sur Python pour le pricing.

 

Compétence à acquérir :

Compréhension des modèles stochastiques et leurs implémentation.

Mode de contrôle des connaissances :

Examen dont un test sur l'implémentation Python.


Gestion de portefeuille

ECTS : 3

Description du contenu de l'enseignement :

Rendement/risque d’un portefeuille. Théorie moderne de gestion d’un portefeuille. Value atRisk.


Analyse de performance (caractéristiques d’un portefeuille).
Théorie moderne du portefeuille ; le modèle de Markowitz, CAPM.
Gestion/Allocation de portefeuilles et mesures de performance.
Modèles multifactoriels.
Mesures de risque : Value at Risk.

 

Compétence à acquérir :

Savoir formaliser un problème d'optimisation de portefeuille et savoir le résoudre.


Gouvernance des Systèmes d'Information

ECTS : 3

Description du contenu de l'enseignement :

Description : 

Introduction - concepts
Entreprise et système d'information
· Définition du système d'informations
· Les composantes clés du SI

Gouvernance : définition et enjeux
· La gouvernance : pourquoi, à quoi cela sert-il ?
· Gouvernance au niveau de l’entreprise
· Gouvernance des SI : pour leur pilotage interne
· SI et entreprise : alignement du SI sur la stratégie et la politique de l’entreprise 360° de la gouvernance
· La gouvernance à mettre en œuvre dépend de comment l’organisation entend piloter son activité et se contrôler
· La gouvernance dépend de l’organisation voire de l’environnement socio-économique
· Notion de « Compliance » : empilage des législations, réglementations, bonnes pratiques et procédures qui conditionnent la gouvernance


Les référentiels
Les grands standards :Itil, Cobit, CMMi, …
· Orientations plus particulières de certains référentiels : développement logiciel, mode projet, exploitation, etc.
Focus sur CoBit
· Applications types, intérêts et limites
· Limites par rapport à la gouvernance de l’entreprise sur son SI
Modèle d’organisation : la matrice des fonctions du département informatique.

Focus sur ITIL
· Applications types intérêts et limites
· Limites par rapport à la gouvernance de l’entreprise sur son SI

Exemple de mise en place d'une démarche ITIL


Organisation de la DSI
Gouvernance des systèmes d'information-gouvernance d'entreprise
· Comment s’articulent la gouvernance interne du SI et le niveau de gouvernance du SI requis pour le pilotage de l’entreprise ?
· Quel recours pertinent aux référentiels métiers SI, quelles autres leviers et indicateurs pour répondre à toutes les exigences de gouvernance au niveau de l’entreprise
· Et si la Direction de l’entreprise n’envisage même pas le SI comme objet/sujet de la gouvernance d’entreprise ?

Les indicateurs de la Direction des Systèmes d'informations
Ce qui se mesure s'améliore
· Des indicateurs, pourquoi faire ?
· Quelques indicateurs incontournables

Tendances Cloud - Digital Marketing et BYOD …
. Quel impact sur la gouvernance et le contrôle de risque ?

Etude de cas - Elaboration d'un Plan Directeur Informatique
· Le plan directeur
· Exemple d'élaboration du Plan Directeur Informatique d'une PME Français

Compétence à acquérir :

Présenter les principes de la gouvernance des SI


Initiation à l'entrepreneuriat

ECTS : 3

Description du contenu de l'enseignement :

Processus entrepreneurial et Lean Start-up
- Les fondamentaux de l’étude de marché
- Définir un business model pertinent et une stratégie adaptée
- Démarches juridiques et administratives (statut, propriété intellectuelle)
- Réaliser et construire un Business Plan et un Executive Summary
- Apprendre à présenter son projet : Construire un argumentaire, l’art du « pitch » et du « storytelling »
- Panorama des sources de financement et présentation de l’écosystème startup
 

Compétence à acquérir :

Ce cours permet de se familiariser avec les problématiques d’entrepreneuriat et d’appréhender les fondamentaux nécessaires à la création d’une entreprise ou startup. Les étudiants développent des connaissances, compétences essentielles pour entreprendre grâce à une méthodologie basée sur l’apprentissage par l’action. Un savoir-faire et savoir-être entrepreneurial est développé permettant aux étudiants à la fin du cours de présenter leur projet à un jury d’experts en entrepreneuriat et d’investisseurs potentiels.


Java

ECTS : 0


LV2 - Allemand

ECTS : 1

Description du contenu de l'enseignement :

Compétence à acquérir :

En fonction des promotions, le niveau sera soit intermédiaire, soit avancé.  

Niveau intermédiaire : approfondissement des moyens linguistiques permettant de bien communiquer dans un pays germanophone, voire de pouvoir s’intégrer dans un milieu professionnel germanophone (niveau B1-B2 du CECRL). 

Niveau avancé : acquisition du niveau B2-C1+ du CECRL, garantissant une très bonne intégration sur  le marché du travail des pays germanophones. 

Bibliographie, lectures recommandées :

La bibliographie est fournie à la rentrée par l'enseignant, mais les étudiants  sont invités dès maintenant à s'exercer régulièrement en consultant, par exemple, les documents dédiés sur le site de la Deutsche Welle: https://www.dw.com/de/deutsch-lernen/s-2055


LV2 - Espagnol

ECTS : 1

Description du contenu de l'enseignement :

Cours par niveau


LV2 - FLE

ECTS : 1


Large scale machine learning in Spark

ECTS : 3

Description du contenu de l'enseignement :

Les algorithmes d'apprentissage automatique sont de plus en plus utilisés de nos jours, et il existe une demande croissante d'algorithmes d'apprentissage  qui sont capable de passer à l'échelle et de traiter  des données massives.
Plutôt qu'offrir une introduction exhaustive à l'apprentissage automatique, ce cours se concentre sur les aspects typiques qui doivent être traités dans la conception d'algorithmes distribués pour l'apprentissage, et qui peuvent être exécutés sur les clusters Hadoop, afin d'analyser des grands jeux de données, en tenant compte l'adaptabilité à la croissance du volume des données ainsi que  la robustesse en cas de pannes.

Le focus sera sur des algorithmes de réduction de dimension, de clustering et de classification, en tenant compte les aspects suivants. Le premier est la conception d'algorithmes en s'appuyant sur des paradigmes basés sur map-reduce, à cette fin Spark sera utilisé. Le second aspect est l'analyse expérimentale des algorithmes implémentés en Spark, afin de  tester leur capacité de passer à l'échelle (scalabilité).  Le troisième aspect concerne l'étude et l'application de techniques d'optimisation afin de pallier le manque éventuel de scalabilité.
Bien que le cours se focalise sur certains algorithmes d'apprentissage, les techniques étudiées sont transversales et trouvent application dans un large éventail d'algorithmes d'apprentissage automatique. Pour certains des algorithmes étudiés le cours présentera des techniques pour une implémentation à partir de zéro en Spark-core, tandis que pour d'autres algorithmes Spark ML sera utilisé, et des pipelines de bout en bout seront conçus. Dans les deux cas, les algorithmes seront analysés et optimisés sur des jeux de données réels, sur un cluster Hadoop local, ainsi que sur un cluster sur le cloud Amazon WS.

 

Compétence à acquérir :

Savoir concevoir des applications efficaces pour l'apprentissage machine sur les données massives. 

Mode de contrôle des connaissances :

CC et Projet


Management de projet informatique

ECTS : 3

Description du contenu de l'enseignement :

- Les différents processus qui accompagnent les méthodes de conduite de projet informatique
- Rôle de la maîtrise d'ouvrage et de la maîtrise d'œuvre
- Les activités de support
- Exposer et développer les méthodologies de conduite de projet informatique
- Conception agile : Lean, Scrum et Kanban
- Rétro-conception outillée d'un système existant : impact mapping, story mapping et backlog prêt
- Rétrospective méthodologique 
- Définition et domaines d'usage d'un ERP
- Pourquoi un ERP ? Les enjeux Business
- Fonctionnement d'un ERP,
- Analyse et Stratégie de l'Entreprise
- Critères de choix d'un ERP,
- Organisation du projet et facteurs clés du succès
- Développement de la solution, test de la solution, mise en production de la solution
- Évaluation de la solution.
Prérequis : UML

Compétence à acquérir :

Développer les compétences nécessaires en matière de lancement, planification, et gestion de projets de manière efficace ainsi qu’à la consolidation des notions de conception et de modélisation et de leur intégration dans une démarche agile. 


Management des Organisations

ECTS : 3

Description du contenu de l'enseignement :

Ce cours vise à faire comprendre le contexte actuel de management dans les organisations et favoriser l'intégration des futurs diplômés dans toute structure en s'appuyant sur des outils concrets.

Le cours se concentre ainsi sur le savoir-être qui est indispensable pour réussir dans le monde du travail.
 

Compétence à acquérir :

Comprendre le contexte de management des organisations
Préparer les futurs diplômés à la prise de fonction d’un poste en management
Acquérir des outils concrets pour animer une équipe
Introduire les notions de gestion du changement
Travailler la prise de parole en public et les présentations

Mode de contrôle des connaissances :

Contrôle continu 40%
Projet 30%
Examen final 30%


Maths finance

ECTS : 0


Méthodes agiles d'ingénierie logicielle

ECTS : 3

Description du contenu de l'enseignement :

La nouvelle économie met à rude épreuve les équipes des projets informatiques. L'instabilité notoire des spécifications et le raccourcissement des délais de livraison imposent une amélioration drastique de la réactivité et de la productivité du développement, sans tolérer pour autant une quelconque négligence en matière de stabilité et d'évolutivité des applications déployées. Les méthodologies dites "agiles" tentent de répondre à ces exigences, en adoptant un investissement minimaliste et prônant des résultats tangibles et fréquents, par opposition aux méthodologies classiques qui - tout en imposant des organisations coûteuses - n'arrivent plus à prouver leur efficacité dans ces conditions extrêmement dynamiques. Ce cours propose un panorama des méthodes et techniques efficaces applicables dès les projets de petite taille, y compris pour assurer la traçabilité complète entre les besoins et les composants techniques en continue évolution. Les étudiants pourront les mettre en œuvre avantageusement, preuve comprise, aussi bien pour leurs projets pédagogiques qu'industriels, une fois dans l'entreprise.

Illustrations en Java et Python, tout au long du cours.

Compétence à acquérir :

Mode de contrôle des connaissances :

Projet évolutif avec soutenance validant les connaissances individuelles acquises.

Bibliographie, lectures recommandées :

Agile Ownership in a nutshell (vidéo) — https://youtu.be/502ILHjX9EE
Scrum and XP from the Trenches — https://leanagiletraining.com/wp-content/uploads/2020/03/Scrum-and-XP-from-the-Trenches-2nd-edition.pdf
The Pragmatic Programmer — https://pragprog.com/titles/tpp20/the-pragmatic-programmer-20th-anniversary-edition/
Le blog de Martin Fowler — https://martinfowler.com
Le manifeste agile — https://agilemanifesto.org
Extreme programming: a gentle introduction — http://www.extremeprogramming.org
The Scrum Guide — https://www.scrum.org/resources/scrum-guide


Optimisation en Finance

ECTS : 3

Description du contenu de l'enseignement :

Le but de ce module est d'introduire certaines techniques d'optimisation pour résoudre des problèmes en finance moderne, comme les problèmes de gestion de portefeuilles, de gestion de risques ou d’évaluation de prix d’option. L’accent sera mis sur les modèles stochastiques en finance.
Introduction : Rappel de quelques techniques et modèles d’optimisation : modèles linéaires, mixtes, quadratiques, Problèmes de gestion de portefeuilles, d’évaluation de prix d’options et d’arbitrage. Modèle de Markowitz.
Gestion de risque : Valeur en risque, valeur en risque conditionnelle, Optimisation de la valeur en risque conditionnelle.
Optimisation robuste en finance : Sélection de portefeuille robuste sur plusieurs périodes, Profit robuste dans un portefeuille risqué, Sélection de portefeuille robuste, Robustesse relative dans la sélection d’un portefeuille.
Modèles stochastiques : Gestion actif-passif, Gestion des dettes, Evaluation des prix d’options, Estimation de la volatilité.
 

Compétence à acquérir :

Le but de ce module est d'introduire certaines techniques d'optimisation pour résoudre des problèmes en finance moderne, comme les problèmes de gestion de portefeuilles, de gestion de risques ou d’évaluation de prix d’option. L’accent sera mis sur les modèles stochastiques en finance.


Outils d'optimisation pour les sciences des données et de la décision

ECTS : 3

Description du contenu de l'enseignement :

L’optimisation mathématique est un outil très puissant pour modéliser la prise de la meilleure décision possible, que l'on retrouve dans de nombreuses problématiques industrielles. Le but de ce cours est de présenter des outils modernes d'optimisation sur les plans théorique, algorithmique et expérimental. On s'intéresse tout particulièrement aux problèmes issus de la science des données, qui portent actuellement la recherche et le développement en optimisation, ainsi qu'aux formulations classiques utilisées en recherche opérationnelle.

La première partie de ce cours pose les bases de l'optimisation, en termes de modélisation et d'étude théorique d'un problème : on y présente également les algorithmes efficaces en optimisation de grande taille, notamment dans le contexte de l'optimisation convexe. Dans la seconde partie du cours, on se concentre sur les problèmes typiques de sciences des données, pour lesquels on étudie à la fois des reformulations ainsi que les algorithmes récents développés spécifiquement pour ce contexte.

Compétence à acquérir :

Proposer une boîte à outils permettant de formuler correctement un problème d'optimisation, de choisir un algorithme adapté à sa résolution et de travailler sur une implémentation (personnelle ou propriétaire) d'une méthode donnée.

Bibliographie, lectures recommandées :

D. P. Bertsekas. Nonlinear programming, 2016.

G. C. Calafiore and L. El Ghaoui, Optimization Models, 2014.

S. J. Wright and B. Recht. Optimization for Data Analysis, 2022.


Projet BI Finance

ECTS : 1.5

Description du contenu de l'enseignement :

Ce projet consiste à développer un système d’acquisition de données financières présentes publiquement sur le Web (i.e., cours de bourse, taux de change, taux d’intérêts), à les intégrer dans un entrepôt de données (éventuellement XML), et à implanter quelques tâches d’analyse sur les données de l’entrepôt.

Exemple de projet :
Interrogation des historiques de NAV de fonds et de taux ainsi que des données statiques sur les fonds, benchmark, société de gestion etc.
Calcul des indicateurs sur les fonds et leur benchmark comme les volatilités historiques, les rendements glissants, le ratio de sharpe et le ratio d'information.
Génération à partir de la base XML des reportings sur les fonds sous EXCEL ou plus simplement sous un nouveau format XML.

 


Projet Finance Reuters

ECTS : 1.5

Description du contenu de l'enseignement :

Ce projet consiste à développer un système de manipulation de données financières.

Ce projet, sous forme de TP, consiste à travailler avec l’application Reuters (3000 Xtra) ou Bloomberg afin de manipuler et comprendre les données financières à travers un logiciel incontournable en finance des marchés.

 


Protection des données et Système d'Information

ECTS : 2


Qualité des données

ECTS : 2

Description du contenu de l'enseignement :

La qualité de l'information a de graves répercussions sur l'efficience et l'efficacité des organisations et des entreprises.  Par exemple, dans les organisations privées, telles que les sociétés de marketing ou les banques, il n'est pas surprenant d'avoir plusieurs registres de clients, mis à jour par différentes procédures organisationnelles, ce qui entraîne des informations contradictoires et en double. Ce cours vise à présenter les problèmes liés à la qualité de données, et de présenter les solutions qui peuvent être utilisées pour les résoudre. En particulier, il a pour objectif d’examiner les trois points suivants :
·  Dimensions de la qualité de données. Le terme « qualité de données » est assez vague et englobe plusieurs facettes. Dans cette partie, nous allons examiner les différents dimensions de la qualité de données, allant de l’exactitude, complétude, jusqu’au la consistance et la confiance.
·  Algorithme et solutions théoriques. Dans cette partie nous allons examiner en détails quelques solutions théoriques proposées pour résoudre certains problèmes de qualité de données, en particulier celles liées à l’identification d’objet.
·  Outils et solutions pratiques. Dans cette partie, nous allons utiliser des outils, et montrer comment ils peuvent être utilisés pour améliorer la qualité de données.
 

Compétence à acquérir :

Le cours a pour objectif d’introduire les caractéristiques principaux liés à la qualité des données ainsi que de presenter les algorithmes pour leur traitement.


Serveurs d'application JAVA

ECTS : 3

Description du contenu de l'enseignement :

Introduction
Concepts fondamentaux : objets répartis ORB (RMI\CORBA), moniteurs transactionnels, architecture à composants répartis, services web, SOA
Présentation générale de Java EE : différentes technologies, généralités sur la spécification, modèle d'assemblage et de déploiement.
Composants EJB 3, Persistance JPA, JMS, SOA
API client : interfaces distantes, interface locales, JNDI
Services avancés : clustering, transactions...
Mise en pratique dans le cadre d’un projet (Eclipse/ JBoss /Hibernate / MySQL)
 

Compétence à acquérir :

Le terme "Serveur d'applications" est un intitulé général pour un objectif commun: la prise en charge de la complexité du développement d'applications pour l'entreprise actuelle. Ces applications se doivent d'être multi-tier, fiables et sécurisées, tolérantes aux pannes, transactionnelles, « scalables », interopérables, extensibles et réutilisables.Dans ce contexte, les serveurs d'applications fournissent un ensemble de services technologiques (middleware SOA ou ORB, serveur et services web, persistance, transactions, clustering etc.) au sein duquel interagissent les composants métiers d'une application répartie. La plateforme Java Entreprise Edition a pour vocation de répondre à ce challenge en offrant, à travers des spécifications ouvertes, un ensemble d'API ainsi qu'un modèle de composants.


Stage

ECTS : 9


Statistiques

ECTS : 0


Systèmes, Langages et Paradigmes pour le Big Data

ECTS : 3

Description du contenu de l'enseignement :

Le cours s’articule en trois parties.
Dans la première, l’accent est sur le paradigme MapReduce et le système Hadoop, avec un focus sur son système de fichiers HDFS. Le cours illustrera les mécanismes de base de Hadoop pour le support de l'exécution parallèle de ‘dataflow’ MapReduce sur des clusters de machines. Une attention particulière sera donnée aux aspects algorithmiques et d’optimisation de dataflow MapReduce.

La deuxième partie présentera des langages de requête et d’analyse de données caractérisés par des mécanismes de haut niveau et qui sont compilé sur MapReduce. Le focus sera sur les langages Pig Latin et Hive, des langages incluant des mécanismes à la SQL. Les techniques de compilation vers MapReduce seront présentées.

La troisième partie sera consacrée à des évolutions de Hadoop, et en particulier au système Spark et au langage de support Scala. Le focus sera sur l’architecture de Spark, la notion de RDD, l'évaluation lazy de transformations et actions sur des collections distribuées RDD.
Les notions apprises seront mises en pratique dans un projet où les étudiants devront concevoir un dataflow pour l’analyse de grands volumes de données. L'implémentation sera faite tant en MapReduce qu’en Spark, et une analyse expérimentale sera effectuée pour comparer les performances des deux implémentations.
 

Compétence à acquérir :

Apprentissage des aspects fondamentaux des technologies Big Data pour la gestion et analyse de données massives.


Sécurité dans les SI

ECTS : 3

Description du contenu de l'enseignement :

La plupart des politiques de sécurité des systèmes d’information reposent sur une vision négativiste de l’action humaine : dissuader, bloquer, détecter, etc. Ce cours vise à installer les basiques de la sécurité pour permettre à chacun de poser les bonnes questions et de devenir un acteur engagé de la politique de sécurité des systèmes d’information de son entreprise. Les fondamentaux aussi bien qu’une vision prospective et innovante de la sécurité des systèmes d’information sont abordés dans ce cours. 

- Techniques d'attaque, de défense, de persuasion
- Contexte législatif et réglementaire (CNIL, RGPD, NIST, etc.)
- Éthique sécurisée, lanceurs d'alerte
- Menaces ciblant l'humain, ingénierie sociale et manipulation

Compétence à acquérir :

Initiation à la sécurité des systèmes d'information : menaces et recommandations


Transparence des algorithmes pour la décision

ECTS : 3

Description du contenu de l'enseignement :

Les algorithmes jouent un rôle de plus en plus fondamental dans tous les aspects de notre vie. Une des principales craintes soulevées par les algorithmes est leur manque de transparence de leur fonctionnement, ce qui pourrait amener à l’avènement d’une « société boîte noire ». De plus, cette transparence est un prérequis pour pouvoir analyser et expliquer les décisions prises par les utilisateurs ou des entreprises.

Le but de ce cours est de discuter et de sensibiliser les étudiants aux questions soulevées par la transparence et la responsabilité des algorithmes telles que par exemple :
Quelles sont les situations où la transparence et l’explicabilité sont nécessaires et comment les implémenter en pratique ?
Comment réconcilier le besoin des entreprises de protéger leur propriété intellectuelle avec le besoin des citoyens de pouvoir comprendre la logique derrière les algorithmes qu’ils utilisent ou qui produisent un effet sur leurs vies ?
Comment améliorer la transparence, la responsabilité ainsi que l’équité des décisions prises par des systèmes algorithmiques sans pour autant compromettre leur utilité.

On s’intéressera ici à une catégorie particulière d’algorithmes, ceux qui sont utilisés pour l’aide à la décision ou dans des traitements qui ont des incidences sur les comportements individuels, qui ont donc un effet normatif. A titre d’exemples, on peut citer :
Les algorithmes de classement, qui établissent des priorités, des recommandations : on pense évidemment aux algorithmes de présentation des résultats des moteurs de recherche, mais aussi à ceux qui sont utilisés pour classer les candidats à un poste, etc.
Les algorithmes de catégorisation, de classification, de profilage comme ceux qu’on met en œuvre pour détecter des profils de potentiels terroristes, de fraudeurs, etc.

Ce cours abordera les points suivants :
Rappels de notions du langage Python
Transparence, explicabilité et responsabilité des algorithmes : définitions, liens, avantages et limites.
Le bien-fondé de la transparence des algorithmes pour l’informatique décisionnelle.  Aspects juridiques.
Cas d’étude 1 : Transparence des algorithmes dans le cadre des systèmes de recommandation : le cas du filtrage collaboratif
Cas d’étude 2 : Transparence des algorithmes dans le cadre de la classification : classification ordonnée et arbre de décision.
Cas d’étude 3 : Transparence des algorithmes dans le cadre de l’élaboration des classements ou palmarès : prise en compte simultanée des préférences des utilisateurs et des données statistiques
Mise en œuvre en langage python, à travers un mini-projet, d’un algorithme transparent pour la résolution d’un problème, à partir de données réelles disponibles sur des plateformes comme https://www.data.gouv.fr ou https://www.kaggle.com/
 

Compétence à acquérir :

Rappels de notions du langage Python
Transparence, explicabilité et responsabilité des algorithmes : définitions, liens, avantages et limites.
Le bien-fondé de la transparence des algorithmes pour l’informatique décisionnelle.  Aspects juridiques.


UML

ECTS : 0


Virtualisation et conteneurs

ECTS : 3


Université Paris Dauphine - PSL - Place du Maréchal de Lattre de Tassigny - 75775 PARIS Cedex 16 - 06/07/2024