Programme des cours 2022-2023
ATTENTION : version 2021-2022 de l'engagement pédagogique
INAD0001-2  
Principes de programmation 1
  • Méthodes de programmation
  • Laboratoire de méthodes de programmation
  • Spécifications et testing
Durée :
Méthodes de programmation : 48h Th
Laboratoire de méthodes de programmation : 36h Pr
Spécifications et testing : 12h Th
Nombre de crédits :
Bachelier en informatique de gestion8
Nom du professeur :
Méthodes de programmation : Isabelle Dony
Laboratoire de méthodes de programmation : Benoit Burlion, Cédric Peeters
Spécifications et testing : Isabelle Dony
Coordinateur(s) :
Isabelle Dony
Langue(s) de l'unité d'enseignement :
Langue française
Organisation et évaluation :
Enseignement au premier quadrimestre, examen en janvier
Unités d'enseignement prérequises et corequises :
Les unités prérequises ou corequises sont présentées au sein de chaque programme
Contenus de l'unité d'enseignement :
La notion de variable - les expressions arithmétiques et logiques - les structures de contrôle - les types de données - les tableaux - les algorithmes de tri et de recherche - les fonctions et procédures - les spécifications - les tests
Méthodes de programmation
voir UE
Laboratoire de méthodes de programmation
voir UE
Spécifications et testing
On se focalise  en particulier sur le testing et les spécifications
- spécification en français et formelle
- qualité d'un code
- importance des tests - (dont les tests unitaires)
Acquis d'apprentissage (objectifs d'apprentissage) de l'unité d'enseignement :
L'objectif est de donner aux étudiants des outils leur permettant de concevoir une solution organique structurée et efficace, la solution est rédigée dans un pseudo-code indépendant du langage choisi pour l'implémentation. Acquis d'apprentissage visés et compétences correspondantes en termes de savoirs:
  • Connaître les notions et structures de contrôle de base de l'algorithmique .
  • Connaître les différentes implémentations possibles des données en mémoire centrale
  • Connaître un langage de spécification .
