L'informatique
Informatique
Le super-calculateur Columbia de la NASA
L'informatique désigne l'automatisation du traitement de l'information par un système, concret (machine) ou abstrait. Dans son acception
Software engineering (Génie logiciel) : ce qui ressort de la modélisation et du développement des logiciels ; ceci comprend deux aspects : les données et les traitements ; les deux aspects sont liés dans la mise
Origine du terme [
Le terme informatique est un mot-valise créé en mars 1962 par Philippe Dreyfus, ancien directeur du Centre National
de Calcul Électronique de Bull dans les années 1950,
qui, en 1962, a utilisé pour la première fois
ce terme dans la désignation de son entreprise « Société d'Informatique Appliquée » (SIA). à partir des mots « information » et « automatique ».
En France, l'usage officiel du mot a été consacré par Charles de Gaulle qui, en Conseil des ministres, a tranché entre « informatique » et « ordinatique »,
et le mot fut choisi par l'Académie française en
1967 pour désigner cette nouvelle discipline. En juillet 1968, le ministre fédéral de la Recherche scientifique
d'Allemagne, Gerhard Stoltenberg, prononça
le mot Informatik lors d'un discours officiel au sujet
de la nécessité d'enseigner cette nouvelle discipline dans les universités de son pays, et c'est ce mot qui servit aussitôt à nommer certains cours dans les universités allemandes.
Le mot informatica fit alors son apparition en Italie et en Espagne
, de même qu'informatics au Royaume-Uni.
Pendant le même mois de mars 1962 Walter F. Bauer inaugura la société américaine Informatics Inc. qui, elle, déposa son nom et poursuivit toutes
les universités qui utilisèrent ce nom pour décrire
la nouvelle discipline, les forçant à se rabattre sur computer science, bien que les diplômés qu'elles formaient étaient pour la plupart des praticiens de l'informatique plutôt
que des scientifiques au sens propre. L'Association for
Computing Machinery, la plus grande association d'informaticiens au monde, approcha même Informatics Inc. afin de pouvoir utiliser le mot informatics
pour remplacer l'expression computer machinery, mais l'entreprise déclina l'offre. La société Informatics Inc. cessa ses activités en 1985
, achetée par Sterling Software.
Évolution récente
L'évolution récente tend à employer plutôt l'expression TIC en français, pour technologies de l'information et de la communication (en américain ICT,
information and communication technology).
Le mot communication tend à donner une importance excessive aux échanges et aux accès, par rapport aux contenus
des bases de données de connaissances, dans une optique knowledge management.
C'est la raison pour laquelle certains experts, comme Bernard Besson, préfèrent employer l'expression TICC
, pour technologies de l'information, de la communication et de la connaissance.
Notes
Il existe plusieurs termes anglais pour désigner le concept d'« informatique ». Certains comme automatic data processing ou electronic data processing et
leur abréviation reflètent une vision plus ancienne et
ne sont plus guère utilisés. Même data processing est parfois considéré par
certains informaticiens professionnels comme propre à la langue des administrateurs et des non-informaticiens
(dans le jargon du métier, costards ou, en anglais, suits). Quant à informatics, il est davantage employé en Europe, selon certaines sources.
On trouve d'autres variantes peu attestées; c'est le cas de computing science, electronical data processing, ordinatique,
technologie des ordinateurs ou science de l'informatique.
Il faut dire que les concepts et la terminologie ont suivi l'évolution de la réalité. Ainsi, les ordinateurs, qui effectuaient autrefois des opérations
relativement simples de calcul sur des données, traitent de façon de plus en plus complexe, aujourd'hui, de l'information autrement plus significative
(connaissances et savoir-faire). De la désignation informatique, on est passé peu à peu à celle de technologies de l'information. On voit poindre,
dans certains milieux, des appellations comme technologies ou nouvelles technologies de l'information et de la communication qui céderont peut-être
leur place à une autre dénomination qui reflétera
le traitement des connaissances, des savoir-faire et même de « l'intelligence ».
Progressivement le terme informatique glisse vers un sens plus restreint relié aux aspects techniques.
Domaines d'application de l'informatique
Le traitement de l'information s'appliquant à tous les domaines d'activité, on pourra les trouver associés au mot informatique.
Ainsi on pourra parler d'informatique médicale quand
ces outils sont utilisés par exemple dans l'aide au
diagnostique, et ce champ d'activité se rapportera plutôt à l'informatique scientifique décrit ci-dessous; ou bien on parlera d'informatique bancaire; il s'agira alors soit des systèmes d'information
bancaire qui relèvent plutôt de l'informatique de
gestion, de la conception et de l'implantation de produits financiers qui relève plutôt de l'informatique scientifique et des mathématiques, ou encore de l'automatisation des salles de marché qui en partie relève de l'informatique temps réel.
On peut schématiquement distinguer les grands différents types suivants :
-
L'informatique de gestion : elle consiste à piloter les processus de gestion et de management dans les entreprises, dans tous les domaines d'activité : payes (employés, ouvriers, cadres) et gestion des ressources humaines, administration des ventes, gestion de la relation client,
-
gestion de la production, gestion des achats, mercatique, finances… Ce domaine est de loin celui qui représente la plus forte activité, ce qui n'a pas toujours été perçu en France.
-
Jusqu'en 1965, la mécanographie, et par la suite la simple mécanisation de la mécanographie connue sous le vocable « informatique fiabilisée par la transistorisation », savait faire tous ce qui est énuméré ci-dessus, sauf de la comptabilité en grandes entreprises.
-
Gilbert Bitsch, chef de projets à la SACM de Mulhouse, réalisa le premier positionnement de compte sur une tabulatrice IBM 421, réalisation qui ouvrait la comptabilité à l'informatique.
-
Cette révolution en gestion mit fin à l'ère des ateliers de machines comptable en grandes entreprises.
-
L'informatique scientifique, qui consiste à aider les ingénieurs de conception dans les domaines de l'ingénierie industrielle à concevoir et dimensionner des équipements à l'aide de programmes de calcul : réacteurs nucléaires, avions, automobiles (langages souvent employés :
-
historiquement le Fortran
-
, de plus en plus concurrencé par C et C++). L'informatique scientifique est surtout utilisée dans les bureaux d'étude et les entreprises d'ingénierie industrielle car elle permet de simuler des scénarii de façon rapide et fiable.
-
La Scuderia Ferrari s'est équipée en 2006 avec un des plus puissants calculateurs du monde afin de permettre les essais numériques de sa formule 1 et accélérer la mise au point de ses prototypes.
-
L'informatique temps réel : elle consiste à définir les logiciels de pilotage de systèmes en prise directe avec le monde physique : historiquement d'abord dans l'aéronautique,
-
le spatial, l'armement, le nucléaire, mais maintenant universellement
-
répandu avec la miniaturisation des circuits : automobile, machine à laver, etc.
-
L'ingénierie des connaissances (en anglais knowledge management) : il s'agit d'une forme d'ingénierie informatique qui consiste à gérer les
-
processus d'innovation, dans tous les domaines, selon des modèles assez différents de ceux jusqu'alors employés en informatique de gestion. Cette forme d'ingénierie permettra
-
peut-être de mieux mettre en cohérence les trois domaines gestion, temps réel, et scientifique dans l'organisation des entreprises. Elle s'intéresse plus au contenu et à la
-
qualité des bases de données et de connaissances qu'à l'automatisation des traitements.
-
Elle se développe déjà beaucoup aux États-Unis,
-
mais ceci n'est pas encore tout-à-fait perçu en France.
-
Il faut enfin citer les applications du renseignement (intelligence en anglais) économique et stratégique, qui font appel aux technologies de l'information,
-
notamment dans l'analyse du contexte, pour la recherche d'informations
-
(moteurs de recherche). D'autre part, dans une optique de
-
développement durable, il est nécessaire de structurer les relations avec les parties prenantes, ce qui fait appel à
-
d'autres techniques telles que
-
les protocoles d'échange et les moteurs de règles.
Histoire
Les origines
Depuis des millénaires, l'Homme a créé et utilisé des outils l'aidant à calculer (abaque, boulier, etc.).
Parmi les algorithmes les plus anciens, on compte des tables
datant de l'époque d'Hamurabi (env. -1750).
Les premières machines mécaniques apparaissent entre le XVIIe et le XVIIIe siècle.
La première machine à calculer mécanique réalisant les quatre opérations aurait été celle de Wilhelm Schickard au XVIe siècle,
mise au point notamment pour aider Kepler à établir les tables rudolphines d'astronomie.
En 1642, Blaise Pascal réalisa également une machine à calculer mécanique qui fut pour sa part commercialisée et dont neuf
exemplaires existent dans des musées comme celui des Arts et métiers et dans des collections privées (IBM).
La découverte tardive de la machine d'Anticythère montre que les Grecs de l'Antiquité eux-mêmes avaient commencé à réaliser des mécanismes
de calcul en dépit de leur réputation de mépris
général pour la technique (démentie d'ailleurs par les travaux d'Archimède).
Cependant, il faudra attendre la définition du concept de programmation (illustrée en premier par Joseph Marie Jacquard avec ses métiers à tisser
à cartes perforées, suivi de Boole et Ada Lovelace pour
ce qui est d'une théorie de la programmation des opérations mathématiques) pour disposer d'une base permettant d'enchaîner des
opérations élémentaires de manière automatique.
La mécanographie
Une autre phase importante fut celle de la mécanographie, avec l'apparition des machines électromécaniques
alimentées par cartes perforées de l'Allemand Hollerith, à la fin du XIXe siècle.
Elles furent utilisées à grande
échelle pour la première fois par les Américains lors du recensement de 1890 aux États-Unis, suite à l'afflux des immigrants dans ce pays lors de la seconde
moitié du XIXe siècle. Les Allemands étaient probablement bien équipés en machines mécanographiques avant la Seconde Guerre mondiale.
Ces équipements, installés par ateliers
composés de trieuses, interclasseuses, perforatrices,
tabulatrices et calculatrices connectées à des perforateurs de cartes ont dû leur apporter une certaine
supériorité pour la construction des armements.
Toutefois, ceci n'a pas été examiné en
profondeur par les historiens. Leur moindre mérite n'est pas la réussite du programme.
On ne pouvait pas encore parler d'informatique, car les traitements étaient exécutés à partir de techniques électromécaniques
et basés sur l'usage de lampes radio ; anodes, cathodes, triodes etc.
La chaleur dégagée par ces lampes rendait ces ensembles peu fiables.
Science des nombres et Système de numération
Examen de quelques systèmes numériques de jadis à nos jours.
-
Du système binaire inventé par G. Boole, utilisé par les ordinateurs au dénombrement restreint du 1-2-3 pour dire beaucoup à partir de 4 en usage chez les primitifs, les hommes ont utilisé des systèmes numériques qui indiquent le degré de culture ou de vigilance des peuples auprès desquels ils étaient en application.
-
Les Romains se servaient de leurs 10 doigts et pratiquaient le système décimal pour constituer des centuries de légionnaires. Ils marquaient les milliers par un cercle barré verticalement. Déformé ce signe a donné le « M » pour désigner 1 000 et la moitié de ce symbole pour le « D » pour désigner 500. Le système décimal en application chez les Romains sans la connaissance des chiffres arabes, ne facilitait pas la tâche arithmétique des intendants chargés de faire les comptes.
-
Les Celtes pour leur part allaient jusqu'à utiliser en plus les dix doigts de pieds, ce qui élargissait leur système numérique à 20. Les derniers Celtes sur le continent, de nos jours, utilisent encore ce système pour apprécier toutes les valeurs quantitatives de la vie courante.
-
Lors d'un safari poils, plumes et aux phacochères au Sénégal, on peut découvrir le système quincal utilisé par les Sérères. Pourquoi émanant des Sérères ? Parce que les Sérères incarnent la tribu de chasseurs au Sénégal. La population sénégalaise comprend quatre ethnies principales. En plus des Sérères, on y rencontre des Wolofs l'ethnie dominante, leur langue étant reconnue langue nationale et le français fait office de langue officielle. Les Toucouleurs et les Peuls forment les deux autres ethnies. Aux Sérères incombaient traditionnellement le rôle de pourvoyeurs de gibier à l'égard des autres ethnies, elles de culture agricole et pastorale. Par hordes, les Sérères effectuaient des déplacements en chassant de village en village armé de courts bâtons, d'arcs et de lances. Le gibier abattu ; pintades, perdreaux et pigeons, l'étaient par ce bâton qu'ils lançaient en virtuose dès que le gibier traqué prenait son envol dans la savane. Phacochères et autres bêtes à sabots étaient chassés à l'arc, à la lance et achevés à la sagaie ou à l'épieu par les porteurs et les traqueurs. Le système numérique originel des Sérères est quincal. Il est aisé de deviner le pourquoi de cette pratique. Dans l'exécution de leur activité, l'une des mains seulement était disponible pour des occupations annexes. L'autre restait à serrer toujours une arme, le bâton, la sagaie, la lance... pour compter. Den - niet - nient - njar - gurun ; a cinq se fait le report : gurun-den etc. Le produit de la chasse était troqué contre des produits agricoles, textiles, en somme contre des produits de première nécessité pour ces chasseurs ambulants qui cultivaient le souci de se faire respecter. Les bijoux et la céramique occupaient une place de choix dans le troc, ces dames occupent encore et toujours lors de rencontres de tout genre le premier rang pour ne pas figurer parmi les laissés-pour-compte.
-
Les Juifs pratiquaient le système numéral le plus élaboré. En exploitant les 12 phalanges des huit doigts décomptés à l'aide des pouces. Ils ont institué la grosse, une unité de mesure encore en vigueur pour certaines marchandises. On y arrive en se servant par exemple du pouce de la main gauche pour décompter les phalanges. Arrivé à la dernière phalange du petit doigt, 4 × 3, permettent d'enregistrer la première douzaine à l'aide du pouce de la main droite qui pointe sur la première phalange de l'index de la main droite. Ce système permet ainsi de compter jusqu'à 144.
Des tablettes d'argile servaient de document aux scribes, assis sur les quais de débarquements pour les prises en charge des arrivages ou dans les entrepôts lors de la sortie ou de l'entrée des marchandises. Le Romain marquait d'un trait à 10, le Celte à 20 et le juif à 144 arrivé à chaque fin de son système numéral pour enregistrer jusqu'à la dernière pièce les mouvements à enregistrer.
George Boole, mathématicien anglais (1815-1864), fut l’inventeur du système binaire. Sans son système, il n'y aurait pas d'ordinateurs transistorisés qui fonctionnent grâce à des 0 et des 1, qui permettent d'aller en calculs à l'infini.
L'informatique moderne
L'informatique est donc un domaine fraîchement développé, même s'il trouve ses origines dans l'antiquité (avec la cryptographie) ou dans la machine à calculer de Blaise Pascal, au XVIIe siècle. Ce n'est qu'à la fin de la Seconde Guerre mondiale qu'elle a été reconnue comme une discipline à part entière et a développé des méthodes, puis une méthodologie qui lui étaient propres.
Son image a été pendant quelque temps surfaite : parce que les premiers à programmer des ordinateurs avaient été des ingénieurs rompus à la technique des équations différentielles (les premiers ordinateurs, scientifiques, étaient beaucoup utilisés à cette fin), des programmeurs sans formation particulière, parfois d'ailleurs issus de la mécanographie, cherchaient volontiers à bénéficier eux aussi de ce label de rocket scientist afin de justifier des salaires rendus confortables par :
-
le prix élevé des ordinateurs de l'époque (se chiffrant en ce qui serait des dizaines de millions d'euros aujourd'hui compte-tenu de l'inflation, il reléguait au second plan les considérations de parcimonie sur les salaires) ;
-
l'aspect présenté comme peu accessible de leur discipline et un mythe de difficulté mathématique entretenu autour. En fait, les premiers ordinateurs ne se programmaient pas de façon très différente de celle des calculatrices programmables utilisées aujourd'hui dans les lycées et collèges, et maîtrisées par des élèves de quatorze ans mais le domaine était nouveau et l'algorithmique nécessite un certain degré de concentration associé, peut-être à tort, à la réflexion pure.
L'émergence d'un aspect réellement scientifique dans la programmation elle-même (et non dans les seules applications scientifiques que l'on programme) ne se manifeste qu'avec la série The Art of Computer Programming de Donald Knuth, professeur à l'Université de Stanford, à la fin des années 1960, travail monumental encore inachevé en 2004. Les travaux d'Edsger Dijkstra, Niklaus Wirth et Christopher Strachey procèdent d'une approche également très systématique et elle aussi quantifiée.
On demandait à Donald Knuth dans les années 1980 s'il valait mieux selon lui rattacher l'informatique (computer science) au génie électrique — ce qui est souvent le cas dans les universités américaines — ou à un département de mathématiques. Il répondit : « Je la classerais volontiers entre la plomberie et le dépannage automobile » pour souligner le côté encore artisanal de cette jeune science.
Toutefois, la forte scientificité des trois premiers volumes de son encyclopédie suggère qu'il s'agit là plutôt d'une boutade de sa part. Au demeurant, la maîtrise de langages comme Haskell, Ocaml ou même APL demande un niveau d'abstraction tout de même plus proche de celui des mathématiques que des deux disciplines citées.
La miniaturisation des composants et la réduction des coûts de production, associées à un besoin de plus en plus pressant de traitement des informations de toutes sortes (scientifiques, financières, commerciales, etc.) a entraîné une diffusion de l'informatique dans toutes les couches de l'économie comme de la vie de tous les jours.
En France, l'informatique a commencé à vraiment se développer seulement dans les années 1960, avec le Plan Calcul. Beaucoup de choses ont été dites sur ce plan. Comme souvent en Histoire, il peut y avoir des erreurs d'interprétation.
Approche fonctionnelle
Comme énoncé ci-dessus, l'informatique est le traitement automatisé de données par un appareil électronique : l'ordinateur ; les germanophones parlent de elektronische Datenverarbeitung / EDV (« traitement électronique de données »), les anglophones d'information technology / IT (« technologies de l'information »), c'est-à-dire :
-
données ou informations : in fine, l'ordinateur manipule des nombres (d'où le terme anglais computer, littéralement « calculateur »), mais ces nombres peuvent représenter divers types d'informations :
-
des... nombres bien évidemment, dans le cas de calculs scientifiques (flottants) ou comptables (décimal, ou binaire entier)... ;
-
un texte, des lettres (caractères), que l'on peut mettre en forme avec un traitement de texte, imprimer, envoyer par courrier électronique... ;
-
du dessin vectoriel (CAO, logiciels d'illustration, et de typographie) ;
-
des images statiques (photographies) ou animées (vidéo), des hologrammes ;
-
des sons, enregistrés (technique du direct to disk) ou bien fabriqués par l'ordinateur (synthétiseur), que ce soient des bruitages, de la musique (cf. musique et informatique) ou de la parole ;
-
la conversion de ces informations en suite de nombres pose le problème du format des données, du codage et des formats normalisés (par exemple, représentations des nombres entiers ou à virgule flottante, encodage des textes en ASCII, Unicode, format TeX ou RTF et polices PostScript ou TrueType pour les textes, formats bitmap, TIFF, JPEG, PNG, etc. pour les images fixes, formats QuickTime, MPEG pour les vidéos, interface MIDI pour la musique...).
-
automatisé : l'utilisateur n'intervient pas, ou peu, dans le traitement des données ; le traitement est défini dans un programme qui se déroule tout seul, l'utilisateur se contente de fournir des paramètres de traitement ; le programme automatique se déroule selon un algorithme, l'établissement de ce programme est le domaine de la programmation.
-
traitement : ces données sont :
-
créées :
-
nombres : acquisition automatique de données d'une expérience avec un ordinateur ;
-
texte : taper un texte au clavier ;
-
images : dessins réalisés à la souris ou sur une tablette graphique, synthèse d'image (pour présenter un projet – objet fictif en cours de conception –, imagerie médicale, dessin artistique – infographie –, film d'animation ou pixilation) ou numérisation d'une image existante (scanner, appareil photographique numérique) ou d'images animées (caméra numérique, webcam) ;
-
sons enregistrés (microphone) ou recréés à partir d'une partition virtuelle (synthétiseur) ou d'un texte (synthèse vocale).
-
analysées :
-
nombres : l'analyse des nombres relève du domaine concerné (mathématiques, physique, économie...) ;
-
texte : rechercher les occurrences de mots dans un texte pour en tirer des statistiques, aide à la correction orthographique et/ou grammaticale, et, plus généralement, traitement automatique des langues (TAL) ;
-
images : on peut vouloir identifier un objet (reconnaissance de forme, reconnaissance des caractères ou OCR), ou bien déterminer la surface couverte par une couleur (par exemple pour quantifier une surface recouverte) ;
-
sons : analyse spectrale, reconnaissance vocale.
-
modifiées :
-
nombres : calculs ;
-
texte : modification d'un texte existant, traduction automatique dans une autre langue (ou langage de programmation) ;
-
images : modification du contraste, de la luminosité, des couleurs, effets spéciaux ;
-
sons : application d'effets (réverbération, distorsion, ajustement de la hauteur) ;
-
-
comme il existe, selon les programmes et les besoins, une grande variété de codages possibles pour représenter chaque type d'information, beaucoup de traitements consistent à convertir les données d'un format vers un autre...
Approche organisationnelle
L'informatique pour l'organisation est un élément d'un système de traitement d'information (les entrées peuvent être des formulaires papier par exemple) et d'automatisation. Depuis Henry Ford, l'automatisation des tâches ayant été identifiée comme un avantage concurrentiel, la question est : que peut-on automatiser ?
Autant il est relativement facile d'automatiser des tâches manuelles, autant il est difficile d'automatiser le travail intellectuel et parfois créatif. L'approche de l'informatique dans une organisation commence donc par l'élucidation des processus, c'est-à-dire la modélisation du métier. Après validation, la MOA (Maîtrise d'Ouvrage) fournit les spécifications fonctionnelles de (l'ouvrage) qui vont servir de référence dans la conception pour la MOE (Maîtrise d'œuvre).
Cette conception sera alors effectuée dans le respect d'un Cycle de développement qui définit les rôles et responsabilités de chaque acteur. Ainsi, les échanges entre MOA et MOE ne se résument pas à la maîtrise des chantiers (tenue des délais et des coûts, et validation des livrables), la MOA et la MOE sont garantes (éventuellement responsables sur un plan juridique) de la cohérence des systèmes d'information, et de l'adéquation des solutions informatiques avec les problèmes utilisateurs finaux initialement constatés.
Matériel
On utilise également le terme anglais hardware (littéralement « quincaillerie ») pour désigner le matériel informatique. Il s'agit de tous les composants que l'on peut trouver dans :
1. Les ordinateurs et leurs périphériques : un ordinateur est un ensemble de circuits électroniques permettant de manipuler des données sous forme binaire, représentées par des variations de signal électrique. Il existe différents types d'ordinateurs :
Un IBM PC 5150 datant de 1981, Système d'exploitation IBM-DOS 2.0
Des micro-ordinateurs particulièrement puissants et chers, utilisés uniquement pour des besoins professionnels pointus (conception assistée par ordinateur). Ce terme était particulièrement en vogue dans les années 1980-1990. Depuis les années 2000, il n'est guère possible de concevoir une station de travail plus puissante qu'un micro-ordinateur haut de gamme ;
Une armoire abrite l'unité centrale et l'alimentation, une ou plusieurs autres les périphériques de stockage (disque dur, sauvegarde) tandis que les moyens de communication et réseau (routeur, hubs, modem) sont dans la même pièce, mais dans des racks séparés. Une console d'administration (écran, clavier, imprimante) est généralement située dans ce même local ;
Ce sont des ordinateurs qui proposent souvent à des entreprise un endroit de stockage universel pour les utilisateurs connectés aux serveurs. Les serveurs peuvent effectuer des tâches telles que : servir de Pare-Feu, héberger un serveur web (page internet partagée sur le World Wide Web) ou tout simplement pour partager un nombre important d'imprimantes et de périphériques. Les prix des Serveurs sont élevés car le Serveur a été conçu pour rester allumé en permanence, alors le matériel est durable et performant. ;
Ce sont des ordinateurs de poche proposant des fonctionnalités liées à l'organisation personnelle (agenda, calendrier, carnet d'adresse, etc.). Ils peuvent être reliés à Internet par différents moyens (réseau Wifi, Bluetooth, etc.). ;
Ce sont des ordinateurs qui réunissent tous les périphériques et le matériel pour donner la tâche à l'ordinateur de capter la télévision, écouter de la musique et tout ca sur son écran de télévision, avec généralement une manette à distance. Ce genre de PC est un divertissement familial et est très accessible, bien que leurs prix ont eu tendance à être hauts ces derniers temps, ce type d'ordinateur devient de plus en plus accessible à tous. ;
Dans le domaine de l'informatique embarquée : téléphone, électroménager, automobile, armements militaires, etc. Les cartes à puces, ou l'informatique industrielle.
Logiciel
Le logiciel désigne la partie à première vue immatérielle de l'informatique, l'organisation et le traitement de l'information : les programmes. On s'est en effet vite rendu compte que des machines techniquement très avancées pour leur époque, comme la Bull Gamma 60, restaient invendables tant qu'on n'avait pas de programmes à livrer pour les rendre immédiatement opérationnelles. IBM lança entre 1968 et 1973 une sorte d'ancêtre du logiciel libre avec son ordinateur 1130, politique qui assura à celui-ci par effet boule de neige un succès immédiat et planétaire, mais les conclusions d'un procès antitrust lui interdirent de distribuer bénévolement du logiciel.
Le monde des mainframes classe les logiciels en catégories suivantes :
-
systèmes d'exploitation ;
-
bases de données, comme DB2, Ingres ou Oracle ;
-
programmes de communication, comme NCP ou RSCS ;
-
moniteurs de télétraitement ;
-
systèmes transactionnels, comme CICS ou openUTM ;
-
systèmes de temps partagé, utilisés pour le calcul ou le développement ;
-
compilateurs traduisant les langages en instructions machine et appels système ;
-
tout le reste entrait en une catégorie nommée Logiciels applicatifs.
Plus simplement on distingue généralement trois types de logiciels (par ordre de proximité du matériel) :
On classe aussi les logiciels en libre et propriétaire, bien que les deux soient parfois panachés à des degrés divers. Certains ont une fonction bureautique ou multimédia comme par exemple les jeux vidéo. Certains logiciels ont acquis des noms connus de tous.
Le noyau du système d'exploitation crée le lien entre le matériel et le logiciel. Un logiciel, quand il est fourni sous sa forme binaire, serait utilisable uniquement avec un système d'exploitation donné (car il en utilise les services), et ne fonctionnerait que sur un matériel spécifique (car il en utilise le code d'instructions). Une conception plus récente, depuis le milieu de années 1980, consiste à distribuer les logiciels tous binaires confondus, et à les munir d'un système de licences par jetons ou tokens permettant l'usage de N copies simultanées du logiciel sur le réseau, tous matériels confondus. Cette approche est majoritaire dans le monde UNIX.
À l'initiative de Richard Stallman et du GNU, à partir de 1985, une mouvance de programmeurs refuse cette logique propriétaire et ceux-ci se muent en concepteurs inventifs pour se lancer dans le développement d'outils et de bibliothèques système libres et compatibles avec le système UNIX. C'est pourtant le projet indépendant Linux, initié par Linus Torvalds, basé sur les travaux et les outils du GNU, qui aboutira dans la création d'un système d'exploitation complet et libre appelé GNU/Linux.
Une bonne partie des logiciels actuels fonctionnent dans un environnement graphique pour interagir avec l'utilisateur. La diversité des systèmes informatiques a fait apparaître une technique visant à combiner le meilleur de chacun de ces univers : l'émulateur. Il s'agit d'un logiciel permettant de simuler le comportement d'un autre système dans celui que l'on utilise,
-
soit pour qu'une machine semble être une autre (voir IBM 1130),
-
soit pour simuler le comportement d'un système d'exploitation (par exemple DOS ou Windows sous GNU/Linux).
Le terme anglais est software, à l'origine un jeu de mot entre hardware (« quincaillerie », pour désigner le matériel) et l'opposition soft/hard (mou/dur), opposition entre le matériel (le dur) et l'immatériel (le mou). Les traductions françaises matériel et logiciel rendent parfaitement cette opposition et cette complémentarité.