Available courses

This course is designed to :

  •  invite students to logical reasoning.
  •  Faced with a particular programming problem, the student must be able to properly pose a problem,
  •  identify the different steps in solving the problem,
  •  order these steps in a logical sequence 
  •  program them with the C language.


  • This course is an introduction to mathematical logics and automatic deduction techniques. 
  •  This course presents two models of reasoning based on propositional logic and predicate logic, allowing a mathematical approach to programming. 
  • Discuss the links between the formal aspects in these logics and the informally expressed statements. Different methods of formal proof are presented and applied.



This course will enable students to 

  • Analyze a given problem and define the algorithm 
  • Translate the solution of the problem in a rigorous and optimized way and ready to be translated using any programming language.

The business English course  level 1 is designed to prepare students to use English in present or future work situation. Students will develop English skills with focus on business contexts and environments they will learn vocabulary that is used regularly in the business world.

                          


Content:

I-Semester 1:

   1- Real sequences

   2- Functions of a real variable

   3- Limited developments

   4- Primitives and integrals

II-Semester 2:

   1- Numerical series

   2- Power series

   3- Functions of several variables

   4- Linear differential equations

Content:

I-Semester 1:

 1- Polynomials and rational fractions

 2- Vector space

 3- Linear application

II-Semester 2:

 1- Matrix calculation and linear systems

 2- Matrices and linear applications

 3- Endomorphism reduction

The purpose of this module is to provide:
In the first part to students the essential notions of combinatorial logic to be able to:
- To synthesize the different systems of numeration and the different types of codes.
- Represent logical functions in different forms and simplify them.
- Analyse the various combinatorial circuits.
In the second part:
Describe the components of a computer (processor,
memory, devices, ...)
  Understand the hardware and software structure of a
modern microprocessor
  internal structure
  external structure
  Learn to program in assembly 8086

The objective of this module is to introduce students to multimedia objects: text, sound, image and video, as well as to give them the theoretical elements necessary for the analysis of signals, and to understand the elementary processing allowing the extraction of information contained in the signal.


This course is a Template, please add your description and change the course photo.


This course aims to : 

  • handle different abstract data type 
  • compile programs using Makefile
  • handle different advanced data structures such as stack, queue, linked list, tree, ...
  • Modular programming with c ; interface file and code source file 
  • ....

This course aims to : 

  • define and understand what is abstract data type  ADT
  • define and handle advanced and complex data structures in order to exploit them to build algorithms solving specific problems such as : stack , queue, linked list, tree...
  • introduction to algorithm complexity ...

The objective of this course is to present the basic concepts and technologies related to computer networks. The student will be able to understand the operation of a computer network and communication protocols. The main layers of the OSI model will be studied with, as an example of a network, the network based on Ethernet and IP (IPv4 and IPv6 addressing)

Content:

I-Semester 1:

   1- Real sequences

   2- Functions of a real variable

   3- Limited developments

   4- Primitives and integrals

II-Semester 2:

   1- Numerical series

   2- Power series

   3- Functions of several variables

   4- Linear differential equations

In the first part of this course, students will learn the essential notions related to digital logic. Starting from numeral systems, passing by digital logic functions and arriving to combinatory and sequential logic circuits.

In the second part , they will discover the internal stucture of a computer. We essentially focus on the stucture of a memory and a microprocessor. We will also interrest to understand the functionning of a microprocesseur in terms of an instruction execution. 

Course Objective:

Present the basic hardware architecture of a Computer system and explain how does it work.

  • Learn how information is stored in a computer system
  • Become familiar with Logical functions and combinatorial circuits used in computers
  • Study the computer architecture and its main components (Memory chips and microprocessors)
  • Learn a low-level programming language: Assembly Language
 The course contains 5 chapters :

  • Chapiter 1: Numeral Systems and Coding
  • Chapiter 2: Logical functions
  • Chapiter 3: Combinational and Sequential Circuits
  • Chapiter 4: Computer Architecture
  • Chapiter 5: Assembly programming (8086) 

The business  English course  level 1 is designed to prepare students to use English in present or future work situation. Students will develop English skills with focus on business contexts and environements,and they will learn vocabulary that is used regularly in the business world.

                                            COURSE GUIDE _ 1st Form

Together

Everyone

Accomplishes

 More

  CONTENTS 1st Form

Employability

UNIT 1: Meeting planning

              How to prepare a meeting

                People you talk to

UNIT 2: Presentation

              Codes to deliver a good presentation

UNIT 3  :Company

UNIT 4: Organization

UNIT 5: departments

UNIT 6: Job Search _ Where to look for a job

