Vous êtes sur la page 1sur 142

GUIDE PÉDAGOGIQUE

Guide du professeur - Chapitre 1

L’objectif de ce chapitre est de présenter les grands principes de fonctionnement


d’Internet, les mécanismes utilisés et les services fondamentaux, ainsi qu’un type
d’utilisation particulier (le pair à pair). Il vise à faire comprendre aux élèves qu’Internet est un
ensemble de techniques diverses.

Histoire, enjeux, débats


Ce chapitre permet d’aborder les principes des réseaux qui se cachent derrière Internet, des
protocoles type TCP et IP, du routage, des serveurs DNS et des réseaux pair-à-pair. La
double-page controverse permet d’aborder un sujet délicat qui continue à opposer
différentes communautés, la neutralité du Net et le monde de demain permet de prendre un
premier contact avec l’Internet des objets (qui sera étudié de manière plus précise dans le
chapitre 6).

v Activité 1 Trafic Internet et indépendance des réseaux

v Activité 2 Le protocole TCP/IP et le routage

v Activité 3 Adresses symboliques et serveurs DNS

v Activité 4 Les réseaux pair-à-pair

Bande dessinée d’ouverture


Cette bande dessinée illustre la différence entre Internet en tant que réseau de réseau et les
différents services qui reposent sur Internet. Un problème chez un utilisateur pour un service
donné ne veut pas dire qu’Internet « est en panne », ce qui n’a pas de sens, puisqu’Internet
est d’une part un réseau de différents réseaux, et que d’autre part l’utilisation habituelle
d’Internet fait appel à plusieurs systèmes différent (généralement, au minimum le transport
TCP/IP et le DNS.) Le problème peut venir par exemple, comme illustré dans cette bande
dessinée, d’un problème du service de nom (DNS, activité 3), et pour seulement une partie
des utilisateurs d’Internet. D’autres utilisateurs, connectés différemment à Internet, au même
moment peuvent ne rien voir de ce problème.
Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est davantage question d’ouvrir un débat avec les élèves, les questions n’étant
là que pour initier une discussion, et pour les secondes, le but est de prendre connaissance
des pistes de recherche actuelles sur ce sujet.
Les activités

ACTIVITÉ 1
Les compétences travaillées
Cette activité permet de prendre conscience de la diversité des moyens d’accès à Internet,
ainsi que de réaliser que, contrairement à l’idée couramment répandue, Internet repose
principalement sur des câbles, en particulier sous-marins.

Cette activité peut donner lieu à une recherche d’information sur l’infrastructure d’Internet
(document 1), la quantité de trafic sur Internet (document 2) et les moyens d’accès
(documents 3 et 4). Elle vise à démystifier le côté « magique » et « sans fil » d’Internet, et à
fixer les idées sur les ordres de grandeur de données véhiculées.

Les savoir-faire travaillés


• Caractériser quelques types des réseaux physiques.
• Caractériser l’ordre de grandeur de trafic Internet et son évolution.

Question 1
Utilisation du document 1

À l’aide de la densité de connexion entre régions, identifier les grands flux de trafic entre :
Amérique du Nord, Europe, Asie (Chine et Japon).
L’accès au site « Submarine Cable Map » permet de compléter cette analyse et aussi de se
rendre compte de l’omniprésence des câbles de connexion utilisés par Internet, y compris
depuis le territoire français.

Question 2
Utilisation du document 2
L’évaluation d’un trafic de 201 milliards de Gigaoctets par mois correspond à près de 50
milliards de films haute définition transférés par mois.
201(1018) / 4(109) = 5,025(1010)

Le trafic a été multiplié par près de 130 millions entre 1992 et l’estimation de 2022. En
convertissant toutes les valeurs du tableau en gigaoctets/seconde, nous obtenons le
graphique ci-dessous. Au vu de la forte hausse du trafic global, une échelle logarithmique est
mieux adaptée.

On peut faire calculer un taux de croissance annuel de 86 %.


Question 3
Utilisation du document 3

a. Le trafic 3G reste inférieur à 10 exaoctets soit 10 milliards de Gigaoctets (ou environ 2,5
milliards de films) par mois.
b. La part de la 4G augmente plus fortement que celle de la 3G.
Pour 2 exaoctets de trafic 3G et 8 exaoctets de trafic 4G début 2016 nous passerions à 10
exaoctets de trafic 3G et 48 exaoctets de trafic 4G en 2021.
Soit un accroissement moyen de (10-2) / 5 = 1,6 exaoctets/an pour la 3G contre (48 ̵ 8) / 5 =
8 exaoctets/an concernant la 4G.
c. La 5G n’est mise en place à large échelle qu’à partir de 2020, l’évaluation du trafic faible
les premières années correspond au nombre restreint d’utilisateurs. On peut anticiper que le
trafic 5G évoluera de manière exponentielle également, avec des débits de l’ordre de 10 fois
ceux de la 4G.

Question 4
Utilisation des documents 3 et 4

Exemples de type d’accès possibles :


Haut débit Très haut débit

ADSL Fibre optique

3G 4G

WiFi

Le débit constaté des technologies peut varier selon l’endroit où l’on se trouve par rapport au
central téléphonique (ADSL), à l’antenne relais (3G, 4G), ou au point d’accès (WiFi). Pour les
technologies radio, cela dépend également du nombre de personnes utilisant le même accès
radio. Seule la fibre permet d’avoir un débit à peu près fixe.
ACTIVITÉ 2

Les compétences travaillées

Cette activité présente les principes mis en œuvre dans Internet : la notion de paquets de
données, l’adressage IP et le routage permettant aux paquets de données d’atteindre leurs
destinations.

Les savoir-faire travaillés


• Comprendre la notion de paquet de données.
• Faire la différence entre les paquets IP et TCP/IP, et leur utilité.
• Appréhender la notion de route entre machines sur Internet.

Question 1
Utilisation du document 1

Les principaux éléments essentiels pour le fonctionnement d’Internet sont :


- le paquet de données, qui permet de découper une information en éléments de transport
(paquet) ;
- les protocoles TCP/IP qui permettent d’identifier les paquets (grâce aux adresses IP) et leur
bonne transmission (c’est le rôle principal du protocole TCP) ;
- les routeurs qui organisent l’envoi des paquets.

On peut également citer le système de nom (ou DNS) qui est vu dans l’activité 3, qui rend
l’utilisation d’Internet beaucoup plus facile, bien que non indispensable. On peut utiliser
Internet avec uniquement les adresses IP, c’est ce qui est fait dans l’activité FabLab.

Question 2
Utilisation du document 4 (et non 2)
Deux paquets envoyés à la même destination ne mettent pas forcément le même temps
pour arriver à leurs destinations, ils peuvent passer par des routes différentes, en fonction
des configurations des routeurs, des pannes de réseau, etc.

Question 3
Utilisation du document 3

Une adresse IPv4 est codée sur 32 bits, soit 4 octets. On représente une adresse IPv4 avec
4 nombres entre 0 et 255 (un octet permet de coder 256 nombres) séparés par des points.
Par exemple : 192.168.0.1 ou 10.0.10.3
Lorsque des machines sont connectées physiquement entre elles, elles sont généralement
sur le même réseau dont le numéro est la partie commune des adresses IP des machines
concernées. Par exemple, si les machines qui ont les adresses 192.168.12.23 et
192.168.100.45 sont connectées entre elles, elles appartiennent toutes deux au réseau
192.168/16. Le « /16 » indique que seuls les 16 premiers bits (soit 2 octets) sont signifiants
pour le numéro de réseau. On a choisi pour une raison de simplicité de ne garder que le
numéro de réseau, mais la convention habituelle est de noter une adresse sur 32 bits, soit
par exemple 192.168.0.0/16. Dans notre cas, toutes les adresses entre 192.168.0.0 et
192.168.255.255 appartiennent au réseau 192.168/16. Les valeurs 255 ont une signification
particulière et ne sont pas utilisables pour une machine.
Question 4
Utilisation du document 4

Un paquet TCP contient les mêmes informations qu’un paquet IP ainsi que des informations
complémentaires. Dans les deux cas, ils contiennent principalement :
- les adresses IP de l’émetteur et du destinataire du paquet ;
- une taille de paquet, ce qui permet d’avoir des paquets de taille variable, en fonction des
données à transporter (NB : le programme officiel parle de paquets de taille fixe ce qui est
incorrect dans IP) ;
- un compteur de durée de vie qui est décrémentée à chaque fois que le paquet est reçu par
routeur. Lorsque le compteur tombe à 0, le paquet est supprimé de ceux à transmettre ;
- un numéro de protocole qui est l’identifiant du protocole chargé de traiter les données
contenues dans le paquet. Pour un paquet TCP, ce numéro est toujours le même et est égal
à6;
- un code de vérification (ou « somme de contrôle » ou « checksum » en anglais) qui permet
de vérifier que le paquet reçu est bien le même que celui envoyé (plus précisément que le
code de vérification est bien le même. La construction du code de vérification fait que la
probabilité que 2 paquets différents aient le même code est extrêmement faible.) Ce code
est nécessaire car lors de l’envoi des données sur le lien physique (et plus particulièrement
par radio), il peut y avoir des erreurs de transmission (un 0 qui se change en 1 et
inversement) ;
- les données à transmettre.

Un paquet TCP contient en plus un numéro qui est le numéro du paquet dans la suite de
paquets à envoyer. Cela permet de vérifier qu’un paquet numéroté n est bien arrivé, et dans
le cas contraire de demander la retransmission de ce paquet, en l’identifiant par son numéro.

C’est ce type de paquet qu’on doit utiliser pour vérifier la bonne transmission d’une donnée.

Question 5
Utilisation des document 3 et 5

Une autre route possible entre le PC1 et PC2 est :

PC1 Réseau Routeur 1 Réseau Routeur 3 Réseau Routeur 2 Réseau PC2


10.0.1/24 10.0.3/24 10.0.4/24 10.0.5/24

On choisira de préférence la première route car elle est plus courte en nombre de routeurs
traversés.

En cas de panne du réseau 10.0.2/24, un paquet allant de PC2 à PC1 devra suivre la route
passant par les réseaux 10.0.4/24 et 10.0.3/24 :

PC2 Réseau Routeur 2 Réseau Routeur 3 Réseau Routeur 1 Réseau PC2


10.0.5/24 10.0.4/24 10.0.3/24 10.0.1/24

Le PC4 étant connecté au réseau 10.0.4/24, son adresse IP doit commencer par les mêmes
24 bits. Son adresse doit être entre 10.0.4.0 et 10.0.4.254 (la valeur 10.0.4.255 est
réservée), par exemple 10.0.4.10
Question 6
Utilisation du document 5

Lorsqu’un paquet est reçu par un routeur, son compteur de durée de vie est décrémenté. S’il
atteint 0 le paquet est supprimé. Si le paquet est renvoyé de routeur 1 vers routeur 2 puis de
routeur 2 vers routeur 1, ce dernier va de nouveau le renvoyer vers routeur 2 (sauf un
changement de configuration de route intervient à ce moment-là). Le compteur sera
décrémenté à chaque fois jusqu’à atteindre à 0 et être supprimé. Le paquet n’aura pas
atteint sa destination. L’application qui en a besoin sera en erreur.
ACTIVITÉ 3

Les compétences travaillées

Cette activité permet de comprendre comment les associations entre les noms de machine
et leurs adresses IP sont gérés dans Internet grâce au service de nom, ou « DNS »

Les savoir-faire travaillés


• Comprendre l’organisation des noms et l’architecture du DNS.
• Comprendre le principe du protocole DNS.

Question 1
Utilisation du document 1

a. Les deux commandes ping sont adressées à la même adresse IP 192.134.5.25 : c’est la
même machine qui a répondu bien qu’on ait utilisé 2 noms différents. Une adresse IP peut
être associée à plusieurs noms différents.

b. Une machine peut être identifiée par son adresse IP ou par un de ses noms (une chaîne
de caractères).

Question 2
Utilisation du document 2

gouv.fr

education.gouv.fr

Le nom education.gouv.fr appartient au sous-domaine gouv.fr qui lui-même appartient au


domaine .fr

Question 3
Utilisation des documents 3 et 4

a. Il y a 3 serveurs DNS associés au nom de domaine education.gouv.fr


b. Ils sont utilisés pour trouver l’adresse IP d’une machine dont le nom appartient au
domaine education.gouv.fr, par exemple www.education.gouv.fr
c. Une première requête est faite au serveur racine, celui indique de demander à un serveur
responsable du domaine.fr. Une deuxième requête est faite vers ce serveur, qui indique
d’aller demander à un serveur pour gouv.fr. La troisième requête faite à ce serveur indique
de demander à un serveur pour education.gouv.fr, par exemple ns1.ate.tm.fr. Une requête à
ce serveur renvoie l’adresse IP de www.education.gouv.fr. Il y a eu 4 requêtes.

Question 4
Exercice à faire sur ordinateur

L’outil nslookup permet de récupérer une adresse à partir d’un nom et l’inverse.

> nslookup education.gouv.fr


Non-authoritative answer:
Name: education.gouv.fr
Address: 185.75.143.24

L’adresse IP de education.gouv.fr est donc 185.75.143.24

> nslookup www.editions-didier.fr


Non-authoritative answer:
Name: www.editions-didier.fr
Address: 195.81.225.138

> nslookup 194.199.8.10


10.8.199.194.in-addr.arpa name = www.bnf.fr.

Adresse symbolique Adresse IP

education.gouv.fr 185.75.143.24

www.editions-didier.fr 195.81.225.138

www.bnf.fr 194.199.8.10

NB : ces valeurs sont celles disponibles dans le DNS à la date de l’édition de ce manuel, et
depuis un lieu de connexion donné. Les mêmes requêtes peuvent au cours du temps ou en
fonction réseaux utilisés donner d’autres résultats.
ACTIVITE 4

Les compétences travaillées

Cette activité permet de donner les clefs du fonctionnement des réseaux pair-à-pair qui sont
utilisés en particulier pour le téléchargement (utilisation de fichiers « torrent », logiciels
comme « emule »). Il permet d’illustrer qu’Internet n’est pas une architecture centralisée sur
quelques serveurs (Google, Facebook, etc.) mais permet bien une communication directe
entre toutes les machines connectées à Internet. Ce fonctionnement en mode pair-à-pair est
utilisé dans bien d’autres services sur Internet, par exemple les « blockchains ».

Les savoir-faire travaillés


• Comprendre le principe d’un fonctionnement en pair-à-pair.
• Sensibiliser aux risques de l’utilisation majoritaire du pair-à-pair, le téléchargement
illégal.

Question 1
Utilisation du document 1

Le but de cette activité est de prendre conscience des différentes méthodes d’accès aux
données sur Internet et d’introduire l’approche pair-à-pair.
Les logiciels de téléchargement reposent habituellement sur un mécanisme de ratio, qui
permet de télécharger en fonction de ce qu’on a mis à disposition des autres utilisateurs.
Cette fonctionnalité illustre parfaitement la notion de pair-à-pair : chaque utilisateur est
consommateur et en même temps fournisseur, il n’y a plus la distinction avec les serveurs
centralisés ou seul le serveur fournit les données.

Question 2
Utilisation du document 2

 Mon ordinateur
‚ Nombre de pairs
ƒ Adresse d’un des pairs
„ Quantité téléchargée
… Taille totale de la vidéo
Question 3
Utilisation du document 3

Lors de l’utilisation du logiciel, la machine 1 est initialement « client » uniquement, puis elle
devient « pair » une fois qu’elle a récupéré des fragments de données qu’elle met à
disposition. La machine 2 est un « tracker ». Les machines 3 et 4 sont des pairs mais
peuvent aussi être des clients si elles téléchargent d’autres données (elles l’ont été par le
passé, pour pouvoir récupérer les fragments).
Question 4
Utilisation du document 4

a. Le texte fait référence au téléchargement illicite de biens culturels (films, musique, etc.) Un
contrevenant risque une recommandation de la part de l’Hadopi, pouvant aller d’un simple
avertissement à la suspension de l’accès à Internet.
b. Le P2P permet de télécharger des contenus qui ne sont pas disponibles sur des serveurs
commerciaux. Du fait de son architecture, il permet un téléchargement qui peut être plus
rapide que depuis un seul serveur, car plusieurs fragments sont téléchargés en même
temps. Cependant, il permet également télécharger des contenus sans respecter les droits
d’auteurs. Du fait de l’absence de contrôle des données échangées, il augmente également
le risque de télécharger des virus informatiques qu’une personne malveillante peut avoir
introduit dans les données mises à disposition.
Je vérifie mes connaissances

Solutions détaillées

1. QCM

1. Une adresse IP valide est :


A 124.45.67.89 : il y a 4 parties toutes comprises entre 0 et 255
Les autres réponses :
B 124.45.672 : NON, il n’y a que 3 parties (3 octets, soit 24 bits).
C 990.340.465.888 : NON, les valeurs ne sont pas entre 0 et 255.

2. Dans le nom www.editions-didier.fr, quel est le domaine de premier niveau ?


C .fr
Le domaine de premier niveau est celui le plus à droite du nom de la machine.
Les autres réponses :
www est le nom (sans nom de domaine) de la machine.
editions-didier.fr est le nom de domaine auquel appartient la machine www.

3. Avec quel outil pouvez-vous trouver l’adresse IP d’une machine à partir de son nom ?
Réponse : C les deux
Les deux outils recherchent l’adresse IP d’une machine dont on donne le nom et l’affichent.
Plus généralement, tous les outils sur Internet font dès le début cette recherche d’adresse IP
depuis un nom, puis qu’Internet ne fonctionne qu’avec des adresses IP (c’est la seule
information contenue dans les paquets) et pas avec les noms.

4. Dans quel cas le serveur de nom du domaine editions-didier.fr est-il utilisé ?


Réponse : A
Il est utilisé pour trouver l’adresse IP de la machine www.editions-didier.fr. Comme ce nom
appartient au domaine editions-didier.fr c’est un de ses serveurs qui connaît l’adresse IP.

2. Vrai/Faux

a. VRAI. Les 2 machines ont des adresses qui commencent par la même partie 12.34.56,
elles peuvent dont toutes les deux appartenir au réseau 12.34.56/24.
Pour aller plus loin : on peut remarquer que la dernière partie de la première adresse (78)
s’écrit en binaire sur 8 bits : 01011000 et celle de la deuxième adresse (99) s’écrit :
01100011. Les deux premiers bits sont égaux. Les deux adresses peuvent donc appartenir
également au réseau 12.34.56.64/26
b. FAUX. Il existe plusieurs technologies telles que le WiFi, la 3G ou encore, bientôt, la 5G.
c. FAUX. Il continue à augmenter, encore aujourd’hui.
d. VRAI.
e. FAUX. Les chiffres montrent que l’accès à Internet mobile commence a prendre une place
importante.
f. FAUX. On peut y accéder par son adresse IP ou son nom (ou adresse) symbolique.
g. FAUX. Le tracker maintient la liste des machines qui possèdent les fragments de donnée.
h. VRAI.
i. FAUX. C’est un paquet TCP.

3. Vers une définition

Un tracker maintient la liste des pairs et leurs adresses IP. Un pair stocke des fragments
de données. Un client se connecte d’abord à un tracker puis aux pairs.

4. Réaliser un schéma
Le schéma ci-dessous représente l’organisation de l’adresse edusol.education.fr dans
l’arborescence du DNS

Serveur racine

.fr

education.fr

eduscol.education.fr

5. Organisation des connaissances


Un paquet devra passer par au moins un routeur pour atteindre une machine qui n’est pas
sur le même réseau que l’émetteur. S’ils sont sur le même réseau, le paquet peut atteindre
l’émetteur directement.

JE M’ENTRAÎNE

6. L’accès à Internet
a. L’accès mobile représente 6,5/14,8 = 44 % des accès en 2017 et 8,5 / 16,7 = 51 % en
2018, soit une croissance annuelle de 7 %. On peut donc estimer que les accès mobiles
atteindront 51 + 3 * 7= 72 % en 2021 et qu’ils dépasseront la barre des 75 % en 2022 :
51 + 4 * 7 = 79 %.

b. Pour télécharger un film de 4 Goctets, soit 4000 * 8 Mbits, avec un accès haut débit
de 12 Mbit/s il faudra 4000 * 8 / 12 = 2 667 secondes, soit 44 minutes et 26 secondes.
Avec un très haut débit de 42 Mbits/s, il faudra 4000 * 8 / 42 = 762 secondes ou 12
minutes et 42 secondes.

7. IP ou TCP
a. Un paquet IP de taille totale 1 500 octets peut contenir 1500 ‒ 24 octets qui
composent l’en-tête (voir Activité 2, document 4, il y a 6 lignes de 4 octets chacune dans
l’en-tête). Il faudra donc 10000 / (1500 ‒ 24) = 6,7, ce qui donne 6 paquets pleins et un
paquet contenant 1 144 octets.

b. Avec un paquet TCP dont l’en-tête fait 48 octets, il faudra 6 paquets pleins et un
paquet contenant 1288 octets.

c. On peut utiliser TCP dont les en-têtes sont plus importants car ce protocole permet de
vérifier que les données ont été reçues.

8. Adresse de réseau
a. Le réseau qui relie les machines 12.34.76.89, 12.34.76.223 et 12.34.76.1 et
12.34.76/24

b. Le réseau qui relie les machines 10.1.2.3 et 10.1.128.3 est 10.1/16 puisque seuls les
16 premiers bits sont les mêmes.

9. Des réseaux

PC1 10.10.1/24 Routeur 128.99.12/24 PC2


10. Les serveurs DNS
a. C’est le serveur (ou un des serveurs) du domaine wikipedia.org qui connaît l’adresse de la
machine fr.wikipedia.org. Attention, dans cette adresse symbolique, le domaine de premier
niveau est bien .org, le plus à droite.

b. C’est un des serveurs de lemonde.fr qui connaît l’adresse de www.lemonde.fr

11. Durée de vie d’un paquet


Le compteur « durée de vie » est décrémentée à chaque fois qu’il passe par un routeur
et est détruit s’il atteint 0. Un paquet avec une durée de vie de 3 pourra passer 2
routeurs : le 3eme routeur qui le recevra le détruira.

12. Structure hiérarchique

Serveur racine

.fr

gouv.fr cnil.fr afnic.fr

numerique.gouv.fr education.gouv.fr

13. L’adresse IP
Exercice à faire sur ordinateur.
En étant connecté à Internet, taper par exemple :
> ping (nom du lycée sur Internet)
> ping www.iana.org
Vous pouvez obtenir :
PING www.iana.org(www.iana.org (2620:0:2d0:200::8)) 56 data bytes
L’adresse 2620:0:2d0:200::8 est une adresse IPv6
Pour obtenir l’adresse IPv4, taper : > ping -4 www.iana.org
PING ianawww.vip.icann.org (192.0.32.8) 56(84) bytes of data.
> ping -4 www.afnic.fr
PING lb01-1.nic.fr (192.134.5.24) 56(84) bytes of data.
14. Les requêtes DNS
Exercice à faire sur ordinateur.

Il faut 3 requêtes DNS pour trouver l’adresse de la machine www.afnic.fr : une vers le
serveur racine pour trouver le serveur du domaine .fr, puis une deuxième pour trouver le
serveur du domaine afnic.fr, puis une dernière pour trouver l’adresse de www.afnic.fr.

15. WebTorrent
Exercice à faire sur ordinateur.

Lorsqu’on se connecte on voit le graphe se mettre à jour en fonction des pairs auquel se
connecte sa machine pour récupérer les fragments de fichier. Les points jaunes sont les
pairs, les chiffres sont leurs adresses (qui peuvent être en IPv6).

16. Le téléchargement en P2P


Avec des connexions 12 Mbit/s, on pourra télécharger depuis les 23 pairs avec ce même
débit. Il faudra donc 4000 * 8 / (12 * 23) = 116 secondes, soit moins de 2 minutes.

17. Utilisation du P2P


Pour : organisation décentralisée, mise à disposition par tout un chacun de données
téléchargeables, téléchargement pouvant être plus rapide lorsqu’il y a plusieurs pairs.
Contre : risque de téléchargement illégal, risque de diffusion de contenus illicites.
FAB LAB

Le but de ce TP est de réaliser un Internet privé, c’est-à-dire de faire communiquer 2 machines qui se
trouvent sur 2 réseaux différents en utilisant les technologies d’Internet. Pour cela on a besoin d’une
3e machine qui fera fonction de routeur entre les 2 réseaux.

Pour réaliser ce TP, on se base sur l’outil VirtualBox qui permet de faire fonctionner plusieurs
machines virtuelles sur une seule machine réelle. Le TP se déroulera sur les machines virtuelles
disponibles sur l’espace numérique editions-didier (voir installation en annexe).

1. Ping
En utilisant l’outil ping, vérifier si la machine1 et la machine2 sont connectées entres elles.

Utiliser ping machine1 et ping machine2 sur chacune des 2 machines, et remplir le tableau
suivant :

Nom symbolique Adresse IP Réseau


machine1 /24
machine2 /24

Pourquoi les deux machines ne sont pas connectées ? Que faut-il pour réaliser la connexion ?

Explication
Les deux machines ne sont pas sur le même réseau IP : la partie de leurs adresses IP correspondant au 24
premiers bits (soit 3 octets, soit les 3 premiers termes de l’adresse sous forme A.B.C.D) ne sont pas les
mêmes. Les deux machines ont besoin d’une troisième machine qui va router les paquets d’un réseau
vers l’autre.

Pour aller plus loin :


Pourquoi le ping fonctionne-t-il alors qu’on lui donne une “adresse symbolique” et pas l’adresse IP de la
machine ? Normalement, une requête DNS est nécessaire pour traduire “l’adresse symbolique” en
adresse IP. Mais il existe des cas où il est plus pratique d’avoir une association “adresse
symbolique”/adresse IP sans support du DNS (dans le cas présent, il n’y a aucun serveur DNS d’installé).
Pour cela on utilise un fichier appelé “host” qui se trouve dans le répertoire “/etc” qui contient cette
information. En général, l’ordinateur regarde en priorité si l’adresse symbolique existe dans ce fichier et
ne fait une requête DNS que s’il ne l’a pas trouvée.
2. Installation du routeur
Lancer la machine virtuelle routeur. En utilisant l’outil ping sur machine1 et machine2,
compléter le schéma ci-dessous.

Explication
Selon la machine utilisée, la machine routeur renvoie 2 adresses différentes. C’est normal puisque son
rôle est de router les paquets d’un réseau vers l’autre. Il a donc besoin d’avoir une connexion sur chacun
des réseaux. Dans notre exemple, le routeur possède 2 adresses qui se termines toutes les deux par la
même valeur (3), pour des raisons pédagogiques uniquement.

Tester sur chacune des machines si la connexion est effective entre la machine et routeur.

Explication
La connexion est effective entre machine1 et routeur, et entre machine2 et routeur puisque les
commandes ping répondent. Mais ce sont les 2 “côtés” (plus précisément, les 2 interfaces) du routeur qui
répondent chacun de leur côté, chacun sur son réseau propre (le réseau 10.0.1/24 vers machine1, le
réseau 10.0.2/24 vers machine2). La connexion est effective entre toutes les machines sur un même
réseau. A condition bien sûr qu’elles soient physiquement connectées ! Dans notre cas, VirtualBox simule
cette connexion physique. Vous pouvez le vérifier en allant sur “Configuration” de chacune des machines
virtuelles dans l’interface de VirtualBox, puis dans l’onglet “réseau”. Vous pourrez vérifier que machine1
est connecté sur le réseau physique (simulé) “reseau1”, machine2 sur reseau2, et que routeur est
connecté sur reseau1 et sur reseau2, grâce à ses deux “cartes réseaux” (ou interfaces réseaux).

