IMAGES

Année académique : 2023-2024
Département : Sciences et techniques
Domaine d'étude : Sciences
Cursus : Informatique - orientation technologies de l’informatique
Volume horaire : 90 périodes
Nombre de crédits : 9
Implantation(s) : Londres
Quadrimestre(s) : Q1
Niveau du cadre francophone de certification : 6

Intitulé U.E. : Programmation Option Code U.E. : IN317
Pondération : 180 pts Cycle : 1 Obligatoire : oui Bloc : Bloc 3 Langue d'enseignement : Français

Activités d'apprentissage composant l'UE :

Titre : Titulaire(s) de l'AA : Nombre d'heures :
Programmation client-serveur laboratoire 1Öngün Nazmi, 10
Programmation client-serveur laboratoire 2Comhaire Anne, 20
Programmation client-serveur théorie 1Öngün Nazmi, 20
Programmation client-serveur théorie 2Comhaire Anne, 40

Coordonnées du responsable de l'UE :

Comhaire Anne (AnneLise.COMHAIRE@hel.be) 

Coordonnées des intervenants de l'UE :

Comhaire Anne (AnneLise.COMHAIRE@hel.be), Öngün Nazmi (Nazmi.ONGUN@hel.be),

Prérequis :

Corequis :

Compétences visées

Collaborer à la conception, à l’amélioration et au développement de projets techniques.

- Analyser une situation donnée sous ses aspects techniques et scientifiques.
- Elaborer une méthodologie de travail.
- Planifier des activités.
- Proposer des solutions qui tiennent compte des contraintes.
- Rechercher et utiliser les ressources adéquates.

Collaborer à l'analyse et à la mise en œuvre d'un système informatique.

- En choisissant une méthode d’analyse adaptée, exprimer une solution avec les formalismes appropriés.
- Sur base de spécifications issues d’une analyse : développer une solution logicielle | mettre en œuvre une architecture matérielle.

Communiquer et informer.

- Présenter des prototypes de solution et d’application techniques.
- Utiliser le vocabulaire adéquat.

Intégrer et faire communiquer différents composants software et hardware dans un environnement hétérogène.

- Analyser le schéma, installer et exploiter une base de données informatisée.
- Réaliser une application informatique à l'aide d'un langage de programmation procédural ou orienté objet, dans différents environnements de développement.

S’engager dans une démarche de développement professionnel.

- Développer une pensée critique.
- S’informer et s’inscrire dans une démarche de formation permanente.
- Travailler tant en autonomie qu’en équipe dans le respect de la structure de l’environnement professionnel.

S’inscrire dans une démarche de respect des réglementations

- Intégrer les différents aspects du développement durable.
Description du contenu des activités d'apprentissage (AA) :

1 : Programmation client-serveur laboratoire 1

Savoir

Mêmes connaissances que pour la partie théorique.

Savoir faire

Réalisation/implémentation d'applications basées sur des cahiers des charges donnés en séances de laboratoire

Chaque étudiant sera amené à présenter à ses condisciples un exposé oral basé sur un sujet donné 6 semaines à l'avance. L'étudiant sera tenu de produire un rapport circonstancié d'une dizaine de pages relatif au sujet abordé et qui sera distribué à ses condisciples en guise de mini tutoriel de base associé au sujet traité.

Savoir être

Etre ponctuel et respecter les consignes.

L'autonomie est le savoir-être central de cette activité d'apprentissage, les solutions étant construites par l'étudiant sous la direction de l'enseignant qui joue le rôle du demandeur et du conseiller technique en posant requêtes, critiques et conseils.



2 : Programmation client-serveur laboratoire 2

Savoir

Plate-forme orientée Windows : ASP.NET MVC

Mêmes connaissances que pour la partie théorique

Savoir faire

Réalisation d'une application web implémentant la gestion complète d'une base de données évoluée et ce sur base d'un cahier des charges à analyser.

Savoir être

Etre ponctuel et respecter les consignes.

L'autonomie est le savoir-être central de cette activité d'apprentissage, les solutions étant construites par l'étudiant sous la direction de l'enseignant qui joue le rôle du demandeur et du conseiller technique en posant requêtes, critiques et conseils.



3 : Programmation client-serveur théorie 1

Savoir

Compléments de php :

Notion de session
Notion de sécurisation d'une page web (parades aux injections SQL et attaques par XSS)
Connexion à un serveur de base de données
 - Gestion des requêtes préparées
 - Utilisation de procédures stockées
