TexteOfficielProgrammeISN : Différence entre versions

De Sciencinfolycee
Aller à : navigation, rechercher
m (Éléments de programme)
m (Représentation de l’information)
 
(78 révisions intermédiaires par 3 utilisateurs non affichées)
Ligne 6 : Ligne 6 :
  
 
= Préambule =
 
= Préambule =
Les sciences informatiques, et plus généralement les sciences du numérique, ont aujourd’hui envahi nos vies professionnelles et personnelles. Elles ont entraîné des mutations profondes dans nos sociétés (culture, sciences, économie, politique …). Pourtant, seule une faible partie de la population maîtrise les mécanismes fondamentaux qui régissent ces mutations et est en mesure d’apprécier les enjeux sociétaux qui en découlent. L’enseignement de l’informatique au lycée peut contribuer à réduire cette fracture.
+
Les sciences informatiques, et plus généralement les sciences du numérique, ont aujourd’hui envahi nos vies professionnelles et personnelles. Elles ont entraîné des mutations profondes dans nos sociétés (culture, [[Une_deuxième_révolution_galiléenne_%3F|sciences]], économie, politique …). Pourtant, seule une faible partie de la population maîtrise les mécanismes fondamentaux qui régissent ces mutations et est en mesure d’apprécier les enjeux sociétaux qui en découlent. L’enseignement de l’informatique au lycée peut contribuer à réduire cette fracture.
  
L’objectif de l’enseignement de spécialité ISN en classe terminale de la série S n’est pas de former des experts en informatique, mais plutôt de fournir aux élèves quelques notions fondamentales et de les sensibiliser aux questions de société induites.  
+
L’objectif de l’enseignement de spécialité ISN en classe terminale de la série S n’est pas de former des experts en informatique, mais plutôt de fournir aux élèves [[Pourquoi_et_comment_le_monde_devient_numérique_(G._Berry)|quelques notions fondamentales]] et de les sensibiliser aux questions de société induites.  
  
 
Il s’agit d’un enseignement d’ouverture et de découverte des problématiques actuelles, adapté à la société d’aujourd’hui, qui valorise la créativité et contribue à l’orientation.
 
Il s’agit d’un enseignement d’ouverture et de découverte des problématiques actuelles, adapté à la société d’aujourd’hui, qui valorise la créativité et contribue à l’orientation.
  
 
= Mise en activité de l’élève =
 