Vérifier avec ping machine1 et ping machine2 sur chacune des 2 machines si la connexion
entre machine1 et machine2 est effective.

Explication
Les machines ne sont toujours pas accessibles l’une à l’autre. Pourtant, routeur est démarré et on vient
de le vérifier, bien connecté. Alors pourquoi ? C’est parce qu’on n’a pas encore indiqué comment router
les paquets d’un réseau à l’autre.

3. Analyse du trafic IP
La commande tcpdump permet de visualiser les paquets vus par la machine sur laquelle la
commande est exécutée.
Lancer la commande tcpdump icmp sur routeur, et lancer ping routeur sur machine1.
Que constatez-vous ?

Note : ICMP est le protocole utilisé par l’outil ping

Explication À l’écran, vous devriez voir des messages de ce type :

On peut y voir l’envoi du message permettant de faire le ping (“machine1 > routeur : ICMP echo
request”, le signe “>” indique que le message va de machine1 vers routeur) et sa réponse (“routeur >
machine1 : ICMP echo reply”). Lorsqu’on fait un ping c’est toujours cet échange qui est fait.

On constate donc que les messages passent bien entre machine1 et routeur.

4. Routage
Sur la machine machine1, taper la commande :
ip route add default via 10.0.1.3

Cette commande indique à la machine d’envoyer par défaut vers l’adresse 10.0.1.3 tous les paquets
qui ne lui sont pas destinés.

Puis tester à nouveau ping machine2. Quelle différence y a-t-il avec le point 2 ?

Explication Le message renvoyé par ping est différent : il indique que le message demandant le ping est
bien envoyé, mais la réponse n’est pas reçue. On voit le message passer sur routeur (“machine1 >
machine2 : ICMP echo request”).
Le message arrive bien maintenant à machine2 car machine1 a été configurée pour envoyer vers
l’adresse 10.0.1.3, qui est une adresse de routeur, sur le même réseau que machine1, tous les paquets
qui ne sont pas à destination de son réseau (10.0.1/24). En d’autres termes, lorsque machine1 a un
paquet à envoyer, elle l’envoie directement à l’adresse de destination si celle-ci est sur le réseau
10.0.1/24, ou bien l’envoie à l’adresse 10.0.1.3 si ce n’est pas le cas.
Pour aller plus loin :
La commande tapée sur machine1 ne permet que à machine1 de savoir ou envoyer les paquets, c’est à
dire vers routeur (sur son interface qui a l’adresse 10.0.1.3). Cela ne suffit pas à envoyer les paquets vers
machine2. Cela fonctionne dans notre cas car routeur est configuré pour renvoyer les paquets à
destination d’une adresse du réseau 10.0.2/24 qu’il reçoit vers l’adresse qui se trouve sur ce réseau (et
pareillement pour les paquets à destination d’une adresse du réseau 10.0.1/24). On peut le voir en
tapant la commande “ip route” sur routeur : chacune des 2 lignes indique quoi faire pour un paquet
allant soit vers le réseau 10.0.1/24 soit vers 10.0.2/24.

Lancer maintenant également la commande tcpdump icmp sur machine2. Que constatez-
vous ?

Envoi de messages vers Résultat


routeur
machine2

Expliquer ce qu’il se passe.

Explication On voit bien le message “echo request” passer également sur machine2. Mais on ne voit pas
le message de réponse passer. Pourquoi ? C’est parce que machine2 ne sait pas comment renvoyer la
réponse vers machine1

5. Routage suite
Sur la machine machine2, taper la commande :
ip route add default via 10.0.2.3

Que donne ping machine2 sur machine1 et tcpdump icmp sur machine2 et routeur ?

Expliquer la différence.

Explication Maintenant que machine2 est configurée pour renvoyer les messages vers machine1, et que
routeur est également configuré (voir plus haut), les réponses peuvent être reçues par machine1 : le ping
fonctionne entre les 2 machines, les paquets sont routés d’un réseau vers l’autre. Nous avons construit
un réseau Internet (un réseau de réseau), privé car il n’est pas connecté à d’autres réseaux.

6. Transport de données
La commande nc permet d’envoyer ou de recevoir des données.

a. Sur machine2 lancer nc en mode réception : nc -l -p 4242.


b. Sur routeur lancer : tcpdump -A tcp.
c. Sur machine1 lancer nc en mode émission : nc machine2 4242, puis taper un
texte et appuyez sur Entrée. Que constatez-vous sur routeur et machine2 ?

Explication Sur machine2, on voit le texte tapé sur machine1 qui s’affiche : le texte a été envoyé depuis
machine1, vers machine2, au travers de routeur, en utilisant le protocole TCP.
Sur routeur on voit les différents paquets passer entre machine1 et machine2. On peut constater les
choses suivantes :
- à chaque fois qu’on envoie un texte, il y a au moins un paquet TCP vers machine2 et un paquet en
retour; en effet TCP s’assure de la fiabilité de la transmission en renvoyant une information sur les
données reçues ;
- on voit apparaitre le texte tapé dans ce qui est affiché pour le paquet allant de machine1 vers machine2
: l’information envoyée d’une machine à une autre est transportée en clair.
La page du codeur

u Lecture de code
Le code affiche la partie commune entre 2 adresses IPv4 exprimées sous forme de liste de 4 octets,
soit l’adresse d’un réseau sur lequel les machines possédant ces adresses peuvent être connectées.
Le résultat du programme est [128,192,23] pour le test entre les adresses IP1 et IP2 et [128,192] pour
les tests avec IP3.

NB : c’est une version simplifiée du calcul du réseau en faisant l’hypothèse que les réseaux ne sont
exprimés que sur 8,16 ou 24 bits (1, 2 ou 3 octets entier). Un calcul exact nécessite de considérer les
valeurs sous forme binaire.

v Correction de code
Erratum 1 : le code doit donner l’affichage :
« de :128.192.1.2 vers : 10.0.1.3
hello »
Erratum 2 : la ligne 22 est à supprimer

Pour faire cet exercice, il faut analyser le paquet IP (Activité 2, document 4)


La variable p contient un paquet IP codé sous la forme d’une suite d’octets.
L’adresse source se situe sur 4 octets, de 12 à 15 inclus. La ligne 6 doit donc être :
for j in range(4)
L’adresse destination se situe sur les 4 octets suivants, la ligne 10 doit donc itérer sur le contenu du
paquet et être :
dst+=str(p[i+4+j])+ "."

Pour afficher le contenu du paquet, qui est de taille définie par les 3ème et 4ème octets, soit p[2] et
p[3], il faut lire le contenu à partir du 25ème octet, ce contenu étant de taille : taille du paquet – taille
de l’entête (24 octets pour un paquet IP non TCP).
La ligne 13 doit donc être :
l=p[2]*256+p[3]-24
Et la ligne 16 doit donc être :
d+=p[25+j]
(ou bien par exemple modifier le range de la ligne 15:range(25, 25+l) )
w Conception de programme
routes=[("Paris","Londres",200),("Paris","Amsterdam",300),("Londres","New York",
6000),("Amsterdam","Oslo",300),("Oslo","New York",5000)]

# Fonction récursive permettant de calculer les chemins et leur longueur


def route(routes,src,dst):
chemins=[]
# On itère chaque route connue
for r in routes :
# si la route est déja connue on la met dans la liste des chemins
if r[0]==src and r[1]==dst :
chemins.append(r)
continue
# si on a une route depuis la source (src) :
if r[0]==src :
# on cherche récursivementles chemins depuis la destination de cette route
ch=route(routes,r[1],dst)

# On ajoute à chaque résultat la longueur du chemin déjà parcouru


ch2=[]
for c in ch:
ch2.append((r[0],c[1],c[2]+r[2]))

# On ajoute les chemins aux chemins à retourner


chemins+=ch2

return chemins

def routage(routes,src,dst):
chemins=route(routes,src,dst)
if chemins==[]:
print "Pas de route entre %s et %s" % (src,dst)
return

# On cherche le chemin le plus court


pluscourt=chemins[0]
for ch in chemins[1:]:
if ch[2]<chemin[2]:
pluscourt=ch

print pluscourt

routage(routes,"Paris", "New York")


x Affichage du contenu d’un paquet (1)
f=open("paquet1.txt","rb")
pkt=f.read()

pkt=bytearray(pkt)

dst=""
for i in range(16,20):
dst+=str(pkt[i])+"."

print "Destinataire : ",dst

src=""
for i in range(12,16):
src+=str(pkt[i])+"."

print "Emetteur : ",src

print "Duree de vie : %d " %pkt[8]

print "Protocole : %d " %pkt[9]

print "Longueur totale : %d" % (pkt[2]*256+pkt[3])

y Affichage du contenu d’un paquet (2)


f=open("paquet2.txt","rb")
pkt=f.read()

pkt=bytearray(pkt)

dst=""
for i in range(16,20):
dst+=str(pkt[i])+"."

print "Destinataire : ",dst

src=""
for i in range(12,16):
src+=str(pkt[i])+"."

print "Emetteur : ",src


print "Duree de vie : %d " %pkt[8]

print "Protocole : %d " %pkt[9]

l=pkt[2]*256+pkt[3]
print "Longueur totale : ",l

if pkt[9]==6 :
# Protocole TCP
num=0
for i in range(28,32):
num=num*256+pkt[i]

print "Numero de sequence : ",num

# L'entete TCP fait 48 octets (en l'absence d'options)


print "taille de la donnee : ",l-48

‘ Contenu d’une suite de paquets


def printPkt(pkt):
dst=""
for i in range(16,20):
dst+=str(pkt[i])+"."

print "Destinataire : ",dst

src=""
for i in range(12,16):
src+=str(pkt[i])+"."

print "Emetteur : ",src

print "Duree de vie : %d " %pkt[8]

print "Protocole : %d " %pkt[9]

l=pkt[2]*256+pkt[3]
print "Longueur totale : ",l

if pkt[9]==6 :
# Protocole TCP
num=0
for i in range(28,32):
num=num*256+pkt[i]

print "Numero de sequence : ",num

# L'entete TCP fait 48 octets (en l'absence d'options)


print "taille de la donnee : ",l-48

f=open("paquets.txt","rb")
pkt=f.read()
pkt=bytearray(pkt)

i=0
while i < len(pkt):
taille=pkt[i+2]*256+pkt[i+3]
print "taille=",taille
printPkt(pkt[i:i+taille])
i+=taille

’ Affichage des données transportées


f=open("paquets.txt","rb")
pkt=f.read()
pkt=bytearray(pkt)

data=[]
i=0
while i < len(pkt):
taille=pkt[i+2]*256+pkt[i+3]

# Lis les donnees contenues dans le paquet


st=""
for j in range(48,taille):
st+="%c" % pkt[i+j]

# Lis le numero de sequence


num=0
for j in range(28,32):
num=num*256+pkt[i+j]

# Stock le couple (numero de sequence, donnees)


data.append((num,st))
i+=taille
# tri les couples par numero de sequence
data=sorted(data,cmp=lambda x,y: x[0]-y[0])

# cree la donnee dans sa totalite


st=""
for d in data :
st+=d[1]

print st
Guide du professeur - Chapitre 2

L’objectif de ce chapitre est de présenter les grands principes de fonctionnement du Web, en tant
que système donnant accès à un ensemble de données (page, image, son, vidéo) reliées par des
liens hypertextes et accessibles sur le réseau Internet.

Histoire, enjeux, débats


Ce chapitre permet d’aborder les principes de l’HTML, du CSS et du protocole http, de comprendre
comment fonctionnent les moteurs de recherche, d’appréhender la notion de trace numérique,
intimement liée à la question de l’anonymat sur Internet (Controverse) et découvrir le concept de
Web sémantique, c’est-à-dire le Web de demain.

v Activité 1 Les ingrédients d’une page Web : HTML et CSS

v Activité 2 HTTP : les clients parlent aux serveurs

v Activité 3 Sous le capot des moteurs de recherche

v Activité 4 Passer inaperçu sur le Web

v Activité 5 Publier dans les règles

Bande dessinée d’ouverture


Cette bande dessinée permet de poser la question des traces numériques laissées sur le Web par
l’utilisateur, ces traces permettant la création d’un profil utilisateur utilisé par les applications pour
des recommandations ou des publicités ciblées. L’activité 4 permet de comprendre la manière dont
nous laissons des traces sur le Web et donne quelques pistes afin d’en laisser le moins possible.
On pourra également se reporter au guide d’hygiène numérique en fin de manuel, ce guide
approfondissant les moyens de protéger son identité numérique.

Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est davantage question d’ouvrir un débat avec les élèves, les questions n’étant là que
pour initier une discussion, et pour les secondes, le but est de prendre connaissance des pistes de
recherche actuelles sur ce sujet.
Les activités

ACTIVITE 1

Les compétences travaillées


Cette activité apporte des connaissances techniques sur des langages qui, contrairement aux
langages de programmation, ne sont pas destinés à décrire des algorithmes :
• HTML est un langage de données permettant de décrire la structure et le contenu d’un
document ;
• CSS est un langage de règles permettant de décrire des contraintes sur la présentation,
sans expliquer comment les réaliser.
HTML et CSS illustrent la diversité des langages informatiques. Dans les deux cas il s’agit de
coder des informations avec une syntaxe rigoureuse, qui permet à la machine d’interpréter le code.

Ces connaissances peuvent être mises en œuvre :


• Par un exposé oral expliquant les bases des langages HTML et CSS, ou bien des
caractéristiques plus avancées (à partir de ressources trouvées en ligne) : ajout de
tableaux ou de vidéos dans un document HTML, utilisation de CSS pour créer un menu
fixe, etc. ;
• Par un projet de groupe consistant à créer un petit site Web avec plusieurs pages liées
entre elles, en se répartissant les rôles : recherche d’information, structuration du site,
écriture des pages, amélioration du formatage par des feuilles CSS.

Les savoir-faire travaillés


• Analyser une page Web et faire le lien entre le code HTML et le contenu affiché.
• Analyser une feuille de style CSS et faire le lien entre les règles et leur effet sur l’affichage.
• Créer ou modifier une page Web simple.
• Créer ou modifier une feuille de style simple.

Question 1
Utilisation du document 1

L’exploitation du code HTML du document 1 permet de compléter l’arbre, à partir de la balise <ul>.

ul

li li

vers la le logo
un a page 2
img
HTML5 :

lien
Question 2
Utilisation du document 1

En s’inspirant du document 1, on crée le document suivant. La principale différence est que on a


des listes imbriquées : dans l’élément <li> de chaque pays, il y a un élément <ul> avec une liste de
villes.

1 <html>
2 <head>
3 <meta charset="utf-8">
4 <title>Géographie</title>
5 </head>
6 <body>
7 <h1>Principales villes de quelques pays</h1>
8 <ul>
9 <li>France
10 <ul><li>Paris</li><li>Lyon</li><li>Marseille</li></ul>
11 </li>
12 <li>Italie
13 <ul><li>Rome</li><li>Milan</li><li>Venise</li></ul>
14 </li>
15 </ul>
16 </body>
17 </html>

Question 3
Utilisation du document 2

