Sunteți pe pagina 1din 12

2ÈME ANNÉE L2 : LICENCE INFORMATIQUE :

SEMESTRE 3 (LICENCE INFORMATIQUE) CM TD TP CRÉDIT


S
UE 17(FONDAMENTALE) 14
ARCHITECTURES DES ORDINATEURS 1H30 1H30 5
ALGORITHMIQUE ET STRUCTURES DONNÉES 1 1H3
3H 1H30 5
0
SYSTÈMES D’INFORMATION 1H30 1H30 4
UE 18 (FONDAMENTALE) 12
ANALYSE NUMÉRIQUE 1H30 1H30 4
PROBABILITÉS STATISTIQUES 1H30 1H30 4
LOGIQUE MATHÉMATIQUE 1H30 1H30 4
UE 19 (MÉTHODOLOGIQUE) 4
TSI 1H30 1H30 2
ANGLAIS 3 1H30 1H30 1
FRANÇAIS 1H30 1H30 1
TOTAL (24H, 30 CRÉDITS) 15H 13H 30 1H 30
30

SEMESTRE 4 (LICENCE INFORMATIQUE) CM TD TP CRÉD


ITS
UE 10(FONDAMENTALE) 16
ALGORITHMIQUE ET STRUCTURES DONNÉES 2 1H30 1H30 1H30 5
BASES DE DONNÉES 3H 1H30 1H30 6
SYSTÈMES D’EXPLOITATION 1 1H30 1H30 1H30 5
UE 11 (FONDAMENTALE) 12
THÉORIE DES LANGAGES 1H30 1H30 4
PROGRAMMATION LINÉAIRE 1H30 1H30 4
GÉNIE LOGICIEL ET PROGRAMMATION ORIENTÉE OBJET 1H30 1H30 4

UE 19 (MÉTHODOLOGIQUE) 2
ANGLAIS 4 1H30 1
FRANÇAIS 1H30 1
TOTAL (25H, 30 CRÉDITS) 12H 9H 4H3 30
0

Semestre 3
UEI7 (Fondamentale) 14 crédits
 Architecture des Ordinateurs
Objectif :
Le module se décompose en trois grandes parties : La première partie porte sur
l'architecture externe d'un processeur 32 bits, et insiste sur la définition de l'interface
matériel / logiciel et la programmation en assembleur. On illustre les concepts sur
l'exemple du processeur industriel MIPS R3000. La seconde partie consiste en un rappel
des fondements théoriques des systèmes matériels numériques synchrones. La troisième
partie présente l'architecture interne du processeur MIPS R3000, dans une réalisation
micro-programmée. On peut résumer les objectifs de la façon suivante :

Présenter les organes principaux d'un ordinateur et leurs interactions :


Processeur, Mémoire, Organes Périphériques.

1
 Définir l'interface matériel / logiciel et introduire les concepts de langage
machine et de langage d'assemblage. Initier les étudiants à la programmation
en langage d'assemblage.

 Expliciter les étapes de la transformation d'un programme écrit dans un


