Master mention Mathématiques-Informatique

parcours Informatique

Première année

Master Sciences : Mention Mathématiques-Informatique

Université d'Artois à l'UFR des Sciences (Lens)

SECD Systèmes d'exploitation centralisés et distribués (6 ects)

ECTS : 8
Heures de Cours : 24
Heures de TD : 24
Heures de TP : 18
Enseignant : Bertrand Mazure

L'objectif de cette unité est la présentation des systèmes d'exploitation (centralisés).

  • Introduction (historique, principe, structure)
  • Gestion des processus (création, communication, ordonnancement)
  • Gestion de la mémoire (pagination, va-et-vient, mémoire virtuelle, algorithmes de remplacement de pages)
  • Système de fichiers (fichiers, catalogues, mise en oeuvre, sécurité)
  • Gestion des Entrées/Sorties
  • Les interblocages (détection, évitement, prévention)

RES Réseaux et Systèmes d'Expoitation Décentralisés

ECTS : 7
Heures de Cours : 47
Heures de TD : 16
Heures de TP : 21
Enseignants : Bertrand Mazure et Sylvain Lagrue

L'objectif de cette unité est l'acquisition des connaissances approfondies en réseaux et systèmes d'exploitation distribués

Réseaux

  • Introduction aux réseaux, les modèles en couches les piles de protocoles
  • Principes de transmission, de l'information et de traitement du signal
  • Correction et détection d'erreurs
  • Les protocoles d'accès aux réseaux (ADSL, CPL, PPP, etc ...)
  • Réseaux locaux et partage du canal (ethernet, tokenring, etc...)
  • Adressage et routage sur Internet, IP
  • UDP et TCP, multiplexage, contrôle de flux et qualité de service (QoS)
  • Programmation réseaux (socket)
  • Protocoles et services de la couche application (ftp, http, pop3, smtp, imap, DNS, telnet, etc...)
  • Introduction à la sécurité

S.E. Distribués :

  • Introduction (historique, centralisé vs distribué, concept de transparence, classification)
  • Communication (modèle client/serveur, groupe, RPC)
  • Processus (Gestion, synchronisation, allocation)
  • Gestion de fichiers répartis

GL Génie Logiciel (1)

ECTS : 4
Heures de Cours : 12
Heures de TD : 12
Heures de TP : 12
Enseignants : Stéphane Cardon

L'objectif de cette première unité de génie logiciel est la présentation de méthodes de modélisation et de conception. Contenu : Cycle de vie du logiciel - Méthodes et outils de chaque étape - Analyse des besoins - Modélisation à l'aide d'UML - Apprentissage des différents types de diagrammes (cas d'utilisation, classe, objet, séquence, etc) - Etude du processus unifié - Utilisation d'un atelier de modélisation.

BD Bases de Données

ECTS : 5
Heures de Cours : 18
Heures de TD : 18
Heures de TP : 9
Enseignants : Sébastien Konieczny, Anne Parrain et Dominique d'Almeida

Cette unité permet d'approfondir les connaissances en bases de données acquises en niveau L, tant au niveau de la modélisation que de l'implantation et de la programmation (utilisation de PostgreSQL) :

  • analyse et modélisation de cas complexes
  • dépendances fonctionnelles
  • normalisations
  • implémentation d'une bases de données dans un SGBDR :
    • requêtes
    • créations de tables
    • PL/SQL : fonctions stockées et déclencheurs
    • gestion de différents utilisateurs : les droits, les vues

Les étudiants doivent réaliser un projet sous la forme d'un cas à analyser, pour lequel ils doivent fournir un dossier d'analyse complet allant jusqu'au maquettage de l'application web à réaliser.

IA Intelligence Artificielle

ECTS : 6
Heures de Cours : 24
Heures de TD : 24
Enseignant : Salem Benferhat

Intelligence artificielle Graphes d'états. Recherche heuristique. Représentation des connaissances. Systèmes experts et systèmes à base de connaissances. Réseaux neuronaux.

PL Programmation Logique