UNIT 7: Job Advertisement _ How to decipher a job Advertisement

UNIT 8: Job Application Letter 

UNIT 9: Resume _ How to write an outstanding Resume

UNIT 10: Job Interview _ How to perform during an interview

This course will enable students to 

  • Analyze a given problem and define the algorithm 
  • Translate the solution of the problem in a rigorous and optimized way and ready to be translated using any programming language.


Content:

I-Semester 1:

 1- Polynomials and rational fractions

 2- Vector space

 3- Linear application

II-Semester 2:

 1- Matrix calculation and linear systems

 2- Matrices and linear applications

 3- Endomorphism reduction


This course introduce the fundamentals of Data Base which contains six important chapters in order to make student undrestand and able to design DB for information system .

This module includes : 

  1. Introduction to Data Base
  2. Conceptual Model : Entity/Relationship Model 
  3. Relationnal Model
  4. Data Base normalization theory
  5. Relational algebra
  6. Language SQL

This course is a Template, please add your description and change the course photo.

The objective of this course is to present the basic concepts and technologies related to computer networks. The student will be able to understand the operation of a computer network and communication protocols. The main layers of the OSI model will be studied with, as an example of a network, the network based on Ethernet and IP (IPv4 and IPv6 addressing)

This course aims to : 

  • define and understand what is abstract data type  ADT
  • define and handle advanced and complex data structures in order to exploit them to build algorithms solving specific problems such as : stack , queue, linked list, tree...
  • introduction to algorithm complexity ...


Effective communication is the key to success.

This course will help students practice and enrich communication skills by using English in specific business settings and situations.

It aims to provide participants with essential English language skills so they can

  1. manage and actively participate in meetings;
  2. engage in telephone conversations with English-speakers;
  3. give clear and compelling presentations and project updates;
  4. negotiate with English-speaking clients and customers and
  5. write important business emails and documents.                                      COURSE GUIDE _ 1st Form

Together

Everyone

Accomplishes

 More

CONTENTS 1st Form

 UNIT 1 : Job Interview _

  •   How to perform during an interview 
  •   Preparing for common job interview questions
  •   Tips for a successful job interview
  •   How to dress for a job interview
  •   Speaking the right body language during a job interview

 UNIT 2: Employability Skills _

 UNIT 3 : Soft Skills  Communication

UNIT4 : Leadership

UNIT 5 : Reliability

UNIT 6 : Perseverance and motivation

UNIT 7 : Self management

UNIT 8 : Business Communication Presentation

UNIT 9 :  Planning and organizing

UNIT 10 : Negotiation and persuasion

 



This course introduces the concepts of the operating system as well as its various functionalities. By showing the links that exist between a hardware architecture and an operating system, the course teaches the students how operating systems are structured and how to use them. We will also study in a theoretical and practical way how to manage files in operating systems. The course will also introduce few techniques of securing systems and protecting data.

Contenu:

  1- Statistiques discrètes

  2- Probabilité (discrète et continue)

Ce cours comporte l'ensemble des moyens de description et d'analyse de langages formels, comme les grammaires formelles pour la génération et les automates pour la reconnaissance, mais elle s'intéresse aussi à l'apprentissage automatique et la traduction automatique des langages. Dans le domaine de la traduction, la théorie des langages s'applique aux compilateurs de langages de programmation. 

Ce cours présente les techniques algorithmiques de base d’optimisation à savoir l’algorithme du simplexe (pour la résolution des programmes linéaires à variables continues) et les principaux algorithmes de graphes (algorithmes usuels). On mettra l’accent sur les deux aspects suivants :

- Aspect Modélisation (formulation en PL, modélisation en graphe), 

- Aspect Algorithmique


L’objectif de ce cours est de présenter les concepts de la modélisation de systèmes informatiques. Ce cours présente les concepts de base de l'approche objet en les illustrant avec la notation UML. En fait, il présente la méthodologie qui permet la conception de solutions orientées objet pour résoudre des problèmes simples en utilisant les diagrammes UML.




