Admission

internationale

Programmation, réseaux et télécommunications

Description

Cette formation exclusive offre la polyvalence tant recherchée par les employeurs :

  • Les langages de programmation les plus répandus dans l'industrie des TI : Java, C, C++, C#, Transact-SQL, JavaScript, HTML, HTML5, ASP.NET, UML
  • Les technologies de réseautique : Windows, Linux, Cisco ...

Marché du travail

Il est possible après la formation de travailler en tant que programmeur analyste ou administrateur réseau. Cette double compétence fera du diplômé de l'ISI un professionnel accompli et lui conférera un réel avantage sur le marché du travail.

Durée

1710 heures, durée incluant 270 heures de stage

20 mois (18 mois de formation + 2 mois de stage)

Préalables

Détenir un diplôme du 5e secondaire (Maths 436) et démontrer un intérêt pour l’informatique.

Cours qui composent la formation

Plan détaillépdf.png

45 h

Bases de données I (MS-Access)

• S'approprier les principes de modélisation des bases de données. Étudier le logiciel Access

 

Dans ce cours, vous apprendrez à concevoir une base de données relationnelle à partir d'un cahier des charges décrivant la situation à modéliser. La mis en pratique s'effectue avec le logiciel Microsoft ACCESS sous Windows. Une première partie du cours présente la modélisation des bases de données dans le cadre d'une implémentation dans un Système de Gestion de Bases de Données Relationnelles (SGBDR). On y apprend comment établir un modèle conceptuel de données à partir d'un énoncé décrivant le système à modéliser. Ensuite, on montre comment passer du modèle conceptuel au modèle logique, ce dernier permettant de décrire les tables nécessaires à l'application. Finalement, on explique l'utilité de la normalisation des tables pour obtenir une modélisation efficace et cohérente de l'ensemble des données. Dans cette partie, vous serez mis en situation avec des cas réels de modélisation, par le biais de nombreux exercices. Dans une seconde partie, vous utiliserez le logiciel MS ACCESS avec son langage graphique pour créer, modifier ou supprimer des tables, ajouter ou supprimer des données dans des tables, et enfin, interroger une base de données. Vous apprendrez, également, à créer des formulaires et des rapports. La description et l'utilisation des principales propriétés de ces objets sont passées en revue. Enfin, vous verrez comment utiliser des macros pour automatiser des suites d'actions. Une séance typique de 5 heures de cours commence par la présentation d'un ou plusieurs nouveaux concepts et se poursuit par une période pratique constituée d'exercices sur les nouveautés. Dans ce cours, vous serez amené à effectuer un travail pratique en groupe de 2 ou 3 sur un sujet un peu plus étoffé que ceux proposés en exercices. Ce cours s'inscrit dans l'ensemble des cours qui abordent les bases de données. Tandis que le cours de SQL présente une approche orientée console, celui-ci propose plutôt une approche visuelle et intuitive grâce au langage graphique du logiciel ACCESS. Microsoft ACCESS est un logiciel très utilisé dans l'industrie. À l'issue de ce cours, l'élève aura une bonne maîtrise des différentes facettes de ce logiciel et sera à même de l'utiliser pour effectuer toutes les tâches de manipulations d'une base de données.

60 h

Bases de données II (SQL-Transact SQL)

• Maîtriser le langage de programmation de bases de données Transact-SQL.

 

On propose dans ce cours de créer et d'exploiter des bases de données dans le langage structuré de requêtes SQL Transact-SQL. Le logiciel utilisé est SQL-Server. Une première partie concerne le Langage de Manipulation des Données (LMD) qui permet d'effectuer des manipulations au niveau de la ligne dans une table. Vous verrez la commande SELECT qui permet d'interroger la base de données. La plupart des nombreuses options de celle-ci sont passées en revue. On parle notamment du filtrage de lignes (WHERE), du regroupement de lignes (GROUP BY) avec filtrage sur les groupes (HAVING), de jointures de tables (JOIN) et de sous-requêtes permettant de formuler des interrogations complexes. Ensuite, les commandes d'ajout (INSERT), de suppressions (DELETE) et de mise à jour (UPDATE) de données d'une table sont présentées. La création de vues (CREATE VIEW) est également abordée. Dans une seconde partie, vous vous familiariserez avec le Langage de Définition des Données (LDD) qui permet d'effectuer des manipulations au niveau de la colonne dans une table. Vous apprendrez à créer des tables (CREATE TABLE) et à modéliser les différentes contraintes sur celles-ci (PRIMARY KEY, FOREIGN KEY, CHECK). Vous verrez, également, comment ajouter, modifier ou supprimer des colonnes d'une table (ALTER). Enfin, vous aborderez les notions de transactions (TRANSACTION), de procédures stockées (CREATE PROCEDURE) et de déclencheurs (TRIGGERS). Tout au long du cours, de très nombreux exemples sont présentés à la classe pour illustrer les propos de l'enseignant. De même, un grand nombre d'exercices sont proposés pour permettre à l'apprenant de se pratiquer sur les notions appréhendées. L'interactivité du langage Transact-SQL utilisé dans SQL-Server rend ce cours très visuel; cela procure une grande motivation à l'apprenant. À l'issue de ce cours, vous maîtriserez le langage structuré de requêtes SQL dans le but d'implanter des bases de données. Les connaissances acquises seront largement utilisées dans les cours suivants, à savoir Java 2 et 3, ASP NET et PHP, dès lors qu'une application requière l'accès à une base de données pour quelque raison que ce soit.

60 h