= Mise en activité de l’élève =
Afin de refléter le caractère scientifique et technique propre à la discipline et de développer l’appétence des élèves en faveur de cet enseignement nouveau pour eux, il convient de les mettre en situation d’activité aussi souvent que possible. Une pédagogie de projet est à privilégier pour favoriser l’émergence d’une dynamique de groupe. Dans ce cadre, le professeur joue un rôle central : il impulse et coordonne les projets, anime les débats et met en place l’évaluation et ses modalités.
+
Afin de refléter le caractère scientifique et technique propre à la discipline et de développer l’appétence des élèves en faveur de cet enseignement nouveau pour eux, il convient de les mettre en situation d’activité aussi souvent que possible. Une pédagogie de projet est à privilégier pour favoriser l’émergence d’une dynamique de groupe. Dans ce cadre, [[Enseigner_l'informatique_(Hartmann)|le professeur joue un rôle central]] : il impulse et coordonne les projets, anime les débats et met en place [[Evaluations_(sélection_thématique)|l’évaluation et ses modalités]].
  
L’informatique étant connexe à de nombreux domaines, il est utile d’envisager un travail pluridisciplinaire : la complémentarité des approches, associée à la richesse d’un travail collaboratif, joue un rôle stimulant pour les élèves et les équipes pédagogiques. Le professeur peut s’appuyer sur la mise en place d’exposés suivis de débats au sein de la classe pour introduire des [[Soci%C3%A9t%C3%A9_Num%C3%A9rique|questions sociétales]] liées à la [[Les_racines_scientifiques_du_monde_numérique|généralisation du numérique]]. Enfin, lors de la préparation des exposés, comme lors du développement des projets, le professeur guide les élèves dans leurs recherches documentaires s’appuyant sur des livres ou des ressources présentes sur le Web.
+
L’informatique étant connexe à de nombreux domaines, il est utile d’envisager un [[Travail_pluridisciplinaire|travail pluridisciplinaire]] : la complémentarité des approches, associée à la richesse d’un travail collaboratif, joue un rôle stimulant pour les élèves et les équipes pédagogiques. Le professeur peut s’appuyer sur la mise en place d’exposés suivis de débats au sein de la classe pour introduire des [[Questions sociétales|questions sociétales]] liées à la [[Les_racines_scientifiques_du_monde_numérique|généralisation du numérique]]. Enfin, lors de la préparation des exposés, comme lors du développement des projets, le professeur guide les élèves dans leurs [[Recherche_documentaire|recherches documentaires]] s’appuyant sur des livres ou des ressources présentes sur le Web.
  
 
La progression peut suivre un rythme annuel construit autour de périodes spécifiques favorisant une alternance entre différents types d’activités (acquisition de nouveaux savoirs, exposés, projets), permettant d’entretenir l’intérêt des élèves et de développer leur autonomie.
 
La progression peut suivre un rythme annuel construit autour de périodes spécifiques favorisant une alternance entre différents types d’activités (acquisition de nouveaux savoirs, exposés, projets), permettant d’entretenir l’intérêt des élèves et de développer leur autonomie.
  
Les activités pratiques et la réalisation de projets sont organisées dans une salle qui permet d’enseigner les bases et notions théoriques fondamentales, avec un recours possible aux outils numériques de présentation adaptés. Un environnement numérique suffisamment ouvert est choisi pour favoriser cette dynamique de projet.
+
Les activités pratiques et la réalisation de projets sont organisées dans une salle qui permet d’enseigner les bases et notions théoriques fondamentales, avec un recours possible aux [[Logiciels_de_présentation|outils numériques de présentation]] adaptés. Un environnement numérique suffisamment ouvert est choisi pour favoriser cette dynamique de projet.
  
 
= Les projets =
 
= Les projets =
Les projets réalisés par les élèves, sous la conduite du professeur, constituent un apprentissage fondamental tant pour la compréhension de l’informatique et des sciences du numérique que pour l’acquisition de compétences variées. Ils peuvent porter sur des problématiques issues d’autres disciplines et ont essentiellement pour but d’imaginer des solutions répondant à l’expression d’un besoin.
+
Les [[Métiers_de_l'Informatique#Projet|projets]] réalisés par les élèves, sous la conduite du professeur, constituent un apprentissage fondamental tant pour la compréhension de l’informatique et des sciences du numérique que pour l’acquisition de compétences variées. Ils peuvent porter sur des problématiques issues d’autres disciplines et ont essentiellement pour but d’imaginer des solutions répondant à l’expression d’un [[M%C3%A9tiers_de_l%27Informatique#Besoin|besoin]].
  
 
Les compétences mises en jeu au cours du développement d’un projet peuvent être regroupées ainsi :
 
Les compétences mises en jeu au cours du développement d’un projet peuvent être regroupées ainsi :
Ligne 43 : Ligne 43 :
  
 
== Représentation de l’information ==
 
== Représentation de l’information ==
Dans un contexte informatique, l’information est représentée par des suites de nombres. La numérisation est l’opération qui associe à un objet réel du monde physique une description à l’aide d’un ensemble d’informations exploitables par un ordinateur ou, plus généralement, une machine numérique. À cause de l’échantillonnage sous-jacent, la numérisation induit des effets importants sur la qualité de l’information numérique. Elle entraîne des conditions spécifiques de création, de stockage, de traitement et de circulation de l’information.  
+
Dans un contexte informatique, l’information est [[Tout_a_un_reflet_numérique|représentée par des suites de nombres]]. La numérisation est l’opération qui associe à un objet réel du monde physique une description à l’aide d’un ensemble d’informations exploitables par un ordinateur ou, plus généralement, une machine numérique. À cause de l’échantillonnage sous-jacent, la numérisation induit des effets importants sur la qualité de l’information numérique. Elle entraîne des conditions spécifiques de création, de stockage, de traitement et de circulation de l’information.  
  
 
Les capacités de traitement et de stockage des ordinateurs croissent de façon continue depuis leur apparition. Il est donc crucial d’organiser ces flux d’informations en local sur une machine ou de façon distribuée sur un réseau.
 
Les capacités de traitement et de stockage des ordinateurs croissent de façon continue depuis leur apparition. Il est donc crucial d’organiser ces flux d’informations en local sur une machine ou de façon distribuée sur un réseau.
  
L’intégration croissante du numérique dans les [[Société_Numérique|activités humaines]] et la numérisation de l’information suscitent des transformations culturelles, socio-économiques, [[Juridique|juridiques]] et politiques profondes qui font apparaître de nouvelles opportunités, de nouveaux risques et de nouvelles contraintes qu’il convient d’étudier.
+
L’intégration croissante du numérique dans les [[Questions sociétales|activités humaines]] et la numérisation de l’information suscitent des transformations culturelles, socio-économiques, [[Pour_préparer,_illustrer_des_cours_:_questions_juridiques|juridiques]] et politiques profondes qui font apparaître de nouvelles opportunités, de nouveaux risques et de nouvelles contraintes qu’il convient d’étudier.
  
 
{| border="1" class="wikitable"
 
{| border="1" class="wikitable"
Ligne 57 : Ligne 57 :
  
 
|-
 
|-
|| '''Représentation binaire'''
+
|| '''Représentation [[Binaire|binaire]]'''
  
Un ordinateur est une machine qui manipule des valeurs numériques représentées sous forme binaire.
+
Un ordinateur est une machine qui manipule des valeurs numériques représentées sous forme [[Binaire|binaire]].
|| '''Manipuler''' à l’aide d’opérations élémentaires les trois unités de base : bit, octet, mot.
+
|| '''Manipuler''' à l’aide d’[[L’informatique_sans_ordinateur|opérations élémentaires]] les trois unités de base : bit, octet, mot.
 
|| On met en évidence, sous forme de questionnement, la présence du numérique dans la vie personnelle et professionnelle, au travers d’exemples.
 
|| On met en évidence, sous forme de questionnement, la présence du numérique dans la vie personnelle et professionnelle, au travers d’exemples.
  
 
|-
 
|-
|| '''Opérations booléennes'''
+
|| '''Opérations [[Booléen|booléennes]]'''
  
Présentation des opérations booléennes de base (ET, OU, NON, OU-EXCLUSIF).
+
Présentation des opérations [[Booléen|booléennes]] de base (ET, OU, NON, OU-EXCLUSIF).
|| '''Exprimer '''des opérations logiques simples par combinaison d’opérateurs de base.
+
|| '''Exprimer '''des [[Alg%C3%A8bre_de_Boole_et_circuits_logiques|opérations logiques]] simples par combinaison d’opérateurs de base.
 
|| On découvre les opérations logiques de base à l’aide d’exercices simples, et on met en évidence ces opérations dans les mécanismes de recherche.
 
|| On découvre les opérations logiques de base à l’aide d’exercices simples, et on met en évidence ces opérations dans les mécanismes de recherche.
  
En parallèle avec les séances d’algorithmique, on peut expliquer le principe d’addition de deux octets.
+
En parallèle avec les séances d’algorithmique, on peut expliquer le [[Électronique binaire|principe d’addition de deux octets]].
  
 
|-
 
|-
 
|| '''Numérisation'''
 
|| '''Numérisation'''
  
L’ordinateur manipule uniquement des valeurs numériques. Une étape de numérisation des objets du monde physique est donc indispensable.
+
L’ordinateur manipule uniquement des valeurs numériques. Une étape de [[Num%C3%A9risation_de_l%27image,_du_son_et_de_la_vid%C3%A9o_(Heurtebise)|numérisation]] des objets du monde physique est donc indispensable.
  
 +
|| '''Coder''' un [[Le_nombre_dans_l'ordinateur|nombre]], un [[Codage_de_caractères|caractère au travers d’un code standard]], un texte sous forme d’une liste de valeurs numériques.
  
 +
'''Numériser''' une [[Pour_préparer,_illustrer_des_cours_:Son_et_Image|image ou un son]] sous forme d’un tableau de valeurs numériques.
  
|| '''Coder''' un nombre, un caractère au travers d’un code standard, un texte sous forme d’une liste de valeurs numériques.
+
&diams; '''Modifier '''format, taille, contraste ou luminance d’images numériques.<br>
 
+
&diams; '''Filtrer''' et détecter des informations spécifiques.<br>
'''Numériser''' une image ou un son sous forme d’un tableau de valeurs numériques.
+
&diams; '''Créer''' une image à l’aide d’un logiciel de modélisation.
 
 
* '''Modifier '''format, taille, contraste ou luminance d’images numériques.
 
* '''Filtrer''' et détecter des informations spécifiques.
 
* '''Créer''' une image à l’aide d’un logiciel de modélisation.
 
 
 
  
 
|| Il est ici utile de faire référence à des notions technologiques introduites à propos des architectures matérielles.
 
|| Il est ici utile de faire référence à des notions technologiques introduites à propos des architectures matérielles.
  
Les images et les sons sont choisis comme contexte applicatif et sont manipulés via des logiciels de traitement ou de synthèse.
+
Les [[Pour_préparer,_illustrer_des_cours_:Son_et_Image|images et les sons]] sont choisis comme contexte applicatif et sont manipulés via des logiciels de traitement ou de synthèse.
  
Le traitement numérique de la lumière et du son est en lien avec les principes physiques sous-jacents, qu’il est utile d’évoquer au moment voulu.
+
Le [[Le_traitement_des_images|traitement numérique de la lumière et du son]] est en lien avec les [[Introduction_to_color_theory|principes physiques sous-jacents]], qu’il est utile d’évoquer au moment voulu.
  
 
|-
 
|-
Ligne 99 : Ligne 96 :
 
Les données numériques sont agencées de manière à en faciliter le stockage et le traitement.
 
Les données numériques sont agencées de manière à en faciliter le stockage et le traitement.
  
L’organisation des données numériques respecte des formats qui sont soit des standards de fait, soit des normes. .
+
L’organisation des données numériques respecte des [[Formats_de_données_(wikipedia)|formats]] qui sont soit des standards de fait, soit des normes. .
|| '''Identifier''' quelques formats de document, d’images, de données sonores.
+
|| '''Identifier''' quelques formats de document, [[Pour_pr%C3%A9parer,_illustrer_des_cours_:_l%27image#Formats_de_fichier_pour_les_images|d’images]], de [[A_propos_du_son|données sonores]].
  
 
'''Choisir un format '''approprié par rapport à un usage ou un besoin, à une qualité, à des limites.  
 
'''Choisir un format '''approprié par rapport à un usage ou un besoin, à une qualité, à des limites.  
|| Le choix d’un format approprié pose le problème de l’interopérabilité, qui est le fait d’assurer un usage sans restriction des mêmes données sur un système différent.
+
|| Le choix d’un format approprié pose le problème de l’[[Référentiel_Général_d’Interopérabilité_(RGI)|interopérabilité]], qui est le fait d’assurer un usage sans restriction des mêmes données sur un système différent.
  
 
|-
 
|-
|| '''Compression'''
+
|| '''[[Compression|Compression]]'''
 
 
* Notion de compression de données.
 
* Compression avec et sans perte d’information.
 
  
 +
&diams; Notion de compression de données.<br>
 +
&diams; Compression avec et sans perte d’information.
  
|| * '''Utiliser''' un logiciel de compression.
+
|| <br>&diams; '''Utiliser''' un [[Compression#Comparer_des_logiciels_de_compression|logiciel de compression]].
  
 
+
|| <br>On met en évidence l’effet de la compression d’une [[Pour_pr%C3%A9parer,_illustrer_des_cours_:_l%27image|image]] ou d’un [[A_propos_du_son|son]] en comparant deux systèmes de compression (avec ou sans perte).
|| On met en évidence l’effet de la compression d’une image ou d’un son en comparant deux systèmes de compression (avec ou sans perte).
 
  
 
|-
 
|-
 
|| '''Structuration et organisation de l’information'''
 
|| '''Structuration et organisation de l’information'''
  
On manipule de grandes quantités d’informations. Il est nécessaire de les organiser.
+
On manipule de [[Billet:AproposDeGoogle|grandes quantités d’informations]]. Il est nécessaire de les organiser.
 
|| '''Classer''' des informations, notamment sous forme d’une arborescence.
 
|| '''Classer''' des informations, notamment sous forme d’une arborescence.
 
 
  
 
|| On peut ici étudier le système d’organisation de fichiers en dossiers.
 
|| On peut ici étudier le système d’organisation de fichiers en dossiers.
  
Un ensemble de documents unis par des liens hypertextes fournit un exemple de classement de type graphe.
+
Un ensemble de [[La_création_multimédia_en_classe|documents]] unis par des liens hypertextes fournit un exemple de classement de type [[Graphe|graphe]].
  
 
|-
 
|-
Ligne 133 : Ligne 126 :
  
 
Les données, notamment personnelles, sont susceptibles d’être mémorisées pour de longues périodes sans maîtrise par les personnes concernées.
 
Les données, notamment personnelles, sont susceptibles d’être mémorisées pour de longues périodes sans maîtrise par les personnes concernées.
|| '''Prendre conscience '''de la persistance de l’information sur les espaces numériques interconnectés.
+
|| '''Prendre conscience '''de la [[Les_webs_de_demain_(F._Gandon)|persistance de l’information]] sur les espaces numériques interconnectés.
  
'''Comprendre les principes généraux permettant de '''se comporter''' '''de façon responsable par rapport au [[Juridique|droit des personnes]] dans les espaces numériques.
+
'''Comprendre les principes généraux permettant de '''se comporter''' '''de façon responsable par rapport au [[Pour_préparer,_illustrer_des_cours_:_questions_juridiques|droit des personnes]] dans les espaces numériques.
 
|| La persistance de l’information se manifeste tout particulièrement au sein des disques durs mais aussi des mémoires caches. Elle interagit avec le [[Protection_de_la_vie_priv%C3%A9e|droit à la vie privée]] et fait naître une revendication du [[Droit_à_l'oubli|«&nbsp;droit à l’oubli&nbsp;»]].
 
|| La persistance de l’information se manifeste tout particulièrement au sein des disques durs mais aussi des mémoires caches. Elle interagit avec le [[Protection_de_la_vie_priv%C3%A9e|droit à la vie privée]] et fait naître une revendication du [[Droit_à_l'oubli|«&nbsp;droit à l’oubli&nbsp;»]].
  
Ligne 141 : Ligne 134 :
 
|| '''[[Non-rivalité]] de l’information'''
 
|| '''[[Non-rivalité]] de l’information'''
  
Existence de lois régissant la détention et la circulation de données numériques.
+
Existence de lois régissant la [[La_loi_DADVSI|détention]] et la [[Loi_sur_la_confiance_en_l'économie_numérique_(LCEN)|circulation de données]] numériques.
 
 
  
 
|| '''Prendre conscience '''de la non-rivalité des biens immatériels.
 
|| '''Prendre conscience '''de la non-rivalité des biens immatériels.
  
 
'''Distinguer '''différents types de licences ([[Logiciel_libre|libres]], propriétaires).
 
'''Distinguer '''différents types de licences ([[Logiciel_libre|libres]], propriétaires).
 
  
 
|| La [[Non-rivalité|non-rivalité]] d’un bien se définit par le fait que son usage par une personne n’en limite pas l’usage par d’autres (ainsi, le poste de radio est rival mais l’émission ne l’est pas).
 
|| La [[Non-rivalité|non-rivalité]] d’un bien se définit par le fait que son usage par une personne n’en limite pas l’usage par d’autres (ainsi, le poste de radio est rival mais l’émission ne l’est pas).
  
À l’occasion d’exposés suivis de débats, on sensibilise les élèves à la l’évolution des valeurs et du [[Juridique|droit]] (en France et ailleurs) induite par l’émergence de biens immatériels.
+
À l’occasion d’exposés suivis de débats, on sensibilise les élèves à la l’évolution des valeurs et du [[Pour_préparer,_illustrer_des_cours_:_questions_juridiques|droit]] (en France et ailleurs) induite par l’émergence de biens immatériels.
  
 
|}
 
|}
  
== [http://wiki.inria.fr/sciencinfolycee/Sp%C3%A9cial:BrowseData/Ressources?_search_Titre=algorithme Algorithmes] ==
+
== [[Pour_pr%C3%A9parer,_illustrer_des_cours_:_Algorithme|Algorithmes]] ==
  
 
Un algorithme se définit comme une méthode opérationnelle permettant de résoudre, en un nombre fini d’étapes clairement spécifiées, toutes les instances d’un problème donné. Cette méthode peut être exécutée par une machine ou par une personne.
 
Un algorithme se définit comme une méthode opérationnelle permettant de résoudre, en un nombre fini d’étapes clairement spécifiées, toutes les instances d’un problème donné. Cette méthode peut être exécutée par une machine ou par une personne.
  
Les élèves ont été confrontés aux algorithmes très tôt dans leur parcours scolaire (avec les quatre opérations arithmétiques), et régulièrement de nouvelles situations de nature algorithmique leur ont été proposées&nbsp;; ainsi, la construction de figures en géométrie euclidienne, la transcription des «&nbsp;formules&nbsp;» moléculaires en chimie, le code génétique, ou encore l’analyse fonctionnelle en technologie, sont autant de situations évoquant des algorithmes. Les programmes de mathématiques des classes de Seconde et Première contiennent une initiation à l’algorithmique sur laquelle il convient de s’appuyer.
+
Les élèves ont été confrontés aux algorithmes très tôt dans leur parcours scolaire (avec les quatre opérations arithmétiques), et régulièrement de nouvelles situations de nature algorithmique leur ont été proposées&nbsp;; ainsi, la construction de figures en géométrie euclidienne, la transcription des «&nbsp;formules&nbsp;» moléculaires en chimie, le code génétique, ou encore l’analyse fonctionnelle en technologie, sont autant de situations évoquant des algorithmes. Les [http://media.education.gouv.fr/file/30/52/3/programme_mathematiques_seconde_65523.pdf programmes de mathématiques des classes de Seconde] et Première contiennent une initiation à l’algorithmique sur laquelle il convient de s’appuyer.
  
 
À travers l’étude de quelques algorithmes, on développe la faculté de lire et comprendre un algorithme conçu par d’autres, puis d’en concevoir de nouveaux. Ces algorithmes sont exprimés dans un langage de programmation et exécutés sur une machine, ou bien définis de manière informelle.  
 
À travers l’étude de quelques algorithmes, on développe la faculté de lire et comprendre un algorithme conçu par d’autres, puis d’en concevoir de nouveaux. Ces algorithmes sont exprimés dans un langage de programmation et exécutés sur une machine, ou bien définis de manière informelle.  
Ligne 174 : Ligne 165 :
 
|| '''Algorithmes simples'''
 
|| '''Algorithmes simples'''
  
- rechercher un élément dans un tableau trié par une méthode dichotomique&nbsp;;
+
- rechercher un élément dans un tableau trié par une [[La_recherche_dichotomique|méthode dichotomique]]&nbsp;;
  
- trier un tableau par sélection&nbsp;;
+
- [[Algorithmes_de_tri|trier un tableau par sélection]] ;
  
- ajouter deux entiers exprimés en binaire.  
+
- [http://subaru.univ-lemans.fr/AccesLibre/UM/Pedago/physique/02/electro/addition.html ajouter deux entiers exprimés en binaire].  
 
|| '''Comprendre''' un algorithme et '''expliquer''' ce qu’il fait.
 
|| '''Comprendre''' un algorithme et '''expliquer''' ce qu’il fait.
  
Ligne 187 : Ligne 178 :
 
'''Programmer''' un algorithme.
 
'''Programmer''' un algorithme.
  
* '''S’interroger '''sur l’efficacité d’un algorithme.
+
&diams; '''S’interroger '''sur l’efficacité d’un algorithme.
 
 
  
 
|| On présente simultanément les notions d’algorithme et de programme, puis on les distingue.
 
|| On présente simultanément les notions d’algorithme et de programme, puis on les distingue.
Ligne 199 : Ligne 189 :
 
|| '''Algorithmes plus avancés'''
 
|| '''Algorithmes plus avancés'''
  
* tri par fusion&nbsp;;
+
&diams; [[Algorithmes_de_tri|tri par fusion]]&nbsp;;<br>
* recherche d’un chemin dans un graphe par un parcours en profondeur (DFS) ;
+
&diams; recherche d’un chemin dans un [[Graphe|graphe]] par un [[Le_backtracking_par_l'exemple_:_résoudre_un_sudoku|parcours en profondeur (DFS)]] ;<br>
* recherche d’un plus court chemin par un parcours en largeur (BFS).
+
&diams; recherche d’un plus court chemin par un parcours en largeur (BFS).
 
 
  
 
|| '''Comprendre '''et '''expliquer '''(oralement ou par écrit) ce que fait un algorithme.
 
|| '''Comprendre '''et '''expliquer '''(oralement ou par écrit) ce que fait un algorithme.
  
* '''S’interroger '''sur l’efficacité d’un algorithme.
+
&diams; '''S’interroger '''sur l’efficacité d’un algorithme.
 
 
  
 
|| L’objectif se limite à une compréhension des principes fondamentaux sans exiger leur programmation.
 
|| L’objectif se limite à une compréhension des principes fondamentaux sans exiger leur programmation.
Ligne 213 : Ligne 201 :
 
|}
 
|}
  
== Langages et programmation ==
+
== [[Pour préparer, illustrer des cours :Langages et programmation|Langages et programmation]] ==
 
La programmation est l’expression d’un algorithme dans un langage exécutable par une machine, et joue un rôle central dans le développement des systèmes et produits informatiques.
 
La programmation est l’expression d’un algorithme dans un langage exécutable par une machine, et joue un rôle central dans le développement des systèmes et produits informatiques.
  
 
L’apprentissage de la programmation vise d’une part à savoir '''programmer un algorithme''' décrit en langue naturelle et d’autre part à '''comprendre un programme''' et exprimer en langue naturelle l’algorithme sous-jacent.
 
L’apprentissage de la programmation vise d’une part à savoir '''programmer un algorithme''' décrit en langue naturelle et d’autre part à '''comprendre un programme''' et exprimer en langue naturelle l’algorithme sous-jacent.
  
On commence par rappeler les éléments de base de tout langage de programmation (affectation, séquence, test et boucle), tels qu’ils ont été présentés en mathématiques en classe de Seconde et consolidés en classe de Première. On introduit alors la notion de fonction qui permet d’éviter des redondances, de structurer les programmes et d’organiser leur conception. Enfin, on met en évidence la qualité des programmes en les testant sur différents jeux de données.
+
On commence par rappeler les éléments de base de tout langage de programmation (affectation, séquence, test et boucle), tels qu’ils ont été présentés en [http://media.education.gouv.fr/file/30/52/3/programme_mathematiques_seconde_65523.pdf mathématiques en classe de Seconde] et consolidés en [http://media.education.gouv.fr/file/special_9/21/1/mathsS_155211.pdf classe de Première]. On introduit alors la notion de fonction qui permet d’éviter des redondances, de structurer les programmes et d’organiser leur conception. Enfin, on met en évidence la qualité des programmes en les testant sur différents jeux de données.
  
 
On insiste sur la clarté et la documentation, qui facilitent la reprise du code par d’autres programmeurs. On montre enfin l’universalité de la notion de langage au-delà de la programmation.
 
On insiste sur la clarté et la documentation, qui facilitent la reprise du code par d’autres programmeurs. On montre enfin l’universalité de la notion de langage au-delà de la programmation.
  
L’enseignant choisit un langage de programmation selon les critères suivants : simplicité d’utilisation, liberté d’installation, présence d’outils associés, existence d’une communauté d’utilisateurs et de bibliothèques facilitant le développement.
+
L’enseignant [[A_propos_du_choix_du_langage_de_programmation|choisit un langage de programmation]] selon les critères suivants : simplicité d’utilisation, liberté d’installation, présence d’outils associés, existence d’une communauté d’utilisateurs et de bibliothèques facilitant le développement.
 
 
  
 
{|  border="1" class="wikitable"
 
{|  border="1" class="wikitable"
Ligne 256 : Ligne 243 :
 
- portée des variables et passage d’arguments ;
 
- portée des variables et passage d’arguments ;
  
- définition récursive de fonctions.
+
- définition [[A propos de récursivité|récursive]] de fonctions.
 
|| '''Concevoir '''l’entête (ou l’interface) d’une fonction, puis la fonction elle-même.
 
|| '''Concevoir '''l’entête (ou l’interface) d’une fonction, puis la fonction elle-même.
 
|| On adapte la présentation de ces notions en fonction du langage de programmation retenu.
 
|| On adapte la présentation de ces notions en fonction du langage de programmation retenu.
Ligne 267 : Ligne 254 :
 
- instrumentation ;
 
- instrumentation ;
  
- situations d’erreur ou ''bugs''.
+
- situations d’erreur ou [[À_la_chasse_au_bug,_la_maladie_du_certain|''bugs'']].
 
|| '''Mettre un programme au point '''en le testant, en l’instrumentant.
 
|| '''Mettre un programme au point '''en le testant, en l’instrumentant.
  
* '''Utiliser''' un outil de mise au point.
+
&diams; '''Utiliser''' un outil de mise au point.
  
  
|| On évoque les risques issus des programmes incorrects et des ''bugs'' qui en résultent, aux conséquences parfois graves.
+
|| On évoque les [[Demandez_le_programme|risques issus des programmes incorrects et des ''bugs'' qui en résultent]], aux conséquences parfois graves.
  
 
|-
 
|-
|| '''Langages de description'''
+
|| '''[[Langages_de_description|Langages de description]]'''
  
Présentation du langage HTML et du principe de séparation du contenu et de la mise en forme.
+
Présentation du [[Langages_de_description#HTML|langage HTML]] et du principe de séparation du contenu et de la mise en forme.
 
|| '''Créer''' et '''analyser''' une page web en langage HTML.
 
|| '''Créer''' et '''analyser''' une page web en langage HTML.
 
|| On met en valeur le double usage du langage, lisible par un humain et interprétable par une machine.
 
|| On met en valeur le double usage du langage, lisible par un humain et interprétable par une machine.
Ligne 284 : Ligne 271 :
 
On utilise HTML pour écrire une page «&nbsp;à la main&nbsp;», puis on insiste sur le fait que ce langage sert aussi de cible à des générateurs de pages.
 
On utilise HTML pour écrire une page «&nbsp;à la main&nbsp;», puis on insiste sur le fait que ce langage sert aussi de cible à des générateurs de pages.
  
On évalue la qualité des pages du point de vue de la correction syntaxique et de l’efficacité du message.
+
[[Evaluations_(s%C3%A9lection_th%C3%A9matique)#Les_travaux_pratiques_en_temps_libre_et_les_mini-projets|On évalue la qualité des pages]] du point de vue de la correction syntaxique et de l’efficacité du message.
  
 
|}
 
|}
Ligne 292 : Ligne 279 :
 
Exprimer un algorithme dans un langage de programmation a pour but de le rendre exécutable par une machine numérique. La découverte de l’architecture de ces machines constitue une étape essentielle d’une initiation à l’informatique. De plus, mieux comprendre cette organisation est nécessaire pour programmer de manière efficace, en tenant compte des capacités et limitations des machines numériques.
 
Exprimer un algorithme dans un langage de programmation a pour but de le rendre exécutable par une machine numérique. La découverte de l’architecture de ces machines constitue une étape essentielle d’une initiation à l’informatique. De plus, mieux comprendre cette organisation est nécessaire pour programmer de manière efficace, en tenant compte des capacités et limitations des machines numériques.
  
La progression pédagogique suit la chronologie du développement des systèmes informatiques&nbsp;: d’abord centralisés autour des machines à accès direct, ensuite connectés par l’intermédiaire d’une liaison série point à point, et enfin répartis grâce aux réseaux où le transport des informations repose sur des méthodes de routage. Le développement de ces réseaux et leur utilisation massive ont induit des questions sociétales majeures qu’il est préférable d’aborder sous forme d’activités pluridisciplinaires. Finalement, l’étude d’un minirobot permet de découvrir les mécanismes de pilotage et de communication dans l’exécution de tâches complexes, interférant directement avec le monde physique.
+
La progression pédagogique suit la chronologie du développement des systèmes informatiques&nbsp;: d’abord centralisés autour des machines à accès direct, ensuite connectés par l’intermédiaire d’une liaison série point à point, et enfin répartis grâce aux réseaux où le transport des informations repose sur des [[R%C3%A9seaux_(s%C3%A9lection_th%C3%A9matique)#A_propos_du_routage|méthodes de routage]]. Le développement de ces réseaux et leur utilisation massive ont induit des questions sociétales majeures qu’il est préférable d’aborder sous forme d’activités pluridisciplinaires. Finalement, l’étude d’un minirobot permet de découvrir les mécanismes de pilotage et de communication dans l’exécution de tâches complexes, interférant directement avec le monde physique.
  
'''[[1.5._Architecture_de_machine|Architecture des ordinateurs]]'''
+
===[[Pour_préparer,_illustrer_des_cours_:_Architecture|Architecture]] des ordinateurs===
  
 
{| border="1" class="wikitable"
 
{| border="1" class="wikitable"
Ligne 314 : Ligne 301 :
  
 
Instructions simples (chargement, stockage, opérations arithmétiques et logiques, saut conditionnel).
 
Instructions simples (chargement, stockage, opérations arithmétiques et logiques, saut conditionnel).
|| * '''Savoir dérouler''' l’exécution d’une séquence d’instructions simples de type langage machine.
+
|| &diams; '''Savoir dérouler''' l’exécution d’une séquence d’instructions simples de type langage machine.
 
 
  
 
|| On propose des activités sous forme d’exercices sur papier sans utiliser d’ordinateur.
 
|| On propose des activités sous forme d’exercices sur papier sans utiliser d’ordinateur.
Ligne 321 : Ligne 307 :
 
|}
 
|}
  
'''[[1.6._R%C3%A9seaux|Réseaux]]'''
+
===[[Réseaux|Réseaux]]===
  
 
{|  border="1" class="wikitable"
 
{|  border="1" class="wikitable"
Ligne 334 : Ligne 320 :
  
 
Principes de base d’une transmission d’informations numériques entre un émetteur et un récepteur.
 
Principes de base d’une transmission d’informations numériques entre un émetteur et un récepteur.
|| * '''Établir '''une communication sérielle entre deux machines'''.'''
+
|| &diams; '''Établir '''une communication sérielle entre deux machines'''.'''
 
 
  
 
|| On s’interroge sur la qualité d’une liaison série point à point.
 
|| On s’interroge sur la qualité d’une liaison série point à point.
Ligne 351 : Ligne 336 :
 
|| '''Décrire''' une situation d’adressage sur un type de réseau particulier.
 
|| '''Décrire''' une situation d’adressage sur un type de réseau particulier.
  
 
+
&diams; '''Analyser''' le trafic (trames) sur un réseau et mettre ainsi en évidence la notion de protocole.
* '''Analyser''' le trafic (trames) sur un réseau et mettre ainsi en évidence la notion de protocole.
 
 
 
  
 
|| On introduit ces notions en comparant différents types d’adressages existants (téléphone, courrier postal).
 
|| On introduit ces notions en comparant différents types d’adressages existants (téléphone, courrier postal).
Ligne 360 : Ligne 343 :
  
 
|-
 
|-
|| '''Routage'''
+
|| [[R%C3%A9seaux_(s%C3%A9lection_th%C3%A9matique)#A_propos_du_routage|'''Routage''']]
  
 
Mécanismes induits par la communication sur un réseau dont la structure est de type graphe.
 
Mécanismes induits par la communication sur un réseau dont la structure est de type graphe.
  
 
Notions de paquets, de chemins, de routage.
 
Notions de paquets, de chemins, de routage.
|| * '''Analyser''' les entêtes de messages électroniques, pour décrire le chemin suivi par l’information.
+
|| &diams; '''Analyser''' les entêtes de messages électroniques, pour décrire le chemin suivi par l’information.
 
 
  
 
|| On se limite à la mise en œuvre d’une séance de travaux pratiques, avec analyse d’entêtes de courriels prédéfinis reçus (aspect distribué et non fiable des réseaux de grande taille, difficulté du passage à l’échelle).
 
|| On se limite à la mise en œuvre d’une séance de travaux pratiques, avec analyse d’entêtes de courriels prédéfinis reçus (aspect distribué et non fiable des réseaux de grande taille, difficulté du passage à l’échelle).
Ligne 373 : Ligne 355 :
  
 
|-
 
|-
|| '''Supranationalité''' des réseaux
+
|| '''[[Supranationalité]]''' des réseaux
|| '''Prendre conscience''' du caractère supranational des réseaux et des [[Société_Numérique|conséquences sociales, économiques et politiques]] qui en découlent.
+
|| '''Prendre conscience''' du caractère [[Supranationalité|supranational]] des réseaux et des [[Questions sociétales|conséquences sociales, économiques et politiques]] qui en découlent.
 
|| On met en évidence le fait que certains pays autorisent la mise en ligne d’informations, services ou contenus numériques dont la consultation n’est pas permise dans d’autres pays.
 
|| On met en évidence le fait que certains pays autorisent la mise en ligne d’informations, services ou contenus numériques dont la consultation n’est pas permise dans d’autres pays.
  
 
|}
 
|}
  
 
+
===Initiation à la [[Robotique|robotique]]===
'''Initiation à la robotique'''
 
  
 
{| border="1" class="wikitable"
 
{| border="1" class="wikitable"
Ligne 391 : Ligne 372 :
 
|-
 
|-
 
|| '''Découverte d’un système robotique et de sa programmation'''
 
|| '''Découverte d’un système robotique et de sa programmation'''
|| '''Identifier '''les différents composants d’un minirobot et comprendre leurs rôles respectifs'''.'''
+
||&diams; '''Identifier '''les différents composants d’un minirobot et comprendre leurs rôles respectifs'''.'''
  
'''Décrire''' un système à évènements simple à l’aide d’une machine à états finis.
+
&diams; '''Décrire''' un système à évènements simple à l’aide d’une machine à états finis.
 
 
* '''Programmer '''(dans un langage de haut niveau)''' '''un minirobot pour lui faire exécuter une tâche complexe.
 
  
 +
&diams; '''Programmer '''(dans un langage de haut niveau)''' '''un minirobot pour lui faire exécuter une tâche complexe.
  
 
|| On propose des activités adaptées aux équipements et logiciels disponibles dans l’établissement.
 
|| On propose des activités adaptées aux équipements et logiciels disponibles dans l’établissement.
  
 
|}
 
|}
 +
 +
 +
[[Catégorie:PageThématique]]

Version actuelle datée du 25 août 2012 à 11:43

Programme de l’enseignement de spécialité ISN

Informatique et Sciences du Numérique

Classe terminale de la série S – Enseignement de spécialité

Préambule

Les sciences informatiques, et plus généralement les sciences du numérique, ont aujourd’hui envahi nos vies professionnelles et personnelles. Elles ont entraîné des mutations profondes dans nos sociétés (culture, sciences, économie, politique …). Pourtant, seule une faible partie de la population maîtrise les mécanismes fondamentaux qui régissent ces mutations et est en mesure d’apprécier les enjeux sociétaux qui en découlent. L’enseignement de l’informatique au lycée peut contribuer à réduire cette fracture.

L’objectif de l’enseignement de spécialité ISN en classe terminale de la série S n’est pas de former des experts en informatique, mais plutôt de fournir aux élèves quelques notions fondamentales et de les sensibiliser aux questions de société induites.

Il s’agit d’un enseignement d’ouverture et de découverte des problématiques actuelles, adapté à la société d’aujourd’hui, qui valorise la créativité et contribue à l’orientation.

Mise en activité de l’élève

Afin de refléter le caractère scientifique et technique propre à la discipline et de développer l’appétence des élèves en faveur de cet enseignement nouveau pour eux, il convient de les mettre en situation d’activité aussi souvent que possible. Une pédagogie de projet est à privilégier pour favoriser l’émergence d’une dynamique de groupe. Dans ce cadre, le professeur joue un rôle central : il impulse et coordonne les projets, anime les débats et met en place l’évaluation et ses modalités.

L’informatique étant connexe à de nombreux domaines, il est utile d’envisager un travail pluridisciplinaire : la complémentarité des approches, associée à la richesse d’un travail collaboratif, joue un rôle stimulant pour les élèves et les équipes pédagogiques. Le professeur peut s’appuyer sur la mise en place d’exposés suivis de débats au sein de la classe pour introduire des questions sociétales liées à la généralisation du numérique. Enfin, lors de la préparation des exposés, comme lors du développement des projets, le professeur guide les élèves dans leurs recherches documentaires s’appuyant sur des livres ou des ressources présentes sur le Web.

La progression peut suivre un rythme annuel construit autour de périodes spécifiques favorisant une alternance entre différents types d’activités (acquisition de nouveaux savoirs, exposés, projets), permettant d’entretenir l’intérêt des élèves et de développer leur autonomie.

Les activités pratiques et la réalisation de projets sont organisées dans une salle qui permet d’enseigner les bases et notions théoriques fondamentales, avec un recours possible aux outils numériques de présentation adaptés. Un environnement numérique suffisamment ouvert est choisi pour favoriser cette dynamique de projet.

Les projets

Les projets réalisés par les élèves, sous la conduite du professeur, constituent un apprentissage fondamental tant pour la compréhension de l’informatique et des sciences du numérique que pour l’acquisition de compétences variées. Ils peuvent porter sur des problématiques issues d’autres disciplines et ont essentiellement pour but d’imaginer des solutions répondant à l’expression d’un besoin.

Les compétences mises en jeu au cours du développement d’un projet peuvent être regroupées ainsi :

  • •  proposer une approche fonctionnelle qui réponde aux besoins ;
  • •  conduire des recherches documentaires ;
  • •  concevoir des programmes en autonomie ;
  • •  gérer les étapes de l’avancement du projet en dialogue et en interaction avec le professeur.

Les activités des élèves sont organisées autour d’une équipe de projet formée de deux ou trois élèves et dont le fonctionnement est guidé par une démarche incluant des points d’étape pour faire un bilan avec le professeur, valider des éléments, contrôler ou modifier l’avancement du projet, voire le redéfinir partiellement.

L’enseignant veille à ce que les projets choisis par les élèves restent d’une ambition raisonnable afin de ne pas empiéter sur le temps consacré aux autres disciplines. Le projet final est présenté au professeur et, autant que possible, à un autre enseignant n’ayant pas suivi son développement. L’évaluation du travail accompli dans ce cadre se base sur un rapport écrit d’une dizaine de pages au maximum, décrivant le résultat du projet ainsi que les étapes de son développement, et sur une présentation orale argumentée suivie d’un temps consacré aux questions. Cette évaluation s’appuie sur les capacités mentionnées ci-dessous, sans nécessairement les mettre toutes en jeu.

Éléments de programme

Le programme est construit autour de quatre parties : représentation de l’information, algorithmique, langages et programmation, architectures matérielles. Les séquences pédagogiques ont vocation à être construites en combinant des savoirs et capacités extraits des quatre parties du programme.

Organisation : les éléments du programme sont présentés à l’aide d’un tableau en trois colonnes : Savoirs, Capacités, Observations.

Une partie des savoirs et capacités, repérés par le signe distinctif ♦, sont optionnels et seront traités en fonction des équipements disponibles ainsi que des orientations pédagogiques choisies par les enseignants.

Représentation de l’information

Dans un contexte informatique, l’information est représentée par des suites de nombres. La numérisation est l’opération qui associe à un objet réel du monde physique une description à l’aide d’un ensemble d’informations exploitables par un ordinateur ou, plus généralement, une machine numérique. À cause de l’échantillonnage sous-jacent, la numérisation induit des effets importants sur la qualité de l’information numérique. Elle entraîne des conditions spécifiques de création, de stockage, de traitement et de circulation de l’information.

Les capacités de traitement et de stockage des ordinateurs croissent de façon continue depuis leur apparition. Il est donc crucial d’organiser ces flux d’informations en local sur une machine ou de façon distribuée sur un réseau.

L’intégration croissante du numérique dans les activités humaines et la numérisation de l’information suscitent des transformations culturelles, socio-économiques, juridiques et politiques profondes qui font apparaître de nouvelles opportunités, de nouveaux risques et de nouvelles contraintes qu’il convient d’étudier.

Savoirs Capacités Observations
Représentation binaire

Un ordinateur est une machine qui manipule des valeurs numériques représentées sous forme binaire.

Manipuler à l’aide d’opérations élémentaires les trois unités de base : bit, octet, mot. On met en évidence, sous forme de questionnement, la présence du numérique dans la vie personnelle et professionnelle, au travers d’exemples.
Opérations booléennes

Présentation des opérations booléennes de base (ET, OU, NON, OU-EXCLUSIF).

Exprimer des opérations logiques simples par combinaison d’opérateurs de base. On découvre les opérations logiques de base à l’aide d’exercices simples, et on met en évidence ces opérations dans les mécanismes de recherche.

En parallèle avec les séances d’algorithmique, on peut expliquer le principe d’addition de deux octets.

Numérisation

L’ordinateur manipule uniquement des valeurs numériques. Une étape de numérisation des objets du monde physique est donc indispensable.

Coder un nombre, un caractère au travers d’un code standard, un texte sous forme d’une liste de valeurs numériques.

Numériser une image ou un son sous forme d’un tableau de valeurs numériques.

Modifier format, taille, contraste ou luminance d’images numériques.
Filtrer et détecter des informations spécifiques.
Créer une image à l’aide d’un logiciel de modélisation.

Il est ici utile de faire référence à des notions technologiques introduites à propos des architectures matérielles.

Les images et les sons sont choisis comme contexte applicatif et sont manipulés via des logiciels de traitement ou de synthèse.

Le traitement numérique de la lumière et du son est en lien avec les principes physiques sous-jacents, qu’il est utile d’évoquer au moment voulu.

Formats

Les données numériques sont agencées de manière à en faciliter le stockage et le traitement.

L’organisation des données numériques respecte des formats qui sont soit des standards de fait, soit des normes. .

Identifier quelques formats de document, d’images, de données sonores.

Choisir un format approprié par rapport à un usage ou un besoin, à une qualité, à des limites.

Le choix d’un format approprié pose le problème de l’interopérabilité, qui est le fait d’assurer un usage sans restriction des mêmes données sur un système différent.
Compression

♦ Notion de compression de données.
♦ Compression avec et sans perte d’information.


Utiliser un logiciel de compression.

On met en évidence l’effet de la compression d’une image ou d’un son en comparant deux systèmes de compression (avec ou sans perte).
Structuration et organisation de l’information

On manipule de grandes quantités d’informations. Il est nécessaire de les organiser.

Classer des informations, notamment sous forme d’une arborescence. On peut ici étudier le système d’organisation de fichiers en dossiers.

Un ensemble de documents unis par des liens hypertextes fournit un exemple de classement de type graphe.

Persistance de l’information

Les données, notamment personnelles, sont susceptibles d’être mémorisées pour de longues périodes sans maîtrise par les personnes concernées.

Prendre conscience de la persistance de l’information sur les espaces numériques interconnectés.

Comprendre les principes généraux permettant de se comporter de façon responsable par rapport au droit des personnes dans les espaces numériques.

La persistance de l’information se manifeste tout particulièrement au sein des disques durs mais aussi des mémoires caches. Elle interagit avec le droit à la vie privée et fait naître une revendication du « droit à l’oubli ».
Non-rivalité de l’information

Existence de lois régissant la détention et la circulation de données numériques.

Prendre conscience de la non-rivalité des biens immatériels.

Distinguer différents types de licences (libres, propriétaires).

La non-rivalité d’un bien se définit par le fait que son usage par une personne n’en limite pas l’usage par d’autres (ainsi, le poste de radio est rival mais l’émission ne l’est pas).

À l’occasion d’exposés suivis de débats, on sensibilise les élèves à la l’évolution des valeurs et du droit (en France et ailleurs) induite par l’émergence de biens immatériels.

Algorithmes

Un algorithme se définit comme une méthode opérationnelle permettant de résoudre, en un nombre fini d’étapes clairement spécifiées, toutes les instances d’un problème donné. Cette méthode peut être exécutée par une machine ou par une personne.

Les élèves ont été confrontés aux algorithmes très tôt dans leur parcours scolaire (avec les quatre opérations arithmétiques), et régulièrement de nouvelles situations de nature algorithmique leur ont été proposées ; ainsi, la construction de figures en géométrie euclidienne, la transcription des « formules » moléculaires en chimie, le code génétique, ou encore l’analyse fonctionnelle en technologie, sont autant de situations évoquant des algorithmes. Les programmes de mathématiques des classes de Seconde et Première contiennent une initiation à l’algorithmique sur laquelle il convient de s’appuyer.

À travers l’étude de quelques algorithmes, on développe la faculté de lire et comprendre un algorithme conçu par d’autres, puis d’en concevoir de nouveaux. Ces algorithmes sont exprimés dans un langage de programmation et exécutés sur une machine, ou bien définis de manière informelle.


Savoirs Capacités Observations
Algorithmes simples

- rechercher un élément dans un tableau trié par une méthode dichotomique ;

- trier un tableau par sélection ;

- ajouter deux entiers exprimés en binaire.

Comprendre un algorithme et expliquer ce qu’il fait.

Modifier un algorithme existant pour obtenir un résultat différent.

Concevoir un algorithme.

Programmer un algorithme.

S’interroger sur l’efficacité d’un algorithme.

On présente simultanément les notions d’algorithme et de programme, puis on les distingue.

L’objectif est une compréhension de ces algorithmes et la capacité à les mettre en œuvre.

Les situations produisant une erreur (division par zéro, dépassement de capacité) sont mises en évidence.

Algorithmes plus avancés

tri par fusion ;
♦ recherche d’un chemin dans un graphe par un parcours en profondeur (DFS) ;
♦ recherche d’un plus court chemin par un parcours en largeur (BFS).

Comprendre et expliquer (oralement ou par écrit) ce que fait un algorithme.

S’interroger sur l’efficacité d’un algorithme.

L’objectif se limite à une compréhension des principes fondamentaux sans exiger leur programmation.

Langages et programmation

La programmation est l’expression d’un algorithme dans un langage exécutable par une machine, et joue un rôle central dans le développement des systèmes et produits informatiques.

L’apprentissage de la programmation vise d’une part à savoir programmer un algorithme décrit en langue naturelle et d’autre part à comprendre un programme et exprimer en langue naturelle l’algorithme sous-jacent.

On commence par rappeler les éléments de base de tout langage de programmation (affectation, séquence, test et boucle), tels qu’ils ont été présentés en mathématiques en classe de Seconde et consolidés en classe de Première. On introduit alors la notion de fonction qui permet d’éviter des redondances, de structurer les programmes et d’organiser leur conception. Enfin, on met en évidence la qualité des programmes en les testant sur différents jeux de données.

On insiste sur la clarté et la documentation, qui facilitent la reprise du code par d’autres programmeurs. On montre enfin l’universalité de la notion de langage au-delà de la programmation.

L’enseignant choisit un langage de programmation selon les critères suivants : simplicité d’utilisation, liberté d’installation, présence d’outils associés, existence d’une communauté d’utilisateurs et de bibliothèques facilitant le développement.

Savoirs Capacités Observations
Types de données

- nombre entier ;

- virgule flottante ;

- booléen ;

- caractère ;

- tableau ;

- chaîne de caractères.

Choisir un type de donnée en fonction d’un problème à résoudre. On adapte la présentation de ces notions en fonction du langage de programmation retenu.
Fonctions

- notion de fonction ;

- portée des variables et passage d’arguments ;

- définition récursive de fonctions.

Concevoir l’entête (ou l’interface) d’une fonction, puis la fonction elle-même. On adapte la présentation de ces notions en fonction du langage de programmation retenu.
Correction d’un programme

- test ;

- instrumentation ;

- situations d’erreur ou bugs.

Mettre un programme au point en le testant, en l’instrumentant.

Utiliser un outil de mise au point.


On évoque les risques issus des programmes incorrects et des bugs qui en résultent, aux conséquences parfois graves.
Langages de description

Présentation du langage HTML et du principe de séparation du contenu et de la mise en forme.

Créer et analyser une page web en langage HTML. On met en valeur le double usage du langage, lisible par un humain et interprétable par une machine.

On utilise HTML pour écrire une page « à la main », puis on insiste sur le fait que ce langage sert aussi de cible à des générateurs de pages.

On évalue la qualité des pages du point de vue de la correction syntaxique et de l’efficacité du message.

Architectures matérielles

Exprimer un algorithme dans un langage de programmation a pour but de le rendre exécutable par une machine numérique. La découverte de l’architecture de ces machines constitue une étape essentielle d’une initiation à l’informatique. De plus, mieux comprendre cette organisation est nécessaire pour programmer de manière efficace, en tenant compte des capacités et limitations des machines numériques.

La progression pédagogique suit la chronologie du développement des systèmes informatiques : d’abord centralisés autour des machines à accès direct, ensuite connectés par l’intermédiaire d’une liaison série point à point, et enfin répartis grâce aux réseaux où le transport des informations repose sur des méthodes de routage. Le développement de ces réseaux et leur utilisation massive ont induit des questions sociétales majeures qu’il est préférable d’aborder sous forme d’activités pluridisciplinaires. Finalement, l’étude d’un minirobot permet de découvrir les mécanismes de pilotage et de communication dans l’exécution de tâches complexes, interférant directement avec le monde physique.

Architecture des ordinateurs

Savoirs Capacités Observations
Éléments d’architecture

Composants de base (unité centrale, mémoires, périphériques).

Expliquer le rôle des constituants d’un ordinateur. On se limite à une présentation générale de ces concepts autour d’une machine à accès direct (Random Access Machine).
Jeu d’instructions

Instructions simples (chargement, stockage, opérations arithmétiques et logiques, saut conditionnel).

Savoir dérouler l’exécution d’une séquence d’instructions simples de type langage machine. On propose des activités sous forme d’exercices sur papier sans utiliser d’ordinateur.

Réseaux

Savoirs Capacités Observations
Transmission point à point

Principes de base d’une transmission d’informations numériques entre un émetteur et un récepteur.

Établir une communication sérielle entre deux machines. On s’interroge sur la qualité d’une liaison série point à point.

On se limite à l’analyse d’un trafic de type « chat » (échange de caractères codés).

On introduit la notion de protocole (règles, formats et conventions, sur lesquels il est nécessaire de s’accorder pour communiquer).

Au-delà de deux machines, le modèle de la liaison point à point ne convient plus.

Adressage sur un réseau

Mécanismes d’adressage pour identifier des machines distantes.

Décrire une situation d’adressage sur un type de réseau particulier.

Analyser le trafic (trames) sur un réseau et mettre ainsi en évidence la notion de protocole.

On introduit ces notions en comparant différents types d’adressages existants (téléphone, courrier postal).

On fait appel à un outil d’analyse pour visualiser la transmission des trames nécessaires au dialogue entre machines numériques.

Routage

Mécanismes induits par la communication sur un réseau dont la structure est de type graphe.

Notions de paquets, de chemins, de routage.

Analyser les entêtes de messages électroniques, pour décrire le chemin suivi par l’information. On se limite à la mise en œuvre d’une séance de travaux pratiques, avec analyse d’entêtes de courriels prédéfinis reçus (aspect distribué et non fiable des réseaux de grande taille, difficulté du passage à l’échelle).

On explique la différence entre les réseaux de type arborescent et de type graphe.

Supranationalité des réseaux Prendre conscience du caractère supranational des réseaux et des conséquences sociales, économiques et politiques qui en découlent. On met en évidence le fait que certains pays autorisent la mise en ligne d’informations, services ou contenus numériques dont la consultation n’est pas permise dans d’autres pays.

Initiation à la robotique

Savoirs Capacités Observations
Découverte d’un système robotique et de sa programmation Identifier les différents composants d’un minirobot et comprendre leurs rôles respectifs.

Décrire un système à évènements simple à l’aide d’une machine à états finis.

Programmer (dans un langage de haut niveau) un minirobot pour lui faire exécuter une tâche complexe.

On propose des activités adaptées aux équipements et logiciels disponibles dans l’établissement.