langage procédural tel que le langage C en un code exécutable en langage
machine. (on va jusqu'à la description fine de l'utilisation de la pile pour les
appels et retours de procédures.

 Décrire les mécanismes matériels permettant à un processeur de supporter un


fonctionnement multi-tâches sous le contrôle d'un superviseur, ainsi que le
mécanisme général de traitement des interruptions.

 Démystifier l'objet microprocesseur en analysant l'architecture interne d'un


processeur microprogrammé (découpage partie contrôle / partie opérative et
réalisation de la partie contrôle comme un automate d'états synchrone) .

 Initier les étudiants aux techniques de microprogrammation, très largement


utilisées dans les systèmes informatiques industriels.

Programme :
 La machine de Von Neuman. Les relations entre le processeur et la mémoire.
Le concept d'instruction et de langage machine. La représentation des
différents types de données en mémoire.
 Architecture externe du microprocesseur 32 bits MIPS R3000 : Les registres
visibles du logiciel. L'adressage et la structuration de l'espace adressable. Le
langage d'assemblage du processeur MIPS R3000.
 La programmation structurée et les appels de procédures : L'utilisation de la
pile pour les variables locales, les sauvegardes de contextes, et le passage des
paramètres. Le rôle du compilateur et le partage des tâches entre le matériel et
le logiciel.
 Les deux modes utilisateur / superviseur comme support matériel au
fonctionnement multi-tâches et multi-utilisateurs : Le rôle du système
d'exploitation. Le traitement des interruptions, exceptions et trappes.
 Architecture générale d'un ordinateur moderne. Rôle des mémoires cache et
hiérarchie mémoire. Communications entre le processeur et les organes
périphériques. Rôle du bus système et mécanismes d'entrées/sorties.
 Algèbre de Boole. Simplification des sommes, des produits booléens.
Correspondance entre expressions booléennes et implantation matérielle.
Réalisation des principaux opérateurs combinatoires.
 Logique séquentielle. Modélisation des systèmes numériques synchrones,
réalisation des registres et mémoires. Notions de temps de propagation / temps
de pré-établissement / temps de maintien.
 Théorie des automates d'état synchrones comme modèle général des systèmes
numériques synchrones. Synthèse et implantation matérielle des automates de
Moore et de Mealy.
2
 Architecture interne du microprocesseur MIPS R3000 microprogrammé :
Décomposition entre partie opérative et microséquenceur centralisé. Principe
de la microprogrammation.
 Description structurelle complète de la partie opérative du processeur :
registres, opérateurs de calcul, bus de communications, en utilisant les
opérateurs matériels introduits dans la seconde partie du cours.
 Modélisation et réalisation du micro-séquenceur comme un automate d'état
synchrone. Correspondance entre microprogramme et automate.
Microprogrammation effective de quelques instructions.
Référence bibliographique :
 Architecture des ordinateurs : Interface Matériel / Logiciel David Patterson /
John Hennessy.

 Algorithmique et Structures de données 1


Objectif:
Comprendre les notions d'algorithme, de structure de données et de complexité.
Sensibiliser à la notion de preuve d'algorithme. Montrer l'impact du choix des structures
de contrôle et des structures de données sur la complexité. Acquérir la connaissance des
structures de données de base et des algorithmes de base sur les tris, les arbres, et les
graphes. Acquérir un savoir-faire théorique et pratique sur ces notions à travers Cours,
TDs et TP.
Programme :
Notion d'algorithme et preuve d'algorithme.
 Complexités d'un algorithme.

 Structures séquentielles: piles, files et listes.

 Structures hiérarchiques: arbres.

 Structures hiérarchique: arbres binaires de recherche.

 Structures hiérarchiques : Les tas.

 Structure en table: Hachage.

 Introduction aux graphes: définitions, connexités, représentations, graphes


particuliers.

 Parcours de graphes: cas des graphes non orientés; parcours particuliers: en


profondeur et largeur.

 Parcours de graphes: cas des graphes orientés; parcours particuliers: en


profondeur et largeur.

 Algorithme de Dijkstra.
Références bibliographiques

3
 Introduction to Algorithms; Cormen, Leiserson et Rivest; Wiley.
 Eléments d'Algorithmique; Berstel, Beauquier et Chrétienne; Masson.
 Types de données et algorithmes; Gaudel, Froidevaux et Soria; INRIA.

Systèmes d’Information
Objectifs : Ce cours s’articule autour de trois parties essentielles : le monde de
l’entreprise, les outils d’analyse fondamentaux et l’introduction aux systèmes
d’information.
Programme
Définition d’une organisation.
L’entreprise (différentes formes de structure, principales fonctions de
l’entreprise, les différents sous systèmes de l’entreprises).
L’entreprise et la technologie de l’information et communication : parler des TIC
et de leurs rôles quant à l’amélioration de la qualité des systèmes.
Les outils d’analyse (notion d’information, représentation de l’information,
codification, contrôle, cout de stockage et de transport de l’information,
confidentialité).
Fichiers.

Introduction aux systemes d’information (rôle, place, cycle de vie).


Notions de méthodes d’analyse et de conception d’un SI.

UEI8 (Fondamentale) 12 crédits


 Analyse numérique
 Notions d’erreurs.

 Approximation et interpolation polynomiale.

 Dérivation et intégration numérique.

 Résolution des systèmes linéaires.


 Résolution d’équations et systèmes non linéaires.

 Probabilités Statistiques
1. Théorie des Probabilités
 Introduction au calcul de probabilités: notion d’événement aléatoire,
définition classique et axiomatique de la probabilité ; indépendance
d’événements et probabilité conditionnelle (probabilité totales et formules de
bayes).

4
 Variables aléatoires(discrètes et continues) :densité de probabilité et fonction
de répartition ;moments(espérance mathématique ,dispersion…) ;lois de
probabilités usuelles(Binomiale, Géométrie ,Poisson),approximation de la loi
Binomiale par une loi de Poisson,(Uniforme ,Exponentielle ,Normale ou
Gauss).
 Fonction de variables aléatoires, fonction caractéristique, fonction
génératrice, transformée de Laplace.
 Vecteurs aléatoires : Etude élémentaire d’un couple de variables aléatoires,
lois conjointe et marginale, covariance et corrélation, loi conditionnelle, loi
normale multidimensionnelle.
 Modes de convergence(en probabilité, presque sure) ;loi des grands nombres,
théorèmes de limite central .
2. Statistique inférentielle
 Echantillonnage: constitution d’échantillon, moments empiriques,
distributions d’échantillonnage.
 Estimation: estimation ponctuelles (qualité d’un estimateur, construction
d’estimateurs par la méthode des moments et la méthode du maximum de
vraisemblance), intervalles de confiance.
 Tests d'hypothèses: principe de construction de tests basés sur les intervalles
de confiances ; tests de moyennes et de proportion ; test de la variance ;tests
du Khi-deux(d’ajustement et d’indépendance).

Logique Mathématique
Objectifs : Ce cours a pour objectif de donner aux étudiants des notions de calculabilité
et les bases de la logique formelle a partir de l’étude de la logique proportionnelle.
Programme :
a. Calculabilité
1. Les fonctions récursives et les fonctions primitives récursives.
2. Les machines de Turing.
3. Thèse de Church.
b. Le calcul propositionnel
1. Le langage.
2. Déduction de Gentzen.
3. La sémantique.
4. Théorème de consistance et de complétude.
5. Algorithme de réfutation.
5
c. Calcul de prédicat
1. Le langage.
2. Déductions.
3. Interprétation.
4. Formes prenexes et forme de Skolem.
UEI9 (méthodologique) 4 crédits

 Anglais 3
Techniques d’expression orale : exposé, soutenance et communication en groupes.
 Cognition
Objectifs (compétences visées) : ce cours a pour objectif de permettre à l’étudiant
d’approfondir ses connaissances dans le domaine de la cognition tel que le rapport de la
représentation et extraction des connaissances avec la cognition, traitement du langage
naturel et la vision.

Programme
1) Science cognitive
a. Nature de la science cognitive
b. Ordinateurs dans la science cognitive
c. Science cognitive appliquée
d. Nature pluridisciplinaire de la science cognitive
2) Intelligence artificielle
a. La nature de l’IA
b. Représentation des connaissances
c. Extraction des connaissances

