unistraPatrick TRAU 2021

cours P.TRAU

Systèmes d'information

Patrick TRAU / UFR Physique et Ingénierie / Unistra


  1. Qu'est-ce qu'un S.I. ?
  2. Historique
  3. Le réseau internet
  4. l'architecture client-serveur
  5. le nuage (cloud computing)

1)Qu'est-ce qu'un S.I. ?

Une information est un nombre, un texte, une image, un son... Nous ne traitons que ce qui peut être numérisé (pas les odeurs, pour l'instant). Evidemment, on peut combiner tout cela pour former un plan CAO, un catalogue, une gamme d'usinage...

Un S.I. est l'ensemble du matériel (hard), du logiciel (soft) et des moyens humains, qui permet de d'acquérir, stocker, modifier, gérer, partager, diffuser de l'information.

vous pouvez voir ma petite introduction sur l'architecture des ordinateurs et des systèmes d'exploitation (cours de licence SPI).

2)Historique

rq : trouvez ici les diverses photos que je présente habituellement en cours.

Les premiers ordinateurs (à partir de 1945) coûtaient des sommes colossales (même pas calculées, ni les composants utilisés progressivement, ni les heures de travail des ingénieurs) et étaient surtout des objets de recherche, en constante évolution.

Dans les années 50-60, l'ordinateur était un « mainframe » : situé dans une salle de calcul, avec un tas de gens grouillant autour des machines, changeant les bandes magnétiques... Il était produit en petite série et avait un coût commercial (plusieurs centaines de k$, voire millions pour l'armée). Les utilisateurs, nombreux, étaient connectés à distance, via des terminaux (au début, lecteurs de cartes perforées) et des liaisons téléphoniques (en France, monopole des PTT, on appelait ces lignes des LS). La SNCF quand à elle avait son propre réseau, toutes les grandes gares étaient reliées à l’ordinateur central. Exemple : ordinateur « Univac » à Jussieu, pour la recherche universitaire de toute la région parisienne.

Dans les années 70, on passe au « mini ordinateur », de la taille d'une armoire (hors périphériques). qui peut être payé par une plus petite structure, ou une grosse entreprise. Par exemple chaque grand laboratoire de recherche . (100k$ juste pour l'ordinateur). Les LS existent toujours, et si l'on a encore un compte sur le mainframe, on peut transmettre des informations entre deux labos.

Années 80 : le micro ordinateur (et la station de travail, un peu plus puissante). On peut enfin décentraliser le travail et les données, chacun peut « faire ce qu'il veut » (s'il a suffisamment de ressources matérielles et les logiciels). On met en place des réseaux locaux pour partager des informations entre les postes. On peut aussi interconnecter deux réseaux locaux. Il faut alors avoir un compte d'accès au réseau local et un au réseau distant : on se « loge » sur un ordinateur local, via le réseau local on accède à la « passerelle », on passe par une LS à la passerelle du réseau distant, et on se loge sur une des ordinateurs distants (autre compte et mot de passe). Si le réseau distant a d'autres passerelles, on peut « rebondir » plus loin. Mais il faut (1) connaître la route, et (2) avoir des accès autorisés à toutes les passerelles sur la route.

Années 90 : internet. (1) les routes sont calculées automatiquement (il faut juste définir clairement le départ et l'arrivée grâce à un numéro unique : l'IP) (2) toute personne qui veut passer chez les autres (donc être sur internet) doit se relier à au moins un autre (et financer la liaison), et laisser passer les autres chez lui. On peut transmettre des données sur le réseau en commençant par des message texte (mail) et tous fichiers (ftp). Et bien sûr les pages web, puis les moteurs de recherche....

Années 2000 généralisation d'internet, accessible aux particuliers et les plus petites structures commerciales. Généralisation de l'architecture client-serveur : les informations sont gérées (par un programme serveur) et stockées sur un ordinateur distant. Il ne reste plus qu'à poser (à distance) une question (requête) au serveur, qui traite et répond. Double avantage : (1) inutile d'avoir localement la puissance de calcul, la totalité des données, les programmes, (2) toute mise à jour d'une information est immédiatement visible à tous. Exemples les plus connus : serveur Web, SGBD (base de données). ERP (données de gestion d'une entreprise)...

Années 2010 : le cloud : on ne sait plus où sont physiquement les information, ni les matériels qui exécutent les programmes. Tout est sous-traité. Mais tout est également quantifié : on paye pour ce que l'on utilise. On peut donc accéder à des logiciels autrefois réservés aux « gros », à un prix réduit (si usage réduit, bien sûr), comme par exemple SAP. Ou à un logiciel nécessitant un ordinateur (traitement de texte par exemple) sur une terminal (téléphone) où il n'est pas installé (Google drive+docs+..., office 365....)

Années 2020 : télétravail ????

3)Le réseau internet

Voir http://ptrau.free.fr/internet/cours-reseau

Ce cours est vieux (2002!). Mais il montre comment fonctionne le réseau. Le principe n'a pas beaucoup changé mais comme les informations (noms, numéros IP...) sont obsolètes je peux les publier sans crainte. Dès que j'ai le temps je le remets à jour (au moins parler d'IPv6). Il est important de comprendre les numéros IP (v4 et v6) et le nommage, le DNS, l'organisation du réseau

4)l'architecture client-serveur

Définitions (récursives, comme disent les informaticiens) :

Nous allons voir cela sur des exemples, avec des graphiques dans lesquels : un rectangle est un ordinateur, une ellipse un programme, une flèche une requête (ou une réponse).