Notions de programmation Objet en php  - Objets PDO
Installation et déploiement d'un CMS basé sur php/mysql (Par exemple : Joomla, Drupal, Wordpress)
Implémentation du modèle MVC


Compléments de NodeJS :

Etude de Modules compléméntaires :
 - Petit Framework / Bibliothèque : Express.js
 - Temps réel : Socket.io
 - Template : EJS
Format JSON, fichier package.json
Création d'une application "temps réel"

Savoir faire

Maîtriser les bases des thèmes abordés et faire preuve d'autodidactisme et de proactivité dans l'activité d'apprentissage de laboratoire associée.

Chaque étudiant sera amené à présenter à ses condisciples un exposé oral basé sur un sujet donné 6 semaines à l'avance. L'étudiant sera tenu de produire un rapport circonstancié d'une dizaine de pages relatif au sujet abordé et qui sera distribué à ses condisciples en guise de mini tutoriel de base associé au sujet traité.

Savoir être

Etre ponctuel et respecter les consignes.

L'autonomie est le savoir-être central de cette activité d'apprentissage, les solutions étant construites par l'étudiant sous la direction de l'enseignant qui joue le rôle du demandeur et du conseiller technique en posant requêtes, critiques et conseils.



4 : Programmation client-serveur théorie 2

Savoir

Plate-forme orientée Windows : ASP.NET MVC

Les matières suivantes seront abordées :

  • MVC : le pattern MVC, les routes, les tests automatiques, le modèle, les contrôleurs, les vues, les migrations, Entity Framework, la Fluent API, les helpers, les outils de validation, le Scaffolding,...
  • D'autres matières seront abordées en fonction des travaux présentés par les étudiants, authentification, design pattern, débogage, noSQL, React/Angular/Blazor,...

30% pourra être consacré à une matière différente en fonction des opportunités et des choix des étudiants.

Savoir faire

Capacité d'apprentissage en autodidacte sur des matières récentes et évolutives,

Capacité à choisir son propre chemin parmi le foisonnement des outils disponibles.

Savoir être

Etre ponctuel et respecter les consignes

L'autonomie est le savoir-être central de cette activité d'apprentissage, les solutions étant construites par l'étudiant sous la direction de l'enseignant qui joue le rôle du demandeur et du conseiller technique en posant requêtes, critiques et conseils.



Description des méthodes d'enseignement :

1 : Programmation client-serveur laboratoire 1

Chacun avance sur son propre chemin. L'enseignant sera là pour aiguiller et guider chaque étudiant.

 



2 : Programmation client-serveur laboratoire 2

Un thème sera abordé à chaque séance par le professeur.

Les étudiants seront amenés à le tester en autonomie, chacun avançant sur son propre chemin à la découverte de technologies proposées, des travaux seront demandés régulièrement.

L'enseignant sera là pour aiguiller et guider chaque étudiant.

Le cours contient au moins 50% de travail en autonomie.

L’enseignement se fera en présentiel, avec peut-être quelques séances à distance qui pourraient être parfois des séances de coaching individuel.

 



3 : Programmation client-serveur théorie 1

Le choix des méthodes et des outils les plus adéquats sera toujours abordé de manière préalable au développement.

Les bases seront exposées au cours. Les étudiants seront ensuite « lâchés » en autonomie. L'enseignant s'efforcera d'amener les étudiants à être capables de travailler tant seuls qu'en équipe, à l'autodidactisme pratiquement indispensable dans ces matières vastes, complexes et en permanente mutation. Bien entendu, l'enseignant restera attentif à l'avancement des travaux et instaurera une guidance appropriée à chaque étudiant.



4 : Programmation client-serveur théorie 2

Les bases seront exposées au cours.

Le choix des méthodes et des outils les plus adéquats sera toujours abordé de manière préalable au développement.

Les étudiants seront ensuite « lâchés » en autonomie. Le cours contient au moins 50% de travail en autonomie.

L'enseignant s'efforcera d'amener les étudiants à être capables de travailler tant seuls qu'en équipe, à l'autodidactisme pratiquement indispensable dans ces matières vastes, complexes et en permanente mutation. Bien entendu, l'enseignant restera attentif à l'avancement des travaux et instaurera une guidance appropriée à chaque étudiant.
Il est possible que des exposés sur d'autres matières soient présentés aux étudiants, par le professeur, d'anciens étudiants ou des experts extérieurs.