ECTS : 3
Heures de Cours : 12
Heures de TP : 15
Enseignant : Lakhdar Saïs

L'objectif de cette unité est d'initier les étudiants à la programmation logique et de leur faire découvrir la programmation en Prolog et ses applications, sur des exemples liés aux bases de données, à la théorie des langages et à l'intelligence artificielle.

  1. Introduction (rappels de logique : logique propositionnelle et du premier ordre, résolution et unification, clauses de Horn, etc.)
  2. Langage Prolog :
    • Historique de Prolog
    • Syntaxe
      • Constantes, variables, termes et prédicats
      • Assertions, règles et buts Sémantique opérationnelle
      • Unification
      • Arbres de dérivations, stratégies de résolution,...
    • Exemples de programmes Prolog
      • Bases de données relationnelle
      • Grammaires
      • Logique
    • Aspects avancés de Prolog
      • Règles prédéfinies
      • Entrées-sorties
      • Mise au point des programmes
      • Contrôle de la stratégie de recherche des solutions Structures de données
      • Listes, Termes préfixés et N-Uplets
  3. Applications
    • Théories des langages (grammaires)
    • Intelligence Artificielle (systèmes experts)
    • Bases de données relationnelles

RO Recherche Opérationnelle

ECTS : 5
Heures de Cours : 24
Heures de TD : 24
Heures de TP : 12
Enseignants : Pierre Marquis

Programmation linéaire. Méthode du simplexe. Programmation dynamique. Programmation en nombres entiers. Problèmes NP-complets et heuristiques.

Travail d'Etudes et de Recherche

ECTS : 8
Responsable : Eric Grégoire

Le TER s'effectue au second semestre en entreprise ou en laboratoire de recherche, pendant dix semaines consécutives après les enseignements. Il fait l'objet d'un rapport écrit et d'une soutenance.

LOG Logique pour l'informatique

ECTS : 4
Heures de Cours : 24
Heures de TD : 12
Enseignant : Pierre Marquis

Calculabilité, types abstraits et systèmes formels pour la démonstration, logique propositionnelle, logique des prédicats du 1er ordre.

BDGL2 Méthodes du Génie Logiciel (2) et Bases de Données

ECTS : 4
Heures de Cours : 16
Heures de TD : 16
Heures de TP : 27
Enseignants : Daniel Le Berre, Anne Parrain et Dominique d'Almeida

L'objectif de la première partie de cette unité est de former les étudiants aux méthodes de modélisation et de conception du génie logiciel, en particulier la méthode Agile : Méthodologie de développement, Spécifications formelles. Concepts du développement. Programmation dirigée par les tests. Patrons de conception. Refactoring. Audit de code (bugs, mauvaises pratiques, conventions de codage, métriques). Gestion de versions. Automatisation des étapes de construction du logiciel. Initiation à la spécification et la vérification de programmes. Découverte du langage de modélisation Alloy. Conception de modèles Alloy avec Alloy4Eclipse.

L'objectif de la seconde partie de l'unité est de compléter les connaissances des étudiants en bases de données dans le cadre d'une application réelle. Les étudiants doivent implémenter le projet dont ils ont fait l'analyse au premier semestre. Ils doivent utiliser les concepts de la programmation agile pour développer une application 3-tiers avec PHP et PostgreSQL

  • compléments de BD : optimisation (index, optimisation de requêtes, etc.) accès concurrents, transactions
  • pour le projet : notions de base sur XML, DTD - notions de base sur l'architecture 3-tiers des applications web et sur un framework PHP

ANGL 1 et 2 Anglais technique

ECTS : 3
Heures de TD : 24h au premier semestre, 20h au deuxième semestre
Enseignant : Gilles Choquet

L'objectif de cette unité est l'approfondissement de la maîtrise écrite et orale du lexique propre à l'anglais de l'informatique; entraînement à la rédaction en anglais; développement de la compréhension écrite et orale de documents, apprentissage de la rédaction de mémoires et de documents; entraînement aux techniques d'exposés oraux.