Algorithme et programmation structurée (Algorithmie et C)

• Apprendre les concepts, les techniques et une méthodologie de programmation structurée avec le C.

 

Dans ce cours, vous aborderez la notion d'algorithmes dans le cadre de la résolution de problèmes informatiques. Dans une première partie, vous utiliserez un pseudo-code proche du langage naturel pour décrire les algorithmes. Vous apprendrez la méthodologie pour aborder et résoudre un problème informatique simple. C'est ici que les concepts fondamentaux comme les variables, les structures conditionnelles et itératives sont abordées. Dans une seconde partie, le langage C est utilisé pour implémenter des algorithmes plus élaborés et les faire exécuter par l'ordinateur. On insiste alors sur la nécessité de structurer le code en utilisant des fonctions. On introduit, également, les tableaux, les structures et les pointeurs pour modéliser des structures de données plus élaborées. Ce cours de 60 heures est très axé sur la mise en pratique des concepts abordés. Vous devrez produire de nombreux codes source en C pour résoudre des problèmes divers et variés qui vous seront proposés. Une séance typique de 5 heures débute par une partie de cours durant laquelle une nouvelle notion est présentée aux apprenants. Ensuite, vous serez mis en situation avec des exercices pour pratiquer les nouveautés abordées précédemment. Dans ce cours, vous serez, également, placés en situation de travail en équipe. En effet, il vous sera demandé de réaliser 2 travaux pratiques en groupe de 2 ou 3. Chaque TP fait l'objet d'une présentation orale devant la classe et des membres du personnel de l'école. Ce cours pose les prémices pour les prochains cours de programmation, et plus particulièrement le cours de C++ (P61) qui présente la programmation orientée objets.

75 h

Introduction à la programmation orientée objets (C++)

• Apprendre les concepts de bases de la programmation orientée objets : classes, objets, héritage, polymorphisme, etc.

 

Ce cours est le prolongement du cours de C (P63). Il introduit la notion de programmation orientée objets dans la résolution de problèmes informatiques, en utilisant le langage C++ sous Visual Studio. Vous serez introduits au concept de classe comme étant une extension des structures du langage C. On vous présentera la notion d'encapsulation ainsi que la syntaxe utilisée par C++ pour écrire une classe complète avec ses membres (données et fonctions). On vous parlera des constructeurs et du destructeur d'une classe, mais aussi des modificateurs d'accès et de la relation de composition entre deux classes. Ensuite, vous aborderez la notion d'héritage qui permet de modéliser qu'une classe est une spécialisation d'une autre classe; c'est-à-dire qu'un objet de la première classe est aussi un objet de la seconde mais possède également des propriétés et aptitudes plus spécifiques. Enfin, le concept de polymorphisme est présenté. C'est un mécanisme particulier qui facilite la manipulation d'objets hétérogènes héritant d'une même classe. Tout au long du cours, vous serez sensibilisé aux procédures de débogage pour traquer les erreurs de logique qui se seraient glissées dans votre code. Ce cours, comme le cours de C, se veut très pratique et vous amènera à manipuler les différents concepts par le biais de nombreux exercices. Comme pour le cours P63 de C, vous devez effectuer un travail pratique en groupe de 2 ou 3, et le présenter devant la classe pour pratiquer votre élocution en public. Ce cours se place avant le cours de Java 1 et prépare l'étudiant à aborder des applications plus complexes en utilisant le modèle objets.

60 h

Programmation orientée objets I (Java)

• Aborder la programmation d'application graphique et la gestion d'événements, threads et communication socket.

 

Le cours de java 1 porte sur le développement d'applications sur le poste de travail (desktop application) avec l'édition standard de java (JavaSE). Il vous amènera à approfondir et à maîtriser les concepts de la programmation orientée objet (POO) auxquels vous avez été initié dans le cours de C++. Le cours commence par une révision des concepts de la POO (encapsulation, héritage, polymorphisme) tout en vous initiant aux principes d'exécution d'application java (JRE et JVM) et au langage et à la syntaxe java par le biais de développement de programmes en mode console. Vous vous familiariserez aussi avec l'utilisation d'un environnement de développement intégré (IDE). Vous serez amené à découvrir la très vaste API de java, à connaitre les outils de compilation, d'exécution et de documentation du SDK et du JRE à travers le développement d'application à interface graphique en Swing. Vous apprendrez à construire des fenêtres, à contrôler la disposition des composants et à gérer les événements, Vous serez même en mesure de créer vos propres composants et événements personnalisés. Vous apprendrez ensuite à lire et écrire sur des flux (stream) de données comme des fichiers, à gérer et synchroniser de multiple sous-processus (thread) et à communiquer avec une autre application à travers le réseau, par socket. À la fin de ce cours, vous serez capable d'appliquer une approche de développement par objets en développant une application multi utilisateur en réseau. À l'aise avec le langage et connaissant les classes et paquetages (packages) fondamentales de l'API de javaSE, vous serez autonome dans la poursuite du développement de vos compétences et connaissances. Tout au long du cours, vous serez sensibilisé aux bonnes pratiques de modélisations, au respect des conventions et doucement initié à quelques modèles de conception logicielle (design pattern).

90 h

Développement d'applications transactionnelles II (JavaScript)

• Dynamiser les pages Web grâce au JavaScript, les animer et les rendre interactives par l'ajout de script et utiliser des librairies telles que jQuery.

 