exemple : un serveur Web est un programme (Apache est le plus utilisé, il est OpenSource, IIS est le produit Microsoft, je n'en dis pas plus sinon je me fâche). Il répond à des requêtes (du type http://mon_ordi/ma_page?options, par exemple http://www.google.fr/search?q=patrick+trau )

Les clients web s'appellent Firefox, Internet Explorer, Opera, Safari, Chrome... Ils envoient une requête http en fonction de ce que vous avez tapé ou cliqué, Puis, quand le serveur leur revoie sa réponse (c'est du texte contenant des « balises » : <html> <head> ...) il l'analyse et vous dessine une belle page.

Mais pour la dessiner, il n’allume pas directement les pixels de l’écran : il passe par un serveur de fenêtres graphiques (X11 sur linux) qui va passer par le système d’exploitation (OS) pour lui demander de dessiner la page (sous Windows le serveur graphique et l’OS ne sont pas clairement séparés).

Pour la suite, je ne rajouterai pas l’OS dans mes schémas, ça compliquerait trop. Il y en a bien sûr un dans chaque ordinateur. Mais il ne fonctionne pas nécessairement en mode serveur, en tout cas ceux qui permettent d’ouvrir une fenêtre à distance le sont (telnet, ssh, bureau à distance...).


Le fait que le serveur tourne obligatoirement sur un ordinateur a amené des gens à appeler cet ordinateur « serveur Web ». C'est une extension du langage, un serveur matériel est un ordinateur dédié principalement à faire tourner un programme serveur donné. Mais sur un serveur web il y a souvent un client web (pour pouvoir voir une page plutôt que juste ses codes html), et sur mon ordinateur portable il y a Apache qui tourne tout le temps (s'il est allumé), pourtant ce n'est pas un serveur matériel.

Il existe de nombreux serveurs :

5)le nuage (cloud computing)

Voir la définition de Wikipédia. J'en extrais certaines explications.

Le cloud, c'est un peu une démarche que je vois s'appliquer de plus en plus dans notre économie : vous ne faites rien en local, tout est sous-traité. Pour moi, c'est le retour au mainframe, que tous les fabricants ont tant décrié depuis 30 ans. Tout ce que propose le cloud existait déjà sur internet (stockage à distance, programmes tournant à distance, machines distantes…). Mais on y a rajouté la quantification de l’utilisation des ressources (et donc la possibilité de facturation).

D'après wikipédia, les caractéristiques essentielles d'un nuage sont la disponibilité mondiale en libre-service (libre-service = on achète ce dont on a besoin à un instant donné, et pas on le prend), l'élasticité (si j'ai besoin de plus de ressources, je paye plus, si j'en ai moins besoin, je paye moins), l'ouverture (fonctionne sur tout système), la mutualisation (ce que vous n'utilisez pas un moment est disponible aux autres) et le paiement à l'usage (on ne paye que ce qu'on utilise).

Avantages : on n'est plus obligé d'acheter les ressources nécessaires pour les moments de pointe, et donc surdimensionnées le reste du temps. On peut se payer des outils de haute technicité sans en payer le prix fort, si on l'utilise peu (par exemple SAP). On peut répondre immédiatement à une hausse de la charge. Chaque tâche est sous-traitée à un spécialiste, qui maîtrise (théoriquement) son domaine. On n'est plus obligé d'investir massivement avant de commencer à gagner de l'argent (on passe à des coûts de fonctionnement)

Inconvénients : on ne sait plus où sont les choses, ni entre les mains de qui (et problèmes juridiques de règles différentes dans différents pays). Tout problème dans le réseau nous bloque complètement. Si on est plusieurs à se partager un même ordinateur, chacun paye (avant, on ne payait qu'une fois par ordi). Une fois qu'on a tout «ennuagé » ses données, le prestataire peut augmenter ses prix sans qu'on puisse rien y faire (faire attention à empêcher le monopole et garder des acteurs concurrents).

Les types de cloud (schéma extrait de wikipédia sur le cloud) :

Si un prestataire vous propose un SaaS, il est possible que lui-même sous-traite le PaaS à un autre, qui lui sous-traite l'IaaS. Les données peuvent être chez un autre prestataire que les logiciels.


schéma repris chez Wikipédia (fr.wikipedia.org/wiki/Cloud_computing)

Le cloud, de par sa possibilité de quantifier les usages, incite des prestataires à proposer des services (avant, il fallait en trouver de gratuits, ou se partager des ressources entre personnes autorisées, comme par exemple dans une entreprise). Ceci permet l‘émergence des outils collaboratifs, qui permettent de travailler à plusieurs sur un même projet. Sur Google Docs, vous pouvez voir votre texte évoluer pendant que vous le tapez, mais aussi celui que tape un collègue dans le même document, en même temps. Ce n'est possible que parce que le logiciel tourne sur un seul ordi (un serveur) malgré qu'il ait plusieurs fenêtres de visualisation (clients). Il existe des TAS ce logiciels de ce type, même en libre : voir dégooglisons internet, chez Framasoft. Bien sûr, vous proposer un logiciel gratuit est courant, mais pas le serveur pour le faire tourner : soit vous l'installez chez vous (par ex BBB installé à l'Unistra et dans plein d'entreprises) soit louer (cloud) : MS Teams...

PowerBI (de MicroSoft) est pour moi une évolution qui se généralisera. Ce logiciel a toutes les fonctionnalités d'Excel (analyse de données, statistiques, graphiques...) Par contre les données peuvent venir de n'importe où (feuille Excel, BD SQL, voire toute recherche web), et les calculs et graphiques évolueront en temps réel. On s'en sert donc pour des tableaux de bord, et je pense qu'en GIPI cela permettra d’afficher graphiquement les données de prod, KPI, TRS, non qualités... depuis les données SAP, les sorties des machines, les tableaux excel...


Patrick Trau université de Strasbourg 2021. pour toute remarque.