L’enseignement se fera en présentiel, avec peut-être quelques séances à distance qui pourraient être parfois des séances de coaching individuel.

Toutefois, il peut passer en hybride (mix de présentiel et de distanciel) ou en distanciel complet si la situation l'impose (vidéos de présentation de la théorie et échanges via vidéo-conférence).

 



Modalités et critères d'évaluation :

1 : Programmation client-serveur laboratoire 1

Pour les AA Programmation client-serveur théorie 1 et Programmation client-serveur laboratoire 1  : le jour de l'examen : épreuve intégrée en 2 volets, un volet par thème du cours théorique associé à une application de longue haleine à développer, à présenter et défendre devant PC .

L'évaluation de chaque application se fera selon les critères suivants :

  • l'exactitude du (des) programme(s) et/ou implémentations (fonctionnement correct et respect des spécifications),
  • la défense orale qui amènera l'étudiant à prouver, d'une part sa connaissance du/des langages et/ou de l'outil abordé, et d'autre part, qu'il maîtrise le(s) programme(s) et/ou application qu'il présente.
  • la justification des choix opérés pour les éléments techniques,
  • la qualité de l'architecture des applications
  • la précision des commentaires des listings,
  • la lisibilité générale de ceux-ci,
  • la créativité et le design des applications.

La thématique associée au CMS fera l'objet d'une interrogation orale devant PC en séance de laboratoire. La date de l'interrogation est fixée dès la rentrée du congé d'automne, donc début novembre.

L'exposé devant les condisciples fait également l'objet de l'évaluation.

NB : en cas d'ajournement, les points relatifs à la partie associée à l'exposé devant les condisciples seront figés et reportés tels quels dans les cotations éventuelles ultérieures.

2 : Programmation client-serveur laboratoire 2

Un examen oral est organisé à chacune des sessions et prend en compte:

  • l'exactitude du (des) programme(s) (fonctionnement correct et respect des spécifications),
  • la défense orale qui amènera l'étudiant à prouver, d'une part sa connaissance du/des langages et de la programmation web en environnement Windows et, d'autre part, qu'il maîtrise le(s) programme(s) qu'il présente.
  • la justification des choix opérés pour le choix de la structure de base de l'application,
  • la justification des choix techniques opérés lors de la rencontre de problèmes,

3 : Programmation client-serveur théorie 1

Pour les AA Programmation client-serveur théorie 1 et Programmation client-serveur laboratoire 1  : le jour de l'examen : épreuve intégrée en 2 volets, un volet par thème du cours théorique associé à une application de longue haleine à développer, à présenter et défendre devant PC .

L'évaluation de chaque application se fera selon les critères suivants :

  • l'exactitude du (des) programme(s) et/ou implémentations (fonctionnement correct et respect des spécifications),
  • la défense orale qui amènera l'étudiant à prouver, d'une part sa connaissance du/des langages et/ou de l'outil abordé, et d'autre part, qu'il maîtrise le(s) programme(s) et/ou application qu'il présente.
  • la justification des choix opérés pour les éléments techniques,
  • la qualité de l'architecture des applications
  • la précision des commentaires des listings,
  • la lisibilité générale de ceux-ci,
  • la créativité et le design des applications.

La thématique associée au CMS fera l'objet d'une interrogation orale devant PC en séance de laboratoire. La date de l'interrogation est fixée dès la rentrée du congé d'automne, donc début novembre.

L'exposé devant les condisciples fait également l'objet de l'évaluation.

NB : en cas d'ajournement, les points relatifs à la partie associée à l'exposé devant les condisciples seront figés et reportés tels quels dans les cotations éventuelles ultérieures.

4 : Programmation client-serveur théorie 2

Evaluation continue sur bases des travaux rendus en classe.

Un travail de groupe sur une matière non vue au cours sera présentée aux autres étudiants et au professeur. Ce travail consistera en une présentation succinte et en une  petite application réalisée en direct avec tous et par tous qui permettra aux autres de découvrir cette technologie. L'objectif de cette démarche est clairement une veille technologique.

Examen oral de défense des applications réalisées.