Après le cours « 420-P89-SU html et css », vous aviez appris à créer des pages Web statiques à l’aide des langages HTML et CSS, tout au long de ce cours, vous apprendrez à rajouter de l’interactivité à vos sites Web pour les rendre plus attractifs et plus performants. Vous apprivoiserez pour cela JavaScript, langage de script coté client qui, depuis quelques années, constitue un élément incontournable dans le domaine des technologies Web. Avec ce langage, vous pourrez manipuler tous les éléments d’une page Web en utilisant les objets DOM. Vous serez capables de manier des images, valider des formulaires, créer des effets de toutes sortes, programmer des jeux, … Vous découvrirez avec plaisir la facilité et l’élégance de la librairie jQuery pour réaliser des traitements nécessitant autrefois des programmes JavaScript longs et difficiles. Avec jQuery mobile, vous apprendrez à créer des sites Web adaptés pour les plates-formes mobiles. En effet, jQuery Mobile est une bibliothèque JavaScript parmi les plus utilisées pour créer des sites web à destination des Smartphones et tablettes tactiles. Enfin, JavaScript constitue un préalable nécessaire avant d’aborder les autres cours qui traitent des technologies Web côté serveur.

45 h

Développement d'applications transactionnelles III (HTML)

• Créer la structure de pages Web à l'aide du langage HTML, bonifier leur présentation grâce aux feuilles de style (CSS).

 

Le cours P89-SU (HTML, CSS) est le premier cours en matière de développement d’applications Web. C’est un préalable nécessaire avant d’aborder des langages comme JavaScript, PHP et des technologies Web comme ASP.Net ou JAVA J2EE. Tout au long de ce cours, vous apprendrez à créer des sites Web statiques en produisant du code HTML bien structuré et « cross-browser », c'est-à-dire compatible avec tous les navigateurs web. Vous apprendrez aussi à utiliser différentes DOCTYPE, sorte de grammaires qui définissent les règles du langage HTML, et d’utiliser les validateurs W3C pour valider vos pages Web selon la DOCTYPE choisie. Le deuxième volet de ce cours concerne les feuilles de style CSS (Cascading Style Sheets) qui constituent une technologie incontournable dans le monde du design Web. Elle permet, en effet, de séparer le contenu d’un document Web de sa présentation en plus des possibilités exceptionnelles de mise en forme qu’elle offre aux Web designers. Avec les CSS, vous aurez l’occasion de produire des sites Web de qualité professionnelle qui tiennent compte des particularités des différents navigateurs. Avec l’avènement de HTML5 et des plates-formes mobiles, CSS s’est vu confirmé comme technologie incontournable dans le monde des technologies Web et il sera difficile à détrôner. Pour cela, Vous aurez l’occasion d’approfondir vos connaissances CSS dans le cours « 420-P68-SU html5 et css3 »

60 h

Programmation orientée objets II (Java avancé)

• Approfondir la connaissance de Java et maîtriser le développement côté serveur (J2EE, JSP, Servlet). Savoir appliquer une architecture MVC.

 

Dans ce cours, vous appliquerez les compétences acquises dans la cours de java 1 (javaSE) au développement web en java. Vous apprendrez à utiliser la version entreprise de java (java EE) et à connaître ses classes fondamentales pour concevoir et réaliser des applications web dynamique s'exécutant côté serveur. Vous devriez au préalable connaître le HTML et CSS (cours HTML/CSS). Dans un premier temps, vous serez amené à comprendre les principes d'une application client-serveur basée sur le protocole HTTP et à explorer le fonctionnement et la configuration d'un serveur et d'un site web. Via le développement de Servlets, vous serez en mesure d'utiliser les fichiers XML de configuration des applications web, de générer du code HTML à partir du code Java et de traiter des formulaires HTML envoyés par un client (navigateur web). Ce faisant, vous utiliserez et manipulerez de façon pertinente et efficace les objets du protocole HTTP tel que les requêtes (Request et QueryString), réponses (Response), session (Session) et témoin (Cookie). Vous exploiterez une base de données en appliquant les spécifications JDBC et serez sensibilisé aux vulnérabilités des injections SQL et à la façon de s'en prémunir. Vous devrez appliquer un design orienté objet en trois couches séparant les entités, de la gestion de ces entités et encapsulant la connexion au système de gestion de base de données (SGBD): le trio Manager - Entities - Service. Vous appliquerez ensuite comme architecture de vos applications web, le modèle MVC (Model – View – Controller), un design pattern orienté objet reconnu et très répandu. Vous en ferez une implémentation "maison" très proche de celle qu'en fait un frameWork comme struts. Pour la couche View, vous apprendrez à développer des pages JSP alors que du côté de la couche modèle, vous créerez des classes respectant l'architecture des Java Beans. Tout au long du cours, vous serez sensibilisé aux bonnes pratiques de modélisation, au respect des conventions. À la fin du cours, vous saurez développer des applications respectant l'architecture du modèle MVC.

60 h

Programmation orientée objets III (Java 3)

• Se familiariser avec certains framework utilisant les technologies avancées du développement côté serveur tel la persistance avec IBATIS et le développement d'interfaces utilisateurs avec JSF.

 