3) I.A : Recherche, contrôle et Apprentissage


a. Recherche et contrôle
b. Technique de recherche des heuristiques
c. Apprentissage

4) Linguistique : représentation du langage


a. Etude de la connaissance linguistique
6
b. Syntaxe
c. Grammaires
5) Résolution de problèmes
6) Langage naturel
7) Vision assisté par ordinateur

 Initiation aux techniques de Management


 …

 Semestre 4
UEI10 (Fondamentale) 16 crédits

 Bases de données
Objectif:
Comprendre les objectifs, les architectures et les langages de bases de données.
Maîtriser les fondements théoriques et les algorithmes de base des systèmes de gestion
de bases de données, depuis la conception de base de données jusqu'au traitement de
requêtes et la gestion de transactions. Le module s'appuie sur le modèle relationnel et
les langages associés, en particulier SQL et sur le SGBD, ORACLE par exemple.
Programme :
 Introduction: besoin de SGBD dans les applications, objectifs des SGBD,
modélisation des données et niveaux d'abstraction, modélisation Entité
Association.
 Modèle relationnel: les concepts (schéma de relation, attributs, domaine, n-uplet),
l'algèbre relationnelle (opérateurs de base et opérateurs dérivés), passage d'un
modèle entité-association à un modèle relationnel.
 Conception et optimisation de schéma relationnel : notion de redondance,