L'examen oral se fera sur base d'un rapport et des codes rendus par l'étudiant et sur base des critères suivants :

    la justification des choix opérés pour les éléments techniques de base de l'architecture de l'application,
    la justification des choix techniques opérés lors de la rencontre de problèmes,
    de l'architecture de l'application,
    la qualité du rapport à réaliser sur base des éléments demandés,
    la précision des commentaires des listings,
    la lisibilité générale de ceux-ci,
    la créativité et le design de l'application.

Pondération A.A. :

1 : Programmation client-serveur laboratoire 1

Un examen oral est organisé à chacune des sessions et prend en compte:
 La réalisation du développement des projets suivants :
-    Application php : 9 points
-    Application NodeJS : 9 points
-    CMS : 6 points
-    Exposé devant les condisciples : 6 points. (Rappel : en cas d'ajournement : report automatique des points obtenus le jour de l'exposé).

 

2 : Programmation client-serveur laboratoire 2

Sessions 1 et 2 : défense orale du projet : 20 points.

3 : Programmation client-serveur théorie 1

Evaluation sur les différents volets dont la pondération est la suivante

  • Application php : 9 points
  • Application NodeJS : 9 points
  • CMS : 6 points
  • Exposé devant les condisciples : 6 points. (Rappel : en cas d'ajournement : report automatique des points obtenus le jour de l'exposé).

Une défense orale permet à l’étudiant de démontrer ses acquis théoriques en utilisant des justifications théoriques pour expliquer les choix et les développements mis en place lors l’évaluation des projets réalisés.

4 : Programmation client-serveur théorie 2

Session 1 et 2

  • Evaluation continue définitive : 10 points.
  • Evaluation du travail de groupe : 15 points
  • Examen : 15 points.
Dispositions spéciales COVID-19 :

1 : Programmation client-serveur laboratoire 1

2 : Programmation client-serveur laboratoire 2

3 : Programmation client-serveur théorie 1

4 : Programmation client-serveur théorie 2

Dispositions spéciales COVID-19 (session août/septembre 2020) :

1 : Programmation client-serveur laboratoire 1

2 : Programmation client-serveur laboratoire 2

3 : Programmation client-serveur théorie 1

4 : Programmation client-serveur théorie 2

Sources, références et supports éventuels :

1 : Programmation client-serveur laboratoire 1

Notes de cours et démos sont distribuées au cours. Les références complémentaires se trouvent sur internet

Mon site :www.ong-info.be « mise à jour de l’ensemble des notes de cours et des exercices + des tutos pour les labos

via un site de e-learning »

 



2 : Programmation client-serveur laboratoire 2

Notes de cours sur la plateforme du moment fournie par la HEL.

Codes sources fournis ou élaborés lors des cours théoriques.

Documents complémentaires fournis par l’enseignant.

Internet.



3 : Programmation client-serveur théorie 1

Notes de cours et démos sont distribuées au cours. Les références complémentaires se trouvent sur internet

Mon site :www.ong-info.be « mise à jour de l’ensemble des notes de cours et des exercices + des tutos pour les labos

via un site de e-learning »



4 : Programmation client-serveur théorie 2

Notes de cours sur la plateforme du moment fournie par la HEL.

Codes sources fournis ou élaborés lors des cours théoriques.

Documents complémentaires fournis par l’enseignant.

Internet.



Autres informations (AA) :

1 : Programmation client-serveur laboratoire 1

2 : Programmation client-serveur laboratoire 2

Une note de régime de 5 à 10%  pourra être attribuée pour l'attitude en classe, avec les autres étudiants et le professeur. Que ce soit lors des travaux individuels ou lors des travaux de groupes.

3 : Programmation client-serveur théorie 1

4 : Programmation client-serveur théorie 2

En ce qui concerne les directives édictées par le gouvernement pour le coronavirus, elles seront respectées dans la mesure où les locaux aquéquats et moyens sanitaires spécifiques seront mis à disposition par le PO.

Pondération U.E. :

Moyenne arithmétique pondérée répartie comme suit

  • Programmation client-serveur théorie 1 + Programmation client-serveur laboratoire 1 : 60 points
  • Programmation client-serveur théorie 2 + Programmation client-serveur laboratoire 2 : 120 points
Pour les unités optionnelles de langues de du département économique, veuillez vous référer à la fiche de langue correspondante (en cours obligatoire).
Toute modification éventuelle de cette fiche en cours d’année ne peut se faire qu’exceptionnellement et avec l’accord de la direction départementale conformément à l’article 77 du décret du 7/11/2013 (force majeure touchant les enseignants responsables).