Le cours de java 3 s'inscrit en continuité du cours de java 2. En effet, c'est un second cours appliquant le développement d'application d'entreprise en java (JavaEE). Son objectif est de vous amenez à connaître, à comprendre l'utilité et à savoir appliquer des frameWorks (ensemble de composants logiciels standardisant et automatisant en partie le développement applicatif en imposant une certaine architecture). Sans perdre l’habitude d'appliquer une architecture MVC, vous apprendrez à ajouter une couche d'abstraction du côté du View et une autre du côté du Modèle. Vous appliquerez, au niveau de la couche modèle, un frameWork de persistance (Hibernate, IBatis ou JPA). Vous configurerez et utiliserez un frameWork automatisant la synchronisation entre les objets du modèle (les entités) et les tables correspondantes dans la base de données. Vous serez en mesure de définir les associations d'objets (mapping) en XML et d'y stocker les requêtes SQL. Vous serez capable de développer des classes d'entités pouvant être utilisées par le frameWork en se pliant aux exigences de la définition des java beans. Pour la couche de présentation des données (View) et de contrôle de la navigation et des actions à déclencher dans le modèle (Controller), vous comprendrez comment utiliser JSF (Java Server Faces) et une de ses nombreuses implémentations (ICEFaces, RichFaces, PrimeFaces, ADF...). Vous apprendrez à connaître les composants JSF et ceux de l'implémentation choisie, à créer et enregistrer des managed Bean et des backing Bean et à les lier l'un à l'autre grâce aux EL expressions. Vous saurez, aussi, faire communiquer ensemble des sessions à l'aide d'une technique de notification serveur (ajax push). Tout au long du cours, vous serez sensibilisé aux bonnes pratiques de modélisations, au respect des conventions. À la fin du cours, vous saurez développer des applications en utilisant des frameWork.

75 h