dépendance fonctionnelle, déduction (axiome d'Armstrong) et couverture minimale,
formes normales.
 Introduction à la logique: notions de système formel, mécanisme de déduction et
théorèmes, calcul propositionnel.

7
 Logique pour bases de données relationnelles : calcul des prédicats, calcul
relationnel à variable n-uplet, calcul relationnel à variable domaine.
 Interrogation d'une base de données en SQL: requêtes simples, requêtes
imbriquées, agrégats et groupement.
 Définition et modification d'une base de données en SQL: création des tables
insertion, suppression et mise à jour des données. Contraintes d'intégrité :
typologie, vérification, définition en SQL.
 Triggers: définition (événement, condition et action), modèle d'exécution,
expression en SQL.
 Evaluation et optimisation de requête : arbre algébrique, optimisation logique par
réécriture, opérateurs physiques et modèle de coût, choix du meilleur plan
d'exécution.
 Transactions : définition, propriétés (Atomicité, Cohérence, Isolation, Durabilité),
résistance aux pannes (journalisation, validation, reprise à froid et à chaud.
 Contrôle de concurrence : notion de sérialisabilité, verrouillage deux phases,
interblocages, ordonnancement par estampillage.

Références bibliographiques :
 Georges Gardarin. Bases de données: objet et relationnel. Eyrolles, 1999.
 Raghu Ramakrishnan, Johannes Gehrke. Database Management Systems. 2nd
edition. Mc Graw-Hill,1999.
 Tamer Özsu, Patrick Valduriez. Principles of Distributed Database Systems. 2nd
edition, Prentice Hall, 1999.

 Algorithmiques et structures de données 2


Objectif:
L’orientation souhaitée pour l’associer à ce cours est: " présenter les mécanismes
offerts par les langages de programmation et identifier leur usage dans le contexte d'un
développement modulaire." Les concepts de base présentés iront jusqu'à " l'orée de
l'univers objet " et seront illustrés avec pascal (principalement) et C (en particulier sur
les aspects interfaçage). Il est souhaité également de présenter aux étudiants un
environnement de production dont la philosophie, orientée " production, " s'inspire de ce
que l'on peut trouver dans le monde industriel. Afin de détailler les notions que l'on
trouve dans les langages de programmation, il sera utilisé en TD et en TP Pascal (choisi
pour le premier semestre de la licence). Des comparaisons seront faites avec le langage
C (choisi pour le second semestre de la licence). Outre l'écriture de programmes en
Pascal, il sera demandé aux étudiants de lire et comprendre des services écrits en C.
Programme :
 Organisation du cours, Description de l'environnement de travail. rappel
des notions de base(types simples, structure d'un programme etc.)
 Rappel des notions de base. Ecriture de programmes simples.

8
 Structuration d’un programme. Procédures et fonctions. Recursivité. In-
lining.
 Types tableaux et types articles ("record"). Notion de paquetage.
 Notion de types abstraits. Protection avec les types (privés, public, etc.).
Contrôle de la visibilité en Ada et C.
 Pointeurs et gestion de la mémoire dynamique (tas). Structures de
données recursives.
 Echappement et gestion des erreurs par exception.
 Truc et astuces pour débugger un programme.
 Généricité.
 Vers les mécanismes objets. Présentation de la notion de fichiers.
 Notions avancées de structuration. Conclusions sur le cours.

Références bibliographiques :
 "Programmer en Pascal" de (Addison Wesley)
 "Le langage C - norme ANSI", B.W. Kerninghan et D. M. Ritchie
(Dunod)
 "Méthodologie de la programmation en langage C", J-P Braquelaire
(Masson)

 Système d’exploitation 1
Objectif:
L'objectif de ce module est d'étudier les principes, algorithmes et organisations des
systèmes informatiques. Le but est de dégager les concepts communs à la base des
systèmes modernes tel que le temps partagé, l'ordonnancement, la gestion de la mémoire
et des disques. Des exemples d'implantation notamment dans UNIX seront évoqués.
Nous voulons insister sur l'interaction des mécanismes de base de façon à fournir aux
étudiants une vision globale du fonctionnement du système. Pour faciliter l'assimilation
des principes de base des systèmes, il paraît important d'illustrer les concepts par
l'étude d'un système réel (en l'occurrence UNIX). De plus, il est indispensable que les
étudiants puissent mettre en œuvre les concepts du cours dans des TP. Une part
importante des séances de TD sera consacrée à des TP (près de la moitié).
Programme :
Chapitre1 : Introduction aux systèmes d’information.
1. Définition d’un S.E
2. Fonction d’un S.E
3. Organisation en couches d’un S.E -virtualisation de la machine
4. Evolution des systèmes informatiques
5. Exemples de S.E
Chapitre2 : Mécanismes de base d’exécution des programmes
1. Structure matérielle d’une machine de Von Neumann
2. Cheminement d’un programme dans un système
9
3. Concepts de processus et multiprogrammation (contexte d’un processus, états,
mécanisme de commutation de contexte)
4. Les systèmes d’interruption
 Définition et organigramme général d’une interruption
 Mécanismes de gestion des interruptions
 Systèmes d’interruption sur les PCs
Chapitre3 : Gestion des entrées / Sorties physiques
1. Definition d’une E/S
2. Types d’ E/S
3. Organisation des transferts (instructions d’E/S, découpage fonctionnel
matériel/logiciel d’une E /S)
4. Modes de pilotage d’une E/S : mode synchrone, asynchrone, canal
5. Gestion des E/S simultanées
Chapitre4 : Gestion du processeur central
1. Définition du scheduling : scheduler
2. Objectifs de scheduling
3. Critères de de scheduling
4. Niveaux de (scheduling des jobs, scheduling des processus)
5. Politiques de scheduling
6. Contrôle de processus (états d’un processus, bloc de contrôle de processus PCB,
création de processus, destruction,..)
Chapitre5 : Gestion de la mémoire centrale
1. Objectifs d’un gestionnaire de la mémoire
2. Fonctions
3. Modes de partage de la mémoire
4. Protection de la mémoire
5. Partage de code
Chapitre6 : Gestion des périphériques
Chapitre 7: Gestion des fichiers
Références bibliographiques :
 A. Silberschatz, P. Galvin Principes des Systèmes d'Exploitation, Addison-Welsly,
1994
 A. Tanenbaum Systèmes d'Exploitation : Systèmes Centralisés, Systèmes Distribués
Prentice-Hall 199
 G. Nutt Les Systèmes Ouverts, InterEdition 1995

UEI11 (Fondamentale) 12 crédits

 Théorie des langages


Objectifs :
L’étudiant, par cette unité, doit connaître et maitriser les concepts issus de la théorie des
langages et plus particulièrement des langages algébriques, de grammaire, de dérivateur,
d’automate a pile qui sont en fait a la base de tous les algorithmes d’analyse syntaxiques.
Programme :
I. Les langages
10
a. Introduction et rappels mathématiques
b. Opérations sur les langages
c. Représentation des langages : grammaires et automates
d. Hiérarchie de Chomsky
II. Les automates d’états finis
a. automates déterministes et minimisation
b. Automates indéterministes et passage a un automate déterministe
III. Les langages réguliers
a. propriétés des langages réguliers
b. Expression régulières
c. Passage des expressions régulières aux automates et réciproquement
d. Grammaire et automates (grammaire de Kleene)
IV. Les langages algébriques
a. Propriétés des langages algébriques
b. Les automates à pile

V. Les langages à contexte lié


a. définition et propriétés
b. Les automates à bornes linéaires
VI. Les machines de Turing
a. Notion de machine de Turing
b. Langages de type 0 et machine de Turing
c. Introduction à la calculabilité
Références bibliographiques :
[1] H. Hopcroft, D. Ullman: Introduction to automata, theory languages and
computation.
[2] M.Gross and A.Lentiu: Introduction to formal grammars.
[3]Patrice Séebold : Théorie des automates.
[4]A.V.Aho and Ullman: Principles of Compiler Design.

 Programmation linéaire
Objectifs (compétences visées): Ce cours dresse un panorama des techniques de
modélisation utilisées en programmation linéaire, il permet le développement
d’applications industrielles en optimisation.
Programme :
I. Rappels Mathématiques (Algèbre linéaire)
1. Espace vectoriel
2. Dimension, base
3. Matrice, déterminant d’une matrice, inverse d’une
matrice …
II. Introduction et propriétés de la programmation linéaire
1. Forme générale d’un programme linéaire, forme
canonique, standard et mixte.
2. Résolution graphique, notion de polyèdre.
3. Résolution analytique.
III. Méthode du simplexe
11
1. Introduction de la méthode, algorithme du simplexe,
tableau du simplexe
2. Méthodes particulières : méthode des pénalités,
méthode des deux phases
3. Forme révisée du simplexe
IV. Dualité
1. Introduction, règles de passage du primal au dual
2. Algorithme dual du simplexe
V. Problème du transport
1. Introduction du problème, graphe associé au tableau
du transport
2. Algorithme du transport
3. Algorithme dual du transport.
 Génie logiciel et programmation orientée objet(POO)
Objectifs :
 Comprendre le processus de développement du logiciel, en
particulier les phases de définitions et de spécification des besoins,
d’analyse et de conception orientée objets.
 Programmation objets : JAVA pas exemple
Programme :
I. Introduction au génie logiciel
 Les principes du génie logiciel
 Les cycles de vie de développement de logiciels
 Les bases de la qualité du logiciel
 Des méthodes fonctionnelles aux méthodes objets
 Test et maintenance du logiciel
II. L’approche orientée objet
 Le paradigme orientée objet
 Les objets
 Les messages ou communication entre objets
 Les classes
 L’héritage entre classes
 Notion de polymorphisme et de liaison dynamique
III. Introduction a un langage objet
 Introduction et caractéristique
 Primitives du langage
 Concepts de programmation

UEI12 (méthodologique) 2 crédits

 Anglais
Techniques d’expression écrite et orale : rapport, mémoire, exposé,
soutenance, communication en groupes.

12

S-ar putea să vă placă și