en termes de savoir-faire:
  • Lire et comprendre l'énoncé d'un problème (compétence : poser les questions adéquates et adaptées aux spécifications demandées et comprendre son interlocuteur pour identifier les besoins de l'utilisateur)
  • Analyser un problème simple et proposer une solution informatique pour le résoudre en utilisant les concepts et techniques relatifs à l'algorithmique de base.(compétence : concevoir, implémenter et maintenir des algorithmes répondant aux spécifications et fonctionnalités fournies et suivre un protocole méthodologique visant à cerner un problème)
  • Faire un choix justifié entre plusieurs représentations des informations et plusieurs algorithmes pour les traiter. (compétences : concevoir, implémenter et maintenir des algorithmes répondant aux spécifications et fonctionnalités fournies et concevoir, implémenter et utiliser avec maîtrise un ensemble structuré de données)
  • Fournir un code lisible
  • Fournir une documentation de la solution (compétence : rédiger un document technique, un rapport, documenter son travail afin d'en permettre la traçabilité)
  • Rédiger des spécifications claires et précises (compétence : rédiger un document technique, un rapport, documenter son travail afin d'en permettre la traçabilité)
  • Choisir ses cas de tests judicieusement (Compétence : mettre en œuvre un processus de validation)
en termes de savoir-être/devenir
  • Fournir des codes lisibles et documentés. (Compétence : documenter son travail afin d'en permettre la traçabilité)
  • Respecter les échéances
Méthodes de programmation
voir UE
Laboratoire de méthodes de programmation
voir UE
Spécifications et testing
voir UE
Savoirs et compétences prérequis :
aucun
Méthodes de programmation
voir UE
Laboratoire de méthodes de programmation
voir UE
Spécifications et testing
voir UE
Activités d'apprentissage prévues et méthodes d'enseignement :
voir AA
Méthodes de programmation
Cours magistral couvrant les notions suivantes :

La notion de variable - les expressions arithmétiques et logiques - les structures de contrôle - les types de données - les tableaux - les algorithmes de tri et de recherche - les fonctions et procédures - les spécifications - les tests
De nombreux exercices sur papier sont réalisés par le professeur dans le cours de méthode de programmation. Plusieurs solutions peuvent être proposées en fonction des suggestions faites par les étudiants. Ces solutions sont toujours commentées et comparées.
Les activités réalisées dans cette A.A se complètent avec celles de "spécifications et testing".
Les activités réalisées dans cette A.A sont en étroite relation avec ce qui est appliquées dans "laboratoire de méthode de programmation".
Toute activité organisée durant le quadrimestre (par exemple une conférence), non dispensée par l'enseignant, et qui est en rapport avec la matière de l'activité d'apprentissage, compte dans les heures de la dite activité d'apprentissage. La matière abordée par l'activité en question pourra faire l'objet d'une évaluation, quelle soit continue ou certificative.
Laboratoire de méthodes de programmation
Exercices à réaliser en classe avec interventions et aide de l'enseignant + exercices  à réaliser à la maison Certains exercices sont corrigés au tableau. Des feedbacks globaux ou individuels sont également parfois donnés aux étudiants.
Toute activité organisée durant le quadrimestre (par exemple une conférence), non dispensée par l'enseignant, et qui est en rapport avec la matière de l'activité d'apprentissage, compte dans les heures de la dite activité d'apprentissage. La matière abordée par l'activité en question pourra faire l'objet d'une évaluation, quelle soit continue ou certificative.
Spécifications et testing
Testing et Spécification pour chaque algorithme résolu en classe
Mode d'enseignement (présentiel, à distance, hybride) :
en présentiel si les conditions sanitaires le permettent. 
en distanciel sinon via Discord ou via Teams
Méthodes de programmation
voir UE
Laboratoire de méthodes de programmation
en présentiel en laboratoire ou en distanciel selon la situation sanitaire
Spécifications et testing
voir UE
Lectures recommandées ou obligatoires et notes de cours :
   
Méthodes de programmation
les powerpoints électroniques sont disponibles sur Moodle en fonction de l'avancement du cours
Les solutions des exercices résolus en classe sont partiellement disponibles sur Moodle en fonction de l'avancement du cours  
Laboratoire de méthodes de programmation
exercices proposés sur MOODLE
Modalités d'évaluation et critères :
Des évaluations continues (travaux et/ou interrogations) sont prévues en laboratoire de méthode de programmation.
La pondération est la suivante: évaluation continue 30%, examen écrit intégré (a priori en présentiel) 70%.
Si les conditions sanitaires l'exigent l'examen sera en mode distanciel. 
En deuxième session (août/septembre) seule la note de l'examen compte. L'évaluation continue ne fait donc plus partie de la note globale  
Méthodes de programmation
voir UE
Laboratoire de méthodes de programmation
Évaluation continue : certains travaux  et/ou des interrogations  font partie de la note d'évaluation continue de l'unité. Un travail à rendre ou une interrogation est annoncé à l'avance.
L'examen est une épreuve intégrée avec les autres activités de l'unité principe de programmation 1 (voir détails dans l'unité).

Remarque valable pour toutes les activités d'apprentissage de l'unité : lorsqu'on vous demande de rendre un travail ou un exercice ou lorsque vous devez rendre un examen ou une interrogation, si plusieurs copies sont fortement similaires, la note finale est divisée par le nombre de copies similaires. 
Spécifications et testing
voir UE
Stage(s) :
Remarques organisationnelles :
"Méthode de progammation" et "Spécifications et testing" sont deux AA qui se complètent et ne se distinguent pas nécessairement dans l'horaire.
Méthodes de programmation
Méthode de progammation et analyse de programmes sont deux AA qui se complètent et ne se distinguent pas dans l'horaire.
Contacts :
Méthodes de programmation
isabelle.dony at hers.be
Laboratoire de méthodes de programmation
benoit.burlion at hers.be cedric.peeters at hers.be