Programmation dans un environnement graphique I (C#)

• Évoluer dans l'environnement des applications Windows standards avec C# afin de se familiariser avec l'analyse de problèmes, les concepts et les termes de la programmation par événement.

 

Le cours de C# constitue une première introduction aux technologies Microsoft en matière de développement d’applications. L’objectif premier est de vous permettre d’appréhender le Framework .Net; plateforme Microsoft pour développer, déployer et exécuter des applications Web, Windows, mobiles et serveur. Vous apprendrez, tout au long de ce cours, à utiliser les différentes fonctionnalités d'édition et de débogage de Visual Studio 2012 pour produire un code optimisé et rapide. Visual Studio étant un environnement intégré permettant de générer une grande variété d’applications (applications Web ASP.Net, Windows Forms, WPF, services web, …) Avec la version actuelle de .Net, le langage C# a atteint une grande maturité et constitue, avec VB.NET, l’un des langages les plus utilisés en entreprise. En utilisant donc Visual Studio 2012, le langage C# et les classes du Framework .Net, vous apprendrez à construire une interface graphique pour une application Windows, accéder à une base de données en respectant les règles et les standards reconnus en la matière. Vous serez capable de mettre en œuvre les concepts de programmation événementielle et vous consoliderez vos acquis en matière de programmation orientée objet. Enfin, ce cours vous permettra d’aborder plus facilement le cours ASP.NET qui constitue la deuxième partie consacrée aux technologies Microsoft. Celle-ci est dédiée au développement d’applications Web ASP.NET MVC 4.

75 h

Programmation dans un environnement graphique II (ASP.NET MVC 4)

• Utiliser la technologie ASP.NET MVC 4, pour créer des applications intranet/internet transactionnelles basées sur l'accès aux bases de données (EF) et intégrant les technologies WEB API, le JavaScript, le XHTML et les feuilles de style (CSS).

 

Le Web s’est imposé en très peu de temps comme plateforme incontournable en matière de communication et d’accès à l’information. Toute formation informatique, qui se respecte, ne peut donc l’ignorer. Dans cet espace de créativité et d’innovation, chacun des grands acteurs du logiciel essaie d’imposer sa technologie et de gagner des parts de ce gigantesque marché. Dans ce contexte, le cours ASP.NET MVC4 présente l’une de ces technologies les plus populaires et les plus compétitives du marché; ASP.NET est en effet la solution Microsoft en matière de développement d’applications Web dynamiques. L’objectif du cours est de permettre à nos étudiants de comprendre les concepts Web communs à toutes les technologies, (client, serveur, protocole http, requête et réponses http, cookies, …) et de les mettre en œuvre en utilisant ASP.NET et l’architecture MVC. Ce sont tous des concepts que nos étudiants vont être capables d’utiliser pour construire des applications Web dynamiques de qualité professionnelle. L’utilisation d’ADO.NET pour l’accès aux bases de données sera consolidée pendant ce cours. Vous serez capable, à l’aide de cette technologie, de vous connecter à des sources multiples (bases de données, fichiers XML, …), d’extraire des données et d’alimenter dynamiquement un site Web. Le cours ASP.NET est aussi une suite logique dans notre cursus de formation. En effet, après avoir vu tout ce que l’on peut faire côté client, objet des cours précédents (HTML, CSS, JavaScript), l’étudiant aura l’occasion de voir ce qui se passe de l’autre côté d’une application Web, le côté serveur.

60 h

Applications interactives clientes (HTML5 Canvas)

• Concevoir et développer une application dans un environnement graphique.
• Découvrir les nouveautés d'HTML5 et les nouvelles API JavaScript afin de créer des composants dynamiques riches : géolocalisation, Web Socket, Canvas, Web Storage, Web Database, etc. et Introduction à XML, XPATH et XSLT.

45 h

Projet programmation

• Créer une application web complète qui permettra d’intégrer l’ensemble des concepts vus. Le développement s’effectuera selon des règles précises de gestion de projets et devra répondre aux paramètres définis pour que l’application puisse être mise en opération.

 

Le cours de projet final consiste à mettre en œuvre le développement d'une application. Vous apprendrez à mener, en équipe, le développement complet d’une application que vous aurez à analyser durant le cours d'UML. Vous apprendrez à travailler en équipe, à gérer les versions de code source par l'utilisation d'un gestionnaire de source comme SVN par exemple. Vous développerez votre compétence à gérer votre temps, à prioriser les tâches et à respecter les échéances de livraison. Le projet est découpé en plusieurs phases sur un calendrier serré et chaque phase du développement comporte un livrable qui doit être produit à une date déterminée. On cherche, dans le cours de projet, à vous placer dans un contexte aussi proche que possible de la réalité du développement tel qu'il se fait dans l'industrie. Tout au long de la production, vous aurez à toucher à différentes technologies, à participer à toutes les étapes et facettes du développement et ferez ainsi une révision et une mise en pratique de l'ensemble des compétences acquises tout au long de votre formation. Chaque équipe devra créer la base de données et ses tables et ses relations, ensuite développer les éléments graphiques et les interfaces utilisateur de l'application. Vous produirez, ensuite, le code en implémentant chaque fonctionnalité une à la fois (chaque cas d'utilisation). L'application doit présenter une architecture MVC orientée objet, comporter un système de gestion d'erreurs et un module de maintenance. Une fois complétée, l'application fera l'objet d'une phase de test et de débogage avant d'être déployée. À la fin du projet, chaque équipe fera une présentation publique de sa réalisation.

60 h

Développement d'applications pour mobiles I (Android)

• Connaître les notions fondamentales et les particularités de la programmation pour appareils mobiles en général.

 

• Apprendre à développer des applications pour le système Android, comprendre les concepts propres à cet environnement et savoir exploiter les données, les services et les périphériques des appareils mobiles.

Dans ce cours, vous vous familiariserez avec les notions fondamentales et les particularités du développement d'applications pour les appareils mobiles en général. Le cours porte sur le développement d'applications natives pour mobile (par opposition aux applications à interfaces web qui auront été abordées dans le cours de HTML) et se concentre sur le système Android. Vous verrez comment installer et configurer un environnement de développement pour Android et ferez connaissance avec l'écosystème Android, son architecture et l'architecture des applications Android elles-mêmes. Vous étudierez, ensuite, la structure d'un projet Android et de ses particularités ainsi que le cycle de vie d'une application Android, vous apprendrez, aussi, à reconnaître les différentes catégories de composants qui constituent une application. Vous serez initié au développement des interfaces utilisateur graphiques et contrôlerez la disposition des composant tout en tenant compte des différents formats et résolution d'écran des différents appareils. Vous saurez, aussi, implémenter une gestion d'événements pour réagir aux actions de l'utilisateur. Vous apprendrez à faire communiquer entre elles les différentes activités d'une application et comment faire appel à des activités exposées par d'autres applications. Vous explorerez l’utilisation des services (connexion internet par exemple) et des périphériques (accéléromètre ou gyroscope par exemple) de l'appareil et devrez, pour ce faire, savoir définir et configurer correctement la sécurité et les permissions des activités. À la fin du cours, vous serez en mesure de concevoir une application qui incorpore des animations et graphiques, la lecture de senseurs, et un échange avec une autre application sur un autre appareil. Tout au long du cours, vous serez sensibilisé aux bonnes pratiques du développement mobile comme l'ergonomie et l'économie des ressources.

45 h

Système d’exploitation et fonctionnement interne (Windows 7)

• Installer et configurer un système d'exploitation client (Windows 7) pour une utilisation individuelle ou en réseau local poste à poste.

 

Ce cours a pour but de vous initier à l’installation des éléments physiques et logiques dans une station de travail de type client. Pour atteindre ces objectifs, le cours de Windows 7 est divisé en deux parties. La première partie est de type matériel c'est-à-dire que vous aurez à apprendre les composants et le fonctionnement d’un ordinateur, connaitre l’architecture interne de l’ordinateur et diagnostiquer les problèmes causés par le matériel ou les logiciels. La deuxième partie s’appuie, particulièrement, sur l’étude du système d’exploitation Windows 7. Dans cette étape, vous aurez à utiliser les fonctions de base de Windows 7, installer, désinstaller et configurer des éléments logiques tels que des applications, gérer les comptes utilisateurs et permissions de partage, manipuler la base de registre, implémenter l’assistance et le bureau à distance et enfin utiliser les outils de Windows 7 pour maintenir et dépanner un système dans une configuration autonome. A la fin de ce cours, vous serez à l’aise pour affronter les divers programmes de réseautique tels que TCP/IP, Administration des serveurs, etc...

90 h

Théorie des réseaux et principes de commutation en réseau (TCP/IP)

• Étudier les différentes normes, topologies et modèles de réseaux, de câblage et d'appareils de connectique.

 

• Installer et configurer un réseau TCP/IP avec des routeurs et les services réseau : DNS, DHCP, WINS, FTP, etc.

Ce cours d’introduction à l’univers de la réseautique informatique se veut un rite de passage essentiel pour les étudiants. En effet, vous serez amené à comprendre les besoins et les enjeux d’une infrastructure réseautique pour l’entreprise. La première partie du cours est théorique et vous initiera au modèle « OSI » des standards « ISO » et du modèle « TCP/IP » des standards du Département de la Défense Américaine. Le modèle OSI et TCP/IP sont subdivisés en plusieurs couches dont chacune possède son rôle dans une communication réseau. Chacune de ces couches sera abordée afin d’établir les connaissances requises pour la deuxième partie du cours et pour le reste de la formation. Le matériel, les protocoles et les divers composants d’une infrastructure réseau seront abordés de façon théorique, mais également pratique dès la deuxième partie du cours. Les différentes normes et associations internationales seront couvertes tels que les normes de l’IEEE 802 Ethernet, EIA/TIA 568A & B, Standards RFC et les associations telles que IANA, ICANN, EITF, ERTF et IAB. La classification et l’implémentation de l’adressage IP d’un réseau et de ses sous-réseaux seront également abordées. Vous serez déjà capable de concevoir et d’implémenter une petite infrastructure réseau avec le matériel et les services essentiels tels que routeurs, commutateurs, serveurs de résolution de noms, services de configurations dynamiques de clients (DHCP), services web (HTTP), services de transfert de fichiers (FTP) et services d’administration à distance (TELNET).

45 h

Fonctions de commutation avancées (CISCO)

• Étudier et configurer les produits Cisco. RIP, IGRP, BGP, OSPF, VLAN, STP, VTP, ISL. Design de réseaux LAN et WAN.

 

Ce cours vise à renforcer les notions de commutations et de routages aux étudiants. Basé sur les sujets du contenu des examens Cisco niveau CCNA, ce cours vous préparera à implémenter et maintenir un réseau complexe d’entreprise multi-sites. La technologie WAN telle que les liens réseaux des compagnies de télécommunication, les infrastructures privées et publiques telles que Frame-Relay et ATM seront abordées. Vous implémenterez un réseau d’entreprise composé de trois sites distincts liés par le WAN. Vous implémenterez les protocoles de routage dynamique tels que RIP, EIGRP et OSPF. Vous pourrez, de façon pratique, manipuler des configurations de routage et commutation en ligne de commande dans un environnement virtuel et contrôlé. Vous vous familiariserez avec les concepts avancés de commutation tels que le protocole STP afin d’éviter les boucles, PORT-SECURITY pour sécuriser les ports d’un commutateur et des contrôles d’accès pour l’administration à distance. La sécurité des commutateurs et routeurs sera également explorée (Secure IOS, Mots de passe cryptés, AAA, etc…) ainsi que les technologies VLAN et VTP. Dans un cadre pratique, vous implémenterez un réseau commuté divisé en plusieurs réseaux virtuels routé via un tronc commun (Router on a stick). Ces commutateurs utiliseront également le protocole VTP afin de distribuer les différents VLANs entre les appareils. Le cours se complète par l’apprentissage du modèle Cisco en matière d’architecture et design. Vous serez amené à concevoir vous-même l’architecture réseau complète de deux sites liés par le WAN.

45 h

Linux I (Système Linux)

• Installer et administrer un poste de travail utilisant le système d'exploitation GNU/Linux.

 

Ce cours est une introduction au système d’exploitation libre Linux (open source), l’un des systèmes d’exploitation les plus répandus sur le marché et dans l’industrie des systèmes embarqués. Pour les gestionnaires de réseaux, il est incontournable et fait partie intégrante des réseaux d’entreprises. Vous apprendrez d’abord à installer et configurer ce système d’exploitation. Vous vous familiariserez ensuite avec la structure de son système de fichier et explorerez les outils d’édition de fichiers en ligne de commandes. Au travers des multiples laboratoires et exercices, vous découvrirez les commandes de bases du système et apprendrez à les maitriser. Vous explorerez les différentes possibilités d’installation et de mise à jour des logiciels sur Linux. Vous aborderez, également, la création et la gestion des utilisateurs et des groupes locaux, une des tâches de tout administrateur de réseaux. Vous serez, ensuite, initier à configurer les permissions sur les fichiers et les dossiers et à gérer les processus et les services du système. En abordant le langage de scripts BASH, vous serez capables de mettre en œuvre des concepts de programmation pour automatiser les tâches routinières sur Linux. Vous apprendrez à partitionner, formater et utiliser une partition Linux, à automatiser des tâches systèmes, configurer une imprimante, effectuer des sauvegardes, et compiler un noyau Linux. Les notions acquises dans ce cours, vous permettront d’aborder, sans entraves, les cours plus avancées de Linux comme la configuration de serveurs Linux, la sécurité Linux et la voix sur IP (VoIP).

60 h

Linux II (Serveur Linux)

• Installer, configurer et administrer, sur un serveur utilisant le système d'exploitation GNU/Linux, différents types d'applications ou de serveurs réseau (DNS, DHCP, FTP, NFS, NIS, APACHE, SAMBA, POSTFIX, SQUID, etc.).

 

Ce deuxième cours de Linux sous la distribution CentOS porte sur les principaux services réseaux nécessaires à une infrastructure d’entreprise. Vous apprendrez à installer et à configurer chacun de ces services par l’utilisation de la riche console Linux, le BASH. Un laboratoire de trois machines Linux vous permettra de mettre en place un petit réseau fonctionnel purement Linuxien. Deux serveurs de résolutions de noms DNS se partageront la tâche par le transfert de zone. Un serveur DHCP sera ajouté afin de configurer dynamiquement et statiquement par adressage MAC, les clients Linux et Windows. Un serveur de fichiers purement Linuxien à l’aide du protocole NFS sera implémenté entre les machines doublé d’un serveur SAMBA afin d’offrir un serveur de fichiers pour les machines Windows. Un contrôleur primaire et secondaire (PDC & BDC) seront également implémentés afin d’authentifier des machines Windows à un domaine SAMBA. Ces services seront, bien sûr, configurés de façon sécuritaire afin d’éviter les attaques potentielles contre ces services. Un serveur LAMP est également configuré à l’aide de la populaire combinaison de services Apache, MySQL, PHP. Ces trois technologies; serveur web http, base de données et le langage dynamique sont très utilisés en entreprise pour héberger des pages web de façon peu coûteuse. Vous implémenterez, également, un proxy web à l’aide du service SQUID où différents filtres permettent une communication sécurisée de l’entreprise vers l’Internet. Le cours se termine par l’implémentation de services courriels SMTP, POP3 et IMAP. Vous validerez votre configuration par l’envoi de courriels à l’aide du logiciel Windows Outlook.

75 h

Serveur Microsoft I (Windows 2003)

• Installer, configurer et administrer des serveurs Windows 2003 dans le cadre des réseaux Microsoft.

 

Ce cours couvre les domaines Windows Active Directory avec Windows server 2003. Durant ce cours, vous monterez des serveurs 2003 pour offrir différents services à une entreprise. Vous débuterez par une introduction aux différents systèmes d’opération de Windows avec un historique sur l'évolution des différentes versions et Services Pack. Vous serez initié aux licences de Windows. Vous aborderez la gestion des utilisateurs, des groupes, des profiles, des répertoires personnels et des scripts de connexion. Vous installerez, configurerez et administrerez des serveurs de fichiers et d'impression. Vous maitriserez la configuration d'un parc informatique à partir d'un seul point en utilisant les GPO. Vous déploierez des applications par machine ou par utilisateur. Vous comprendrez les notions d'héritage et de filtrage des GPO à l'aide des permissions. Vous étudierez, en profondeur, le DNS et le DHCP et leur intégration avec Active Directory. Vous explorerez les différentes zones DNS (primaire, secondaire, directe, inverse, STUB, intégrée à Active Directory), vous utiliserez les requêtes récursives et itératives, le DNS cache only ainsi que les forwarders (redirecteurs). Vous découvrirez, également, la gestion des permissions NTFS et les permissions de partages. Vous vous familiariserez avec IIS 6.0 de Microsoft Windows 2003 et notamment son serveur web et FTP. Vous apprendrez à isoler des utilisateurs dans un site FTP et à héberger plusieurs sites web par adresse IP, par port ou par Host-Headers. Vous serez introduit à la messagerie avec le serveur de mail gratuit de Windows 2003 POP3/SMTP et à la création des boites à mail pour les utilisateurs. Vers la fin du cours, vous serez capable d’installer et configurer un serveur de partage Internet NAT dynamique et statique afin de donner accès aux services (Web, Mail et https) à partir d'Internet. Vous installerez et configurerez un serveur VPN afin de donner, aux utilisateurs distants, un accès sécurisé au réseau de l'entreprise.

60 h

Serveur Microsoft II (Windows 2008)

• Installer, configurer et administrer un serveur 2008.

 

Windows server 2008 est le successeur de Windows server 2003. Dans ce cours, vous approfondirez les notions communes aux deux systèmes d’exploitation et étudierez les nouvelles fonctionnalités de Windows server 2008 et de son client Windows 7. Vous débuterez par l'installation et la configuration de base d'un serveur 2008 et reviendrez sur la notion d’Active Directory avec l'installation d'un domaine. Vous continuerez avec la création des utilisateurs, des groupes, des profiles errants et des répertoires personnels et installerez des imprimantes. Vous vous pratiquerez au mappage des lecteurs réseau à l'aide des scripts VBS. Vous découvrirez, ensuite, la gestion des disques et volumes avec la création et la configuration des systèmes RAID-0, RAID-1 et RAID-5 afin d'augmenter la performance des disques tout en conservant une certaine tolérance de pannes. Vous explorerez la gestion des Quotas et des filtres afin de mieux gérer l'espace disque sur un serveur de fichiers. La console de gestion des stratégies de groupe (GPMC) est, également, étudiée dans ce cours. Vous configurez différentes GPOs pour déployer des configurations et installer automatiquement des applications (Office 2007/2010, Wireshark) utilisant des .msi ou des .exe avec un fichier .ZAP. Vous découvrirez, également, le nouveau IIS 7.0 de Microsoft Windows en créant plusieurs sites web avec host-headers et des sites FTP. Les différentes méthodes d'authentification d'IIS (Basic, Windows Integrated, Anonymous ...) seront passées en revue. Vous reviendrez sur la traduction d’adresses réseau (NAT) pour le partage Internet et la publication des ressources (Web, FTP, HTTPS) sur Internet. Vous explorerez le nouveau VPN avec le protocole SSTP. Vous apprendrez à utiliser un certificat comme moyen d’authentification et en ferait le test lors d’une connexion VPN avec Windows Server 2008 et le client Windows 7.

60 h

Sécurité des accès aux réseaux informatiques (Check Point)

• Assurer la sécurité des accès aux réseaux par Check Point (accès sécurisé de l’externe et publication sécurisée des services de l’entreprise sur Internet).

 

Le cours de sécurité des accès se donne en deux parties : les cinq phases d’une attaque informatique et la sécurisation du réseau. La phase 1 se concentre sur la reconnaissance de la victime (Social Engineering 'Social Engineer ToolKit', Poubelles, Web, Whois, Physique, DNS...). La phase 2 se concentre sur le scanning (scan de modems 'Tone-Loc', scan de ports services et OS 'Nmap, SuperScan, NetScanTools...' et scan de vulnérabilités 'Nessus, Retina, OpenVAS, GFI LanGuard...'). La phase 3 se concentre sur les façons d’accéder à un réseau non protégé (Attaques sur le réseau 'Ettercap, Cain and Abel...', Attaques sur OS 'Metasploit...', Attaques sur des services/applications 'Metasploit', Attaques des mots de passes 'LC5, Caïn&Abel, WireShark, Brutus...', Attaques sur Wifi 'AirCrack, Kismet, NetStrumbler...’). La phase 4 se concentre sur les méthodes utilisées pour garder l'accès pour utilisation future (RootKits, Virus'VBSGenerator', BackDoor('SubSeven, Netcat'...). La phase 5 se concentre sur les techniques pour effacer les traces de l'attaque informatique (Modifier les logs 'WinZapper', Audit, ADS de NTFS...). Vous explorerez les différentes techniques utilisées par les attaquants (Hackers) comme le déni de service (DOS), la prise de contrôle d'une machine et l’utilisation d’une machine pour lancer une attaque (Zombies). Vous apprendrez, surtout, à vous protégez contre chacune des techniques utilisées par ces attaquants. La partie deux se concentre sur la façon de sécuriser les accès à un réseau informatique afin de minimiser les risques d'attaque. L'architecture de sécurité de Check-Point est utilisée comme exemple. Vous installerez, configurerez et testerez un réseau comprenant un réseau interne avec une DMZ (Zone Démilitarisée) sécurisé à l'aide des produits de Check-Point (Smart Centre, Smart Dashboard, Firewall, SPLAT). Vous sécuriserez l'accès à Internet et l'accès de l'externe vers la DMZ. À la fin du cours, vous serez capable de sécuriser les accès à un réseau informatique en installant et configurant un Firewall. De plus, vous serez en mesure de mettre les ressources d'une entreprise sur Internet en minimisant les risques d'attaque.

60 h

Messagerie (MS-Exchange Server)

• Installer, configurer et administrer le serveur de messagerie Microsoft Exchange Server.

 

La messagerie électronique est un système de communication indispensable dans de nombreuses entreprises. Sa disponibilité 24 heures sur 24 et sa fiabilité est une préoccupation permanente pour l’administrateur de réseaux. Dans ce cours, vous aborderez Microsoft Exchange, un système de messagerie très sophistiqué et très répandu dans les entreprises à travers le monde. Sa gestion fait partie des tâches les plus courantes de l’administrateur. Vous découvrirez les protocoles de la messagerie et maitriserez l’installation de Microsoft Exchange dans un domaine Active Directory. À travers des laboratoires pratiques, vous vous initierez à la configuration des divers types de clients de messagerie avec MS-Exchange. Vous apprendrez à configurer les listes de distributions en utilisant les filtres LDAP, à créer des groupes de distributions et des groupes basés sur une requête LDAP. Vous ajouterez des groupes de stockages et des banques d’informations et déplacerez des boites aux lettres entre serveurs Exchange. Vous mettrez en place des groupes administratifs et des groupes de routages et configurez une connexion entre ces derniers. Vous définirez des limites de stockages par rapport à une boite aux lettres et à une banque de boites aux lettres. Vous développerez des stratégies destinataires et des stratégies systèmes. Vous apprivoiserez le client Outlook de MS-Office pour le travail de collaboration et configurerez divers paramétrages utiles pour les entreprises. Vous explorerez la configuration et l’utilisation des dossiers publiques. Finalement, vous exploiterez les outils de dépannage d’Exchange pour assurer une grande disponibilité du système de messagerie.

45 h

Administration de serveur de bases de données

• Implanter, configurer, sécuriser, optimiser et administrer les serveurs de bases de données de type SQL Serveur.

 

Le cours d’administration de bases de données vous introduira aux « Systèmes de Gestion de Bases de Données Relationnelles » (SGBDR). Vous serez en mesure d’installer, configurer et maintenir un SGBDR de façon efficace. Le SGBDR utilisé durant le cours est Microsoft SQL Server 2012. Une introduction sur les besoins et les propriétés d’un SGBDR vous amènera à réaliser l’importance du travail d’un Administrateur de bases de données. Vous découvrirez l’architecture de Microsoft SQL Server 2012, créerez et manipulerez de façon « sécuritaire » des fichiers de données et des journaux de transactions. La gestion des sauvegardes, modes de récupérations et stratégies de restaurations seront également pratiqués afin de bien vous préparer à un éventuel incident matériel tel que la perte d’un disque ou d’un lien de communication avec le stockage réseau. La sécurité étant un point important, vous apprendrez à bien gérer les différents rôles et permissions des utilisateurs et administrateurs de base de données. L’application du modèle cryptographique d’SQL Server vous initiera au cryptage des colonnes de données par certificats et à la technologie « Transparent Data Encryption » qui protège toute information paginée sur l’unité de stockage. La communication entre serveurs et la publication du service de base de données sur le réseau vous permettra de vous connecter aux machines de vos collègues afin d’accéder de façon sécuritaire aux données. Les outils de performances renforceront d’avantage votre compétence par la manipulation des différents indexes, compteurs de performance et outils d’analyse de requêtes SQL. Finalement, les différentes solutions de hautes disponibilités pratiquées en classe concluent ce cours très chargé par les exercices d’implémentations de Database Mirroring, Log Shipping et la Réplication.

270 h

Stage de fin d'études

• Consolider les notions acquises par une application concrète des concepts et des apprentissages en situation réelle.
• Pratiquer le métier en étant en contact direct avec les clients et les utilisateurs. Budgets, délais et résolution de problèmes.