L’objectif principal de ce cours est la maitrise des notions de base permettant de développer des applications BD modernes en exploitant les apports des différents outils à savoir :   le standard SQL, les langages de programmation classique (C/C++, java, Python, C#, etc.) et les langages de 4eme génération (PL/SQL, pg/plsql, etc.). Ici, l’aspect pratique est fondamental pour acquérir les abc du développement des applications dans n’importe quel environnement. 

Après l'étude des fondements réseaux, ce cours a pour objectif d'approfondir les connaissances des étudiants dans des notions plus avancées en réseaux comme les VLAN et le routage. D’un autre côté, ce cours sera dédié pour étudier les services réseaux de bases qui vont assurer le fonctionnement des réseaux comme les protocoles DHCP, DNS, NAT et les annuaires de gestion des comptes.


Ce cours est destiné aux étudiants de licence informatique qui n'ont pas de connaissances en gestion et qui peuvent rencontrer des projets ou des problèmes à gérer durant leur cursus académique ou leur carrière professionnelle. 
Il leur offre un ensemble de connaissances théoriques dans le domaine du management et des compétences organisationnelles, indispensables dans un contexte économique et professionnel.

Les principaux objectifs de ce module sont: 

  • Prendre conscience des nouvelles exigences en matière de gestion des données.
  • Acquérir des nouveaux termes liés aux bases de données distribuées (scalabilité, réplication, sharding, etc.). 
  • Comprendre la différence entre les bases de données relationnelles et NoSQL.
  • Comprendre la différence entre les modèles NoSQL existants.
  • Manipuler MongoDB comme exemple de bases de données NoSQL. Nous nous intéressons aux opérations CRUD, à la gestion des index, à l'agrégation par pipelines et aux processus de réplication et de sharding. 

Ce cours est une introduction aux programmations web qui permet dditer et développer des sites web. 

L'informatique décisionnelle (BI) est la transformation des données en informations exploitables. Ces informations sont utilisées par les entreprises pour prendre des décisions de haut niveau. Ce cours porte sur l'extraction des données des systèmes d'information qui traitent les opérations quotidiennes et leur transformation en données utilisables pour la prise de décision. Les étudiants apprendront comment concevoir et créer un entrepôt de données, et comment utiliser le processus d'extraction, de transformation et de chargement (ETL) des données dans les entrepôts de données.

L’objectif principal de ce module est l’étude et la maitrise des concepts nécessaires à la tâche d’administration d’une BD.

Le module est structuré de façon à alterner des parties formelles avec des séances pratiques pour mettre en œuvre les concepts étudiés. Pour ceci, on se base sur l’SGBD Oracle.


Ce cours a pour objet d’apprendre aux étudiants les principes, les techniques et les outils de base de la compilation. La fonction d’un compilateur est de traduire un programme écrit dans un langage évolué vers un programme équivalent écrit en langage machine. De ce fait, les principaux aspects de la théorie des langages sont systématiquement abordés. Ce cours permettra aux étudiants d’acquérir des techniques pour la réalisation d’un compilateur.

Ce module a pour but d'approfondir les principes et processus fondamentaux des tests de logiciels. L'objectif du cours est de fournir aux étudiants les compétences nécessaires pour sélectionner et appliquer une stratégie et des techniques de test appropriées à un système ou un composant logiciel particulier. En outre, l'étudiant deviendra un utilisateur compétent des outils de test ; il devra créer activement des cas de test et les exécuter en utilisant un outil de test automatisé. Vous serez capable d'écrire et de reconnaître de bons cas de test, y compris les données d'entrée et les résultats attendus.


Ce cours basé sur la méthodologie Agile et la gestion de projet vous permet d'acquérir les connaissances et les compétences nécessaires pour devenir Agile. Ce cours décrit les meilleurs principes et la méthodologie agile de la gestion de projet.


The main objectives of this module is to make students aware about the new requirements for data management. And let them:

  • Acquire new terms related to distributed data bases (Scalability, replication, sharding). 
  • Understand the difference between relational and NoSQL databases.
  • Understand the difference between existing NoSQL models.
  • Manipulate MongoDB as example of NoSQL databases. We interest on CRUD operations, Indexes managing, aggregation by pipelines, Replication and sharding processes. 

Content:

 1- Discrete statistics

 2- Probability (discrete and continuous)


This course includes all the means of description and analysis of formal languages, such as formal grammars for generation and automata for recognition, but it is also interested in automatic learning and automatic translation of languages. In the field of translation, language theory applies to programming language compilers.



This course presente the basic algorithmic optimization techniques, namely the simplex algorithm (for solving linear programs with continuous variables) and the main graph algorithms (usual algorithms). We will focus on the following two parts:

Part I. Linear Programming

Part II. Graphs and Algorithms


This course presents the concepts of object oriented programming OOP. Java language is used to apply these concepts in software development.

It contains 8 chapters :

  • chapter 1 : the fundamentals of OOP
  • chapter 2 : Classes and Objects
  • chapter 3 : String classes
  • chapter 4 : Inheritance
  • chapter 5 : Abstract classes and interfaces
  • chapter 6 : Exceptions
  • chapter 7 : Java Collections
  • chapter 8 : Graphical interfaces

The main objective of this course is to master the basic notions allowing to develop modern DB applications by exploiting the contributions of different tools, namely: the SQL standard, the classical programming languages (C/C++, java, Python, C#, etc.) and the 4th generation languages (PL/SQL, pg/plsql, etc.). Here, the practical aspect is fundamental to acquire the basics of application development in any environment.


This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

After the study of network foundations, this course aims to deepen students' knowledge of more advanced network concepts such as VLANs and routing. On the other hand, this course will be dedicated to studying the basic network services that will ensure the operation of networks such as DHCP, DNS, NAT protocols and account management directories.


  • Much more than a simple theoretical course in business management, this course helps students develop their knowledge in this field and pushs them to think as future entrepreneurs or future managers. 

  • They will also understand the importance of management when dealing with projects or problems during their studies or in their future professional career.  


This course presents approaches and methods for the analysis and design of IT applications. It also covers different methods for creating graphical models of IT project requirements.  In fact, it presents the fundamental principles of object-oriented analysis and design using the UML (Unified Modeling Language) notation. 

Business Intelligence is the transformation of data into actionable information. This information is used by businesses to drive high-level decision making. This course is concerned with extracting data from the information systems that deal with the day-to-day operations and transforming it into data that can be used for decision making. Students will learn how to design and create a data warehouse, and how to utilize the process of extracting, transforming, and loading (ETL) data into data warehouses. 

The main objective of this module is the study and the understanding of the necessary concepts for the administration of a database task.

The module is structured to alternate formal parts with practical sessions to implement the studied concepts. For this, the Oracle DBMS is used.

The purpose of this course is to teach students the principles, techniques and basic tools of compilation. The function of a compiler is to translate a program written in an advanced language into an equivalent program written in machine language. Therefore, the main aspects of language theory are systematically covered. This course will allow students to acquire techniques for the realization of a compiler.

This module is intended to provide in-depth the fundamental principles and processes of software testing. The goal of the course is to provide students with the skill to select and apply a testing strategy and testing techniques that are appropriate to a particular software system or component. In addition the student will become a capable user of test tools; will have actively created test cases and run them using an automated testing tool. You will being writing and recognizing good test cases, including input data and expected outcomes.

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

This course based on Agile Methodology and Project Management allows you to gain the knowledge and skills needed to become Agile. This course describes the best Principles and methodology for agile project management.


This course presente the basic algorithmic optimization techniques, namely the simplex algorithm (for solving linear programs with continuous variables) and the main graph algorithms (usual algorithms). We will focus on the following two parts:

Part I. Linear Programming

Part II. Graphs and Algorithms

The main objectives of this module is to make students aware about the new requirements for data management. And let them:

  • Acquire new terms related to distributed data bases (Scalability, replication, sharding). 
  • Understand the difference between relational and NoSQL databases.
  • Understand the difference between existing NoSQL models.
  • Manipulate MongoDB as example of NoSQL databases. We interest on CRUD operations, Indexes managing, aggregation by pipelines, Replication and sharding processes. 

This course is a Template, please add your description and change the course photo.

This course includes all the means of description and analysis of formal languages, such as formal grammars for generation and automata for recognition, but it is also interested in automatic learning and automatic translation of languages. In the field of translation, language theory applies to programming language compilers.

After the study of network foundations, this course aims to deepen students' knowledge of more advanced network concepts such as VLANs and routing. On the other hand, this course will be dedicated to studying the basic network services that will ensure the operation of networks such as DHCP, DNS, NAT protocols and account management directories.


The main objective of this course is to master the basic notions allowing to develop modern DB applications by exploiting the contributions of different tools, namely: the SQL standard, the classical programming languages (C/C++, java, Python, C#, etc.) and the 4th generation languages (PL/SQL, pg/plsql, etc.). Here, the practical aspect is fundamental to acquire the basics of application development in any environment.

This course presents approaches and methods for the analysis and design of IT applications. It also covers different methods for creating graphical models of IT project requirements.  In fact, it presents the fundamental principles of object-oriented analysis and design using the UML (Unified Modeling Language) notation. 

The main objective of this module is the study and the understanding of the necessary concepts for the administration of a database task.

The module is structured to alternate formal parts with practical sessions to implement the studied concepts. For this, the Oracle DBMS is used.


Content:

 1- Probability (discrete and continuous)


The purpose of this course is to teach students the principles, techniques and basic tools of compilation. The function of a compiler is to translate a program written in an advanced language into an equivalent program written in machine language. Therefore, the main aspects of language theory are systematically covered. This course will allow students to acquire techniques for the realization of a compiler.

Content:

   1- Limited developments

   2- Numerical series

   3- Power series

Content:

 1- Vector space

 2- Linear application

3- Matrices and linear applications

Ce cours présente les techniques Big Data et ses outils

Objectifs:
  1. Comprendre les concepts de la virtualisation
  2. Découvrir les différentes technologies de virtualisation
  3. Découvrir les types de Cloud, ses architectures ainsi que des exemples de Cloud
Contenu de la formation :
1. La Virtualisation
    1.2 Les domaines de la virtualisation
        1.2.1 La virtualisation d’applications
        1.2.2 La virtualisation de réseaux
        1.2.3 La virtualisation de stockage
        1.2.4 La virtualisation de serveurs
        1.2.5 Avantages & inconvénients de la virtualisation
    1.3 Les hyperviseurs
        1.3.1 Hyperviseur de type 1
        1.3.2 Hyperviseur de type 2
    1.4 Les différents types de virtualisation
       1.4.1 la virtualisation complète 
       1.4.2 la para-virtualisation
       1.4.3 la virtualisation assistée par le matériel 
       1.4.4 le cloisonnement
   1.5 Les principales solutions
       1.5.1 XEN
       1.5.2 KVM
       1.5.3 VMware ESX
       1.5.4 Hyper-V
       1.5.5 OpenVZ
       1.5.6 LXC
2. Le Cloud Computing
    2.1 Définition
    2.2 Les différents types du Cloud
      2.2.1 SaaS (Software as a Service)
      2.2.2 PaaS (Platform as a Service)
      2.3.3 IaaS (Infrastructure as a Service) 
    2.3 Les Architectures Cloud
       2.3.1 Le Cloud Privé
       2.3.2 Le Cloud Public
       2.3.3 Le Cloud Hybride
    2.4 Exemples d’acteurs du Cloud
       2.4.1 Amazon
       2.4.2 Microsoft Azure
       2.4.3 SalesForce
       2.4.4 Google
       2.4.5 OpenStack

Ce cours vise à faire acquérir à l’apprenant, les technologies de développement mobile et connaître les spécificités du développement mobile. Le but de ce cours est de découvrir la programmation sous une plateforme mobile, sa plate-forme de développement et les spécificités du développement embarqué sur téléphone mobile.

Ce cours vise à présenter les principes de construction,  le fonctionnement des applications réparties et connaitre les technologies majeures pour le développement des applications réparties.

Students will know the notions of unsupervised and supervised learning, the related algorithms and their use on practical cases. A mini-project and readings of articles will make it possible to understand and make operational the knowledge taught.

Ce cours a pour objectifs:

•Comprendre les principaux défis de sécurité dans un environnement dynamique
•Comprendre l'éventail des vulnérabilités et des menaces qui entravent le système d'information
•Apprener des contre-mesures proactives qui peuvent être utilisées pour garantir le niveau de sécurité requis
•Apprendre des moyens d'améliorer les capacités de réponse et de récupération en cas d'incidents de sécurité

Ce cours présente l'architecture SOA & les services web et clarifie comment ils permettent à des composants logiciels déployés et gérés séparément de communiquer et de fonctionner ensemble sous la forme d'applications logicielles communes à différents systèmes

Un cours anglais pour le niveau 3



Ce cours aide l’étudiant à :

  • Repérer une occasion d’affaires
  • Évaluer une idée et évaluer le marché
  • Explorer les risques et les avantages de l’entrepreneuriat
  • Tirez parti des expériences pour valider les concepts et affiner votre stratégie d’affaires
  • Découvrez les principales décisions financières que les entrepreneurs doivent prendre au tout début de leur démarrage
  • Comprendre le processus de mobilisation de capitaux et la façon de parler aux investisseurs

C’est une introduction aux réalités du domaine de l’industrie et aux caractéristiques des différents métiers accessibles aux étudiants .

Ce cours sur le développement d’applications web en JavaEE s’adresse disposer les détails des différentes étapes de réalisation d’une application web distribué sous java EE : l’analyse, la modélisation, le codage, la mise en production, les tests . 

An English course for level 3


This Virtual Library represents a continuously evolving list of material and courses that we are making available for our students. The Library is open for all our students to discover and acquire new knowledge. We welcome any feedback to keep the Library up to date and with any needed material.

Contenu:

  1- Probabilité (continue)

  2- Statistiques inférentielle 

Ce cours vise à introduire certaines méthodes mathématiques pour le domaine de big data . Il couvrira les formulations mathématiques et les méthodes de calcul pour exploiter les structures spécifiques contenues dans les données. Certains algorithmes spéciaux d’apprentissage automatique sont introduits dans des études de cas.

Ce cours permet aux étudiants de se former aux méthodes de conception des algorithmes et de mise en oeuvre des structures de données classiques (listes chainées, pile et file) dans des cas d’utilisation concrets et être en mesure de passer d’un problème concret à sa solution informatique en concevant et en utilisant des algorithmes performants en terme de complexité .


Ce cours est une introduction aux systèmes d’exploitation. Il est destiné aux étudiants du première niveau. Son but est de comprendre le rôle et le principe de fonctionnement des systèmes d’exploitation et maîtriser les fonctionnalités de gestion des mécanismes de base.

Ce cours introduit les concepts fondamentaux des bases de données relationnelles. Il présente le modèle Entité-Association, puis le modèle relationnel et le passage du modèle Entité-Association au modèle relationnel. Il détail par la suite le langage SQL pour la manipulation d’une base de données : création, interrogation et mise à jour.

Ce parcours permet au futur diplômé du mastère de répondre adéquatement aux besoins des entreprises en matière d'ingénierie des réseaux et de gestion des systèmes d'information sur le web.

Ce cours introduit les notions fondamentales d'algèbre linéaire.  L'accent est mis sur la structure d'espace vectoriel et de vecteur. On y présente les techniques liées au calcul avec les vecteurs, la dépendance et l'indépendance linéaires, la dimension, les transformations linéaires et leurs représentations par des matrices.
On donne également les méthodes de réduction des transformations linéaires en introduisant les notions de valeurs et vecteurs propres. Cela permet d'entamer les techniques de diagonalisation et de trigonalisation des matrices carrées. 
Les notions abordées dans ce module sont des éléments essentiels dans la mise en oeuvre des méthodes statistiques de l'analyse des données.

Ce cours s'adresse à les étudiants de Master 1 qui se spécialiser dans les techniques les plus avancées de la modélisation et l'ingénierie des systèmes intelligents et de la décision. Il offre un socle de connaissances et de compétences permettant de préparer les étudiants aux métiers de la recherche, de la recherche et développement et de l'innovation dans ce domaine.

Ce cours pemet aux étudiants à construire et former des modèles d’apprentissage automatique supervisés pour les tâches de prédiction et de classification binaire, y compris la régression linéaire et la régression logistique

Dans ce cours, l'étudiant va se merger l'univers du NoSQL

Ce cours présente les principes et les outils classiques du Big Data. Il se focalise sur la partie traitement hors ligne 'offline processing' par opposition au traitement à la volée 'streaming processing' qui sera enseigné en 2 ème année.

Java existe depuis des décennies, et c’est toujours l’un des langages de programmation les plus populaires. Avec tant d’applications, du développement de logiciels aux applications mobiles en passant par le développement de grands systèmes, la connaissance de Java est une compétence importante.

Agile est une méthode de gestion de projet  de plus en plus utilisée par les entreprises pour le développement logiciel, et parfois pour d’autres types de projets.

Ce cours initie les étudiants à l’utilisation du framework Java/JEE SPRING pour le développement d’applications d’entreprises. Il introduit le module principal de SPRING, l’injection de dépendances et l’inversion de contrôle. Il met l’accent ensuite sur le mapping objet/relationnel et les différents modules permettant le développement de la couche DAO. Il détaille ensuite les modules Web permettant le développement d’applications Web et APIs REST.


un cours structuré qui vous apprendra tout ce que vous devez savoir pour devenir un développeur Web front-end

Ce cours introduit les techniques de conception et développement d'applications informatiques pour les appareils mobiles (smartphones, tablettes tactiles, etc.).

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

Ce module a pour but d'approfondir les principes et processus fondamentaux des tests de logiciels. L'objectif du cours est de fournir aux étudiants les compétences nécessaires pour sélectionner et appliquer une stratégie et des techniques de test appropriées à un système ou un composant logiciel particulier. En outre, l'étudiant  sera capable d'écrire et de reconnaître de bons cas de test, y compris les données d'entrée et les résultats attendus.

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

An English course for Masters level 1

Ce cours contient tout ce que vous devez savoir pour résoudre les problèmes de manière efficace et innovante.Il vous montre comment aborder les défis avec la bonne mentalité.


The growth of the Internet that brought along with the large volumes of data the need to process and store this data in a timely and cost-effective way, has led to the adoption of the non-relational data models. This course introduces non-relational (NoSQL) data models and systems. It presents advantages and disadvantages of the different data architecture patterns. It covers Key-Value, Document, Graph and Column database models. Hands-on experience with a representative sample of open-source NoSQL databases will be provided. Upon completion, students should be able to design, develop, and administer NoSQL Database structures in business environments.

At the end of this course, students should be able to :

  • Understand various NoSQL data models
  • Understand various NoSQL systems and their features 
  • Evaluate NoSQL databases with each other and relational systems
  • Design and build projects that use NoSQL databases 

Ce cours présente les méthodes de résolution exacte de problèmes d’optimisation et d’aide à la décision. Il présente la recherche opérationnelle et la théorie des graphes en tant qu'outils d'ingénierie pour la modélisation, l'optimisation et la prise de décision. Il introduit d’abord la discipline de recherche opérationnelle et les problèmes auxquels elle s’applique. Il présente ensuite les outils les plus utilisés comme la programmation linéaire et la programmation dynamique. Il couvre aussi les algorithmes d’optimisation sur les graphes et leurs applications.


This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

This course deep dives into the history of project management. It introduces the traditional project management principales and the transition to agile mindset and practices. 
At the end of this course, the students will be able to 
1.Define a project
2.Discover the waterfall methodology along with advantages and disadvantages
3.Learn about the improved waterfall methodology, the V Module
4.Explain basic Agile development concepts
5.Learn about Kanban and lean thinking
6.Discuss Scrum basic concepts and values



This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

This course discusses advanced programming techniques to develop enterprise applications in JAVA. It illustrates these techniques via well known frameworks such as hibernate and spring. The course introduces dependency injection and inversion of control techniques. It moves then to detail the development of DAO layers using hibernate and spring. It also describes how to build server side Web applications as well as REST APIs using appropriate modules.

The growth of the Internet that brought along with the large volumes of data the need to process and store this data in a timely and cost-effective way, has led to the adoption of the non-relational data models. This course introduces non-relational (NoSQL) data models and systems. It presents advantages and disadvantages of the different data architecture patterns. It covers Key-Value, Document, Graph and Column database models. Hands-on experience with a representative sample of open-source NoSQL databases will be provided. Upon completion, students should be able to design, develop, and administer NoSQL Database structures in business environments.

At the end of this course, students should be able to :

  • Understand various NoSQL data models
  • Understand various NoSQL systems and their features 
  • Evaluate NoSQL databases with each other and relational systems
  • Design and build projects that use NoSQL databases 

This course introduces you to the exact methods of solving optimization problems and decision support. It presents operational research and graph theory as engineering tools for modelling, optimization and decision-making. It first introduces the operational research discipline and the problems to which it applies. It then presents the most used tools such as linear programming and dynamic programming. It also covers optimization algorithms on graphs and their applications

 This course is a supplementary education program that are assigned to students in order to assist them in achieving expected competencies in Problem Solving.

 This course is a supplementary education program that are assigned to students in order to assist them in achieving expected competencies in Problem Solving and AI algorithms.

Dans ce cours, les étudiants apprendront les bases du Deep Learning, comprendront comment construire des réseaux neuronaux et apprendront comment diriger des projets d’apprentissage automatique réussis.

Ce cours porte sur l’analyse des séries chronologiques et les méthodes utilisées pour prédire, traiter et reconnaître les données séquentielles.

Ce cours fournit les informations et les connaissances clés sur tous les sujets comprennent les technologies de l’information, la sécurité  sécurité et gestion des risques liés au développement d’applications, ainsi que la préparation  des futurs systèmes de sécurité .

Ce cours de Data Mining présentera aux étudiants les concepts de Data Mining. Le cours commence par vous présenter les concepts de description des données. Les élèves comprendront les notions de base des données, de la manipulation des données et de l’asymétrie à l’aide d’histogrammes. Vous apprendrez alors à visualiser des valeurs aberrantes, à établir des corrélations à l’aide de graphiques de dispersion et à comprendre ce qu’est l’apprentissage automatique. il comprendra également l’analyse de régression, la régression linéaire multiple et la régression logistique.

This course gives an introduction to Docker and to the main concepts related to running containers. The course starts with a general introduction to containerization, then goes in depth to the technical details of running containers with networking, storage, images and their details. In a second section, the course talks more about orchestration of containers using Kubernetes and how this system allows to run applications on a large scale. The course will introduce the main concepts that kubernetes uses to orchestrate service based applications.

Ce cours vise à présenter les concepts généraux et l’architecture des applications IoT, les technologies de réseau impliquées, les kits de développement IoT .

🙂Objectifs :
- Connaître les principales fonctionnalités des applications de gestion des entreprises (gestion de ventes, CRM, gestion des achats, logistique, gestion de production, gestion des ressources humaines, gestion de maintenance, gestion financière, comptabilité).
- Connaître les flux d’informations liant les applications de gestion et le rôle de chaque application dans les principaux processus de l’entreprise
- Avoir une idée sur l’importance des solutions intégrées et les moyens d’intégration, notamment les EAI (Enterprise Application Integration) et les ERP (Enterprise Resources Planning).
- Savoir implémenter et manipuler les principales fonctionnalités de gestion d’entreprise dans un ERP open source (par exemple Odoo).

Ce cours consolide les bases dans la conception, la planification et la mise en œuvre des architectures Cloud. Et améliorer la capacité de l’élève à identifier et à contrôler les flux de données lorsqu’ils s’appliquent aux examens et aux scénarios du monde réel. En outre, il guide l’étudiant dans l’évaluation des différents environnements architecturaux, comme illustré dans les études de cas officielles Professional Cloud Architect


This course focuses on the principles of DevOps and Site Reliability Engineering as well as Agile methodologies. It introduces different aspects of the life cycle management of a distributed system including its release management, its observability and incident management. The course teaches how to use Service Level Objectives and Error Budgets as a tool to drive the development process. The course also presents some of the known best practices in designing distributed systems.

At the end of this course, students should be able to :

  • Understand the basics of DevOps and Site Reliability Engineering 
  • Apply best practices of DevOps and SRE
  • Use some DevOps and SRE tools
  • Design CI/CD pipelines
  • Analyze monitoring data and apply SRE principles to respond to incidents


This course offers students a unique opportunity to apply their learning about business technology and the entire software development lifecycle, from business needs to deployment. It amplifies classroom instructions about IT project planning and implementation.  

Ce cours clarifiera ce qu’est (et n’est pas) le Big Data, tout en définissant d’autres termes connexes autour de la caractérisation des données et des méthodes d’analyse. 


Un cours d’anglais pour les Masters de niveau 2  

Ce cours aide l’étudiant à :

  • Repérer une occasion d’affaires
  • Évaluer une idée et évaluer le marché
  • Explorer les risques et les avantages de l’entrepreneuriat
  • Tirez parti des expériences pour valider les concepts et affiner votre stratégie d’affaires
  • Découvrez les principales décisions financières que les entrepreneurs doivent prendre au tout début de leur démarrage
  • Comprendre le processus de mobilisation de capitaux et la façon de parler aux investisseurs

Ce cours est destiné aux étudiants de master informatique, pour les aider à développer une vision stratégique de la gestion des entreprises et des projets, à s'intégrer mieux dans le monde économique des affaires. Il leur donne l'occasion de creuser dans les activités d'un manager et de connaitre les différentes méthodes de gestion.

Les données sont une ressource très importante pour assurer la réussite d’une entreprise. Afin de faire des données une ressource utile, nous devons apprendre à les visualiser et à obtenir des renseignements utiles. Ce cours vous présentera certains des outils les plus connus pour la visualisation des données. Cela comprendra des compétences techniques pour configurer les outils, charger les données, créer des visualisations et des tableaux de bord.

This course is a practical introduction to Istio, designed for anyone who wishes to build on their knowledge of Linux, Docker, and Kubernetes to learn how to install and configure a service mesh and to understand the benefits of deploying and running distributed applications in a service mesh environment.

This course is an in introduction to ... 

It contains N chapters :

  • chapter 1 : the fundamentals of 
  • chapter 2 : 
  • .
  • .
  • chapter N 

 This course is a supplementary education program that are assigned to students in order to assist them in achieving expected competencies in Operating system class. 

 This course is a supplementary education program that are assigned to students in order to assist them in achieving expected competencies in Object-Oriented Programming .

This course is a supplementary education program that are assigned to students in order to assist them in achieving expected competencies in relational database class.


This course is a supplementary education program that are assigned to students in order to assist them in achieving expected competencies in Networking class.

AWS re/Start is a cohort-based workforce development training program that prepares individuals for careers in the cloud and connects them to potential employers.

After completing this course, you should be able to: 

  • Make architectural decisions based on AWS architectural principles and best practices
  • Use AWS services to make your infrastructure scalable, reliable, and highly available
  • Use AWS managed services to enable greater flexibility and resiliency in an infrastructure
  • Indicate how to increase the performance efficiency and reduce costs of infrastructures built on AWS
  • Use the AWS Well-Architected Framework to improve architectures that use AWS solutions

This course is for individuals who seek an overall understanding of the Amazon Web Services (AWS) Cloud, independent of specific technical roles. You will learn about AWS Cloud concepts, AWS services, security, architecture, pricing, and support to build your AWS Cloud knowledge. This course also helps you prepare for the AWS Certified Cloud Practitioner exam. 

This course is a Template, please add your description and change the course photo.