Il s’agit de faire correspondre les sélecteurs de la feuille de style CSS (« b », « .important »,


« #logo ») avec les éléments du document HTML.

Question 4
Utilisation du document 2

Le style suivant colore le paragraphe (balise <p>) en bleu : p { background-color : blue ; }

Tous les paragraphes seront alors en bleu. Pour éviter cela, on peut ajouter un attribut id="enbleu"
au premier paragraphe et changer la règle de la feuille de style en :
#enbleu { background-color : blue ; }
Question 5
Utilisation du document 2

On va utiliser deux classes : pays et ville, et leur associer une couleur :


.pays { color : red ; }
.ville { color : blue ; }

Pour que ces styles soient pris en compte, il faut ajouter les attributs class="pays" et
class="ville" dans le code HTML :

8 <ul class="pays">
9 <li>France
10 <ul class="ville"><li>Paris</li><li>Lyon</li><li>Marseille</li></ul>
11 </li>
12 <li>Italie
13 <ul class="ville"><li>Rome</li><li>Milan</li><li>Venise</li></ul>
14 </li>

Question 6
Utilisation du document 3

L’exemple ci-dessous utilise le navigateur Chrome. Les autres navigateurs, comme Firefox, ont les
mêmes fonctionnalités avec une interface un peu différente.

Une fois l’inspecteur ouvert et l’onglet « Elements » actif, lorsque l’on passe le curseur sur le code
HTML de l’onglet « Elements », la partie correspondante de la page Web est mise en évidence :
Dans la partie droite de l’inspecteur, on peut ajouter des propriétés CSS, comme ici changer la
couleur du texte en rouge :

Après avoir cliqué sur l’icône à gauche de la barre de menus de l’inspecteur , on peut déplacer
le curseur dans le corps de la page Web et voir le code HTML correspondant dans l’inspecteur :
Si l’on clique sur l’élément, la sélection correspondante dans le code HTML peut être modifiée. Par
exemple, on peut enlever le code (ici le logo des éditions Didier) simplement avec la touche
« Effacement » :
ACTIVITE 2
Les compétences travaillées :
Cette activité apporte des connaissances techniques sur le fonctionnement en réseau du Web.
Elle fait le lien avec le chapitre 1 sur le réseau Internet.

Cette activité peut donner lieu à une recherche d’information concernant par exemple le trafic
internet lié au Web : estimations du nombre de sites Web et de pages Web disponibles, du nombre
de requêtes Web effectuée chaque jour (ou chaque minute), de l’impact environnemental des
serveurs, des réseaux et des terminaux qui servent à faire marcher et à consulter le Web.

Les savoir-faire travaillés :


• Analyser une adresse URL.
• Comprendre le rôle des clients et des serveurs Web.
• Créer un formulaire simple pour interroger un site dynamique.

Complément au contenu du manuel :


Il existe plusieurs moyens de visualiser les requêtes et réponses du protocole http (ou https) :
• le site Web https://websniffer.cc : entrer l’URL dans le champ de saisie (par exemple
http://www.example.com) et cliquer « Submit » ;
• l’inspecteur du navigateur : dans Chrome, ouvrir l’inspecteur et cliquer l’onglet « Network »
puis entrer une URL (par exemple http://www.example.com) ou recharger la page courante.
Cliquer ensuite sur le nom de la page dans la liste de gauche et sur l’onglet « Headers »
(voir image ci-dessous) ;

• la commande « curl », disponible sur tous les systèmes d’exploitation, permet de visualiser
les requêtes et réponses du protocole http depuis le terminal. Par exemple, en tapant la
commande suivante (sans le %) dans le terminal :
% curl -v http://www.example.com
celle-ci affiche la requête envoyée et la réponse reçue pour l’exemple du document 3.
En utilisant l’une de ces méthodes pour afficher la requête et la réponse pour l’URL suivante qui
correspond à la requête envoyée par le formulaire du document 4 :
https://fr.wikipedia.org/w/index.php?search=Web
on trouvera dans la réponse la ligne
Location: https://fr.wikipedia.org/wiki/Web
qui indique une redirection vers la page cherchée.

Question 1
Utilisation du document 1

a. Les pages Web sont stockées dans les serveurs. Les navigateurs sont des clients qui
obtiennent les pages Web en les demandant aux serveurs à l’aide du protocole http (ou https).

b. Le navigateur envoie des requêtes http (ou https) au serveur en spécifiant l’URL souhaitée. Le
navigateur affiche ensuite la réponse du serveur : soit la page demandée, soit un message
d’erreur.

Question 2
Utilisation du document 2

• Protocole : https:// Serveur : www.larousse.fr


Chemin : /dictionnaires/anglais-francais/request
• Protocole : http:// Serveur : www.youtube.com
Chemin : /watch Paramètre : v=7z_hEZABUs4
• Protocole : https:// Serveur : developer.mozilla.org
Chemin : /fr/docs/Web/HTML/Element/Form Ancre : Exemples

La première et la troisième adresse sont sécurisées (https), la seconde ne l’est pas (http).

Question 3
Utilisation du document 3

Le navigateur effectuera quatre requêtes : une pour récupérer la page, puis une pour chacune des
trois images.

Question 4
Utilisation du document 4

Exercice à faire sur ordinateur (code du formulaire dans le fichier SNT2101.html).

Sur un ordinateur connecté à internet, ouvrir la page https://jsfiddle.net/. Fermer le panneau bleu
en haut de la page s’il apparait. La page est divisée en quatre panneaux principaux : HTML, CSS,
Javascript, Result.
Taper le code HTML dans le panneau HTML (ou le copier depuis le fichier SNT2101.html), puis
cliquez sur le bouton « Run ». Le résultat s’affiche dans le panneau Result.
Taper un mot (par exemple « avocat ») dans le champ de saisie et cliquer sur le bouton ou taper la
touche « Entrée » pour vérifier qu’on va bien sur la page Avocat de Wikipedia.
Si vous avez un éditeur de texte (pas un traitement de texte tel que Word), vous pouvez aussi
taper le texte HTML dans cet éditeur et l’enregistrer dans un fichier, par exemple wikipedia.html et
ouvrir ce fichier dans votre navigateur en double-cliquant dessus ou, si cela ne fonctionne pas, en
le faisant glisser dans une fenêtre ouverte du navigateur.

Question 5
Utilisation du document 4

Exercice à faire sur ordinateur.

Il faut changer dans le formulaire l’URL de l’action du formulaire : https://google.fr/search


et le nom du champ de saisie : q.

<h3>Rechercher sur Google : </h3>


<form action="https://google.fr/search">
<input name="q">

Voir le fichier google.html pour la solution complète.


Note : il semble que le formulaire ne fonctionne pas depuis jsfiddle.net car Google se rend compte
que la requête n’est pas faite depuis une page Web « normale » mais depuis une page qui est à
l’intérieur d’une autre page.

Question 6
Utilisation du document 4

Si le serveur devait retourner le contenu de la page recherchée et que celle-ci est hébergée sur un
autre serveur, il devrait la récupérer depuis ce serveur puis la retourner au client. Cela alourdit le
trafic sur le réseau internet.
De plus, dans l’architecture du Web, les serveurs ne communiquent pas avec d’autres serveurs,
seulement avec des clients. Le serveur retourne donc l’URL de la page recherchée au client (ici le
navigateur), et celui-ci envoie une requête au serveur qui héberge cette page pour la récupérer.
ACTIVITE 3

Les compétences travaillées


Cette activité apporte des connaissances sur les algorithmes de base des moteurs de recherche.
Elle doit encourager un usage critique des moteurs de recherche, en ne prenant pas leurs
résultats pour argent comptant.

Ces connaissances peuvent être mises en œuvre par un travail d’équipe ou personnel de
comparaison des résultats de différents moteurs à des requêtes identiques, ou d’un même moteur
à des requêtes proches (en changeant par exemple l’ordre des mots).

Les savoir-faire travaillés


• Maîtriser un algorithme de parcours de graphe, technique utilisée dans de nombreux
domaines de l’informatique.
• Varier les requêtes à un moteur de recherche pour obtenir des réponses plus adaptées.
• Parcourir la liste de réponses d’un moteur de recherche (au-delà de la première page) pour
trouver des réponses peut-être moins populaires mais plus pertinentes.

Question 1
Utilisation du document 1

Action Pages visitées Page à visiter


On visite E, lié à A et H E AH
On visite A, lié à B EA HB
On visite H, lié à J EAH BJ
On visite B, lié à A et C EAHB JC [A a déjà été visité]
On visite J, lié à F EAHBJ CF
On visite C, lié à A EAHBJ CF [A a déjà été visité]
On visite F, lié à C D G H EAHBJCF D G [C et H ont déjà été visités]
On visite D (pas de liens) EAHBJCFD G
On visite G (pas de liens) EAHBJCFDG

La visite est terminée en 9 étapes.

Question 2
Utilisation du document 1

Action Pages visitées Page à visiter


On visite A, lié à B A B
On visite B, lié à A et C AB C [A a déjà été visité]
On visite C, lié à A ABC [A a déjà été visité]

La visite est terminée, mais on a « raté » une grande partie du graphe !


Il faut donc visiter le graphe à partir de plusieurs points d’entrée, que l’on choisit en espérant qu’ils
donnent accès chacun à une grande partie du graphe.
Question 3
Utilisation du document 2

Les ajouts sont indiqués en rouge ci-dessous. Les scores de 6 sont dus au fait que le mot apparait
à la fois dans le titre de la page, et dans la page elle-même.


avocat (justice, 6) (avocat, 6)

droit (justice, 2)
fruit (avocat, 1) (fruit, 6)
juriste (justice.html, 1)

Question 4
Utilisation du document 3

Pour la page p2, l’importance devient 5 x 2 + 25 = 35.


Pour la page p3, l’importance devient 15 x 2 + 10 = 40.

Le classement s’inverse et la page p3 est donnée avant la page p2 dans la liste des résultats.

Question 5
Utilisation du document 3

« avocat fruit » : seule la page p1 contient chacun des mots-clés, avec une importance de 20+10 =
30.
« avocat droit » : le résultat est p2 et p3 (voir Doc 3).
« avocat » : les pages p1, p2 et p3 contiennent ce mot-clé. Le classement est p1 (20), puis p3 (15)
et enfin p2 (5).

On voit comment l’ajout de mots-clés permet d’avoir des réponses plus précises.

Question 6
Utilisation du document 4

Exercice à faire sur ordinateur

Voici les résultats pour la même requête « avocat droit » sur https://google.fr/, https://bing.com/ et
https://duckduckgo.com : on observe que Google met en avant des liens sponsorisés, Bing la page
Wikipédia et DuckDuckGo un site spécialisé.
Google et Bing fournissent également une carte (non visible sur les images) avec des cabinets
d’avocat proches du lieu où a été faite la requête (ce qui indique que le navigateur dispose de
cette information et l’a transmise au moteur de recherche).
Résultats de la recherche avec Google

Résultats de la recherche avec Bing


Résultats de la recherche avec DuckDuckGo
ACTIVITE 4
Les compétences travaillées
Cette activité apporte des connaissances sur les mécanismes utilisés par les sites Web pour
enregistrer des traces numériques. Elle doit encourager un usage responsable du Web et nourrir
un débat argumenté sur l’équilibre entre les services apportés par ces traces et leurs risques.

Dans le prolongement de l’activité précédente sur les moteurs de recherche, on peut ainsi
envisager un travail d’équipe pour analyser les différences entre les réponses du même moteur
de recherche à la même requête sur des ordinateurs personnels de différents utilisateurs. On
pourra aussi faire un exposé sur la façon dont différents sites mettent en œuvre le contrôle de
l’utilisateur sur ses données en application du RGPD.

Les savoir-faire travaillés


• Connaître les mécanismes de base de collecte de données personnelles, notamment les
cookies.
• Comprendre et répondre de manière informée aux demandes d’autorisation de collecte de
données personnelles par les sites Web.
• Gérer les réglages du navigateur (détails dans le chapitre Hygiène Numérique).

Complément au contenu du manuel :


Les trois méthodes introduites précédemment (site https://websniffer.cc, inspecteur du navigateur,
ou commande « curl ») pour visualiser les requêtes et réponses du protocole http permettent de
voir les cookies dans les échanges de messages entre client et serveur.
Ainsi, si on visualise la requête et la réponse pour l’URL
https://fr.wikipedia.org
on trouve dans la réponse plusieurs lignes « set-cookie » dont une pour le cookie de nom
« GeoIP » qui contient la localisation géographique du client. D’après la politique de confidentialité
de Wikipedia (https://meta.wikimedia.org/wiki/Privacy_policy/FAQ/fr), ce cookie est utilisé pour que
l’utilisateur puisse « recevoir les contenus régionaux pertinents ».

Question 1
Utilisation du document 1

a. Un cookie est une information déposée par un serveur Web dans le navigateur en réponse à
une requête, et qui est transmis à nouveau au serveur lorsque l’utilisateur utilise le même
navigateur pour aller sur le même site.
Les cookies permettent de reconnaître qu’un même utilisateur (plus précisément le même
navigateur) visite le même site à plusieurs reprises. Le serveur peut ainsi garder trace des pages
visitées par cet utilisateur.
D’autre traces sont laissées simplement en affichant une page Web (images traîtres) ou en
cliquant un lien (liens trompeurs). Les images traîtres permettent de savoir par exemple lorsqu’une
publicité a été affichée, et les liens trompeurs permettent de savoir quel lien a été cliqué.

b. Le cookie est créé à l’étape 4 : le cookie n’existe vraiment que lorsqu’il est stocké dans le
navigateur
Si l’on efface le cookie et qu’on visite à nouveau le site, tout se passe comme lors de la première
visite, mais le cookie aura un numéro différent car le serveur a déjà utilisé le numéro 123. Le
serveur nous considèrera alors comme un nouvel utilisateur.
Question 2
Utilisation du document 2

Seul le lien A est un lien trompeur : il envoie sur le site tracker.com alors que le texte du lien
semble pointer vers Wikipédia. Si on clique sur le lien, la requête est envoyée au site tracker.com,
avec un paramètre qui est la page Wikipédia sur les cookies.
Le lien B est un lien vers la page de recherche de Wikipedia.

Question 3
Utilisation du document 3

Le moteur peut ainsi savoir quelle réponse a choisi l’utilisateur : c’est un lien trompeur qui semble
aller vers la Page A, mais qui en réalité envoie une requête au moteur de recherche avec comme
paramètre l’URL de la page visée. Lorsqu’il reçoit cette requête, le moteur note quel lien a été
choisi, ce qui peut l’aider à améliorer son algorithme de classement des réponses. Puis il envoie
une réponse de type « Found » (voir Activité 2, document 4, page 37) avec l’adresse de la Page A,
de telle sorte que le navigateur aille chercher cette page. Pour l’utilisateur, tout se passe comme si
le lien pointait directement vers la Page A.
Si le lien allait directement sur pageA.html, le moteur de recherche ne saurait pas quelle réponse à
la requête de recherche l’internaute a choisi.

Question 4
Utilisation du document 3
Exercice à faire sur ordinateur Windows.

Le logiciel CookieViz fonctionne seulement sur machines Windows. Il peut être téléchargé à
l’adresse suivante : https://github.com/LINCnil/CookieViz/releases.

Une vidéo montrant son fonctionnement est disponible ici :


https://www.dailymotion.com/video/x18gigz.

Question 5
Utilisation du document 4

La page de gauche permet de voir tous les sites concernés, et de désactiver tous les cookies avec
un seul clic, grâce au bouton « Tout interdire ».
La page de droite est moins explicite. Il faut cliquer sur les marques à droite de chaque réglage
pour avoir des détails, et elle a seulement un bouton pour tout accepter mais pas tout refuser. Si
l’on clique sur le bouton « Partenaires potentiels du site » en bas, on obtient une liste de plus de
370 sites, qu’il faut désactiver un par un ! Même si cette page est conforme au RGPD (règlement
général de protection des données), elle est clairement conçue pour encourager l’utilisateur à
accepter tous les cookies du site, afin de collecter le maximum d’information.
ACTIVITE 5

Les compétences travaillées


Cette activité apporte des connaissances sur les règles de publication sur le Web, dans le but de
promouvoir un usage responsable et conforme à la loi.

Elle se prête à l’organisation de débats contradictoires sur l’utilisation des ressources


disponibles en ligne et les bonnes pratiques, à partir de cas d’usages concrets mettant en jeu le
droit à l’image, le plagiat ou la cession de droits patrimoniaux. Elle se prête aussi à une analyse
critique et comparative des conditions d’utilisation de différents sites Web. Elle peut aussi donner
lieu à un travail collectif pour la création d’un petit site Web donnant des conseils du type « Il
faut » / « Il ne faut pas ».

Les savoir-faire travaillés


• Connaître ses droits et devoirs en tant qu’auteur de contenus.
• Comprendre les conditions d’utilisations des sites Web vis-à-vis des droits d’auteur ;
• Choisir une licence lors de la publication de contenus.
• Connaître ses droits vis-à-vis des données et informations personnelles qui viendraient à
être publiées.

Question 1
Utilisation du document 1

- Assumer la responsabilité de la publication, même si celle-ci est faite de manière anonyme ou


sous pseudonyme.
- Respecter les limites de la liberté d’expression (diffamation, incitation à la haine, etc.).
- Respecter les droits d’auteurs si l’on utilise des contenus dont on n’est pas l’auteur, et le droit à
l’image si l’on poste des images ou des vidéos d’autres personnes.

Question 2
Utilisation du document 2

a. « Perpétuel » signifie que l’auteur conserve le droit moral même après sa mort. Il peut être
exercé par ses ayants droits après la mort de l’auteur, même si l’œuvre tombe dans le domaine
public (c’est-à-dire que les droits patrimoniaux se sont éteints).
« Inaliénable » signifie que l’auteur ne peut renoncer à son droit moral ni le céder, même s’il le
souhaite.
« Imprescriptible » signifie que le droit moral ne s’éteint pas même si l’œuvre n’est pas exploitée,
et même s’il n’y a plus d’ayants droits.

b. Le plagiat est une violation du droit moral puisqu’il consiste à s’attribuer la paternité d’un œuvre
qui n’est pas la sienne.
Mettre un morceau de musique ou un film sur sa page Web sans autorisation des auteurs viole en
général les droits patrimoniaux, sauf si ces contenus ont été publiés avec une licence gratuite.

c. Oui, mais l’internaute autorise Facebook à en faire à peu près ce qu’il veut, y compris à
autoriser d’autres à en faire ce qu’ils veulent (car la licence est transférable et Facebook peut
accorder des sous-licences à des tiers).
Question 3
Utilisation du document 3

a. On peut publier des images d’une manifestation si celle-ci est un événement d’actualité ou à
valeur historique, à condition de respecter la dignité de la personne humaine.

b. Des propos diffamatoires ou discriminatoire (racistes, sexistes, etc.) portent atteinte à la


personne et engagent la responsabilité de son auteur. La discrimination raciale, par exemple, est
passible de deux ans de prison et/ou 30 000 euros d’amende.

Complément : l’article 225-1 du Code pénal énumère 20 critères de discrimination :


« Constitue une discrimination toute distinction opérée entre les personnes physiques sur le
fondement de leur origine, de leur sexe, de leur situation de famille, de leur grossesse, de leur
apparence physique, de la particulière vulnérabilité résultant de leur situation économique,
apparente ou connue de son auteur, de leur patronyme, de leur lieu de résidence, de leur état de
santé, de leur perte d'autonomie, de leur handicap, de leurs caractéristiques génétiques, de leurs
mœurs, de leur orientation sexuelle, de leur identité de genre, de leur âge, de leurs opinions
politiques, de leurs activités syndicales, de leur capacité à s'exprimer dans une langue autre que le
français, de leur appartenance ou de leur non-appartenance, vraie ou supposée, à une ethnie, une
Nation, une prétendue race ou une religion déterminée ».

Question 4
Utilisation du document 4

« Partage dans les même conditions » autorise des modifications, mais impose que celles-ci
soient diffusées avec les mêmes conditions que l’original.
« Pas de modification » n’autorise pas les modifications de l’œuvre.
Cela n’a donc pas de sens de simultanément autoriser et ne pas autoriser les modifications.

Question 5
Utilisation du document 5

- Des articles de presse ont relaté des accusations de malversations ou de violences à l’encontre
d’une personne. La justice a acquitté cette personne, mais les articles continuent d’apparaitre en
tête de liste lorsque l’on tape le nom de cette personne dans un moteur de recherche : la personne
peut faire valoir son droit au déréférencement pour que ces résultats n’apparaissent plus (mais les
pages contenant les informations, elles, ne sont pas retirées).
- Un internaute a publié sur son réseau social des contenus ou des images qu’il regrette car ils
pourraient le pénaliser dans une recherche d’emploi. Il peut demander au réseau social le retrait
de ces données.
Dans les deux cas, le moteur de recherche ou le réseau social peuvent refuser l’effacement ou le
déréférencement. La jurisprudence est encore peu fournie sur ces droits récents, et il est
nécessaire d’équilibrer le droit à l’information avec le droit à l’oubli.
Je vérifie mes connaissances

Solutions détaillées

1. QCM
1. b.
2. c.
3. a.
4. a. et c.
5. b.

2. Vrai/Faux
a. FAUX. Cette notion apparaît dès les années 1960 dans le projet Xanadu du sociologue Ted
Nelson.
b. FAUX. Seul le protocole HTTPS est sécurisé.
c. VRAI.
d. FAUX. Elles sont contenues dans le <head> et non dans le <body>.
e. VRAI.
f. VRAI.
g. FAUX. Cela peut se faire à l’aide de liens trompeurs ou d’images traîtres.
h. VRAI.

3. Organisation des connaissances


a. Un index qui indique, pour chaque mot, les pages qui le contiennent avec l’importance du mot
dans la page. Éventuellement la popularité de chaque page (calculée par exemple avec
l’algorithme PageRank).
L’index est calculé en parcourant les pages Web et en analysant leur contenu. Le classement des
réponses utilise l’importance des mots dans chaque page et la popularité des pages.

b. Les cookies servent à enregistrer des informations à caractère non personnel comme des
préférences ou le contenu d’un panier.
Le RGPD impose d’informer les utilisateurs sur la collecte de données à caractère personnel et
d’obtenir leur consentement avant d’effectuer cette collecte.

4. Vers une définition


a. Les balises d’une page HTML définissent sa structure, qui peut être représentée par un arbre.
b. Dans le protocole http, le client envoie des requêtes au serveur et celui-ci retourne des contenus Web.
c. Un cookie enregistre des informations qui seront transmises au serveur lors d’une prochaine requête.
d. Certains droits patrimoniaux sont cédés par les internautes lorsqu’ils postent des contenus sur un réseau
social.

5. Trouver l’intrus
<head> est un élément pour les métadonnées.
<b> : gras
<ul> : liste
<p> : paragraphe
<li> : élément de liste
L’intrus est donc « titre » dont la balise est <title>.
JE M’ENTRAÎNE

6. Le code HTML
Les erreurs sont surlignées en jaune ci-dessous :
Il manque la balise <html>
Il manque la balise <head>
<title>Cherchez l’erreur</title>
<meta charset="utf-8"> Cet élément doit apparaître de préférence en premier car
il spécifie le jeu de caractères utilisé dans la suite
Il manque la balise de fin </head>
Il manque la balise <body>
<h2>Ouvrez l’oeil</h3> La balise de fin </h3> ne correspond pas à celle de début
<p>Ce paragraphe contient <b>du texte <i>très</b> important</i>.
L’élément <b> se termine au milieu de l’élément <i>
Il manque la balise de fin </p>
<p>Courses à faire : /p> Il manque le caractère < au début de la balise de fin
Il manque la balise de début de liste <ul>
<li>Acheter du pain Il manque la balise de fin </li>
<li>Passer au pressing Il manque la balise de fin </li>
Il manque la balise de fin de liste </ul>
</body>
Il manque la balise de fin </html>

La version corrigée est la suivante :


<html>
<head>
<meta charset="utf-8">
<title>Cherchez l’erreur</title>
</head>
<body>
<h2>Ouvrez l’oeil</h2>
<p>Ce paragraphe contient <b>du texte <i>très</i></b><i> important</i>.</p>
<p>Courses à faire : </p>
<ul>
<li>Acheter du pain</li>
<li>Passer au pressing</li>
</ul>
</body>
</html>

Il est à noter que malgré toutes ces erreurs, le document initial sera affiché dans un navigateur de
façon à peu près correcte. Ci-dessous la version initiale à gauche et corrigée à droite :
7. De la page au code

a. Code HTML de la solution:

<html>
<head>
<meta charset="utf-8">
<title>Exercice</title>
</head>
<body>
<p>La météo du jour à <b><a href="">Paris</a></b> :</p>
<hr>
<ul>
<li><b>Matin</b> : <i>Ensoleillé</i></li>
<li><b>Après-midi</b> : <i>Nuageux</i></li>
<li><b>Soirée</b> : <i>Averses possibles</i></li>
</ul>
<hr>
</body>
</html>

b. Voici l’arbre complet :

8. Les feuilles de style

a. On définit trois classes (repérées par le fait que leur nom commence par un point) pour chacun
des trois types d’affichage :

.soleil { background-color: yellow; }


.nuage { background-color: lightgrey; }
.pluie { background-color: darkgrey; }
b. Le fichier HTML modifié est le suivant. On importe la feuille de style et on ajoute l’attribut
« class » aux trois éléments de la liste pour que les règles correspondantes de la feuille de style
leur soient appliquées. Les modifications sont surlignées en jaune :

<html>
<head>
<meta charset="utf-8">
<!-- importation de la feuille de style externe : -->
<link rel="stylesheet" href="Q8-style.css">
<title>Exercice</title>
</head>
<body>
<p>La météo du jour à <b><a href="">Paris</a></b> :</p>
<hr>
<ul>
<li class="soleil"><b>Matin</b> : <i>Ensoleillé</i></li>
<li class="nuage"><b>Après-midi</b> : <i>Nuageux</i></li>
<li class="pluie"><b>Soirée</b> : <i>Averses possibles</i></li>
</ul>
<hr>
</body>
</html>

Dans l’exemple ci-dessus on a utilisé une feuille de style externe, référencée par la balise <link>
dans l’en-tête du document. C’est la méthode recommandée car ainsi une même feuille de style
peut être utilisée par plusieurs pages. On peut aussi intégrer directement la feuille de style dans le
fichier HTML. La partie <head> devient alors (le reste est inchangé) :

<head>
<meta charset="utf-8">
<style>
.soleil { background-color: yellow; }
.nuage { background-color: lightgrey; }
.pluie { background-color: darkgrey; }
</style>
<title>Exercice</title>
</head>

Dans les deux cas le résultat est le suivant :


9. Les moteurs de recherche
Exercice à faire sur ordinateur.
a. Une recherche avec la requête « moteurs de recherche » sur Google donne comme premier
résultat une page Wikipédia (https://fr.wikipedia.org/wiki/Liste_de_moteurs_de_recherche) qui liste
les moteurs de recherche. On trouve aussi, bien placé dans la liste des réponses, le moteur de
recherche (développé en France) Qwant (https://www.qwant.com/?l=fr).
b. Lorsque l’on fait une requête sur le moteur Qwant indiqué ci-dessus, l’URL est de la forme
https://www.qwant.com/?q=moteurs%20de%20recherche&t=web
On peut donc aisément adapter le formulaire vu dans l’Activité 2 (document 4, page 37) (fichier
Q9-qwant.html):
<html>
<head>
<meta charset="utf-8">
<title>Interroger Qwant</title>
</head>
<body>
<h3>Rechercher sur Qwant :</h3>
<form action="https://www.qwant.com">
<input name="q">
<input type="submit">
</form>
</body>
</html>

10. L’algorithme

En partant de A :
Action Visitées À visiter
On visite A, lié à B et E A BE
On visite B, lié à A, C et D AB ECD
On visite E, lié à A et D ABE CD
On visite C, lié à A et E ABEC D
On visite D, lié à C ABECD
Visite terminée

En partant de D :
Action Visitées À visiter
On visite D, lié à C D C
On visite C, lié à A et E DC AE
On visite A, lié à B et E DCA EB
On visite E, lié à A et D DCAE B
On visite B, lié à A, C et D DCAEB
Visite terminée
11. Les cookies
Exercice à faire sur ordinateur.
a. Lors de la première visite le bandeau ci-dessous s’affiche :

Si l’on clique sur « Personnaliser », la fenêtre suivante s’affiche :

Après avoir complété les choix (par exemple « Tout interdire » puis « Appliquer mes choix »), on
peut voir que si l’on va à nouveau sur le site www.education.gouv.fr, le bandeau d’acceptation des
cookies ne s’affiche plus.

b. Pour trouver les cookies enregistrés dans le navigateur Chrome, on peut aller directement sur la
page d’URL chrome://settings/siteData. On peut aussi trouver cette page comme suit :
- Aller dans les réglages du navigateur (commande « Préférences » du menu « Chrome »)
- Cliquer sur « Paramètres avancés » en bas de la page, puis sur « Paramètres du contenu » en
bas du panneau « Confidentialité et sécurité », puis sur « Cookies », puis sur « Afficher l’ensemble
des cookies et données de sites ».
Une fois sur la page qui liste tous les cookies, on peut rechercher un cookie en haut à droite de la
page. En tapant « education » on voit apparaître deux sites et 6 cookies :
Si on clique sur « www.education.gouv.fr », on voit 3 cookies, dont un s’appelle
« CONSENT_RGPD », avec le contenu suivant :

Le contenu du cookie indique les options que l’on a choisies. Ici, toutes les options ont été
refusées et son mentionnées comme « false » (faux).

c. Depuis l’étape précédente, cliquer sur la croix à droite du cookie CONSENT_RGPD. Aller à
nouveau sur www.education.gouv.fr et constater qu’il affiche le bandeau d’acceptation des
cookies.
Avec le navigateur Firefox, la liste des cookies est accessible depuis le menu « Préférences »,
cliquer sur « Vie privée et sécurité » dans le menu à gauche, puis défiler jusqu’à « Cookies et
données de sites » et cliquer sur « Gérer les données » :
12. Les licences
Exercice à faire sur ordinateur.

Sur la page Wikipédia du Web (https://fr.wikipedia.org/wiki/World_Wide_Web) figure une photo de


la plaque commémorant la création du Web. En cliquant dessus, la photo s’affiche en grand avec,
en dessous, sa légende et la licence d’utilisation :

La mention CC BY-SA 2.0 en bas à droite signifie que l’image est publiée sous licence Creative
Commons 2.0, avec comme conditions l’attribution et le partage dans les mêmes conditions :
. Les détails apparaissent en cliquant à côté de la mention ou sur le bouton « Plus de détails ».
Si, dans la même page Wikipédia, on clique sur le logo du Web, on voit que celui-ci a été mis dans
le domaine public, c’est-à-dire qu’il peut être utilisée sans restriction.

13. Les données personnelles


Exercice à faire sur ordinateur.

a. Le réseau social Twitter a de nombreuses règles et politiques d’utilisation (voir


https://help.twitter.com/fr/rules-and-policies). Concernant les données personnelles, un long
document (plus de 6000 mots, soit plus de 20 pages de texte) détaille les informations collectées
et leurs usages (https://twitter.com/fr/privacy#update). Dans les conditions d’utilisation
(https://twitter.com/fr/tos#update) on trouve une cession de droits similaire à celle du réseau
Facebook qui figurent dans le manuel (Acrtivité 5, page 42) :
« En soumettant, en publiant ou en affichant un Contenu sur ou via les Services, vous
nous accordez une licence mondiale, non exclusive et libre de redevances (incluant le
droit de sous-licencier), nous autorisant à utiliser, copier, reproduire, traiter, adapter,
modifier, publier, transmettre, afficher et distribuer ce Contenu sur tout support et selon
toute méthode de distribution (actuellement connus ou développés dans le futur). Cette
licence nous autorise à mettre votre Contenu à disposition du reste du monde et
autorise les autres à en faire de même. »
L’utilisateur de Twitter autorise donc le service à faire à peu près ce qu’il veut des
données que l’utilisateur poste sur le réseau.

b. Toujours sur le réseau social Twitter, il suffit d’aller sur le profil de l’utilisateur, de cliquer
« Paramètres et confidentialité » puis « Vos données Twitter » sur la gauche. En bas de la page
qui s’affiche figure un panneau pour
télécharger les données. Lorsque l’on clique
sur le bouton « Demander les données » la
récupération est lancée et lorsque les
données sont prêtes un message est envoyé
à l’utilisateur par courrier électronique.
FAB LAB
Télécharger le fichier fablab.zip et extraire son contenu dans un dossier de nom fablab :
fablab /
fablab.py
fablab2.py
html5.png
index.html
page1-css.html
page1.html
page2.html
serveur.py
style.css
Les fichiers destinés aux élèves sont dans le fichier SNT2023.zip.

Les commandes ci-dessous (indiquées par %) correspondent à une utilisation avec un terminal Linux.

u Créer un serveur Web de pages statiques


Créer un dossier www au même niveau que le dossier fablab et y copier le fichier index.html :
% mkdir www
% cd www
% cp ../fablab /index.html .
% python -m SimpleHTTPServer 8000
Note : lancer si possible le serveur python dans une autre fenêtre terminal, car ainsi il pourra rester actif
alors que l’on fait des modifications.
Entrer l’URL http://localhost:8000/index.html dans un navigateur ou cliquer directement sur le lien.
La page index.html s’affiche, mais les liens de fonctionnent pas car les pages page1.html et page2.html
n’existent pas.
Pour arrêter le serveur, taper Control-C dans la fenêtre où il a été lancé.

v Ajouter du contenu au serveur


Copier les fichiers page1.html et page2.html dans le dossier www :
% cp ../fablab /page1.html ../fablab /page2.html .
Relancer le serveur python si besoin :
% python -m SimpleHTTPServer 8000
Entrer l’URL http://localhost:8000/index.html ou cliquer directement sur le lien.
Cette fois-ci les liens vers page1.html et page2.html doivent fonctionner.

Cependant le logo HTML5 ne s’affiche pas dans la page1 car le fichier html5.png n’existe pas.
Copier ce fichier :
% cp ../fablab /html5.png .
Aller à nouveau sur la page1 et vérifier que le logo s’affiche

Copier la feuille de style style.css et la version modifiée de la page1, page1-css.html :


% cp ../fablab /style.css .
% cp ../fablab /page1-css.html page1.html
Aller à nouveau sur la page1 et vérifier que le style est pris en compte.
Arrêter le serveur python car on va lancer un serveur différent dans la prochaine étape.
wCréer un serveur avec une page dynamique qui donne
l’heure
Copier les fichiers serveur.py et fablab.py dans le dossier www :
% cp ../fablab /serveur.py ../fablab /fablab.py .
Lancer (si possible dans une autre fenêtre terminal) le serveur :
% python fablab.py
Entrer l’URL http://localhost:8000/date dans un navigateur ou cliquer le lien. Le navigateur devrait afficher
la date et l’heure. Recharger la page plusieurs fois pour vérifier qu’elle est bien recalculée à chaque fois.

Dans le fichier fablab.py, la fonction date, qui est appelée lorsque l’on clique ce lien, est la suivante :

def date(path):
date = datetime.now()
jour = date.strftime("%d %B %Y")
heure = date.strftime("%Hh%M")
return pageHTML('Date', '<p>Nous sommes le %s, il est %s.</p>' % (jour, heure))

Cette fonction calcule la date et l’heure, puis retourne une page HTML qui a pour titre « Date » et donc le
contenu est un paragraphe contenant la date et l’heure.

x Ajouter une page dynamique qui liste les fichiers


Copier le fichier fablab2.py pour remplacer fablab.py :
% cp ../fablab /fablab2.py fablab.py
Arrêter le serveur (Control-C) et le relancer afin qu’il prenne en compte cette nouvelle version :
% python fablab.py
Entrer l’URL http://localhost:8000/ dans le navigateur ou cliquer sur le lien. La liste des fichiers qui sont
dans le dossier www devrait s’afficher.

Pour cela, on a ajouté dans fablab.py une fonction dir qui liste l’ensemble des fichiers et crée une chaîne de
caractères avec le code HTML de la page :

def dir(path):
titre = 'Liste des fichiers de '+path
liste = '<h2>'+titre+'</h2><ul>'
for name in listdir(curdir + path):
liste += '<li><a href="'+name+'">'+name+'</a></li>'
return pageHTML(titre, liste)

Cette fonction utilise le module « listdir » qui permet d’énumérer les fichiers du dossier « path ». On
construit dans la variable liste une liste HTML avec un élément pour chaque fichier, qui est aussi un lien
vers le fichier, de la forme :
<li><a href="nom-du-fichier">nom-du-fichier</a></li>

Enfin, la ligne
pageDynamique('/', dir)

à la fin de fablab.py indique au serveur d’appeler la fonction dir lorsque le chemin « / » du serveur est
chargé, ce qui correspond à l’URL http://localhost:8000/.

Note : On peut lancer la commande


% python fablab2.py
depuis le dossier fablab pour tester directement la dernière étape.
La page du codeur
Télécharger le fichier moteur.zip et extraire son contenu dans un dossier de nom moteur. Il contient les
fichiers de départ donnés aux étudiants et les solutions des différentes étapes (fichiers avec le suffixe « -
sol »).
moteur /
codeur.py
index.html
moteur.py
moteur1.py
moteur1-sol.py
moteur2.py
moteur2-sol.py
moteur3.py
moteur3-sol.py
moteur4.py
moteur4-sol.py
page1.html
page2.html
search.html
serveur.py
Les fichiers destinés aux élèves sont dans le fichier SNT2024.zip.

Pour pouvoir travailler, il faut installer le module python « BeautifulSoup » qui permet d’analyser le
contenu des pages Web :
% pip install beautifulsoup4

u Construire l’index
Lancer la commande
% python moteur1.py
qui appelle trois fois la fonction indexerPage (qui ne fait rien) et affiche l’index (qui est vide).
La fonction indexerPage doit ajouter le contenu d’une page à l’index. Pour cela elle doit lire une page,
extraire ses mots, et les ajouter un par un à l’index. L’index est un dictionnaire qui associe à chaque mot
une liste des pages qui contiennent ce mot. Si le mot est déjà dans l’index, on ajoute la page à la liste, sinon
on crée une nouvelle entrée dans l’index avec cette seule page :
def indexerPage(page):
global index
contenu = lirePage(page) # lire la page
for mot in listeMots(contenu): # pour chaque mot de la page
if mot: # ajouter le mot à l'index
if mot in index:
index[mot].append(page)
else:
index[mot] = [page]

Lancer la commande
% python moteur1-sol.py
qui contient la fonction complétée et vérifier que l’index est correct.
v Parcourir les pages par leurs liens
Lancer la commande
% python moteur2.py
qui appelle la fonction parcourir avec comme page de départ la page index.html. Tant qu’il reste des pages
à visiter, cette fonction prend une page à visiter, lit son contenu pour en extraire les liens, et appelle la
fonction visiterPage avec le nom de la page et la liste des liens. Comme la fonction visiterPage ne fait rien,
le programme boucle indéfiniment sur la page index.html. Taper Control-C pour l’interrompre.
La fonction visiterPage doit transférer la page des pages à visiter aux pages visitées puis, pour chaque page
dans la liste des liens, l’ajouter aux pages à visiter sauf si elle a déjà été visitée et qu’elle n’est pas déjà dans
les pages à visiter. La compléter comme suit :
def visiterPage(page, listeLiens):
visitees.append(page) # ajouter 'page' aux pages visitées
aVisiter.remove(page) # retirer 'page' des pages déjà visitées
for page in listeLiens: # pour chaque page dans la liste de liens
if not page in visitees and not page in aVisiter:
aVisiter.append(page) # l'ajouter à la liste des pages à visiter

Lancer la commande
% python moteur2-sol.py
qui contient la fonction complétée et vérifier que les pages sont visitées une et une seule fois.

w Construire le graphe du Web


Lancer la commande
% python moteur3.py
qui appelle la fonction parcourir avec comme page de départ la page index.html, puis la fonction
afficherGraphe qui affiche le graphe du Web. Comme la fonction ajouterLiens, qui est appelée par la
fonction parcourir à chaque page visitée pour construire le graphe, ne fait rien, le graphe affiché est vide.
Le graphe est un dictionnaire Python qui associe à chaque page la liste des pages vers lesquelles elle a des
liens. La fonction ajouterLiens doit donc ajouter la destination de chaque lien à l’entrée de la page dans le
graphe. La compléter comme suit :
def ajouterLiens(page, listeLiens):
global graphe
for destination in listeLiens: # pour chaque destination
if page in graphe: # si la page est dans le graphe
graphe[page].append(destination) # ajouter la destination
else: # sinon
graphe[page] = [destination] # créer la page et la destination

Lancer la commande
% python moteur3-sol.py
qui contient la fonction complétée et vérifier que le graphe des pages est correct.
x Calculer l’importance de chaque page avec PageRank
Lancer la commande
% python moteur3.py
qui appelle la fonction parcourir avec comme page de départ la page index.html, puis la fonction
calculerPageRank qui calcule la PageRank de chaque page et la fonction afficherPageRank qui affiche celui-
ci. La fonction calculerPageRank initialise le PageRank de chaque page à 1/n s’il y a n pages, puis appelle la
fonction itererPageRank 10 fois pour que celui-ci se stabilise. Comme la fonction itererPageRank ne fait
rien, le PageRank de chaque page est 0.
La fonction itererPageRank doit calculer un nouveau PageRank de chaque page à partir de son PageRank
précédent. Pour cela elle doit initialiser le nouveau PageRank de chaque page à 0, puis répartir le PageRank
précédent de chaque page de manière équitable entre les pages liées à cette page, en utilisant le graphe
calculé précédemment. Compléter la fonction comme suit :
def itererPageRank():
global pageRank

# initialiser le nouveau PageRank à 0


PR = {}
for page in graphe:
PR[page] = 0

# pour chaque page du graphe


for page in graphe:
# calculer pr = PageRank de cette page divisé
# par le nombre de pages auxquelles elle est liée
pr = pageRank[page] / len(graphe[page])
# pour chacune des pages liées
for destination in graphe[page]:
# ajouter pr au PageRank de cette page
if destination not in PR:
PR[destination] = 0
PR[destination] += pr

return PR

Lancer la commande
% python moteur4-sol.py
qui contient la fonction complétée et vérifier que le PageRank n’est plus nul. L’affichage du PageRank est
fait à chacune des 10 répétitions, ce qui permet de voir son évolution et de vérifier qu’il se stabilise.

y Répondre à une requête de recherche


Lancer la commande
% python moteur.py
qui contient la version finale du moteur d’indexation. Cette commande affiche l’index, le graphe et le
PageRank de chaque page, et enregistre ces informations dans un fichier moteur.json.
Il reste à exploiter ce fichier dans le serveur Web créé dans la page du FabLab. Le fichier codeur.py contient
une requête dynamique pour l’URL http://localhost:8000/rechercher?search=motsclés. Cette requête
dynamique appelle la fonction rechercher dans le fichier codeur.py.
Lancer la commande
% python codeur.py
et entrer l’URL http://localhost:8000/search.html ou cliquer sur le lien. La page search.html affiche un
formulaire similaire à celui de l’activité 2 (document 4, page 37). Comme la fonction rechercher du
formulaire n’est pas complète, la réponse à la requête est toujours vide.
La fonction rechercher extrait les mots-clés de la requête et appelle la fonction trouverPages qui utilise
l’index pour trouver les pages qui contiennent tous les mots-clés. Si aucune page ne répond à la requête,
elle retourne une page avec le message correspondant. Sinon, elle doit retourner le code HTML de la liste
des pages. Compléter le code de la fonction ainsi :
html += "<ol>" # début de liste numérotée
for page in pages: # pour chaque page du graphe
# ajouter un élément de liste avec un lien vers la page et son PageRank
html += '<li>(PageRank=%f) <a href="%s">%s</a></li>'
% (pageRank[page], page, page)
html += '</ol>' # fin de la liste

Arrêter le serveur en tapant Control-C et le relancer :


% python codeur-sol.py
Aller à nouveau sur la page http://localhost:8000/search.html dans le navigateur et faire une recherche,
par exemple du mot clé « page ». La réponse doit lister chaque page résultat avec son PageRank.

Note : il est bien sûr possible de créer d’autres pages Web (à condition d’ajouter des liens depuis les pages
existantes) et de relancer le moteur d’indexation pour créer une nouvelle version du fichier moteur.json.
On peut alors relancer le serveur comme ci-dessus pour utiliser ce nouvel index.
Guide du professeur - Chapitre 3

L’objectif de ce chapitre est de présenter les grands principes de fonctionnement du Web, en


tant que système donnant accès à un ensemble de données (page, image, son, vidéo)
reliées par des liens hypertextes et accessibles sur le réseau Internet.

Histoire, enjeux, débats


Ce chapitre permet d’aborder les principes de l’HTML, du CSS et du protocole http, de
comprendre comment fonctionnent les moteurs de recherche, d’appréhender la notion de
trace numérique, intimement liée à la question de l’anonymat sur Internet (Controverse) et
découvrir le concept de Web sémantique, c’est-à-dire le Web de demain.

v Activité 1 Les ingrédients d’une page Web : HTML et CSS

v Activité 2 HTTP : les clients parlent aux serveurs

v Activité 3 Sous le capot des moteurs de recherche

v Activité 4 Passer inaperçu sur le Web

v Activité 5 Publier dans les règles

Bande dessinée d’ouverture


Cette bande dessinée permet de poser la question des traces numériques laissées sur le
Web par l’utilisateur, ces traces permettant la création d’un profil utilisateur utilisé par les
applications pour des recommandations ou des publicités ciblées. L’activité 4 permet de
comprendre la manière dont nous laissons des traces sur le Web et donne quelques pistes
afin d’en laisser le moins possible. On pourra également se reporter au guide d’hygiène
numérique en fin de manuel, ce guide approfondissant les moyens de protéger son identité
numérique.

Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est davantage question d’ouvrir un débat avec les élèves, les questions n’étant
là que pour initier une discussion, et pour les secondes, le but est de prendre connaissance
des pistes de recherche actuelles sur ce sujet.
Les activités

ACTIVITE 1

Les compétences travaillées


Cette activité apporte des connaissances techniques sur des langages qui, contrairement
aux langages de programmation, ne sont pas destinés à décrire des algorithmes :
• HTML est un langage de données permettant de décrire la structure et le contenu
d’un document ;
• CSS est un langage de règles permettant de décrire des contraintes sur la
présentation, sans expliquer comment les réaliser.
HTML et CSS illustrent la diversité des langages informatiques. Dans les deux cas il s’agit de
coder des informations avec une syntaxe rigoureuse, qui permet à la machine d’interpréter le
code.

Ces connaissances peuvent être mises en œuvre :


• Par un exposé oral expliquant les bases des langages HTML et CSS, ou bien des
caractéristiques plus avancées (à partir de ressources trouvées en ligne) : ajout de
tableaux ou de vidéos dans un document HTML, utilisation de CSS pour créer un
menu fixe, etc. ;
• Par un projet de groupe consistant à créer un petit site Web avec plusieurs pages
liées entre elles, en se répartissant les rôles : recherche d’information, structuration
du site, écriture des pages, amélioration du formatage par des feuilles CSS.

Les savoir-faire travaillés


• Analyser une page Web et faire le lien entre le code HTML et le contenu affiché.
• Analyser une feuille de style CSS et faire le lien entre les règles et leur effet sur
l’affichage.
• Créer ou modifier une page Web simple.
• Créer ou modifier une feuille de style simple.
ACTIVITE 1

Question 1
Utilisation du document 1

a. Avec Julie, Jean-Jacques Rousseau offre un nouveau type de roman, fondé sur la
sincérité des sentiments et la transparence des cœurs, au point que les lecteurs se sont
demandés s’il était l’auteur des lettres des deux amants ou seulement leur éditeur. En
réponse, les lecteurs libèrent des émotions oubliées, laissent couler leurs larmes et voient en
Jean-Jacques un ami sincère et un modèle qui communique directement avec eux et à qui
ils adressent, pour la première fois dans l’histoire de la littérature, des lettres de lecteurs
pleines d’admiration et de confidences.

b. La figure de Jean-Jacques Rousseau permet, par comparaison, de comprendre les stars


des réseaux sociaux qui mettent en scène les moindres détails de leurs vies quotidiennes et
leurs petits secrets pour des millions de fans qui les suivent et les admirent sans les avoir
jamais rencontrés pour de vrai. Les réseaux rapprochent des personnes qui ont les mêmes
affinités et peuvent se sentir enfin compris et aimés tels qu’ils sont, par leurs semblables.

Question 2
Utilisation du document 2

a. Seul Instagram voit son pourcentage augmenter entre 2017 et 2018, une augmentation
de 9%.
Snapchat reste à peu près au même niveau. Le côté éphémère de Snapchat et Instagram,
fondés sur le partage de moments de vie, rend ces deux applications très populaires.

b. Facebook est le réseau social des parents des jeunes d’aujourd’hui qui, comme chaque
génération, a besoin de se distinguer de la précédente. Les soucis de Facebbok avec la
justice ont peut être aussi permis de prendre conscience des déboires possibles. Enfin, le
système semble trop rigide et continu, au lieu d’être fondé sur des moments de vie au gré
des envies.

Question 3
Utilisation du document 3

Les besoins liés à chaque étape pourraient être :


• psychologiques : présence sociale, faire comme tout le monde, besoin de popularité ;
• de sécurité : environnement stable, prévisible, contrôlé par l’utilisateur ;
• d’appartenance et d’amour : affection des autres, se sentir aimé, avoir des amis
(besoins psychologiques aussi) ;
• d’estime : reconnaissance des autres et appréciation pour ses actions, ses propos,
etc. ;
• d’accomplissement de soi ? : influenceur d’opinion, devenir le fer de lance d’une
cause, etc.
ACTIVITE 2

Question 1
Utilisation du document 1

a. 3,4 milliards utilisateurs des réseaux sociaux pour 7,6 milliards d’habitants soit
3,4 / 7,6 = 44,74% de la population mondiale utilise les réseaux sociaux.
La proportion d’utilisateurs de réseaux sociaux par rapport aux nombres d’internautes est de
3,4 / 4,2 = 80,95%.
b. La plus forte progression potentielle concerne moins les internautes qui ne seraient pas
connectés aux réseaux sociaux que les habitants de la planète qui ne seraient pas
connectés à internet. La solution est donc de développer les connexions internet dans les
zones mal desservies : c’est ce que vise Facebook en apportant des connections satellitaires
ou par ballons en Afrique. En revanche, les chiffres ne donnent pas le nombre d’heures
passées sur les réseaux sociaux par ceux qui les utilisent : les géants de l’internet travaillent
à libérer du temps pour augmenter ces chiffres, c’est tout l’enjeu de la voiture autonome
permettant au chauffeur de faire autre chose que de conduire.

Question 2
Utilisation du document 2

a. Considérons la moyenne arithmétique. La série comprend 14 réseaux différents, la


moyenne est donnée par le rapport :
(2234 + 1900 + 1500 + 1000 + 794 + 563 + 500 + 431 + 335 + 330 + 303 + 300 + 291 + 250)
/14 = 695,1 utilisateurs actifs en moyenne.
Pour calculer la médiane, on classe les valeurs de la série statistique dans l'ordre croissant.
Le nombre est pair donc la médiane est la demi-somme des deux valeurs du milieu.
(431 + 500) / 2 = 465,5.
Enfin l’étendue vaut :
2234 – 250 = 1984.

b. Ces indicateurs montrent l’influence colossale des réseaux sociaux qui raisonnent à
l’échelle de la population mondiale et dont, de ce fait, la puissance dépasse celle de la
plupart des États, ce qui a des conséquences lourdes lorsqu’il s’agit de leur imposer des
règles ou des taxes.

c. La Chine a pour premier objectif de contrôler l’internet, et les réseaux sociaux en


particulier, afin de bannir toute opinion politique critique et toute remise en cause du Parti
communiste chinois. La question de Taïwan, considérée comme faisant partie de la Chine,
est un sujet non négociable. Les manifestations à Hong Kong montrent comment ce système
de contrôle permet d’éliminer tout avis dissident et de renforcer l’unanimité nationale
apparente, mais aussi réelle.
Question 3
Utilisation du document 3

La troisième colonne du tableau donne tous les renseignements pour le type de contenu, et
la quatrième colonne des éléments sur les filtres que les élèves peuvent compléter avec
leurs connaissances.

Question 4
Utilisation du document 4

La mission d’un community manager est celle de fédérer et de fidéliser les internautes autour
de la marque en créant une communauté conviviale qu’il doit également animer. Il va diffuser
du contenu informatif sur les sites afin de rendre sa société accessible et « humaine » pour
tous les consommateurs. Il dialogue avec eux, répond à leurs questions, gère les UGC (User
Generated Content) en modérant les contributions, les informe par des newsletters, anime
les débats, crée des événements (tchats, concours, etc.). Il assure en outre la visibilité de
son entreprise auprès des réseaux sociaux par la création de groupes, de hubs ou de
contenus viraux sur des sites tels que Facebook, Myspace, Viadeo, Youtube, etc. Son
objectif est aussi de rendre la marque plus visible en augmentant le nombre de liens et de
billets ou de commentaires.
ACTIVITE 3

Question 1
Utilisation du document 1

a. Le graphe 1 possède 6 sommets et 7 arêtes.


b. Une chaine peut être par exemple représenté ici par la suite 6-4-5-1.
c. Pour passer du sommet 2 au sommet 6 nous passons au minimum par 3 arêtes donc la
distance est de 3 arêtes.

Question 2
Utilisation du document 2

a. Le sommet 2 est le plus éloigné du 5. Nous mesurons un écartement de 4 cm.


b. En comparant les écartements de tous les sommets nous trouvons un diamètre de 4 cm.
Le centre est logiquement le sommet 3 ce qui nous permet de mesurer un rayon de 2 cm.

Question 3
Utilisation des documents 3 et 4

La question invite les élèves à faire une expérience en choisissant un pays puis en
cherchant parmi leurs relations quelqu’un qui a une relation qui a une relation… jusqu’à un
habitant de ce pays. Le but est de relativiser le chiffre donné habituellement pour
l’expérience du « petit monde », réalisée par Milgram à l’intérieur d’un seul pays et très
connecté par rapport à d’autres parties du monde.

Question 3
Utilisation du document 5

Tant que les règles RGPD (cf. lexique) ne seront pas suivies par tous et surtout contrôlées
cela ne règlera pas vraiment le problème. De plus le RGPD s’applique surtout en Europe
mais pas forcement dans le monde entier. Faut-il laisser les géants de l’internet régler eux-
mêmes les abus par une police interne ou imposer des règles communes et publiques
garanties par les États et indépendantes des entreprises ? C’est un enjeu crucial car les
réseaux sociaux instaurent aujourd’hui des comités de déontologie, qui créent d’ailleurs une
auto-censure, pour éviter de se voir contraints par des législations.
ACTIVITE 4

Question 1
Utilisation du document 1

Le but de cette question est moins d’attendre une réponse précise que de susciter des
discussions parmi les élèves : pensent-ils que des formes de harcèlements qu’ils auraient pu
subir ou connaissent échappent à cette définition ? ou que celle-ci est trop extensive ?

Question 2
Utilisation du document 2

a. Le but de ces questions est aussi de susciter la discussion. Il appartiendra à chaque


professeur, en fonction des élèves et du contexte, de borner les termes du débat. Le principe
de l’anonymat des personnes visées est conseillé.

b. Vous pouvez conduire les élèves à faire la comparaison entre les types de violence selon
les types de situation, en face à face, en public, à distance et de manière anonyme. Les
phénomènes de groupe et d’imitation, de désinhibition sont à analyser.

Question 3
Utilisation du document 3

a. Les conseils sont les mêmes que pour la question 2. À l’occasion du débat, des situations
sensibles peuvent émerger qui doivent être gérées avec prudence.

Question 4
Utilisation du document 3

Le mouvement Metoo donne tous les arguments pour analyser comment des
comportements masculins inacceptables sont banalisés ou répétés sans sentiment de
culpabilité.
ACTIVITE 5

Question 1
Utilisation du document 1

La réponse est venue des algorithmes et de l’augmentation extraordinaire de la puissance


de calcul des ordinateurs alors que, dans les débuts de l’internet, ces fonctions étaient
assurées par des personnes physiques. Pour donner un ordre d’idée, il faut imaginer que les
publicités qui s’affichent sur votre écran sont personnalisées grâce à des algorithmes qui, en
quelques centièmes de secondes, mettent en relation les données accumulées sur vos
préférences avec des annonceurs qui veulent cibler des profils : cette mise aux enchère est
si rapide que, à l’œil nu, vous voyez s’afficher immédiatement la publicité lorsque vous
ouvrez une nouvelle page et qui correspond, comme par miracle, à ce qui vous intéresse.

Question 2
Utilisation du document 2

a. Facebook est considéré comme un réseau social mais, en terme de business model, il
faudrait plutôt le définir comme un groupe mondial de publicité dont il tire l’essentiel de ses
revenus.

b. Au troisième trimestre 2017, le pourcentage de la publicité dans les revenus est :


10142 / 10328 = 98,2%.

Question 3
Utilisation du document 3

a. L’auteur est volontairement provocant en remplaçant le qualificateur d’entreprise de


publicité – ce dont beaucoup d’utilisateurs ne sont déjà pas conscients – par entreprise de
surveillance, ce qui signifie que Facebook cherche à connaître le plus possible de choses
sur ses utilisateurs et même leurs relations qui ne seraient pas inscrites sur leur réseau.
L’argument peut sembler exagéré mais, de fait, plus Facebook a de données sur une
personne, plus ses revenus augmentent. La question est : quelles limites mettent-ils aux
renseignements qu’ils collectent ?

b. La réponse peut être laissée à la libre interprétation de chaque élève mais il faut faire
remarquer que c’est la première fois dans l’histoire que des individus acceptent
volontairement d’être surveillés et d’aliéner une partie de leur liberté, justement parce qu’ils
n’en ont pas conscience.

Question 4
Utilisation du document 4

a. Les données collectées par les réseaux sociaux sont si importantes qu’elles permettent de
cibler les préférences et les centres d’intérêt de chacun, par exemple de savoir si vous
cherchez en ce moment à acheter des baskets et même de quelle couleur ou style. Un
exemple qui avait fait scandale est celui de parents qui ont reçu, aux Etats-Unis, des
publicités d’articles pour bébé et qui ont appris ainsi que leur fille était enceinte, ce qu’ils
ignoraient (elle avait fait des recherches sur internet sur l’ordinateur de la maison…). En
croisant ces données avec les revenus connus ou les signes de richesse, il est possible de
discriminer les utilisateurs selon leur solvabilité et leur capacité à dépenser.

b. Les algorithmes procèdent par reconnaissance et non par compréhension, leur avantage
par rapport au cerveau humain étant de pouvoir reconnaître plus rapidement à une plus
grande échelle. Cette fonction marche bien pour saisir certains caractères qui nous
définissent sur le moment (par exemple quelqu’un qui désire acheter des baskets) mais pas
qui nous sommes réellement (pourquoi nous voulons des baskets et pourquoi, plus tard,
nous désirerons d’autres chaussures ou ne plus changer si souvent de chaussures). Et les
erreurs sur la personne sont nombreuses : Google a classé en 2015 deux personnes noires
dans la catégorie « gorille » dans son application de reconnaissance d’image tandis que
Flickr en avait étiqueté une dans les catégories « animal » et « singe ».
Je vérifie mes connaissances

Solutions détaillées

1. QCM
1. c. 2. b. 3. c. 4. c.

2. Vrai/Faux
• A. VRAI.
• b. FAUX. À égalité, ce sont les réseaux Snapchat et Instagram.
• c. VRAI.
• d. FAUX. Sur Instagram, il n’y a pas de réciprocité : on peut suivre une personne sans
que celle-ci nous suive.
• e. VRAI.
• f. VRAI.
• g. FAUX. Selon les différentes études menées, sur Internet, les internautes font plus
confiance aux sites Web des médias traditionnels qu’aux réseaux sociaux en matière
d’informations.

3. Vers une définition


L’identité numérique d’un individu est constituée de la somme des traces numériques se
rapportant à cet individu. Ces traces peuvent être ce que l’on dit de soi, les sites que l’on
fréquente ou les publications sur les réseaux sociaux.

4. Compléter un schéma
Le diamètre d’un graphe est la distance maximale possible qui puisse exister entre deux
sommets. Dans ce graphe, nous avons 4 sommets reliés chacun a son voisin par une arête.
Si l’on considère les sommets « Paul » et « Jeanne », la distance la plus petite est
naturellement 1 (arête entre ces deux sommets). Mais si l’on passe par « Yassine » et «
Nathan », la distance est alors de 3. En faisant le même raisonnement pour les autres
sommets, on obtient que le diamètre de ce graphe est 3.

5. Organisation des connaissances


a. L’expérience de Milgram, datée de 1967, démontre que toute personne est reliée à
n’importe quelle autre personne dans le monde par une chaîne de seulement six relations
(théorie des « petits mondes »). Les réseaux sociaux s’appuient sur cette théorie pour
calculer la distance entre deux individus appartenant au réseau (Facebook a calculé une
distance moyenne de 4,74).

b. Happy Slapping : captation d’une scène de violence subie par une personne et diffusion
en ligne de la vidéo.
Flaming : envoi d’un message violent (insultant, menaçant), plus particulièrement une «
salve » de messages à destination d’une personne ou d’un groupe de personnes.
JE M’ENTRAÎNE

6. Les « moins de 18 ans »


a. L’âge de 14 est important car il correspond à des personnes mineures qui n’ont pas les
mêmes responsabilités et protections légales que les majeurs.
b. La limite d’âge est fixée par les pays : en France, comme aux États-Unis, elle est de 13
ans mais, en Europe, il n’existe pas, pour le moment, de texte fixant une limite d’âge pour
tous les pays. Créer un compte avec de fausses informations constitue une infraction aux
conditions d’utilisation des réseaux sociaux. Les réseaux sociaux sont dans les faits
incapables de vérifier avec certitude l’âge des utilisateurs qui repose sur la déclaration de la
date de naissance.
c. Instagram et Snapchat sont les réseaux sociaux les plus utilisés par les moins de 18 ans,
Facebook est beaucoup moins populaire.
d. L’intérêt de cette question réside dans la démarche d’analyse menée par les élèves.

7. L’authentification
a. L’authentification d’un compte utilisateur est essentielle pour assurer la sécurité, la
traçabilité et la protection des utilisateurs.
b. Les réponses des élèves constituent l’exercice.

8. De 140 à 280 signes

a. La limite avait été fixée à 140 signes sur le modèle des SMS qui permettaient à l’origine
d’envoyer des tweets. Ceux-ci étant limités à 160, Twitter a retenu 140 pour laisser 20
caractères au nom d’utilisateur
b. Cette limite est indépassable et contraint fortement la longueur des phrases possibles.
c. Le passage à 280 signes permet d’envoyer un tweet faisant suivre celui d’une autre
personne.

9. Le centre d’un graphe

a. 9 sommets et 8 arêtes composent le graphe.


b. Nous mesurons les écartements suivants :
- sommet 1 : 2,5 cm (avec le sommet 9 ou 7)
- sommet 2 : 3 cm (avec le sommet 6)
- sommet 3 : 3 cm (avec le sommet 4)
- sommet 4 : 3,5 cm (avec le sommet 6)
- sommet 5 : 2,3 cm (avec le sommet 6)
- sommet 6 : 3,5 cm (avec le sommet 4)
- sommet 7 : 3 cm (avec le sommet 6)
- sommet 8 : 2,4 cm (avec le sommet 1)
- sommet 9 : 3 cm (avec le sommet 4)

c. Nous en déduisons que le centre est le sommet 5, en prenant le sommet dont


l’écartement est le plus faible.

10. Le petit monde de Facebook

a. L’expérience de Milgram avait conclu à un degré de séparation maximal de 6.


b. Par rapport à l’expérience de Milgram, on peut en effet l’affirmer mais cela s’explique
principalement par l’évolution des moyens de communication : l’expérience du
« petit monde » a été réalisée en 1967 et par courrier postal, bien avant l’invention d’internet.
c. Précision concernant l’énoncé : en 2011, le degré de séparation sur Facebook était de
4,74. En 2016, il tombe à 3.5. La notion de degré de séparation sur Facebook est très
relative car elle ne comprend pas les différences entre les pays selon le degré de connexion
de la population, les différences selon les revenus et le niveau d’éducation et s’appuie sur un
individu moyen fictif.

11. Diaspora

a. c’est un réseau social dont le code source est accessible et auquel on peut contribuer ou
configurer pour qu’il corresponde à nos préférences. Un réseau social libre permet par
exemple de renforcer la protection de la vie privée et de limiter les données collectées sur
vous.
b. à faire réaliser par l’élève
c. à faire réaliser par l’élève
d. à faire réaliser par l’élève
e. Diaspora est le réseau social qui se rapproche le plus de Facebook mais il est différent sur
certains points, et notamment les aspects. Vous pouvez définir avec précision qui verra ou
ne verra pas le contenu que vous publiez. La fonction hastag permet aussi de nourrir en
permanence votre fil d’actu où apparaît chaque post utilisant le hastag défini.
12. Le code pénal

b. L’infraction est constituée lorsque des propos ou comportements sont imposés à une
même victime par plusieurs personnes (répétitivement ou pas), ayant pour objet ou pour
effet une dégradation de ses conditions de vie.
c. Les faits sont punis de deux ans d'emprisonnement et de 30 000 € d'amende (les
montants sont fixés en fonction de la présence d’une incapacité de travail, de l’âge de la
victime, de l’aspect « public » du harcèlement, etc.)
d. Les montants des amendes sont fixées en fonction de la gravité des faits. Demandez aux
élèves d’apprécier et de justifier celle-ci.

FAB LAB

Ce Fab Lab ne présente pas de correction type.

La page du codeur

Cette page du Codeur ne présente pas de correction type.


Guide du professeur - Chapitre 4

L’objectif de ce chapitre est de montrer comment les données sont stockées et manipulées
par les outils numériques.

Histoire, enjeux, débats


Ce chapitre permet d’aborder la modélisation des collections de données structurées, et de
découvrir comment l’on stocke et consulte ces collections. Le chapitre s’intéresse
particulièrement aux enjeux sociétaux liés au stockage et traitement de grands volumes de
données,
et présente le stockage de données dans le Cloud.

v Activité 1 Des données non structurées aux collections

v Activité 2 Les principaux formats

v Activité 3 Où sont stockées les données ?

v Activité 4 Utiliser le cloud

Bande dessinée d’ouverture


Cette bande dessinée permet de poser la question de l’organisation des données. L’ajout
d’étiquettes ou la répartition des fichiers (en l’occurrence musicaux) dans des répertoires
ajoutent des métadonnées - informations externes sur les données - qui facilitent les
recherches ultérieures.
Cette histoire illustre aussi la difficulté à organiser de façon pertinente les données.

Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est davantage question d’ouvrir un débat avec les élèves, les questions n’étant
là que pour initier une discussion, et pour les secondes, le but est de prendre connaissance
des pistes de recherche actuelles sur ce sujet.
Les activités

ACTIVITÉ 1

Les compétences travaillées


• Cette activité apporte des connaissances techniques sur les données structurées, la
modélisation, et les premiers algorithmes de recherche associés.
• Ces connaissances peuvent être mises en œuvre par le FabLab.

Les savoir-faire travaillés


• Modéliser des informations banales du quotidien par des données structurées.
• Vocabulaire : valeur, donnée, descripteur, donnée structurée, collection, etc.
• Identifier les différents descripteurs d’un objet. Distinguer la valeur d’un objet de son
descripteur. Réaliser des opérations de filtre sur une table.

Exercices liés à l’activité :


Activité 2 (documents 1 et 4, question 1). Cours. Je vérifie : 2.a, 3, 4. FabLab.

Vue d’ensemble de l’activité :


Cette activité introduit, à partir d’exemples quotidiens de la vie réelle (YouTube), les données
structurées et leurs traitements les plus simples, comme l’indique le titre du chapitre. Ces
premiers traitements sont, dans cette activité, les premiers algorithmes de manipulations
« internes » aux systèmes de gestion de bases de données (SGBD, qui sont les logiciels
permettant de gérer et utiliser une base de données, comme SQLite dans le FabLab). Les
manipulations « externes », par un utilisateur expert ou apprenant, faites depuis l’extérieur
de la base, étant faites pour leur part avec SQL (comme dans le FabLab).
On part dans le document 1 d’un objet de la vie réelle, dans lequel on identifie des paquets
d’informations similaires, avec des organisations identiques. Dans le document 2, on
modélise cet objet par une collection structurée, et on introduit soigneusement le vocabulaire
correspondant. Dans le document 3, on aborde la recherche (le filtrage) dans une telle
collection d’objets réels, et comment un moteur de base de données peut la faire en interne.
Les questions font pratiquer le vocabulaire, la modélisation, puis une variante de l’algorithme
de filtrage.

Contexte scientifique de l’activité :


Il est détaillé et approfondi dans l’introduction de l’Activité 2.

Introduction :
Dans la mesure où le chapitre introduit directement les données structurées, on pourrait se
demander au préalable ce que seraient des données non structurées, comme le suggère le
titre de l’activité.
Imaginons un chapeau rempli de petits carrés de papier blanc, sur chacun étant écrit une
valeur, par exemple Stromae, sur un autre carré Papaoutai, sur un autre encore 500, etc.
Bien sûr les carrés ne sont pas attachés entre eux et ne sont pas rangés dans le chapeau.
Si l’on cherche à obtenir des informations à partir de ces valeurs, c’est-à-dire à les exploiter,
cela sera en général impossible : comment deviner à partir de rien les liens entre les valeurs
Stromae et Papaoutai ? Ou encore entre les trois valeurs, chacun sur un carré différent,
François, Alexandra et Claude ? Exercice : Dire quels objets de la vie réelle décrivent ces
valeurs isolées dans le chapeau ; ou simplement quelles sont toutes les chansons de Claude
François dans le chapeau ? Réponse : c’est impossible ; à part inventer, on ne peut rien
dire, on ne peut pas exploiter ces données.
La structuration de ces valeurs dans le chapeau de facto isolées et indépendantes passe par
deux concepts. D’une part, transformer chaque valeur en donnée en lui associant un
descripteur (ex : nom : Stromae ; et sur un autre papier, prénom : François ; et encore, titre :
Papaoutai, etc.) ; et d’autre part regrouper les couples descripteur-données qui décrivent un
seul et même objet de la vie réelle. Un tel ensemble de couples « donnée-descripteur » est
une donnée structurée. On reconnaît alors l’information présente dans le triplet (prénom :
Claude, nom : François, titre : Alexandra) ; et, en particulier, que ces trois prénoms ne sont
pas ceux d’une fratrie, mais ceux de la chanson d’un artiste.
On a structuré les données originelles isolées, on va pouvoir les exploiter. Par exemple les
filtrer pour retrouver toutes les chansons de Claude François.
Cette structuration paraît très naturelle, et elle l’est. Toutefois d’autres structurations sont
possibles, comme on le verra dans l’Activité 2.
Ce passage originel des données non structurées aux collections ne fait pas l’objet d’autre
exercice dans l’activité ou le chapitre, mais la présente introduction pourrait faire fonction de
démarrage du chapitre, avec un vrai chapeau et de vrais carrés sur lesquels sont écrites des
valeurs, et en demandant aux élèves d’en extraire la réponse à la question ci-dessus
(quelles sont toutes les chansons du chanteur Claude François). Dans cet état, ils ne
trouveront pas (sauf à faire usage de connaissances personnelles extérieures au chapeau).
Si on scotche physiquement ensemble les carrés, on ne peut toujours rien dire. Mais si on
ajoute les descripteurs, alors on peut obtenir une réponse parfaite.
(On pourra préférer un tel chanteur historique, plutôt qu’un plus connu par eux dont ils
pourraient deviner par cœur les chansons.)

Question 1
Utilisation des documents 1 et 2

a. Chacun des trois objets de la table possède les quatre mêmes descripteurs : Artiste, Titre,
Vues, Ancienneté.
Pour l’objet de la première ligne, la valeur pour le descripteur Artiste est Stromae, Papaoutai
pour Titre, 500 M pour Vues, et 5 ans pour Ancienneté, et il correspond à la première
suggestion YouTube du doc. 1.
Pour l’objet 2 : (Artiste : Stromae, Titre : Papaoutai Live, Vues : 4 M, Ancienneté : 4 ans), et il
correspond au deuxième objet du doc. 1.
Pour l’objet 3 : (Artiste : Stromae, Titre : Tous les mêmes, Vues: 220 M, Ancienneté : 6 ans),
et il correspond au troisième objet du doc. 1.
b.
Artiste Titre Vues Ancienneté

Stromae Papaoutai 500 M 5 ans

Stromae Papaoutai Live 4M 4 ans

Stromae Tous les mêmes 220 M 6 ans

Stromae Racine carrée Live 15 M 3 ans

c. Clip, Lyrics pour le descripteur : Nature de la vidéo ; Racine carrée pour le descripteur
Titre de l’album ; etc.
On voit d’habitude la valeur de la durée (sur la vidéo elle-même), et qui l’a mise en ligne.
Mettre une vidéo en ligne sur YouTube est très simple, mais attention à ce que vous mettez,
et paramétrez bien la confidentialité.
Question 2
Utilisation des documents1 et 2

Jour Créneau Salle Matière Professeur


Lundi 8:30 - 10:00 45 Mathématiques Mme Plessis C.
Lundi 10:00 - 12:00 Gymnase Ed. Physique et Sport M. Boulanger H.
Lundi 14:30 - 15:30 44 Mathématiques Mme Plessis C.
Mardi 8:30 - 9:30 42 Espagnol LV2 M. Valencia H.
Mardi 9:30 - 10:30 44 Langues & culture Antiquité M. César J.

S’il y a certains créneaux une semaine sur deux, on ajoutera une colonne avec le nom de la
semaine (valeurs A ou B par exemple) ; de même si des cours ont lieu en demi-classe, on
ajoutera une colonne groupe (avec les valeurs classe entière, groupe 1, groupe 2).

Table extraite contenant uniquement les jours, créneaux et salles des cours de
mathématiques.
Jour Créneau Salle
Lundi 8:30 - 10:00 45
Lundi 14:30 - 15:30 44

Question 3
Utilisation des documents 3 et 4

L’algorithme suivant parcourt une collection de clips et affiche la sous-collection de ceux dont
l’artiste est celui donné en entrée (ici dans la variable n pour « nom »). Comme dans
l’exemple du doc. 4, il manipule une table et ses lignes, et crée une nouvelle table pour le
résultat.
Variables : c, résultat sont des tables avec les colonnes nom, titre, vues
l est une ligne de table avec nom, titre, vues
n est un mot
Entrée : saisir n
Initialisation : c prend comme valeur la table de tous les clips de YouTube
Traitement : Pour chaque ligne l de c faire :
| Si l.nom = n
| | alors ajouter l à résultat
| Fin Si

Fin Pour
Sortie : Pour chaque ligne l de résultat faire :
| afficher l.nom, l.titre, l.vues
Fin Pour
ACTIVITÉ 2
Les compétences travaillées :
Cette activité apporte des connaissances techniques pour enregistrer les données dans des
collections, et montre qu’une même information peut être représentée de différentes
manières:
- Pour stocker les collections de façon « standardisée » dans des fichiers, on a le choix
entre au moins deux formats: CSV et JSON
- Pour faciliter l’exploitationet l’interprétation des données, l’ordinateur et/ou l’utilisateur
leur attachent des métadonnées qui enregistrent en général des informations de
« contexte ».
- Différentes collections peuvent être combinées pour « croiser » leurs informations, ce
qui amène parfois à considérer des ensembles de collections plutôt que chaque
collection séparément.

Ces connaissances peuvent être mises en oeuvre :


- Par une brève séance sur machine : ouverture de fichiers, consultation des
métadonnées.
- Par la page du codeur, en ce qui concerne la manipulation d’un fichier csv
correspondant à une seule collection.On peut facilement étendre le travail en ajoutant
d’autres collections pour illustrer l’opération consistant à croiser des collections.

Les savoir-faire travaillés :


- Reconnaître les principaux types de fichiers.
- Consulter le contenu de fichiers CSV (identifier le séparateur, en-tête éventuel, etc.).
- Consulter les métadonnées d’un fichier.
- Prendre conscience que représenter des informations du monde réel implique un
travail de modélisation, et peut amener à organiser les données en plusieurs
collections.
- Comparer des données structurées et des données qui ne sont pas organisées sous
forme de table.

Vue d’ensemble de l’activité


Cette activité complète l’introduction au modèle relationnel de l’activité 1. Deux répartitions
possibles des données sont présentées par les documents 1 et 4, et la question 1 a pour but
de réfléchir aux avantages et inconvénients des deux organisations.
Une fois les données réparties en collections, chaque collection sera enregistrée dans un
fichier. Les documents 2 et 3 présentent donc deux des principaux formats de fichiers utilisés
pour stocker des données structurées.
Contexte scientifique de l’activité :
Plus généralement, la gestion de données sous forme de tables a été formalisée par le
modèle relationnel, mentionné dans les repères historiques, et pour lequel E.F. Codd a
obtenu l’équivalent du prix Nobel en informatique, le prix Turing. La question 1 introduit deux
aspects clés du modèle relationnel :
- comment répartir les données dans des tables selon les règles de l’art.
Les informaticiens appellent « normalisation » le procédé consistant à organiser une base de
données de façon à éviter les redondances. Les redondances à éviter ont été codifiées par
ce qu’on appelle les « formes normales ». La répartition en 3 tables suggérée en question 1b
pour éliminer toute forme de redondance est une version « normalisée » de la base de
donnée.
- comment interroger une base de données.
Le modèle relationnel définit pour cela un ensemble d’opérations qui forment ce qu’on
appelle l’algèbre relationnelle. Dans l’activité 1 doc 4, on a vu une opération qui consiste à
sélectionner les lignes d’une table satisfaisant certaines conditions. Cette opération de
filtrage est appelée « sélection » dans le modèle relationnel. Le croisement de collections
introduit pour le doc 4 (question 1.c) est une autre opération du modèle relationnel appelée
« jointure ». Ici l’on a présenté un cas très simple de jointure (seulement deux tables, et la
jointure se fait sur un descripteur commun aux deux tables, qui en plus est un identifiant
dans une des tables).

Il n’y a pas vraiment de concept clé en ce qui concerne les métadonnées ou les formats de
fichiers: l’activité vise avant tout à familiariser les élèves par la pratique.
Les métadonnées peuvent être très variées (il y a en fait une grande variété de standards
souvent spécifiques à des domaines particuliers : photos, audio, etc.). Dans certains cas, la
distinction entre données et métadonnées n’est pas toujours claire.
Les métadonnées peuvent être ajoutées soit par l’utilisateur soit automatiquement par les
outils.
Des métadonnées sont souvent attachées aux collections, en particulier pour expliquer la
signification des descripteurs (c’est extrêmement important pour que les données soient
utilisables. Exemple : la définition de « segment drg » dans l’onglet « information » pour la
page SNCF sus-mentionnée).
Les métadonnées automatiquement ajoutées à tous les fichiers de l’ordinateur sont utiles
pour effectuer des recherches : on peut par exemple les utiliser pour afficher les fichiers par
ordre de modification, rechercher les plus gros fichiers, etc.
Voir aussi : format EXIF de métadonnées pour les photos numériques p. 151 ou p. 107.

Les deux formats, CSV et JSON, sont des formats « texte », c’est-à-dire qu’ils sont lisibles
par l’humain dans un éditeur de texte. À la différence du format pdf, par exemple, dont le
code source est à peu près illisible pour un humain : il faut utiliser un programme dédié à
l’affichage de pdf pour pouvoir afficher un tel document.
Le format CSV est très simple et surtout utilisé pour stocker des collections simples. Mais il
n’est pas vraiment standardisé : il faut donc le manipuler avec prudence pour identifier les
en-tête, séparateurs, etc.
Le format JSON est aussi adapté pour stocker des données plus riches que de simples
tables, les valeurs associées aux descripteurs pouvant elles-mêmes être un objet JSON, un
tableau de valeur, etc. Le format est donc souvent utilisé sur le web pour échanger des
données entre applications.

Exercices liés à l’activité :


Je vérifie : 1, 2, 3, 4 et 5. Je m’entraîne : 8 et 9. FabLab. Page du codeur.

Question 1
Utilisation des documents 1 à 4

a. Lorsque de nombreuses gares ont le même code postal, l’organisation en 2 tables du doc.
4 évite de répéter à chaque fois le code postal et la région. Elle est donc généralement
considérée comme une meilleure organisation.
Lorsque les gares ont toutes des codes postaux distincts, alors l’organisation du document 1
est préférable.
b. Table 1 : (Intitulé gare, code postal)
Table 2 : (code postal, département)
Table 3 : (Département, région)
c. La première requête sera a priori plus efficace avec l’organisation du doc. 1, car avec le
doc. 4 il faut croiser les tables, ce qui demande plus de travail. La seconde requête sera plus
efficace sur le doc. 4 parce qu’il suffira de consulter que la table des départements/régions,
qui comporte moins de lignes et moins de descripteurs, donc on perdra moins de temps à
lire des informations qui ne servent à rien pour cette requête.

Remarques complémentaires
Il est bon de nuancer notre comparaison entre les organisations des doc 1 et 4 en fonction
de l’usage qui va être fait des données. Dans la réalité, on utilise parfois quand même la
représentation du doc 1 au lieu de celle du doc 4, parce qu’il est plus simple de n’avoir
qu’une seule collection à gérer. C’est probablement pour cette raison que le fichier récupéré
sur le site SNCF ne contient qu’une seule collection : le site a préféré organiser les données
comme dans le doc. 1 plutôt que de préparer une archive contenant 2 fichiers (voire plus).
Inversement, il arrive parfois (mais c’est beaucoup plus rare) que l’on rencontre
l’organisation en plusieurs tables du document 4, même lorsque les codes postaux sont
uniques : cela arrive par exemple lorsque les collections que l’on veut joindre sont gérées
par des organismes (ex : des services web) différents, ou lorsqu’une grande majorité des
utilisateurs ne s’intéresse pas aux départements et aux régions (cf. question c).

Question 2
Utilisation des documents 1 et 2
Exercice à faire sur ordinateur.

Il est ici plus simple d’utiliser le point-virgule comme séparateur de colonne : on ne risque
pas de confondre une séparation de colonne et une donnée car aucune valeur de ce jeu de
données ne comporte de point-virgule, alors que certaines colonnes ont des valeurs
contenant des virgules (par exemple les coordonnées géographiques WGS84).

Question 3
Utilisation du document 1
Exercice à faire sur ordinateur.

Les instructions permettant d’afficher le code-source dépendent bien entendu de l’interface.


Sous Thunderbird : Ctrl+u ou Affichage → code source du message.
Sur le site Gmail : « afficher l’original ».
On observe que l’en-tête du message est une liste de paires descripteur : valeur.
La format de cet en-tête est principalement spécifié par le standard RFC 5322.
Quelques descripteurs courants : Delivered-To, Received, etc.

Pour une page Web, le format sera probablement HTML. C’est un langage à balise. Une
manière de représenter une paire (descripteur, valeur) en HTML est d’entourer la valeur par
deux balises : une ouvrante et une fermante. La balise est le descripteur.
Par exemple, pour la page view-source:https://fr.wikipedia.org/wiki/France
Le titre a pour valeur : France — Wikipédia

On a aussi d’autres descripteurs css : class, id, etc. qui permettent de contrôler la manière
dont s’affiche la page.

Cf chapitre sur le web.


Remarque : si l’on peut encore parler de descripteur et valeur pour HTML, on ne considère
pas les pages web comme des données structurées : comme vu dans le chapitre sur le Web,
une page web se modélise naturellement par un arbre et non par une table. On dit parfois
que les pages web sont des données semi-structurées : on a des éléments de structures,
mais les éléments de cette structure arborescente ne partagent pas nécessairement les
mêmes descripteurs.

Question 4
Exercice à faire sur ordinateur.

On peut consulter les métadonnées stockées par le système de fichier.

Sous Ubuntu : Clic droit → « Lire les informations » (Get Info)


Ou en ligne de commande : stat chemin_du_fichier
Sous Mac : Clic droit → « Lire les informations » (Get Info)
Ou en ligne de commande : stat -x chemin_du_fichier
Sous Windows : Clic droit → « Propriétés »

On notera que quel que soit le type de fichier, on va avoir des métadonnées similaires à
celles du doc. 2 : type de fichier, taille du fichier... Mais on pourra aussi avoir des
informations spécifiques pour certains types de fichiers, par exemple pour un fichier pdf :
« version du format pdf », pour une image jpeg : « dimension », « résolution », etc.

Pour certains types de fichiers on obtiendra plus de métadonnées en ouvrant le fichier avec
un logiciel dédié (qui ne se contentera pas des métadonnées stockées par le système de
fichier mais y ajoutera des informations obtenues par analyse du fichier). Par exemple, pour
un pdf ouvert sous Acrobat : avec « Fichiers » → « Propriétés » on peut notamment
observer la liste des polices utilisées dans le document.
ACTIVITÉ 3

Les compétences travaillées


Cette activité cherche à donner un aperçu global de nos activités numériques, en présentant
les supports matériels sur lesquels sont stockées les données. L’objectif est de prendre
conscience en tant que « citoyen du monde numérique » des infrastructures permettant ces
activités. Il s’agit
en particulier d’appréhender le coût écologique de nos activités numériques.

La mise en œuvre en pratique du transfert et partage de fichiers sur le Cloud est détaillée
dans l’activité suivante. Pour cette activité, les vidéos suggérées donnent un panorama
assez complet des usages du cloud pour les particuliers, et des techniques mises en œuvre
dans les data centers pour permettre ce stockage.

Les savoir-faire travaillés


• Appréhender les ordres de grandeurs traités lorsque l’on parle de Big Data.
• Comprendre ce qu’est le cloud. Identifier ses avantages et inconvénients.
• Prendre conscience du coût écologique du numérique.

Approches complémentaires qui ne sont pas proposées par le programme :


Il peut être intéressant :
- de compléter par quelques aspects économiques concernant l’économie des
données. On peut par exemple donner des idées des montants investis dans les
infrastructures, des emplois ou capitalisations des géants du numérique, mentionner
que parmi les plus grandes capitalisations boursières on trouve Oracle et IBM (qui se
sont initialement développées en vendant respectivement des machines et logiciels
pour gérer les données) ;
- de comparer différents supports de stockage en terme de capacité et de
performance : la frise en début de chapitre mentionne carte perforées et disques
durs, mais il existe d’autres supports de stockage : il est important de noter que les
disques magnétiques sont progressivement remplacés par des mémoires flash, non
seulement dans les smartphones mais aussi sur les ordinateurs. Des mémoires
basées sur des semi-conducteurs (SSD) donc ;
- de mettre en regard la capacité de stockage de différents appareils en fonction du
type de fichier (ex : image au format « sans perte », photos compressées, films HD,
etc.)

Exercices liés à l’activité:


Je vérifie : 2. Je m’entraîne: 6, 10 et 11.

Question 1
Utilisation des documents 1, 2 et 3

Définition du cloud : voir doc. 2.


Avantages et désavantages : voir aussi doc.1 de l’activité 4.
Avantages potentiels (pour du stockage mais c’est globalement vrai aussi pour d’autres
types de services cloud : calcul, logiciel, etc.) :
- les données sont facilement accessibles à travers internet ;
- on n’a pas à gérer la maintenance (au moins des machines, et généralement des logiciels).
Cela peut se traduire par un gain de temps, des économies (par rapport à l’achat d’une
machine avec les logiciels, et par rapport à d’éventuels achats de services de réparations
matérielles ou logicielles) ;
- on bénéficie de l’expertise de l’entreprise du cloud ;
- souvent très sécurisé contre pannes et piratages ;
- possibilité d’économie d’échelle à travers le partage des ressources ;
- facilité de passer à l’échelle : on peut facilement augmenter son espace de stockage, sans
véritable limite du moment que l’on paye en conséquence.

Désavantages potentiels :
- nécessité d’être connecté pour accéder aux données (en général, sauf si on a conservé
une copie locale « hors ligne ») ;
- cela génère beaucoup de trafic Internet ;
- les données inutilisées coûtent plus d’énergie car elles restent constamment ;
- le risque de piratage augmente lorsque l’on permet l’accès aux données depuis Internet ;
- risque éventuel d’espionnage, en particulier lorsque les données ne sont pas cryptées (lors
du transfert des données vers le cloud, ou même de façon légale pour les données à
l’intérieur du cloud, certains pays autorisant des agences gouvernementales à demander
l’accès aux données).

Question 2
Utilisation du document 3

Pour un data center ayant un taux de disponibilité de 99.6% :


365 × 24 × 60 × (1 – 0,996) = à peu près 2100 minutes par an, soit un peu moins de 6
minutes par jour.
Avec un taux de 99,995 % : 26 minutes par an.
Pour garantir une telle disponibilité, il faut de la redondance : on copie les données pour
qu'un ordinateur puisse en remplacer un autre qui serait indisponible (panne ou
maintenance), on double les circuits d'alimentation électrique, et on installe des générateurs
pour s'assurer qu'on puisse résister à une panne de courant.

Question 3
Utilisation du document 4

Raison 1 : ce sont des énergies intermittentes. Les data centers sont alimentés en
permanence.
Raison 2 : les data centers ne sont qu'une petite partie du numérique.
Raison 3 : le plus gros coût écologique du numérique est sans doute la construction des
appareils électroniques (ordinateurs, smartphones, etc.).

Question 4
Utilisation du document 4

Limiter la consommation électrique, ne pas changer trop souvent les appareils, choisir la
sobriété (ne pas prendre d’appareils inutiles ne correspondant pas à nos besoins).
On peut se reporter aux recommandations de l’ADEME (Agence de l’Environnement et de la
Maîtrise de l’Energie).
ACTIVITE 4
Les compétences travaillées
Cette activité a pour but de présenter des solutions pour le stockage de données
personnelles dans le cloud. Il s’agit de comparer les services cloud proposés, en attirant
l’attention sur la protection des données, et aussi de se familiariser avec un outil cloud pour
partager des dossiers.

Les savoir-faire travaillés


• Appréhender la diversité des services cloud.
• Comprendre les enjeux de protection des données lorsque l’on utilise des services
logiciels, et a fortiori les services cloud.
• Et surtout : transférer, synchroniser, et partager des documents sur le cloud.

Contexte de l’activité :
Le programme semble plutôt considérer le cloud du point de vue du stockage et partage de
données personnelles. Le doc 1 vise à faire prendre conscience que le Cloud ce n’est pas
que le stockage de données personnelles : une grande part du marché du cloud c’est des
services aux entreprises, soit pour déployer des applications (par ex : nécessitant une forte
disponibilité comme le commerce en ligne), pour louer des capacités de calcul importantes,
pour utiliser des services proposés par certaines compagnies au sein de plateformes
logicielles (ex : outils d’analyse, intelligence artificielle, etc.). Il y a donc un marché du cloud à
destination des entreprises (B2B) qui se chiffre au minimum en centaines de milliards
d’euros : Amazon, par exemple, réalise la majorité de ses profits dans les services cloud !
Le document complète aussi l’activité précédente par rapport au stockage de données
personnelles.

Précision concernant le doc 1 :


Dans le tableau du doc 1, le nombre de Gigaoctets indiqué correspond à la capacité
maximale de stockage (en Go) mise à disposition gratuitement, au moment de la rédaction
du manuel. Cette capacité peut évidemment être augmentée en choisissant une version
payante du service.
De plus, par manque d’espace, nous avons été obligés de limiter le nombre de services
comparés et surtout les caractéristiques mises en avant. Un des critères de performance
importants outre la capacité de stockage est la fiabilité et la vitesse (et coûts pour les
versions payantes) de transfert (upload/download). On trouve plusieurs comparatifs en ligne,
mais il faut se référer à un comparatif récent car les offres évoluent.

Indications concernant le choix d’un service cloud pour l’illustration et la mise en pratique :
Nous avons eu à cœur de mettre en avant des acteurs locaux (français) du cloud, qui à
défaut d’avoir la célébrité des géants du web, proposent des services tout à fait comparables
dans leur domaine de compétence. Pour les services aux entreprises, nous pourrions encore
mentionner outre OVH : Online (Iliad), Orange Business Services, et Outscale (Dassault).
Pour les particuliers, à part Cozy (qui est hébergé par défaut dans des datacenters d’OVH),
on peut mentionner Ikoula (qui a ses propres datacenters) pour des solutions payantes, et
les FAI (Orange, SFR, etc.) qui proposent souvent un stockage cloud gratuit. À
l’international, il existe une pléthore d’offres cloud dont beaucoup proposent une version
freemium.

Pour le doc 2 (et en question 2), nous avons néanmoins choisi d’illustrer le cloud avec
Google car il s’agit probablement du service avec la plus large communauté d’utilisateurs, et
est donc le plus à même d’être déjà connu des élèves. De plus, cette plateforme dispose
d’outils performants pour l’édition collaborative de documents (texte, feuille de calculs, etc.)
et est déjà installée sur les smartphones Android. Néanmoins des opérations similaires
peuvent tout à fait être réalisées avec d’autres applications moins « propriétaires », plus
open source, plus françaises, etc.
Quelques exemples parmi d’autres : Cozy Drive pour la synchronisation et le partage de
fichiers, Framapad (et autres services listés sur Framasoft) pour l’édition collaborative, etc. Il
faudra probablement modifier un peu l’énoncé des questions en ce cas, car les options de
synchronisation proposées varient selon les services cloud.

Question 1
Utilisation du document 1

Cette question « naturelle » soulève en fait une petite difficulté: « Cloud » est plus un
buzzword marketing qu’un concept scientifique défini précisément.
La définition que l’on cite généralement est celle du NIST :
https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf

Peut-être l’élève loue-t-il une machine chez OVH pour héberger son propre site?
Il y a une petite subtilité ici. Si l’élève réserve une seule machine physique chez l’hébergeur
alors on pourrait considérer que ce n’est pas du Cloud mais plus de l’hébergement Web.
Mais en pratique on réserve désormais plutôt une machine virtuelle avec certaines capacités
de calcul ou stockage ou même juste un « service d’hébergement » (IaaS, PaaS ou SaaS,
etc.) en laissant à OVH le soin de déployer cette machine virtuelle sur ses clusters, auquel
cas on s’accordera à considérer qu’il s’agit de cloud.

Ou même (le cas est probablement rare) certains auront développé leur propre application
Web sur Google Engine ou Microsoft Azure (PaaS) ?

Peut-être l’élève a-t-il utilisé un des outils de stockage cloud tels que Google Drive, Dropbox,
pCloud, ou une application de Google Apps ou de framasoft (formulaires, tableur, traitement
de texte, etc.) (SaaS) ?
En tout cas, même un élève qui n’a pas utilisé de stockage cloud (directement) a
probablement utilisé des applications cloud, par exemple en consultant ses courriels depuis
une interface Web : Gmail, yahoo mail, hotmail, etc. sont des services cloud puisque les
messages sont stockés sur un serveur distant accessible en ligne.
Youtube, Deezer (qui a ses propres serveurs), Spotify (hébergé par Google), Netflix
(hébergé par Amazon) sont des services cloud (SaaS).

La différence entre PaaS, IaaS, SaaS (hors programme) est parfois confuse selon l’usage
fait du service et n’est pas cruciale même si on la trouve dans le document du NIST cité ci-
dessus. Il n’est sans doute pas utile que les élèves retiennent ou comprennent ces
distinctions. Je l’indique ici uniquement pour illustrer le concept, et montrer la diversité des
services proposés sur le cloud. Il n’est pas non plus nécessaire de distinguer l’hébergement
Web du cloud.

Question 2
Utilisation du document 2
Question à faire sur ordinateur par groupe d’élèves.

Question 3
Utilisation du document 2
Question à faire sur ordinateur par groupe d’élèves.
Question 4
Utilisation du document 3
Clairement, les entreprises ne se valent pas : beaucoup se permettent d’utiliser les données
pour du ciblage publicitaire. De plus les entreprises américaines sont soumises au Cloud Act
américain leur imposant de fournir aux autorités américaines l’accès aux informations
stockées sur leurs serveurs si celles-ci leur en font la demande.
Je vérifie mes connaissances

Solutions détaillées

1. QCM
1. a. et b.
2. a. et b.
3. a., b. et c.

Remarque complémentaire :
Techniquement 2.c n’est pas faux : tout document texte peut être vu comme un cas
particulier (et assez inutile) de csv à une seule colonne, mais il est peu vraisemblable que ce
soit un csv ici alors que 2.a et 2.b, eux, sont vraisemblablement des fichiers csv. On pourrait
envisager de changer la question de l´énoncé en « lesquels de ces fichiers sont
probablement des fichiers csv » mais alors un esprit pinailleur pourrait discuter le sens de
« probablement ».

2. Vrai/Faux
a. FAUX. Au contraire, on parle de données structurées lorsqu’elles forment une collection et
partagent les mêmes descripteurs.
b. FAUX. Les descripteurs se trouvent au début du fichier.
c. VRAI.
d. VRAI.
e. VRAI.
f. FAUX. La consommation en ressources énergétiques se situe plutôt autour de 10 %.
Remarques complémentaires :
Il est toujours difficile d’avoir des chiffres fiables en matières d’énergie sur l’ensemble du
cycle de vie. Mais les 10% sont une surestimation très pessimiste ; la vraie consommation
était proche de 3% en 2017 et les projections prévoient qu’elle reste entre 3 et 6% jusque
2025 : https://theshiftproject.org/wp-content/uploads/2019/03/Lean-ICT-Report_The-Shift-
Project_2019.pdf (p.16)

3. Associer des termes


❶ Données
❷ Descripteurs
❸ Collection

4. Vers une définition


a. Une collection regroupe des objets partageant les mêmes descripteurs et peut être représentée
sous la forme de table.
b. Une base de données est un ensemble de collections de données reliées entre elles.
c. Les métadonnées fournissent des informations sur le contenu du fichier.
5. Commenter un schéma
Sur la machine
Descripteur : dernière visite
Valeur : 10/01/2019, 16:14
Métadonnée : fichier sauvegardant l’historique de navigation enregistré (ou consulté) le 22/01/19
Pour l’utilisateur
Information : « à la date du 22/01/19, la dernière fois que l’utilisateur a visité l’url correspondante
était le 10/01 à 16 h 14. »
JE M’ENTRAÎNE

6. Le cloud et l’accès à Internet


1 Po = 8*1015 bits. Donc 8*1015 / (100*106) = 8*107 s.
Donc il faut 8*107/(3600*24) ≈ 926 jours par Pétaoctet, même avec une connexion très haut
débit.
Une solution plus efficace serait de remplir un camion avec les disques durs et de l’envoyer
déposer les données dans le datacenter.

Remarque complémentaire : de fait, cette dernière solution est réellement utilisée en


pratique. Amazon propose effectivement un (voire deux) service de ce genre : Amazon
snowmobile, capable de charger 100 Po (et Amazon snowball pour des volumes de données
plus faibles) :
https://aws.amazon.com/fr/snowmobile/
L’idée est effectivement que l’entreprise charge les données sur des machines spéciales
(que l’on peut voir comme un gros disque dur) qui sont ensuite transportées par camion
jusqu’aux datacenters d’Amazon.

7. La publication des données


Les données ouvertes, même si en l’occurrence ce procès aux USA concernait le FOIA de
1966.

8. Les données structurées


On observe le nombre d’avis, la meilleure et la pire évaluation, ainsi que le classement
moyen. Google incorpore le nombre d’avis et le classement dans son résultat. Si l’élève est
curieux et essaie aussi un autre moteur de recherche, il peut voir que d’autres moteurs de
recherche (Yahoo, Qwant, DuckDuckgo) ne le font pas (Bing le fait mais n’indique que 2 avis
au lieu de 3 (il n’a pas mis à jour suffisamment récemment ses informations).

9. Des opérations sur des tables


Appelons T_ALBUM la table p. 92 et T_NAISSANCE celle p. 95.
a. Il faut croiser T_ALBUM et T_NAISSANCE de sorte que T_ALBUM.artiste =
T_NAISSANCE.nom (on complète les données de T_ALBUM avec la date et le lieu de
naissance des artistes). Puis on ne conserve que les lignes pour lesquelles le pays est
« Belgique » et la date de naissance supérieure à 1990.
Enfin on ne garde que les colonnes « T_ALBUM.titre » et « T_ALBUM.ancienneté ».
Donc on a 3 opérations : croisement des 2 tables (= jointure si on veut utiliser le terme
technique), filtrer les lignes (sélection) et élimination des colonnes superflues (projection).
Remarques complémentaires
- Il n’est pas attendu de l’élève qu’il connaisse le nom des opérateurs de l’algèbre
relationnelle : termes jointure, sélection, projection.
Par contre on s’attend à ce qu’il identifie la nécessité de croiser les tables, et de filtrer
les éléments qui nous intéressent.

- On dispose d’une certaine liberté sur l’ordre de ces opérations. On peut tout à fait
faire la sélection sur T_NAISSANCE avant de la joindre avec T_ALBUM. En
revanche, la projection est à faire en dernier : si on commençait par éliminer la
colonne T_ALBUM.artiste et T_ALBUM.vues, comment ferait-on pour joindre avec
T_NAISSANCE ?
- Lorsque l’on veut réellement implémenter ces opérations dans un programme, on a
aussi le choix entre plusieurs algorithmes. Par exemple, pour joindre les deux tables,
on peut utiliser des boucles « For » (= « Pour tout ») ; pour chaque ligne de
T_ALBUM on va parcourir toutes les lignes de T_NAISSANCE pour trouver celle qui
correspond (il pourrait en théorie il y en avoir plusieurs pour des opérations de
jointures compliquées mais ici il n’y en a qu’une : un artiste n’a qu’une date de
naissance). On pourrait aussi envisager de commencer par trier la table
T_NAISSANCE par nom d’artiste pour faciliter les recherches. Certains logiciels
dédiés aux bases de données sont conçus pour choisir la meilleure façon d’effectuer
ce genre de calcul. Mais cela nous emmène bien loin de la question de départ.

10. Des quantités de données


On indique dans Activité 3, doc1 qu’il y a des dizaines de zettaoctets de données
numériques, comptons 10 Zo pour simplifier : le nombre de tablettes est
8*10*1021/(256*109)=31*10**10. Ça fait à peu près 1 800 000 kilomètres : presque 5 fois la
distance à la Lune et 47 fois la circonférence terrestre.

Il peut être bon de rappeler la distance terre-lune : 384 400 km, et, si l’on veut, la
circonférence terrestre : 40 075 km. De toute façon, les chiffres exacts importent peu ; ce qui
est intéressant c’est de comprendre que la quantité de données est … astronomique.
Lorsque la comparaison a été mentionnée pour la première fois en 2014, l’on parlait d’une
pile d’iPad qui faisait les 2/3 de la distance à la lune.

11. La consommation énergétique


a. Le document indique 416 TWH pour les data center. On peut deviner que la part de
Google est de quelques TWH. Attention, divisé par les heures d’une année, cela fait juste
quelques Gigawatts (3 en réalité mais ça, on ne peut pas le deviner).
b. Divisons la consommation moyenne de Google par la consommation d’un serveur :
(258*10^6)/200=129*10^4. Google comptait environ 1 290 000 serveurs.
Les 10 % d’énergie utilisée à refroidir (même si c’était sans doute un peu plus en 2010) ne
changent pas l’ordre de grandeur.

12. Le choix d’un cloud


- Prix pour la quantité de données et l’usage prévu.
- Fiabilité et performance du service.
- Services proposés par l’hébergeur et compatibilité avec le terminal de l’utilisateur.
- Conditions de sécurité : chiffrement des données, possibilité par l’hébergeur de
consulter et d’utiliser les données.
- Localisation et engagements écologiques de l’hébergeur.

13. Les données personnelles


a. À partir des informations restantes, on a de fortes chances de pouvoir identifier la
personne à laquelle elles font référence, donc ces données restent personnelles mais si la
personne n’est pas explicitement désignée.

b. Ces métadonnées peuvent être des informations personnelles si on sait établir un lien
avec la personne à l’origine des photos. Par exemple les données de géolocalisation de
toutes les photos prises par l’utilisateur d’un téléphone portable sont des données
personnelles.

Remarques complémentaires
Il n’est pas toujours facile de savoir si une donnée est personnelle à partir de la définition
légale (art. 4 du RGPD). On pourra se référer à :
https://www.cnil.fr/fr/cnil-direct/question/une-donnee-caractere-personnel-cest-quoi
ou à la page wikipedia qui est assez riche :
https://fr.wikipedia.org/wiki/Donn%C3%A9es_personnelles
FAB LAB
Dans l’Activité 1, on a introduit et travaillé la modélisation des données réelles en une table
relationnelle, et vu la structure d’un algorithme simple de filtrage. Dans l’Activité 2, on a
poursuivi l’étude de la modélisation, et aussi introduit deux formats de stockage logique
(organisation) des tables relationnelles dans des fichiers. Puis les 3 et 4 ont abordé l’aspect
du stockage physique (disques, etc.).
Enfin la page du codeur illustre comment, depuis un langage de programmation généraliste
(ici Python), on peut accéder à, et manipuler, des tables relationnelles, au moyen d’une
bibliothèque du langage.

Dans le FabLab, on pratique la situation « reine », la manipulation des tables relationnelles


dans une vraie base de données relationnelle d’ampleur industrielle, avec le langage SQL,
standard mondial depuis plusieurs décennies, conçu et parfaitement calibré pour cette
situation (et bien d’autres). Très détaillée, la fiche SQLite à télécharger (SNT2039) présente
très pragmatiquement SQL, SQLite, et leur application concrète dans le FabLab.

Le cahier des charges de l’application considérée dans le FabLab est un extrait de taille très
modeste, mais parfaitement représentatif du cœur de quantité d’applications réelles qui
tournent aujourd’hui sur la planète et gèrent tous sortes de données.

Une fois SQLite installé à l’avance, et après avoir fini les Activités 1 et 2, on peut sans doute
compter une heure pour faire le FabLab avec des élèves ayant une certaine familiarité avec
la programmation (Python ou autre), se répartissant par exemple en environ 20 à 30 minutes
de cours sur SQL (incluant une démonstration) en suivant simplement la progression de la
fiche SQLite (SN2039 à télécharger) qui est aussi conçue pour cela ; et environ 30 à 40
minutes pour les élèves accompagnés pour finir le FabLab.
L’installation proprement dite de SQLite, comme pour tout logiciel à destination des
programmeurs serait plutôt destinée à des élèves très motivés du club informatique et
programmation par exemple.

Le choix pour le FabLab de SQLite se base sur sa popularité et sa dimension « légère »


(light en anglais, qui a donné « lite », pour « moteur SQLite »), facile à obtenir et installer, et
nécessitant très peu de ressource machine, tout en offrant une robustesse industrielle.

Question 1
Il n’y a pas de question explicite ici, mais il est pertinent de se donner un exemple
représentatif des différentes lignes et valeurs possibles dans la table (on ignore à ce stade le
type des valeurs, qui fait partie de la nature des valeurs, mais pas vraiment de leur
organisation en collection). C’est-à-dire qu’on modélise logiquement les données du cahier
des charges avant de mettre en œuvre la modélisation choisie dans un système/logiciel
particulier (ici SQLite). Pour simplifier un jour est modélisé par un entier entre 1 et 365. Le
cahier des charges fait l’hypothèse que la ville de départ est celle du lycée.
On va nommer cette table de manière assez naturelle « Billet », car la structure d’une ligne
(descripteurs) est conçue pour être celle d’un billet.
Le cahier des charges à ce stade ne parle pas de quels sont les billets, mais ici on en met
quand même deux pour se convaincre que la structure de la table (colonnes et descripteurs)
est correcte.
Noter que pour éviter d’éventuelles difficultés sur machine, on utilise les valeurs paye (billet
payé) et effectue (voyage effectué) sans accent.
Prénom Destination Transport Jour Prix Statut
Rita New York avion 365 450 paye
Riton Amsterdam train 210 59 effectue

Question 2
Comme rapellé dans les paragraphes ci-dessus, SQL et SQLite sont présentés très
rigoureusement et soigneusement dans la fiche SQLite à télécharger (SN2039).
L’enseignant peut souhaiter s’assurer à l‘avance que la commande sqlite3 tapée dans une
console fonctionne bien sur chaque machine de la salle prévue pour le Fab Lab.
A nouveau pas de question à proprement parler ici, ce paragraphe introduit SQL, et dirige
sur la fiche SQLite.

Question 3
a. Lancer SQLite comme indiqué dans la question 2 ci-dessus.
b. On suit et utilise toujours étroitement le matériel présenté dans la fiche SQLite. Taper
dans SQLite :

create table billet (prenom varchar(15), destination varchar(20), transport varchar(9), jour
smallint, prix smallint, statut varchar(8)) ;

Taper dans SQLite :

select * from billet ;

La table est encore vide, rien n’est affiché.

c.
insertinto billetvalues ('Rita', 'New York', 'avion', 364, 450, 'paye') ;
insertinto billet values ('Riton', 'New York', 'avion', 365, 550, 'paye') ;
select * from billet where prenom = 'Rita';
On obtient une seule ligne(et d’ailleurs dans la question 1 il a été supposé que tous les
prénoms sont différents et que chaque élève n’a qu’un billet).
select * from billet where destination = 'New York';
On obtient deux lignes, et plus généralement tous les billets pour New York.
insertinto billet values('Ada', 'Amsterdam', 'train', 210, 49, 'paye') ;

d.
updatebillet set statut = 'effectue'where nom = 'Rita';
select * from billet ;

Noter que dans cette proposition de solution à la question d, on a essayé d’être réaliste en
faisant voyage l’élève qui a le billet à la date la plus ancienne.
La page du codeur

uObserver les premières lignes


a. Pas de question donc pas besoin de correction particulière : ouvrir avec la souris ou une
commande unix : xdg-open nomfichier.csv, ou votre-editeur-de-texte-prefere nomfichier.csv,
ou head nomfichier.csv si on ne veut que les premières lignes … Excel est envisageable
mais déconseillé car il risque de mettre en forme automatiquement, on ne verra alors pas le
délimiteur.

b. La première ligne est ici un en-tête indiquant ce qu’on trouve dans le document. De
manière anecdotique, on pourra observer que ce « titre » a été complété par une série de
virgules, parce que le créateur du fichier voulait que toutes les lignes aient le même nombre
de colonnes y compris la ligne de titre.

c. La seconde ligne est très importante, c’est le véritable en-tête contenant les descripteurs
de chaque colonne.

d. Les lignes à partir de la ligne 3 contiennent les données.

vLire un programme
On commence par importer le module (i.e., charger la librairie) pandas qui, comme indiqué
ci-dessus, sert à manipuler les collections.
La ligne suivante nous permet d’utiliser les fonctions DataFrame et read_csv (sans avoir à
les préfixer par le nom de module). Le nom indique assez clairement ce que fait chaque
fonction.
Enfin la dernière ligne charge le module matplotlib qui sert à tracer une figure.

wCharger les données


Si on voulait récupérer automatiquement les descripteurs à partir de la 2e ligne du fichier :
elec =
pd.read_csv('/home/tphome002/bgroz/electricite.csv',sep=',',skiprows=1,header=0,names=N
one)
Mais pour avoir des noms de descripteurs plus pratique on vous a demandé de plutôt créer
le dataframe avec vos propres noms:
elec = pd.read_csv('/home/tp-home002/bgroz/electricite.csv',\
sep=',',\
names=['mois','electr. totale', 'primaire','nucleaire', 'hydraulique', 'eolien', 'thermique'],\
skiprows=2)
C’est une bonne idée de vérifier le résultat :
print(elec.to_string())

xÉnergie primaire
a.
elec[elec['primaire'] != elec['nucleaire'] + elec['hydraulique'] +
elec['eolien']]

b. On observe qu’il n’y a qu’une ligne pour laquelle ce n’est pas le cas : sur cette ligne
l’énergie primaire est 34 450, alors que la somme des autres est 34 451. Cette incohérence
est donc très probablement due à des arrondis (les valeurs en GWh de chaque énergie ont
probablement été obtenues en arrondissant les valeurs exactes de consommation).

y Répondre à une requête de recherche


La figure obtenue représente pour l’évolution de la consommation au cours du temps.
En fait, on voit que sur l’axe des x c’est le numéro de ligne (attribué automatiquement par
pandas) qui a été utilisé. La colonne contenant la date n’a pas été exploitée, et par contre
une ligne a été tracée pour chaque autre colonne de la table.
Guide du professeur - Chapitre 5

L’objectif de ce chapitre est de présenter le principe de la géolocalisation, de montrer le lien entre


les coordonnées GPS et les coordonnées géographiques, de faire manipuler des services de
cartographie en ligne, par exemple en calculant des itinéraires. L’idée principale qui sous-tend ce
chapitre est celle de la mobilité, prise au sens large. Comment se repère-t-on à la surface de la
Terre, comment s’oriente-t-on et quels sont les futurs de la mobilité, sous l’effet des progrès
technologiques ?

Histoire, enjeux, débats


Ce chapitre permet d’aborder les principes de la mobilité à l’ère du numérique, à travers la
numérisation des cartes et des services de cartographie en ligne. Les progrès en la matière posent
de nombreuses questions, notamment celle d’une possibilité de pistage généralisée (controverse)
ou celle des futurs possibles de la mobilité (Monde de demain).

v Activité 1 La géolocalisation

v Activité 2 Du GPS aux coordonnées géographiques

v Activité 3 Les cartes numériques

v Activité 4 Calculs d’itinéraires

Bande dessinée d’ouverture


Cette bande dessinée permet de poser la question de la pertinence des systèmes GPS
embarqués, censés être une aide fiable à la mobilité. On verra, dans l’activité 4, que les calculs
d’itinéraires sont assez compliqués (s’appuyant sur la théorie des graphes) et que leur
actualisation en temps réel n’est pas toujours évidente. On verra aussi que deux systèmes de
cartographie peuvent proposer des itinéraires différents pour un même trajet, voire des temps de
transport différents pour un même itinéraire.

Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est plus question d’ouvrir un débat avec les élèves, les questions n’étant là que pour
initier une discussion, et pour les secondes, le but est de prendre connaissance des pistes de
recherche actuelles sur ce sujet.
Les activités

ACTIVITÉ 1

Les compétences travaillées


Cette activité apporte des connaissances techniques sur le principe de géolocalisation, lui-même
s’appuyant sur le principe de trilatération en trois dimensions.

Les savoir-faire travaillés


• Analyser un texte pour comprendre le fonctionnement du système GPS.
• Représenter mathématiquement le principe du GPS.
• Comparer les avantages et inconvénients de deux systèmes.

Question 1
Utilisation du document 1

Le système GPS est un système de positionnement (ou géolocalisation) par satellites. Il est
constitué de 24 satellites. On pourra détailler cette réponse avec les éléments du texte ou en
cherchant des informations sur Internet (notamment le site du CNES : https://cnes.fr/fr).

Question 2
Utilisation du document 2
a. Lorsque le satellite 2 émet un signal, cela crée, mathématiquement, un cercle dont ce satellite
est le centre. L’intersection de deux cercles peut aboutir à 0, 1 ou 2 points. Ici, on fait l’hypothèse
que l’on obtient 2 points d’intersection.
b. De la même manière qu’à la question précédente, on obtient deux points, dont l’un commun (le
réglage des signaux est fait pour). Ainsi, on obtient un lieu précis.

Question 3
Utilisation du document 3
a. Question à faire sur ordinateur.
On pourra introduire ici la notion de sphères tangentes extérieurement ou intérieurement.

b. Le quatrième satellite permet de synchroniser l’horloge du récepteur, compenser l’incertitude


liée aux horloges et réduire l’incertitude.

Question 4
Utilisation du document 4
L’Europe s’est dotée de son propre système de positionnement par satellites pour garantir son
indépendance vis-à-vis des États-Unis. Les avantages : le système européen Galileo est un
système civil à la différence du système américain, à l’origine militaire, et il apporte une plus
grande précision.
ACTIVITÉ 2
Les compétences travaillées :
Cette activité apporte des connaissances techniques sur les protocoles de transmission de
données, ainsi que sur la manière de retrouver les coordonnées géographiques à partir de
données fournies par un système de géolocalisation.

Les savoir-faire travaillés :


• Analyser un protocole NMEA.
• Extraire des coordonnées géographiques.
• Utiliser des données de géolocalisation.

Question 1
Utilisation du document 1

Cette création avait pour but d’harmoniser et de standardiser les équipements de la marine.

Question 2
Utilisation du document 2

Il faut ici extraire les coordonnes géographiques et l’heure indiquée.


a. Latitude 67° 15,12 minutes Nord, Longitude 32° 45,12 minutes Ouest, 15 h 34 min 21 s.
b. Latitude 115° 43,65 minutes Sud, Longitude 23° 56,76 minutes Ouest, 4 h 54 min 32 s.

Question 3
Utilisation du document 3

On y trouve les coordonnées géographiques en trois dimensions : latitude, longitude et altitude


(appelé cote en mathématique).
Pour localiser sur une carte, on peut ouvrir GoogleMaps par exemple et rentrer les coordonnées
géographiques.

Question 4
Utilisation du document 4

On laissera ici les élèves donner leur avis sur le travail d’Eric Fischer.
On pourra les guider vers une des réponses possibles : les lieux où les touristes vont, dans une
ville comme Paris (ce qui est vrai aussi pour les grandes capitales dans le monde) ne sont pas là
où les gens habitent. Mais il y a d’autres phénomènes sociaux visibles naturellement.
ACTIVITÉ 3

Les compétences travaillées


Cette activité apporte des connaissances sur les applications ou sites Internet de cartographie.

Ces connaissances peuvent être mises en œuvre par un travail d’équipe ou personnel de
comparaison des résultats des différentes applications ou sites, que ce soit pour localiser des lieux
ou bien pour effectuer des calculs d’itinéraires.

Les savoir-faire travaillés


• Utiliser des outils de cartographie.
• Calculer des itinéraires et comprendre le fonctionnement des algorithmes de calculs.
• Contribuer à des sites collaboratifs.

Question 1
Utilisation du document 1

Elles ont permis de manipuler de nombreuses couches d’informations sur la même carte, mais
également de faciliter les changements d’échelle.

Question 2
Utilisation du document 2

C’est sur la variété des sources d’informations publiques qu’a été créé le Géoportail. Les
informations proviennent de l’IGN naturellement, mais aussi de très nombreuses structures
publiques donnant des informations sur les sites protégés, les zones à risques, etc.

Question 3
Utilisation du document 3
Question à faire sur ordinateur.

a. En cliquant sur l’icône de la légende, on obtient une image du lieu


choisi. Par défaut, c’est une photographie aérienne, mais cela peut être
autre chose (plan, carte IGN, différentes informations) car cela dépend
des utilisateurs précédents. En effet, le Géoportail garde en mémoire
les derniers réglages effectués sur un ordinateur.
En choisissant « Carte IGN » dans le menu, on obtient différentes
informations dans la légende. Exemple ci-contre.

b. On les obtient en cliquant sur l’onglet : . Cela dépend des


réglages.
c. Afin d’obtenir une carte du relief, il faut choisir « Carte du relief » dans « Tous les fonds de
carte ».
On obtient quelque chose comme :

Question 4
Utilisation du document 4
Question à faire sur ordinateur.

a. On trouve ces informations dans le Wiki d’OpenStreetMap :


https://wiki.openstreetmap.org/wiki/FR:Contribuer_aux_donn%C3%A9es_cartographiques

b. À faire par chaque élève.


ACTIVITÉ 4
Les compétences travaillées
Cette activité apporte des connaissances sur la notion d’itinéraire et le lien que l’on peut faire avec
la théorie des graphes (déjà abordée dans le chapitre 3 sur les réseaux sociaux).

Les savoir-faire travaillés


• Connaître les paramètres qui entrent en jeu dans les calculs d’itinéraires.
• Utiliser un site de cartographie en ligne pour calculer des itinéraires.
• Calculer des itinéraires en utilisant la relation entre vitesse, distance et durée.

Question 1
Utilisation du document 1

a. Les deux dimensions de la notion d’itinéraire présentées dans le texte sont d’une part celle de
l’espace physique (routes, moyens de transports, etc.) et d’autre part celle du terreau social et
culturel dans lequel se situe cet espace physique. Ce dernier aspect est particulièrement important
dans la mesure où il structure l’espace physique. Le choix de construire une autoroute à un certain
endroit dépend du contexte social et culturel de l’époque, des enjeux politiques sous-jacents, etc.

b. Le calcul d’un itinéraire dépend de nombreux paramètres, mais il paraît évident que le point de
départ est le paramètre qui donne naissance à l’itinéraire lui-même. La définition donnée montre
en effet qu’un itinéraire est un chemin à suivre pour aller d’un lieu à un autre, si bien que le chemin
sera différent pour chaque point de départ. Plus la connaissance des coordonnées du point de
départ seront précises, plus le calcul de l’itinéraire pourra être précis.

Question 2
Utilisation du document 2

L’itinéraire de gauche propose d’effectuer les 5 kilomètres qui relient le point de départ au point
d’arrivée en 20 minutes. Le second propose un autre itinéraire pour relier les mêmes points de
départ et d’arrivée, pour une distance de 7,1 km effectuée en 32 minutes. Sur le plan de droite
deux autres parcours alternatifs sont proposés, avec des durées moindres.
De nombreux éléments peuvent expliquer ces différences. On montrera, tout d’abord que le calcul
d’itinéraire a été demandé pour une circulation à vélo (plan de droite). L’algorithme peut prendre
en compte la densité du trafic, les travaux éventuels sur le trajet ainsi que la présence ou non de
pistes cyclables. GoogleMaps, par exemple, privilégie la présence de pistes cyclables (pour une
question de sécurité) même si le trajet est finalement plus long. On peut aussi faire l’hypothèse
que les deux calculs d’itinéraires n’ont pas été effectués à la même heure, qui pourrait expliquer
une densité du trafic différente.

Question 3
Utilisation du document 3
Exercice à faire sur ordinateur.

Question 4
Utilisation du document 4

a. Afin de déterminer le plus court chemin entre les villes A et H, il est nécessaire de passer en
revue tous les chemins possibles et de calculer toutes les distances (c’est ce que fait un
algorithme afin de déterminer l’itinéraire le plus court). On trouve finalement que le chemin le plus
court est le chemin qui passe par les villes A – B – F – H, qui fait 32 kilomètres.
Si l’on peut rouler à la même vitesse sur toutes les routes, alors, oui, ce chemin est le plus rapide.
Cependant comme les limitations de vitesse ne sont pas indiquées, on ne peut rien conclure en
l’état quant à la rapidité des itinéraires.

b. La trajet le plus court, déterminé dans la question précédente, prendra, en considérant que l’on
roule au maximum de la vitesse autorisée, 24 minutes.
Mais, étant donné que l’on peut rouler à 130 km/h sur les routes DE, EH et FH, il faut vérifier que
les itinéraires empruntant ces routes ne sont pas plus rapides.
Itinéraire A – D – E – H : 34 kilomètres en environ 20 minutes.
Ce dernier est donc plus long mais plus rapide avec les vitesses données.
Je vérifie mes connaissances
Solutions détaillées

1. QCM
1. b. 2. b. 3. a. 4. a. et b.

2. Vrai/Faux
a. FAUX. Au contraire, il s’appuie sur des mesures de distances.
b. VRAI.
c. VRAI.
d. FAUX. Une trame peut se terminer par différentes lettres, le « A », par exemple, signifie
« Données valides ».
e. VRAI.
f. FAUX. Les applications de calculs d’itinéraires n’utilisent pas les mêmes algorithmes de calculs,
d’où des résultats différents.
g. FAUX. Le chemin uwyz donne 8, alors que le chemin uwxz donne 7.

3. Vers une définition


La géolocalisation est l’ensemble des techniques permettant de localiser en continu un objet,
comme un téléphone portable ou un véhicule, sur lequel un récepteur GPS a préalablement été
posé, en le positionnant sur une carte à l’aide de ses coordonnées géographiques.

4. Compléter un schéma
Voir manuel papier.

5. Restituer des connaissances


GP : récepteur GPS
GLL : positionnement géographique longitude-latitude
2311.12,W : 23° 11’ 12’’ Ouest

6. Organiser ses connaissances


a. Un système GPS utilise une trilatération en trois dimensions. On utilise donc des sphères à la
place des cercles : l’intersection de deux sphères correspond à un cercle, et l’intersection de 3
sphères correspond à deux points. En théorie, il serait donc nécessaire d’utiliser un quatrième
satellite pour savoir où on se trouve. En pratique, on élimine l’un des deux points car il ne se
trouve pas sur Terre mais à une position en altitude. Cependant, pour la synchronisation de
l’horloge du récepteur, il faut la précision d’une horloge atomique. Un récepteur n’en a
évidemment pas. Il faut donc un quatrième satellite pour compenser cette imprécision et réduire
l’incertitude.
b. Les différents types de données (agricoles, culturelles, économiques, sociales, etc.) s'appliquant
sur le lieu choisi apparaissent sous forme de couches d'information superposées au fond
cartographique. Ces couches sont accessibles via l’onglet situé sur la droite de l’écran,
accompagnées d’informations sur la provenance de ces données.

JE M’ENTRAÎNE

7. Le calcul d’une distance


a. La formule permettant de calculer la distance, notée d, en fonction du temps (noté t) fait
intervenir la vitesse (que l’on note v). On peut ici renvoyer les élèves aux compléments
mathématiques (page 178 du manuel).
Cette formule s’écrit : d = v x t,
Avec d en mètres (m), v en mètres par secondes (m.s-1) et t en secondes (s).
b. On applique la formule précédente avec t = 0,006 s et v = 3.108 m.s-1.

Ainsi, d = 3.108 x 0,006 = 1,8.106 m = 1 800 km.


Le récepteur GPS et le satellite sont séparés d’une distance de 1 800 km.

Compléments : À titre de comparaison, on peut rappeler que les satellites du système GPS se
situent sur une orbite dont le rayon est légèrement supérieur à 20 000 km. Et que les avions
volent, en moyenne, à 10 km au-dessus du niveau de la mer.

8. Coordonnées géographiques
On écrit les coordonnées (longitude, latitude).
N (90° N, 0°) ; V (60° N, 40° O) ; U (20° N, 0°) ; P (0°, 40° O) ; Y (20° N, 60° E) ; Q (40° S, 10° E)
et S (90° S, 0°).

9. Les couches d’informations


Exercice à faire sur ordinateur.

a. b. c. Afin de trouver ces couches d’information, il faut ouvrir le menu déroulant « Données
thématiques ». Puis, ouvrir le sous-menu « Société et loisirs », et enfin, dans le menu « Zones de
gestion », on trouve les couches d’information « Quartiers prioritaires » et « Zones urbaines
sensibles ».
On doit obtenir quelque chose qui ressemble à l’image ci-dessous :
d. On constate qu’il y a superposition des deux types de zones, ce qui tendrait à montrer que c’est
dans les zones urbaines sensibles que les pouvoirs publics ont décidé de mener une politique
prioritaire dans les quartiers. Ce qui semble assez logique.
e. La couche d’information « Musées » se trouve dans le menu « Loisirs ».
On obtient la représentation ci-dessous dans laquelle les musées apparaissent sous la forme de
points violets :

La grande majorité des musées est située dans le centre ville de Toulouse (sauf deux, un peu à la
périphérie).
Ce que l’on peut constater avec ces trois couches d’information, c’est que les musées ne sont pas
situés dans les zones urbaines sensibles, ni dans les quartiers prioritaires.

Compléments : On pourrait demander aux élèves de tester cette hypothèse (pas de musées dans
les zones sensibles) dans d’autres grandes villes françaises (Paris, Lyon, Marseille, Rennes, etc.),
voire des grandes métropoles dans le monde. Puis les faire réfléchir, en groupe de préférence, sur
ce lien qui existe entre les lieux culturels dans les villes et la question sociale.

10. Des modifications


Exercice à faire sur ordinateur.
Non corrigé dans la mesure où les réponses dépendent du lycée choisi.

11. Comparaison de cartes


Exercice à faire sur ordinateur.
Non corrigé.
12. Un graphe

a. Exemple d’itinéraires. Le schéma peut être différent selon les élèves.

b. Il faut bien penser à ajouter les distances entre chaque ville également afin de pouvoir calculer
l’itinéraire le plus rapide.

13. La prise en compte du trafic


Exercice à faire sur ordinateur.
a. Dans des conditions normales de circulation, ce trajet prend 4 heures et 21 minutes (le trajet le
plus rapide) en voiture, 1 h 57 en train, 26 h en vélo et 91 h à pieds.
b. La durée peut varier selon les jours (le samedi, par exemple, présente une plus grande
circulation, ce qui fait que les durées de trajet sont plus longues).

c. Oui, globalement, c’est le même itinéraire qui est le plus rapide, mais on constate bien que ce
trajet le plus rapide n’a pas la même durée selon les heures de la journée. GoogleMaps prend en
compte les difficultés de circulation qui pourraient exister selon les horaires.

14. Le dispositif eCall


a. Un accident se produit. Le véhicule, équipé de capteurs qui, en fonction de la gravité du choc,
peuvent déclencher automatiquement l'appel vers la plateforme à l'aide d'une carte SIM
embarquée. Cet appel part vers un centre de secours, tel que 112. Le dispositif est conçu pour
transmettre au 112 des informations importantes telles que le type de carburant utilisé par le
véhicule ou encore le nombre de passagers.

b. Ce système est basé sur la géolocalisation type GPS, qui est peut-être très précis afin de
localiser le lieu où l’accident s’est produit. Plus la précision est grande, plus les secours peuvent
arriver rapidement sur le lieu.
FAB LAB
Ce FabLab ne peut pas présenter un corrigé dans la mesure où l’œuvre réalisé dépend du choix des lieux et
du lycée.

La question 1 ne pose pas de difficultés majeures, il suffit de retrouver les informations demandées, puis
des photographies en fonction des lieux.

Les questions 2 et 3 font appel à des manipulations d’images, soit physique soit à l’aide du logiciel Gimp.
On pourra, pour ce dernier, se reporter à la fiche de prise en main de Gimp.
La page du codeur

uUtilisation d’une chaîne


a. Une trame NMEA-0183 se présente sous la forme d’une chaîne de caractères, contenant un certain
nombre d’informations.
b. Les données de ce fichier sont des chaînes de caractères.

vUtilisation d’une expression régulière


Voici un programme possible qui répond aux questions.

# coding=utf8
# Python 3.6+
# NMEA to OpenStreetMap and Google

import re

defdecode_nmea(trame):
print(trame)
regex = r"\$GPGLL,([\d]{1,2})([\d]{2})\.([\d]{2}),([\w]{1}),([\d]{1,3})([\d]{2})\.([\d]{2}),([\w]{1})"
try:
groups=re.search(regex, trame)
if groups:
lat=(1,-1)[groups[4]=="S"]*(int(groups[1])+(int(groups[2])+int(groups[3])/100)/60)
long=(1,-1)[groups[8]=="W"]*(int(groups[5])+(int(groups[6])+int(groups[7])/100)/60)
returnlat,long Mis en forme : Français
else:
print("Les coordonnées ne sont pas bien formatées")
return 0,0
except:
print("Il y a eu une erreur inconnue dans le décodage de la trame")
return 0,0

def display(lat,long):
print(f"Latitude : {lat}, Longitude: {long}")
print(f"OSM URL : https://www.openstreetmap.org/#map=18/{lat}/{long}")
print(f"GoogleMap URL : https://www.google.com/maps/search/?api=1&query={lat},{long}") Mis en forme : Français

defstart_nmea(trame):
iftrame.startswith('$') and trame.endswith("A"): # Vérifier que la trame est valide
iftrame.startswith("$GP"): # Vérifier que la trame est une trame GPS
iftrame.startswith("$GPGLL"): # Vérifier que la trame est au format GLL
lat,long=decode_nmea(trame) # Appel de la fonction decode_nmea
iflat and long:
display(lat,long) # Affichage du décodage Mis en forme : Français
else:
print("La trame n'a pas au format GLL")
else:
print("La trame n'est pas une trame GPS")
else:
print("La trame n'est pas valide")

trame="$GPGLL,4631.35,N,634.44,E,205532,A"
start_nmea(trame)

Et une version simplifiée, qui n’utilise pas de fonctions :

# coding=utf8
# Python 3.6+
# Decode NMEA

import re

trame="$GPGLL,4631.35,N,634.44,E,205532,A"
regex = r"\$GPGLL,([\d]{1,2})([\d]{2})\.([\d]{2}),([\w]{1}),([\d]{1,3})([\d]{2})\.([\d]{2}),([\w]{1})"
groups=re.search(regex, trame)
if groups:
lat=(1,-1)[groups[4]=="S"]*(int(groups[1])+(int(groups[2])+int(groups[3])/100)/60)
long=(1,-1)[groups[8]=="W"]*(int(groups[5])+(int(groups[6])+int(groups[7])/100)/60)
print(trame)
print(f"Latitude : {lat}, Longitude: {long}")
else:
print("Les coordonnées ne sont pas bien formatées")
Guide du professeur - Chapitre 6

L’objectif de ce chapitre est de présenter les enjeux de l’informatique embarquée dans des
objets, c’est-à-dire de comprendre que, à travers un phénomène aujourd’hui très familier,
celui des objets connectés, sont mis en jeu des processus fondamentaux (des données et
de l’information, des algorithmes et des programmes, des machines) qui ont des impacts
sur les pratiques humaines.

Histoire, enjeux, débats


Ce chapitre permet d’aborder la notion d’informatique embarquée à travers les différentes
étapes de cette intégration. En effet, si les premiers objets informatisés (avions et
automobiles) avaient des interfaces homme-machine (IHM) dédiées, souvent dépendante
d’une technologie filaire, l’informatisation des objets passent aujourd’hui par des
technologies du Web intégrées au téléphone portable, ce qui les rend presque invisibles
pour l’usager. Les repères chronologiques proposés montrent comment l’embarquement de
l’informatique dans des objets a permis de simplifier leur fonctionnement, de donner plus de
possibilités d’usages et de sûreté, et permettre leur évolution par une simple modification du
logiciel. Mais ces gains ont des conséquences sur les vies humaines, dont certaines
discutables et négatives, et posent la question des limites à fixer.

v Activité 1 L’informatique embarquée

v Activité 2 Les objets connectés

v Activité 3 La voiture connectée et autonome

v Activité 4 Succès et échecs des objets connectés

Bande dessinée d’ouverture


Cette bande dessinée permet de poser la question des limites à porter aux objets connectés,
c’est-à-dire de définir l’équilibre entre les services rendus et la protection de la vie privée. La
planche présente des élèves qui se connectent pendant le cours à la plateforme
d’enseignement grâce à une puce insérée dans leur corps (cf. l’activation dans la troisième
vignette puis les yeux en soucoupe lorsqu’ils sont connectés). En cours, l’expérience prend
un tour humoristique grâce à un bug informatique mais, en arrière-plan, on voit comment les
parents peuvent suivre à distance leur fils et en temps réel. Deux questions se posent : la
connexion généralisée des objets créé-t-elle une vulnérabilité accrue et dangereuse pour
des secteurs plus sensibles ? est-ce souhaitable de laisser un autre – les parents, l’État, des
hackers, des acteurs mal intentionnés – accéder à toutes nos données privées et à nos
comportements ? Pourtant, n’est-ce pas ce que l’on accepte avec les objets connectés pour
le sport ?

Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est plus question d’ouvrir un débat avec les élèves, les questions n’étant là que
pour initier une discussion, et pour les secondes, le but est de prendre connaissance des
pistes de recherche actuelles sur ce sujet.
Les activités

Les compétences travaillées


Cette activité apporte des connaissances techniques sur des interfaces homme-machine
(IHM) qui sont à la base de l’informatique embarquée et des objets connectés :
• Ces systèmes informatiques doivent être conçus et expliqués à partir de schémas
qui relient les différents composants ;
• Le fonctionnement de ces composants (capteurs, algorithmes, machines) doit être
connu pour analyser l’interaction continue entre l’homme et la machine.
L’impact social de l’informatique embarqué et des objets connectés est au cœur des activités
car ces systèmes ont profondément changé les vies humaines et sont appelés à une
croissance très forte, qui doit faire débat.

Ces connaissances peuvent être mises en œuvre :


• Par un exposé oral expliquant le fonctionnement des systèmes, les problèmes posés
par leur utilisation, les failles potentielles, etc. ;
• Par un projet de groupe consistant à créer un système d’informatique embarqué et
d’objets connectés en définissant les usages, les composants, les capacités
d’évolution.

Les savoir-faire travaillés


• Identifier des algorithmes de contrôle des comportements physiques à travers les
données des capteurs, l’IHM et les actions des actionneurs dans des systèmes
courants.
• Réaliser une IHM simple d’un objet connecté.
• Écrire des commandes simples d’acquisition de données ou de commandes d’un
actionneur.
ACTIVITÉ 1

Question 1
Utilisation du document 1
Un système embarqué est défini comme un système électronique et/ou informatique
autonome, souvent en temps réel, spécialisé dans une tâche bien précise. La télévision est
un parfait exemple, c’est un ensemble de techniques destinées à émettre et recevoir des
séquences audiovisuelles.
Un four à micro-ondes est un appareil électroménager utilisé principalement pour le
chauffage et la cuisson rapide d'aliments, par l'agitation des molécules d'eau qu'ils
contiennent, sous l'effet d'un rayonnement micro-onde.
À partir de ces exemples basés sur un système électronique, conduisez l’élève à présenter
des objets du quotidien où l’embarquement passe par un système informatique qui en
décuple les possibilités : enceintes connectées, vélo ou trottinette en location, etc.

Question 2
Utilisation du document 2
Avec l’évolution des avions, les forces nécessaires à l’actionnement des gouvernes de
direction dépassent les capacités physiques et manuelles d’un être humain. Les systèmes
embarqués hydrauliques ont permis de s’affranchir de cette limite. Les calculateurs ont
permis de leur côté d’ajuster au millimètre près les commandes sécurisant ainsi les vols.
Vous pouvez demander à vos élèves de faire une recherche sur les déconvenues de Boeing
avec leur 777 car ces systèmes embarqués peuvent enlever aux pilotes, dans des
circonstances définies par le système, la possibilité de piloter manuellement, quand bien
même l’avion est en péril.

Question 3
Utilisation du document 3
Dans le schéma ci-dessous, on peut placer les capteurs à droite et les actionneurs à gauche.
La zone en pointillée représente le système embarqué lui-même.

Le système embarqué est composé d’un processeur pour effectuer les calculs et exécuter le
programme, de convertisseur A/N et N/A pour traduire les signaux, ainsi que de mémoire.
Question 4
Utilisation du document 4
Dans le cas du système ABS, les actionneurs sont les freins, le système embarqué permet
au système de relâcher les freins afin de ne pas bloquer la roue. Le fonctionnement en
temps réel, ici jusqu’à vingt-quatre fois par seconde, dépasse la vitesse des réflexes du
conducteur et apporte donc une sécurité supérieure à la capacité humaine.
ACTIVITÉ 2
Question 1
Utilisation du document 1
a. Les repères historiques ont montré comment, au départ, les interfaces homme-machines
passaient par des technologies filaires. L’informatique a permis un accroissement
spectaculaire de la rapidité, du nombre, du volume, du traitement des objectés connectés
par un réseau de réseaux, l’internet des objets. L’échange de données entre entités
physiques et numériques passe notamment par l’utilisation de la 3G, 4G, etc…et permet
donc d’accéder aux données du Web.

b. L’informatique embarquée consiste à introduire un dispositif et de calcul dans un objet (cf.


le système de guidage de la mission lunaire Apollo dans les Repères historiques) tandis que
l’internet des objets repose sur la mise en réseau des tous les objets connectés avec
d’autres objets physiques et des entités numériques. Ce bond permet de récupérer, stocker,
transférer et traiter, sans discontinuités, les données produites par ces objets.

Question 2
Utilisation du document 2
a. La population mondiale était d’environ 7,5 milliards en 2018 et le nombre d’objets
connectés environ 23 milliards, ce qui fait en moyenne 3 objets connectés par personne,
cachant de très fortes disparités selon les pays et les classes sociales.
b. Les prévisions tablent sur une population mondiale de 8,1 milliards et 75,44 milliards
d’objets connectés en 2025, ce qui ferait plus de 9 objets connectés par personne donc un
triplement des usages, avec encore une fois des disparités selon les pays et les groupes
sociaux. Vous pouvez faire travailler les élèves sur ce triplement en imaginant, par rapport à
leur usage actuel, ce qui pourrait être connecté.

Question 3
Utilisation du document 3
a. Les sciences sociales ont amplement montré que ce phénomène est très courant car un
objet est approprié de différentes manières, souvent détournées, montrant la capacité
d’invention et de résistance des acteurs. Ici, les constructeurs avaient prévu les enceintes
connectées pour leur bénéfice – passer des commandes en ligne sur leur plateforme -, les
utilisateurs en ont tiré leur propre usage et plaisir (écouter de la musique, s’informer).

b. Il est possible de commander à la voix certaines fonctions domotiques de l'habitation


(éclairage, chauffage, climatisation...), de lancer la lecture de musique, d'actualités,
d'effectuer une recherche sur Internet, de consulter la météo, les conditions de circulation et
même de passer des commandes sur des sites, etc.
Question 4
Utilisation du document 4
a. Dans une maison connectée, à condition d’avoir les différents éléments reliés entre eux,
on peut facilement diriger les volets roulants, la lumière, les enceintes, le four, l’alarme, la
télévision, les radiateurs, la chaudière, la ventilation, la climatisation, les caméras, etc.

b. Source wikipedia : Z-Wave est un protocole de communication utilisant une technologie


radio de faible puissance dans la bande de fréquence de 868 MHz ; elle est conçue
spécifiquement pour les applications de domotique et ce qu'on appelle l'Habitat
communicant.
ACTIVITÉ 3

Question 1
Utilisation du document 1
a. Le système ABS relève du niveau 2 d’autonomie car le système intervient
indépendamment du conducteur grâce aux capteurs qui analysent la rotation des roues
permettant le mouvement de la voiture (ce n’est donc pas une cogestion, le conducteur
sentant simplement sous sa pédale de frein une action du système qui a déjà eu lieu), sans
pour autant être capable de surveiller l’environnement de conduite ni gérer automatiquement
la trajectoire.

b. Aux niveaux 3 et 4, la conduite est fortement automatisée car le système gère


automatiquement la trajectoire et surveille l’environnement de la voiture. En revanche, en
cas de danger ou d’événement imprévu, le niveau 3 redonne la main au conducteur tandis
que le niveau 4 continue à gérer la situation.
Le niveau 5 marque une étape ultime vers l’automatisation, celle d’une voiture sans
conducteur où le système gère la totalité du déplacement, tandis que le niveau 4 permet un
conducteur qui se laisse porter par une voiture autonome mais peut éventuellement
reprendre la main à sa demande, en activant ou non le système d’automation.

Question 2
Utilisation du document 2
La clé virtuelle et connectée fonctionne par la numérisation intégrale des fonctions de l’objet
clé, plus besoin donc de l’insérer dans une serrure de portière ni de contact, toutes les
commandes passent par le téléphone portable qui transmet et reçoit les données de la
voiture par connexion sans fil. Grâce à la dématérialisation, la numérisation permet d’ajouter
de nombreuses fonctions que ne possède pas la clé physique : transmettre la clé d’un
téléphone portable à un autre, ajouter des données supplémentaires (niveau d’essence,
kilométrage, signes de fatigue, alerte mécanique, vol…). En sécurisant ces données comme
dans le paiement en ligne, l’ensemble de ces services deviennent commercialisables, en
particulier pour la location de voiture et le prêt entre particuliers. Vous pouvez faire travailler
vos élèves en imaginant les nouveaux usages quotidiens et commerciaux permis par cette
clé numérique.

Question 3
Utilisation du document 3
La recomposition future des critères de choix d’une voiture est une grande inconnue et un
sujet d’inquiétude pour les constructeurs car cela signifie, potentiellement, l’obsolescence de
tous les critères actuels sur lesquels ont été fondés les modèles et les gammes de voiture,
ainsi que la modification des rangs des premières marques mondiales. Il n’est possible
aujourd’hui que de faire des hypothèses et celui qui fera les bonnes emportera les marchés.
La délégation des fonctions au pilotage automatique se traduira par des critères de
puissance de calcul et de sécurité. Les nouvelles activités à bord supposeront des
partenariats avec les fournisseurs d’accès à internet et de contenu multimédia (films, jeux
vidéo, etc.) qui deviendront de fait producteurs d’une partie de la future voiture et de son
équipement, en laissant au constructeur assurer tout ce qui relève de la trajectoire et de la
sécurité. Les dispositifs d’interaction conduiront à modifier tout l’habitable des voitures qui
pourraient même ne plus posséder de volants et ressembler, dans les scénarios les plus
futuristes, à une cabine salon, les fauteuils n’étant même plus tournés vers la route.

Question 4
Utilisation du document 4
Ce que « voit » une voiture autonome dépend du dispositif dont elle est équipée. En
l’occurrence, il s’agit d’un Lidar, un radar laser qui envoie des signaux lumineux à fréquence
extrêmement rapide. Le réfléchissement de cette lumière donne à voir des reliefs avec une
précision de volume plus importante que les capacités de l’œil humain, passant même à
travers la couverture végétale (le Lidar a été utilisé d’abord pour les recherches
archéologiques, en particulier les structures cachées sous la végétation, invisibles par
photographie aérienne). L’œil humain n’est pas capable de voir les structures des formes
avec une telle quantité et précision de détails et de précision. Le Lidar est en revanche
vulnérable aux situations désordonnées (un cycliste qui changerait plusieurs fois de route et
d’avis en bougeant rapidement les bras et les jambes) et aux reflets de la lumière qui
peuvent rendre invisible un objet (la remorque d’un camion peut ressembler à une grande
surface blanche). Ce sont ces situations qui sont à l’origine des rares accidents mortels
provoqués par des voitures autonomes.
ACTIVITÉ 4

Question 1
Utilisation du document 1
a. L’entreprise iRobot s’est spécialisée d’abord dans l’exploration spatiale et les robots
militaires. Ce n’est qu’en 2002, douze ans après sa création, qu’elle commercialise le
premier robot domestique, un aspirateur.
b. En 2017, iRobot vendait 4 000 fois plus de robots domestiques que de robots de défense
(on peut considérer que le chiffre de 2012 est resté stable pour les robots de défense,
marché moins mobile que les robots domestiques). En valeur, l’écart serait plus réduit car le
prix n’est pas le même. Il faudrait donc faire une recherche en regardant la part du militaire
dans le chiffre d’affaire.

c. iRobot a commencé comme une entreprise visionnaire et expérimentale créée par


d’anciens étudiants du MIT cherchant à reproduire des insectes sous forme robotique (leur
premier robot était une sorte de mille-pattes). De telles formes sont en réalité très complexes
à robotiser et l’entreprise n’a pas gagné d’argent pendant plusieurs années. Le tournant s’est
produit avec le recrutement d’anciens militaires, démobilisés après la première guerre du
Golfe de 1990-1991 : ils ont simplifié la forme en plaçant comme premier critère la fiabilité et
l’endurance du robot, les éléments essentiels devenant les capteurs et les chenilles tandis
que le corps central se réduisait à une forme géométrique simple (un cube ou un cylindre).

Question 2
Utilisation du document 2
a. Le rejet des Google Glass n’avait pas du tout été anticipé par Google mais il a été massif,
une fois passé quelques usages ludiques (filmer faisant du ski, dans un musée, etc.). La
caméra des lunettes a été perçue comme une menace et une intrusion dans la vie privée
puisqu’elle enregistrait tout ce que pouvait voir son porteur, sans que l’entourage sache s’il
était ou non filmé. Dans une version postérieure, Google avait introduit un cache pour
montrer que la caméra ne filmait pas en permanence, mais il était trop tard.
b. Le succès de la deuxième version repose sur un changement complet de marché,
abandonnant les particuliers (alors qu’il était prévu au départ que les opticiens puissent
vendre des lunettes connectées) pour les professionnels, limitant l’usage à l’exercice de leur
activité, sans emprise sur l’espace public et la vie privée. En somme, les lunettes connectées
deviennent un smartphone libérant l’usage des mains, ce qui est très pratique pour des
plombiers, des couvreurs et même des chirurgiens opérant en étant connectés à distance
avec un confrère qui les conseille ou des étudiants qui regardent comme faire.
b. Le compteur Linky est un autre exemple de controverse qui n’a pas été anticipée,
l’argumentaire ayant été pensée par l’entreprise de son point de vue en prenant peu en
compte les usagers et leur perception. De fait, le compteur connecté permet au fournisseur
d’énergie de piloter à distance l’approvisionnement en énergie en ajustant avec une
précision inédite les offres de contrat ou en gérant les variations de la disponibilité électrique,
ce qui est une des grandes difficultés du secteur (l’énergie est souvent abondante lorsque
les besoins sont moins grands). Deux éléments ont suscité de l’appréhension voire du rejet,
se poursuivant aujourd’hui par des actions en justice. Le premier est l’intrusion dans la vie
privée car le fournisseur a accès à des données qui lui apprennent l’heure et la durée des
usages quotidiens : concrètement, il est possible de savoir en temps réel combien de
personnes occupent un logement et si elles prennent une douche, regardent la télévision,
jouent à des jeux vidéo.

Question 3
Utilisation du document 3
a. Les objets connectés sont utilisés dans le sport pour optimiser les performances, en
enregistrant une grande quantité de données qui pourront ensuite être analysées (les
calories brûlées, la fréquence cardiaque, le nombre de pas par distance parcourue,etc.).
b. Les objets connectés du sport ne sont pas différents dans le principe des lunettes ou du
compteur connecté. Cependant, ils ne sont pas vus comme une intrusion dans la vie privée
car le premier usage est tourné vers l’usager lui-même, qui pilote ce dispositif pour
augmenter son plaisir et ses performances, archiver et échanger ses moments de pratiques
sportive. En réalité, et de la même façon que pour les Google Glass, cet utilisateur donne à
une entreprise commerciale ou à une autorité de surveillance la possibilité de consulter
toutes ses données privées et de les vendre. Une montre de sport connectée a ainsi permis
de démasquer le vainqueur d’un marathon semi-professionnel aux Etats-Unis qui avait couru
à une vitesse peu vraisemblable grâce à un raccourci : la montre a révélé que la distance
parcourue était inférieure à celle d’un marathon. Ces données permettent aussi à des
marques d’articles de sport de vous proposer de nouveaux équipements mieux adaptés
lorsque vos performances augmentent ou diminuent. Mais, elles ont permis aussi d’identifier
des bases militaires américaines ultra-secrètes grâce aux parcours de course à pied des
soldats, échangés sur des forums, ou d’être utilisé dans des procédures de divorce pour
démontrer que les activités sportives prétendues cachaient autre chose.
Ces cas montrent comment nous acceptons, avec notre accord et pour notre plaisir, des
intrusions sans précédent dans notre vie privée et comment, dans d’autre cas, nous les
refusons, de manière incohérente.

Question 4
Utilisation du document 4
a. D’après cet article, les objets connectés qui ont le plus de succès en France seraient les
jouets. On peut faire l’hypothèse que, dans ce cas, les utilisateurs – les enfants – ne peuvent
protester, tandis que les bénéficiaires des informations – les parents – justifient un usage
qu’ils accepteraient moins facilement pour eux-mêmes.
b. Cette question est ouverte et laissée à l’imagination des élèves.

c. Les réponses aux questions précédentes détaillent les risques des objets connectés :
intrusion dans la vie privée, surveillance, marchandisation accrue de la vie humaine, erreurs
d’analyse, sans parler de la vulnérabilité des réseaux qui peuvent connaître des
dysfonctionnements, être débordés par un événement imprévu ou un nombre trop grand de
connexions.
Je vérifie mes connaissances

Solutions détaillées

1. QCM

1. Dans un système embarqué on trouve des capteurs (A) et des actionneurs (C)
2. Les interfaces homme-machine existent depuis longtemps (A).
3. Un capteur transmet des informations du monde physique vers le système informatique
(B).

4. En 2018, le nombre d’objets connectés dans le monde était environ de 20 milliards (C).

2. Vrai/Faux
a. VRAI pour le métro parisien, en 1998. Mais Lille a eu deux lignes de métro automatisées
dès 1983.
b. FAUX. Le calculateur d’un avion fait partie d’une architecture de systèmes embarqués
complexes.
c. VRAI.
d. FAUX. L’internet des objets (Internet of Things) est l’interconnexion, grâce aux
technologies de l’information et de la communication, entre les objets physiques ou virtuels
contenant un système informatique embarqué.

e. FAUX. Une voiture connectée est une voiture qui fonctionne avec des systèmes
embarqués plus ou moins complexes, suivant le niveau d’autonomie du véhicule.

f. VRAI. Les objets connectés désignent des types d’objets dont la fonction première est
augmentée grâce à l’ajout d’une connexion internet. Cette connexion, permettant une
interaction avec l’environnement, leur apporte une valeur d’usage supplémentaire. Les objets
ne sont donc pas des périphériques informatiques ni des interfaces d’accès au web.
g. VRAI

3. Vers une définition

a. Les capteurs permettent de recueillir des données du monde physique et de les


transmettre vers un système décisionnel (souvent, un serveur informatique ou équivalent).

b. Les actionneurs permettent au système décisionnel d’agir sur le monde physique en


modifiant son état.
4. Compléter un schéma

Logiciel

Capteur Convertisseur Capteur

5. Restituer des connaissances

a. L’informatique personnelle regroupe les ordinateurs de bureau, les ordinateurs portables,


les stations de travail et les tablettes. L’informatique embarquée a au moins deux contraintes
importantes :
- l’existence d’un réseau qui relie les capteurs, le système décisionnel et les actionneurs,
- la fiabilité et le fonctionnement des capteurs car, sans eux, les contraintes du monde
physique ne peuvent être prises en compte.
Dans l’informatique personnelle, l’utilisateur peut manier ses outils sans réseau ni capteur.
b. Tous les objets connectés ont la capacité d’exécuter des programmes en enchaînant des
instructions et en communiquant avec des capteurs et des utilisateurs.

5. Organiser ses connaissances


Dans les systèmes informatiques embarqués, l’information provient soit des IHM soit des
capteurs, pour contrôler automatiquement et manuellement le fonctionnement physique par
des actionneurs et transmettre des informations aux utilisateurs. Le flux d’information à
travers les IHM permet ainsi une interaction continue entre l’homme et la machine.
JE M’ENTRAINE

7. Une histoire de température


a. et b.

8. Des taux de croissance


a. Le nombre d’objets connectés par personne a augmenté de 88,5 + de 2010 à 2015 puis
de 89,6 % de 2015 à 2018. Ces taux sont de 100 % pour le nombre total d’objets connectés.

b. Dans le même temps, la population mondiale a augmenté de 5,9 % puis de 5, 6 %.


c. Le nombre total d’objets connectés augmente bien plus vite que la population grâce à
l’augmentation très forte du nombre d’objets connectés par personne.

9. La voiture autonome
a. La voiture autonome repose sur l’accumulation et le traitement d’une masse gigantesque
d’information, ce qui nécessite une grande quantité d’énergie. La montée en puissance de ce
type de transport aura donc un impact énergétique et environnemental élevé.

b. Cette évolution technologique pose des problèmes d’atteinte à la vie privée et de sécurité.

10. Un potager connecté


Le numérique permet d’optimiser le fonctionnement d’un potager en surveillant la croissance
des légumes, l’humidité de la terre, l’ensoleillement.
11. Les enceintes connectées
a.

b. Un État totalitaire pourrait se servir d’enceintes connectées pour surveiller en temps réel
les foyers, notamment en utilisant des systèmes de reconnaissance vocale repérant tous les
mots jugés dangereux ou déviant par ce régime.
c. Le « crédit social » est devenu une réalité en Chine, qui permet d’exclure de certains lieux
les gens mal notés par les autres, par exemple des trains, des stades, des concerts et même
de certains immeubles. Faites travailler vos élèves sur ce que signifie noter les
comportements sociaux et les critères utilisés.

12. L’IoT et sécurité


a. L’entreprise DynDNS propose d’attribuer un nom de domaine aux utilisateurs d’une
adresse IP dynamique. L’absence d’adresse fixe est fréquente pour l’internet des objets, qu’il
s’agisse des dispositifs de surveillance ou des smartphones et tablettes qui servent à piloter
ces objets.

b. Une attaque par déni de service consiste à rendre indisponible un service (un service de
courrier, un serveur web) en inondant un réseau grâce à un réseau plus vaste. Dans ce cas,
les attaquant se sont servis d’objets connectés piratés, les caméras de surveillance.

c. Cette question est ouverte. Vous pouvez déjà commencer à faire travailler vos élèves à
repérer les moyens de protection existants et leur mise en œuvre par les utilisateurs
(combien de mots de passe restent-ils inchangé, en 0000 ?).
FAB LAB

3 - Installation de l’environnement de développement


Description :
Communément désigné comme « Arduino IDE » (IDE pour Integrated Development
Environment), le logiciel Arduino permet d’écrire, de compiler (transformer en binaire) et
d’envoyer votre script sur la mémoire de la carte Arduino.
Ouvrir le site officiel : https://www.arduino.cc Ensuite cliquer sur l'onglet « Software » dans le
menu en haut, puis download. Télécharger le logiciel pour le système d’exploitation que vous
avez : (pour nos tests version 1.8.9)

Lancer l’installation et suivre les instructions.


Si l’on vous demande l’autorisation de pare feu, donnez-la en cliquant sur autoriser l’accès

Vous devez normalement avoir la fenêtre suivante ouverte sur votre PC :


Installation Scratch for Arduino :
Pour communiquer avec S4A (Scratch pour Arduino), nous avons besoin de téléverser sur
la carte Arduino un petit programme. Ainsi, après l’ installation de l’ IDE, nous allons charger
le programme sur la carte Arduino afin de permettre à à S4A de communiquer avec elle.
Voir « S4AFirmware16.ino.txt »
Pour lancer la détection de la carte, bouton droit sur la liste des ports puis « détecter la
carte »
Les valeurs doivent se modifier très rapidement toutes seules à cet instant.
Voir : https://www.robot-maker.com/shop/blog/55_Installation-Scratch-Arduino.html

Afin de vérifier le bon fonctionnement, taper le programme scratch ci-dessous et appuyer sur
le drapeau vert en haut à droite.

La LED doit clignoter.


4 et 5 : Monter les LED
Photo schéma électronique :

Capture code scratch à taper :


LA PAGE DU CODEUR

On pourra repartir de ce qui a été installé dans le chapitre 3.Fichier S4AFirmware16.ino

Ecriture du programme Python

Ecriture du programme pour la carte Arduino


Guide du professeur - Chapitre 7

L’objectif de ce chapitre est de présenter les principes généraux de la photographie, puis celui de
la photographie numérique. Il permet de comprendre le passage de la photographie argentique à
la photographie numérique et présente un certain nombre d’outils, comme les algorithmes qui
aident à la prise de vue ou les logiciels qui permettent de traiter les images.

Histoire, enjeux, débats


Ce chapitre permet d’aborder, de manière schématique, l’histoire de la photographie, depuis les
chambres noires jusqu’à la photographie numérique, notamment à l’intérieur de nos smartphones.
Il pose également la question de l’utilisation des téléphones portables comme « prothèse de
mémoire » (controverse) ou bien celle de la multiplication des systèmes de surveillance (appareils
photographiques ou caméras) dans l’espace publique, voire dans la sphère privée (Monde de
demain).

v Activité 1 Du capteur à l’image

v Activité 2 Les métadonnées EXIF

v Activité 3 Les algorithmes et la photographie numérique

v Activité 4 Le traitement d’image

Bande dessinée d’ouverture


Cette bande dessinée permet de poser la question de ce que l’on nomme parfois la « prothèse de
mémoire ». De plus en plus d’utilisateurs de téléphones portables les utilisent plutôt que de noter
des informations ou de tenter de les mémoriser, utilisant ainsi les téléphones comme des
mémoires mortes d’ordinateurs, stockant toutes sortes d’informations pouvant, un jour, leur servir.
La question étant alors de savoir si cette manière de faire n’affecte pas notre propre mémoire en la
laissant au repos trop souvent et trop longtemps.

Note : Les pages Controverse et Monde de demain ne sont pas corrigées. En effet, dans les
premières, il est plus question d’ouvrir un débat avec les élèves, les questions n’étant là que pour
initier une discussion, et pour les secondes, le but est de prendre connaissance des pistes de
recherche actuelles sur ce sujet.
Les activités

ACTIVITÉ 1

Les compétences travaillées


Cette activité apporte des connaissances techniques sur le principe de la prise de vue
photographique, en partant des éléments du capteur jusqu’aux caractéristiques d’une image, en
passant par les liens entre l’un et l’autre.

Les savoir-faire travaillés


• Utiliser les caractéristiques techniques d’un capteur.
• Calculer les caractéristiques d’une image (définition, taille, poids, etc.).
• Comparer les différents types de profondeur de couleur.

Question 1
Utilisation du document 1

a. Les principaux éléments d’un appareil photo sont l’objectif et le capteur. L’objectif permet de
faire entrer la lumière et de concentrer les rayons et le capteur permet de transformer les photons
reçus en image.
b. Le capteur se situe derrière l’objectif afin de pouvoir capter les photons.

Question 2
Utilisation du document 2
a. Un capteur produit des électrons à partir des photons reçus à sa surface.
b. Les photosites sont disposés sur un canevas appelé le filtre ou la matrice de Bayer.

Question 3
Utilisation du document 3
a. Non, en général il faut quatre photosites pour composer un pixel.
b. D’après la définition de la « définition d’une image », on obtient 300 x 300 = 90 000 pixels.
c. Lorsque l’on numérise une photographie à 300 dpi, celle-ci va contenir 300 x 300 pixels par
pouce carré. Ici, on a 8,5 x 11 = 93,5 pouces carrés, donc la photographie numérisée contiendra :
93,5 x 300 x 300 pixels = 8 415 000 pixels.

Question 4
Utilisation du document 4
On sait que 8 bits = 1 octet, donc le poids de cette image se calcule de la manière suivante :
30 x 20 x 8 bits = 30 x 20 X 1 octet = 600 octets.
ACTIVITÉ 2
Les compétences travaillées :
Cette activité apporte des connaissances techniques sur les métadonnées EXIF d’une
photographie, plus précisément ce qu’elles contiennent et les différentes manières de les obtenir
ou de les modifier.

Les savoir-faire travaillés :


• Obtenir les métadonnées EXIF d’une photographie.
• Modifier les métadonnées EXIF d’une photographie.

Question 1
Utilisation du document 1

Les métadonnées présentées dans ce document sont essentiellement des caractéristiques


techniques de l’appareil photographique, comme le modèle, mais aussi les réglages qui ont été
faits pour prendre le cliché (longueur de focale, flash ou non, etc.).

Question 2
Utilisation des documents 1 et 2

Dans le cas des métadonnées EXIF, c’est essentiellement le nom de l’auteur du cliché, ainsi que
les coordonnées GPS du lieu de prise de vue qui peuvent être sensibles.
Dans le cas des métadonnées DICOM, toutes les données peuvent être sensibles car ce sont des
données normalement protégées par le secret médical.

Question 3
Utilisation du document 3
Exercice à faire sur ordinateur.
a. On considère ici le cas de l’ouverture de la photographie ouverte sous avec le logiciel Photos
sous Windows.
On obtient les informations suivantes : le nom du fichier, puis l’horodatage de la photo, sa taille,
ses dimensions (en pixels) puis quelques données techniques et le lieu de la prise de vue.
ACTIVITÉ 3

Les compétences travaillées


Cette activité apporte des connaissances sur les algorithmes utilisés par la photographie
numérique, que ce soit pour une aide à la prise de vue ou pour un assemblage automatique de
plusieurs images.

Les savoir-faire travaillés


• Manipuler les réglages pour une prise de vue.
• Utiliser des méthodes d’interpolation d’images dans un cas simple.

Question 1
Utilisation du document 1
Exercice à faire sur ordinateur
Cette question est à traiter par chaque élève (ou groupe d’élève) et ne peut être corrigée ici.

Question 2
Utilisation du document 2

a. On effectue des moyennes simples sur les trois valeurs RVB du codage couleurs.
Pour R, on obtient 154,75, on prend donc la valeur 175.
Pour V, on obtient 165,5, on prend donc la valeur 117.
Pour B, on obtient 242,5, on prend donc la valeur 243.
Au final, le pixel obtenu a pour valeurs 175, 117, 243.

b. L’interpolation consistant à ajouter des pixels là où il n’y en pas, il peut y avoir une perte de
qualité de l’image.

Question 3
Utilisation du document 3
L'High Dynamic Range, le focus stacking et la Super-résolution sont des algorithmes
d'amélioration de l'image, à la différence du panorama qui permet de juxtaposer plusieurs images.
L’HDR permet d’augmenter le niveau de détail aussi bien dans les zones sombres que dans les
zones claires. L’inconvénient est qu’il demande une grande précision.
Le Focus stacking permet d’associer profondeur de champ et netteté. Mais il nécessite un
appareil capable de le faire et un trépied.
La Super-résolution a l’avantage de pouvoir être réalisée, sans matériel particulier avec un
logiciel comme Gimp.
Le Panorama a l’avantage d’être réalisable avec un smartphone. Mais si on veut faire un beau
panorama, il faut le faire très sérieusement en conservant la même hauteur et en choisissant le
bon angle pour chaque prise.

Question 4
Utilisation du document 4

En observant l’image proposée, on constate que les formes géométriques utilisées pour la
reconnaissance faciale sont des points, des carrés, des segments et des triangles.
La reconnaissance de visages consiste à identifier une personne sur la base de son visage. Il faut
alors mettre en œuvre des méthodes plus sophistiquées que pour une simple détection. En effet la
présence d’yeux, d’un nez et d’une bouche ne suffit pas à l’identification d’un individu. Il faut tenir
compte de caractéristiques spécifiques à une personne. C’est ainsi que l’on mesure les positions
relatives d’une série de points caractéristiques disposés sur un visage (les points représentent les
positions des yeux, du nez, de la bouche, etc, et des segments sont tracées entre ces points, ce
qui permet d’obtenir une géométrie du visage). Il est alors possible de comparer ces mesures avec
celles faites sur une image (ou une série d’images) de référence pour laquelle on dispose d’un
identificateur. La comparaison fournit alors un indice de ressemblance qui permettra de dire si le
visage à reconnaître est celui de la personne connue.
Aujourd’hui, les algorithmes de reconnaissance faciale utilisent des outils mathématiques
beaucoup plus sophistiqués que ces simples formes géométriques mais le principe global reste le
même.
ACTIVITÉ 4
Les compétences travaillées
Cette activité apporte des connaissances sur les caractéristiques d’une photographie, mais aussi
sur les techniques pour retoucher une image, soit pour en améliorer la qualité, soit pour la
transformer.

Les savoir-faire travaillés


• Connaître les caractéristiques du type contraste ou luminosité d’une photographie.
• Utiliser un logiciel de retouche d’image.

Question 1
Utilisation du document 1

a. La photographie de gauche présente peu de contrastes et paraît un peu grise. La photographie


de droite propose un paysage plus contrasté, renforçant la présence des noirs et accentuant la
couleur chaude des pierres. L’œil humain étant particulièrement sensible aux contrastes, nous
sommes plus attirés par la photographie de droite.

b.
Outils pour agir sur : dans Couleurs
le contraste de l'image luminosité/contraste ;
tons sombres/tons clairs
; balance des blancs ;
teinte saturation ;
exposition ; niveau ;
courbe
la teinte des pixels température de couleur ;
teinte-chroma ; balnace
des couleurs
la saturation de la teinte des pixels saturation ; teinte-
saturation ; niveau
la luminosité Luminosité-Contraste ;
exposition ; tons
sombres-tons clairs ;
niveau ; courbe

Question 2
Utilisation du document 2

a. La photographie de gauche est l’originale, avant retouche.


b. Elle a été retouchée pour donner une image plus glamour de la jeune femme, maquillée, teint
unifié, cheveux plus contrasté, accentuation des pommettes, etc.

Question 3
Utilisation du document 3
Exercice à faire sur ordinateur.
c. les filtres proposés par Gimp permettent de modifier les images, de faire des retouches
localisées, d’appliquer des effets, etc.
Je vérifie mes connaissances
Solutions détaillées

1. QCM
1. a. 2. a. et c. 3. b. 4. a. et c.

2. Vrai/Faux
a. FAUX. Le capteur est composé de photosites.
b. VRAI.
c. FAUX. En général, il faut quatre photosites pour composer un pixel.
d. FAUX. La lumière blanche est bien composée de trois couleurs primaires, mais ce sont le bleu,
le vert et le rouge.
e. FAUX. Le contraste a diminué.
f. VRAI.
g. FAUX. Cela dépend des réseaux sociaux. Flickr, par exemple, ne supprime pas les
métadonnées.
h. VRAI.

3. Vers une définition


a. Un photosite est une cellule photoélectrique qui réagit à l’intensité lumineuse. Les photosites
sont les éléments du capteur photographique.
b. Une métadonnée est une donnée sur une donnée. Les métadonnées forment un ensemble
structuré d’informations décrivant une ressource quelconque.

4. Utiliser une formule


Le poids d’une image est donné par la formule :
Poids(octets) = nombre de pixels total x codage couleurs(octets).
Ici, le nombre de pixels est 30 x 30 = 900 px.
Le codage est 16 bits. Or, 1 octet = 8 bits, donc ici le codage est 2 octets.
Donc, poids = 900 x 2 = 1 800 px.

5. Compléter un schéma
Pour compléter la valeur du pixel crée, on calcule la moyenne simple
sur les pixels voisins.
Valeur du pixel = (128 + 94 + 209 + 162)/4 = 148,25.
En arrondissant, on trouve 148.

6. Organiser ses connaissances


a. Les logiciels d’édition d’images, tel que Gimp, les systèmes d’exploitation, comme Windows et
MacOS, ou encore des logiciels spécialisés permettent d’éditer manuellement les métadonnées.
Pour les systèmes d’exploitation, cliquer droit sur l’image, puis « Propriétés ». Dans les logiciels,
menu « Propriétés ».
b. La fonction « panorama » consiste à associer plusieurs photographies prises à des angles
différents. L’algorithme détecte les points communs entre les images afin de déterminer où les
raccorder, puis lisse les intersections afin que celles-ci ne soient pas visibles.
JE M’ENTRAÎNE

7. Les vraies couleurs


1. chaque pixel peut prendre 224 = 1 677 7216 couleurs
2. a. Cette image contient 3000 x 2000 = 6 000 000 pixels
b. Le poids de cette image est de 3000 x 2000 x 3 = 18 000 000 octets = 18 Méga octets

8. L’interpolation au plus proche voisin


a. L’agrandissement de facteur 2 (on a matérialisé les traits pour bien faire comprendre comment
se fait l’agrandissement).

b. Si on applique un agrandissement de facteur 5, on obtient 45 = 1024 pixels.

9. Les métadonnées
a. La photo contient 1 224 x 1 632 (c’est la dimension de l’image), soit 1 997 568 pixels.
b. En divisant la largeur exprimée en pixels par la résolution horizontale nous obtenons 1224 / 72
= 17 pouces de largeur. De la même manière pour la hauteur, nous trouvons 1632 / 72 = 22,67
pouces de hauteur. Nous convertissons ensuite en cm (1 pouce = 2,54cm).
La dimension réelle de la photo : 43,18 x 57,58 cm.
c. Pour une profondeur de couleur de 24 bits, la photo pèsera 1224 x 1632 x 3 = 5 992 704 octets
soit environ 6 mégaoctets. Ce poids de l'image en mémoire vive n'est pas forcément le poids du
fichier, tout dépend de son type de compression.

10. Les mèmes


Exercice à faire sur ordinateur.
Non corrigé dans la mesure chaque élève doit obtenir un fichier différent.

11. Recherche visuelle


Exercice à faire sur ordinateur.
Non corrigé.
FAB LAB
Ce FabLab ne peut pas présenter un corrigé dans la mesure où l’œuvre réalisé dépend du choix des lieux et
du lycée.

La question 1 ne pose pas de difficultés majeures, il suffit de suivre pas à pas les étapes proposées par
SnapChat.
La page du codeur

u De la couleur aux niveaux de gris


# 1. Le programme Python qui prend l'image exemple.jpg, convertit les pixels (colorés) en des moyennes
de gris et enregistre le résultat sous le nom ImageGrise.png

# importer la librairie Pillow


from PIL import Image

# ouvrir l'image "exemple.jpg"


image = Image.open('exemple.jpg')

# obtenir la largeur et la hauteur de l'image


width, height = image.size

# charger la liste des pixels


pixels = image.load()

# Parcourir les pixels


for i in range(width):
for j in range(height):
# obtenir la valeur de chaque pixel et la stocker dans "pixel"
pixel = image.getpixel((i, j))

# obtenir les valeurs rouge, vert et bleue du pixel.


# Ces valeurs sont comprises entre 0 et 255
rouge = pixel[0]
vert = pixel[1]
bleu = pixel[2]

# création de la moyenne des pixels, selon le modèle YUV


# (29,9% de rouge, 58,7% de vert et le reste de bleu)
gris = int((rouge * 0.299) + (vert * 0.587) + (bleu * 0.114))

# il serait possible de faire plus simple (mais moins satisfaisant) avec une bête moyenne :
# gris = int((rouge + vert + bleu )/3)

# réglage du pixel
pixels[i, j] = (gris, gris, gris)

# enregistrement de l'image
image.save("ImageGrise.png", 'png')

v Le négatif d’une image


# 2. le programme python qui inverse les pixels de l'image exemple.jpg et enregistre le résultat dans
ImageNegative.png

# importer la librairie Pillow


from PIL import Image

# ouvrir l'image "exemple.jpg"


image = Image.open('exemple.jpg')

# obtenir la largeur et la hauteur de l'image


width, height = image.size

# charger la liste des pixels


pixels = image.load()

# Parcourir les pixels


for i in range(width):
for j in range(height):
# obtenir la valeur de chaque pixel et la stocker dans "pixel"
pixel = image.getpixel((i, j))

# obtenir les valeurs rouge, vert et bleue du pixel.


# Ces valeurs sont comprises entre 0 et 255
rouge = pixel[0]
vert = pixel[1]
bleu = pixel[2]

# réglage du pixel, la valeur est inversée


pixels[i, j] = (255-rouge, 255-vert, 255-bleu)

# enregistrement de l'image
image.save("ImageNegative.png", 'png')

Ž Noir ou blanc
# 3. Programme python qui prend l'image exemple.jpg, convertit chacun de ses pixels soit en noir soit en
blanc et enregistre le résultat dans noirOuBlanc.png

# importer la librairie Pillow


from PIL import Image

# ouvrir l'image "exemple.jpg"


image = Image.open('exemple.jpg')

# obtenir la largeur et la hauteur de l'image


width, height = image.size

# charger la liste des pixels


pixels = image.load()

# Parcourir les pixels


for i in range(width):
for j in range(height):
# obtenir la valeur de chaque pixel et la stocker dans "pixel"
pixel = image.getpixel((i, j))

# obtenir les valeurs rouge, vert et bleue du pixel.


# Ces valeurs sont comprises entre 0 et 255
rouge = pixel[0]
vert = pixel[1]
bleu = pixel[2]

# déterminer la valeur de gris en faisant une moyenne des trois couleurs


gris = int((rouge + vert + bleu )/3)

# si la variable gris est supérieure à 127, alors elle devient 255 (blanc)
if(gris>127):
gris=255
# sinon, elle devient 0 (noir)
else:
gris=0

# réglage du pixel
pixels[i, j] = (gris, gris, gris)

# enregistrement de l'image
image.save("noirOuBlanc.png", 'png')