Problème informatique

Problème informatique

Informatique

informatique - contraction d´information et automatique - est le domaine d'activité scientifique, technique et industriel en rapport avec le traitement automatique de l'information par des machines telles que les ordinateurs, les consoles de jeux, les robots, etc.

Le terme informatique désigne à l'origine l´informatique théorique : un ensemble de sciences formelles qui ont pour objet l'étude de la notion d'information et des procédés de traitement automatique de celle-ci. En font partie, par exemple, l'algorithmique, le traitement du signal, la calculabilité et la théorie de l'information.

L'automatisation du traitement d'informations est bien plus ancienne que l'invention de l'ordinateur. Les premières machines de traitement automatisé étaient des machines mécaniques construites au XVIIe siècle et, avant cela, les premiers algorithmes datent de l'antiquité.

« La science informatique n'est pas plus la science des ordinateurs que l'astronomie n'est celle des télescopes »[1]. (citation d´Edsger Dijkstra)

Apparu dans les années 1950, le secteur d'activité des techniques de l'information et de la communication est lié à la fois à l'informatique, l'électronique et la télécommunication. Les activités sont la production de matériel informatique - machines et pièces détachées, et de logiciels - procédés de traitement - qui sont destinés à l'acquisition, au stockage, à la transformation, la transmission et la restitution automatique d'informations. Le secteur fournit également de nombreux services liés à l'utilisation de ses produits : enseignement, assistance, surveillance et entretien.

Les techniques de l'information sont un des secteurs d'activités majeurs au Japon, en Europe et aux États-Unis, il existe aujourd'hui en 2009 de nombreux constructeurs de matériel informatique, qui dépendent directement des fabricants de semiconducteurs. Il existe également de nombreux éditeurs de logiciel qui dépendent des éditeurs d'environnement de développement et de langage de programmation. L'adhésion aux standards industriels, aux normes et aux techniques par les différents fournisseurs permettent aux produits de fonctionner ensemble (compatibilité).

Sommaire

Étymologie

Le mot informatique est une création effectuée en même temps que celle de la Compagnie Générale d'Informatique (CGI)[2].

Les anglophones utilisent le terme computer science pour la science (informatique) et la science appliquée (ainsi que l'étude de sa mise en œuvre)[3][4][5]. Par opposition à information technology (autrefois data processing) qui regroupe toutes les technologies permettant de traiter les informations .

Le terme informatique est utilisé pour la première fois en France 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 »[6].

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 la science du traitement de l'information.

Le terme allemand Informatik est créé en 1957 par Karl Steinbuch qui a publié un essai intitulé Informatik: Automatische Informationsverarbeitung (Informatique : traitement automatique de l'information)[7].

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[réf. nécessaire]. 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 fussent 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[réf. nécessaire].

Évolution du sens

Le sens du mot informatique, qui désigne initialement la science du calculateur (en anglais computer science) a évolué vers un sens populaire beaucoup plus large qui inclut de nombreuses activités en rapport avec les technologies de l'information.

Bernard Lang effectue une analogie au secteur de l'automobile, et dit :

« nul ne confond la thermodynamique, la technologie des moteurs à explosion et le mode d'emploi d'un véhicule automobile.  »

Pour éviter toute confusion, les milieux académiques utilisent les termes science informatique, informatique fondamentale ou informatique théorique pour désigner la science du calculateur. Tandis que les milieux économiques utilisent le terme technologie de l'information ou technologie de l'information et de la communication pour désigner le secteur industriel. L'utilisation des appareils est parfois assimilée à de la conduite, comme dans la European Computer Driving License (traduction : permis de conduire un ordinateur)[8],[9].

Traduction en anglais

L'usage contemporain du terme "informatique" recouvre deux champs disciplinaires distincts dans les pays anglo-saxons : les sciences de l'ordinateur (computer science) et l'"informatics" (dont les sciences de l'information sont un sous-domaine)[10][11]. Le domaine de l'"informatics" s'intéresse à la structure, les algorithmes, le comportement et les interactions des systèmes naturels ou artificiels qui stockent, traitent et échangent de l'information. Ce champ disciplinaire reste encore largement méconnu en France en tant que tel pour quatre raisons principales :

  • le brevet sur le nom "informatics" déposé par Bauer et réservé à sa société qui a freiné son utilisation,
  • l'apparition dans les années 2000 de cursus de x-informatique (bioinformatique, chemoinformatique…) vus comme la conjonction des sciences de la computation et des technologies de traitements massifs de données et qui ont masqué la spécificité de la discipline,
  • la confusion fréquente entre les NTIC, la science de l'information et la théorie de l'information,
  • la nature de l'enseignement de l'informatique en France qui considère souvent l'informatique comme un sous-domaine des mathématiques.

Cependant, la situation pourrait évoluer rapidement avec l'apparition de formations où cette distinction est fondamentale, en sciences cognitives notamment.

Histoire

Article détaillé : Histoire de l'informatique.

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'Hammurabi (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).[réf. souhaitée]

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 dans le cas particulier des travaux militaires d'Archimède)[12].

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'Américain Herman Hollerith, qui savaient tout faire sauf de la comptabilité en grandes entreprises (voir Gilbert Bitsch : Liste d'informaticiens et précurseurs de l'informatique), et les machines comptables à doubles entrées, inventées par Hollerith (voir l'autre aspect de la mécanographie) à la fin du XIXe siècle. Les trieuses et les tabulatrices 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 équipés de machines mécanographiques avant la Seconde Guerre mondiale. Ces équipements étaient installés par ateliers composés de trieuses, interclasseuses, perforatrices, tabulatrices et calculatrices connectées à des perforateurs de cartes. Les traitements étaient exécutés à partir de techniques électromécaniques utilisant aussi des lampes radio comme les triodes . La chaleur dégagée par ces lampes attirait les insectes, et les bugs (terme anglais pour insectes) étaient une cause de panne courante. Ce n'est que suite à l'invention du transistor en 1947 et son industrialisation dans les années 1960, que les appareils informatiques ont pris leur forme finale, celle qu'ils ont encore aujourd'hui.

L'informatique moderne

L'ère de l'informatique moderne commença durant la Seconde Guerre mondiale, avec l'invention du transistor, puis du circuit intégré quelques années plus tard. L'utilisation de ces composants électroniques à la place des relais électromécaniques et de tubes à vide ont permis de rendre les appareils à la fois plus petits, plus complexes, plus économiques et plus fiables.

Au même moment, le mathématicien Alan Turing théorise le premier ce qu'est un ordinateur, avec son concept de machine universelle de Turing.

Le domaine de l'informatique est donc un domaine récent, basé sur des sciences originaires de l'antiquité (la cryptographie) et des expériences menées au XVIIe siècle, comme par exemple la machine à calculer de Blaise Pascal. Ce n'est qu'à la fin de la Seconde Guerre Mondiale que l'informatique a été reconnue comme un domaine scientifique et technologique à part entière.

La série de livres The Art of Computer Programming de Donald Knuth, sortie à partir des années 1960, fait ressortir les aspects mathématiques de la programmation informatique[13]. Edsger Dijkstra, Niklaus Wirth et Christopher Strachey travaillent et publient dans le même sens.

On demandait à Donald Knuth dans les années 1980 s'il valait mieux selon lui rattacher l'informatique fondamentale 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, le fort caractère scientifique des trois premiers volumes de son encyclopédie suggère qu'il s'agit là d'une boutade de sa part.

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.

Des études en psychologie cognitive et en ergonomie réalisées dans les années 1970 par Xerox sont à l'origine de l'usage des interfaces homme-machine graphique en vue de simplifier l'utilisation des outils informatiques.

La démocratisation de l'utilisation d'Internet - réseau basé sur ARPANET - depuis 1995, a amené les outils informatiques à être de plus en plus utilisés comme moyen de télécommunication, à la place des outils tels que la poste ou le téléphone.

En France, l'informatique a commencé à vraiment se développer seulement dans les années 1960, avec le Plan Calcul. Depuis lors, les gouvernements successifs ont mené des politiques diverses en faveur de la Recherche scientifique, l'Enseignement, la tutelle des Télécommunications, la nationalisation d'entreprises clés.

La science informatique

Article détaillé : Informatique théorique.

La science informatique est une science formelle, son objet d'étude est le calcul[14], calcul au sens large, c'est-à-dire non limité exclusivement à la manipulation des nombres, mais de tout type d'information formelle que l'on peut traiter de manière systématique tel que : textes, couleurs, données, valeurs logiques... Selon les contextes, on parle d'un calcul, d'un algorithme, d'un programme, d'une procédure, ...

Un terme qui semble émerger pour se référer à la « science de l'informatique » est « Science & Technologies de l'Information et de la Communication » (STIC). Ce terme apparait en effet plus proche du terme anglais Computer Sciences. Par exemple un institut de recherche comme l'INRIA, un centre de recherche en informatique français, utilise ce terme.

Calculabilité

Article détaillé : Calculabilité.

Un algorithme est une manière systématique de procéder pour arriver à calculer un résultat.[15] Un des exemple classique est l'algorithme d'Euclide du calcul du «Plus grand commun diviseur» (PGCD) qui remonte au moins à 300 ans av. J.-C. Mais il s'agit déjà d'un calcul complexe, encore avant cela le simple fait d'utiliser un abaque demande d'avoir réfléchi sur un moyen systématique (et correct) d'utiliser cet abaque pour réaliser des opérations arithmétiques.

Des algorithmes existent donc depuis l'antiquité, mais ce n'est que depuis les années 1930, avec les débuts de la théorie de la calculabilité que les scientifiques se sont posé la question «qu'est ce qu'un modèle de calcul ?» et «est-ce que tout est calculable ?». Une des premières choses a été pour les scientifiques de répondre de manière formelle à ces deux questions.

Il existe de nombreux modèles de calcul mais les deux plus centraux sont les «machine de Turing» et le «lambda calcul». Ces deux systèmes formels définissent des objets qui peuvent représenter ce qu'on appelle de procédures de calcul, des algorithmes ou des programmes. Ils définissent ensuite un moyen systématique d'appliquer ces procédures, c'est-à-dire de calculer.

Le résultat le plus important de la calculabilité est probablement la thèse de Church[16] qui postule que tous les modèles de calcul ont la même puissance. C'est-à-dire qu'il n'existe pas une procédure que l'on pourrait exprimer dans un modèle mais pas dans un autre.

Un deuxième résultat fondamental est l'existence de fonctions incalculables. Une fonction étant ce que calcule une procédure ou un algorithme (ceux-ci étant désignant plutôt comment faire le calcul). On peut montrer qu'il existe des fonctions, bien définie, pour lesquelles il n'existe pas de procédure pour les calculer. L'exemple le plus connu étant probablement le problème de l'arrêt qui montre qu'il n'existe pas de machine de Turing calculant si une autre machine de Turing donnée s'arrêtera (et donc donnera un résultat) ou non. Selon la thèse de Church-Turing, tous les modèles de calcul sont équivalent par conséquent ce résultat s'applique aussi aux autres modèles, ce qui inclut les programmes et logiciels que l'on peut trouver dans les ordinateurs courants. A noter qu'il existe un lien très fort entre les fonctions que l'on ne peut pas calculer et les problèmes que l'on ne peut pas décider (voir Décidabilité et indécidabilité).

Algorithmique

Article détaillé : Algorithmique.

Une fois la notion de calcul définie, la suite a été de se consacrer à l'algorithmique, c'est-à-dire l'étude des algorithmes. Le but est trouver effectivement des procédures correctes et de les comparer entre elles. En effet, tous les algorithmes ne se valent pas: le nombre d'opérations nécessaires pour arriver au résultat diffère d'un algorithme à l'autre. Ce nombre d'opération, appelé la complexité algorithmique est le sujet de la Théorie de la complexité des algorithmes, qui constitue une préoccupation essentielle en algorithmique.

La complexité algorithmique sert en particulier à déterminer comment le nombre d'opérations nécessaires évolue en fonction du nombre d'éléments à traiter (la taille des données). L'évolution peut être indépendante de la taille des données, ou parle alors de complexité constante. Ou alors le nombre d'opérations peut augmenter selon un rapport logarithmique, linéaire, polynomial ou exponentiel (dans l'ordre décroissant d'efficacité et pour ne citer que les plus répandues). En pratique une augmentation exponentielle de la complexité aboutit très rapidement à des durées de calcul déraisonnable pour une utilisation en pratique. Alors que pour une complexité polynomiale (ou meilleure), le résultat sera obtenu après une durée de calcul réduite, même avec de grandes quantités de données.

Nous arrivons maintenant un problème ouvert fondamental en informatique : « P est-il égale à NP ? »[17]

En simplifiant beaucoup : P est «l'ensemble des problèmes pour lesquels on connait un algorithme efficace» et NP «l'ensemble des problèmes pour lesquels on connait un algorithme efficace pour vérifier une solution à ce problème». Et en simplifiant encore plus : existe-t-il des problèmes difficiles ? Des problème pour lesquels il n'existe pas d'algorithme efficace.

Cette question est non seulement d'un grand intérêt théorique mais aussi pratique. En effet un grand nombre de problèmes courants et utiles sont des problèmes que l'on ne sait pas résoudre de manière efficace. C'est d'ailleurs un des problèmes du prix du millénaire et le Clay Mathematical Institute s'est engagé à verser un million de $ aux personnes qui en trouveraient la solution.

Comme nous venons de le dire : c'est un problème ouvert, donc formellement il n'y a pas de réponse reconnue. Mais, en pratique, la plupart des spécialistes s'accordent pour penser que P≠NP, c'est-à-dire qu'il existe effectivement des problèmes difficiles qui n'admettent pas d'algorithme efficace.

Cryptologie

Article détaillé : Cryptologie.

Ce type de problème de complexité algorithmique est directement utilisé en cryptologie. En effet les méthodes de cryptologie modernes reposent sur l'existence d'une fonction facile à calculer qui possède une fonction réciproque difficile à calculer. C'est ce qui permet de chiffrer un message qui sera difficile à décrypter (sans la clé). La plupart des chiffrements (méthode de cryptographie) reposent sur le fait que la procédure de Décomposition en produit de facteurs premiers n'a pas d'algorithme efficace connu. Si quelqu'un trouvait un tel algorithme il serait capable de décrypter la plupart des cryptogrammes facilement. On sait d'ailleurs qu'un calculateur quantique en serait capable, mais ce genre d'ordinateur n'existe pas, en tout cas pour le moment.

Autre

Plus récemment et à la frontière avec la logique mathématique : la Correspondance de Curry-Howard a jetée un pont entre le monde des démonstrations formelles et celui des programmes.

Citons aussi l'étude de la mécanisation des procédés de calcul et de pensée qui a permis de mieux comprendre la réflexion humaine, et apporté des éclairages en psychologie cognitive et en linguistique[18],[19].

Les technologies de l'information et de la communication

Le terme technologies de l'information et la communication désigne un secteur d'activité et un ensemble de biens qui sont des applications pratiques des connaissances scientifiques en informatique ainsi qu'en électronique numérique, en télécommunication, en sciences de l'information et de la communication et en cryptologie.

  • Le matériel informatique (en anglais hardware - littéralement « quincaillerie ») sont des équipements (pièces détachées) en électronique numérique (aussi appelée électronique digitale) servant au traitement des informations par des appareils informatiques.
  • Un logiciel est un ensemble d'informations relatives à un traitement automatisé. Un logiciel contient des suites d'instructions qui décrivent en détail les algorithmes en rapport avec un traitement d'informations ainsi que les informations relatives à ce traitement (valeurs clés, textes, images, …)

Le système de numération binaire est le système utilisé aujourd'hui dans tous les appareils en électronique numérique pour représenter l'information sous une forme qui peut être manipulée par des composants électroniques.

Les appareils informatiques sont équipés de 4 unités qui servent respectivement à entrer des informations, les stocker, les traiter puis les faire ressortir de l'appareil. Les informations circulent entre les pièces des différentes unités par des lignes de communication - les bus. Le processeur est la pièce centrale qui anime l'appareil en suivant les instructions des programmes qui sont enregistrés à l'intérieur.

Les appareils informatiques

logiciel d'ordinateur dans un distributeur de billets

Il existe aujourd'hui une gamme étendue d'appareils capable de traiter automatiquement des informations.

De ces appareils, l’ordinateur est le plus connu, le plus ouvert, le plus complexe et un des plus anciens. L'ordinateur est une machine modulable et universelle qui peut être adaptée à de nombreuses tâches par ajout de matériel et de logiciel.

Un système embarqué est un appareil équipé de matériel et de logiciel informatique, et dédié à une tâche bien précise. Ci-dessous quelques exemples :

  • La console de jeu, est un appareil destiné au jeu vidéo, une activité qu'on peut aussi exercer avec un ordinateur.
  • La calculatrice est le plus ancien appareil informatique, destiné à effectuer automatiquement des calculs mathématiques et scientifiques.
  • Le NAS (acronyme de l'anglais network attached storage) un appareil destiné à stocker des informations, et les mettre à disposition via un réseau informatique.
  • Le distributeur de billets un automate qui distribue sur demande des billets de banque ou des tickets de transport public. Les distributeurs sont souvent des ordinateurs déguisés.
  • Le récepteur satellite. Les émissions de télévision par satellite se font en numérique et sont captées et décodées par des appareils informatiques.
  • Les appareils d’avionique sont des appareils électroniques et informatiques placés dans les avions et les véhicules spatiaux. Ils servent à la navigation, la prévention des collisions et la télécommunication.
  • Le GPS. Un appareil qui affiche une carte géographique, et se positionne sur la carte grâce à un réseau de satellites. Les cartes géographiques sont des informations créées par ordinateur.
  • Le téléphonie mobile : initialement simple appareil analogique, le téléphone portable a évolué, et il est maintenant possible de l'utiliser pour jouer, regarder des vidéos, des images. [20]
  • Les systèmes d'arme sont des dispositifs informatiques qui permettent l'organisation et le suivi des opérations militaires: positionnement géographique, calcul des tirs, guidage des appareils et des véhicules.
  • Les robots sont des appareils électromécaniques qui effectuent des tâches à la place des humains, de manière autonome. L'autonomie est assurée par un appareil informatique placé à l'intérieur ou à l'extérieur du robot.

Le matériel informatique

Article détaillé : Matériel informatique.

Le matériel informatique (en anglais hardware - littéralement « quincaillerie ») est un ensemble d'équipements (pièces détachées) en électronique numérique (aussi appelée électronique digitale, un anglicisme provenant de l'anglais digit: chiffre) qui servent au traitement des informations par des appareils informatiques.

Un appareil informatique est formé d'un assemblage d'équipements de différentes marques. Le respect des normes industrielles par les différents fabricants assurent le fonctionnement de l'ensemble.

Le boîtier et les périphériques

circuit imprimé

L'intérieur du boîtier d'un appareil informatique contient un ou plusieurs circuits imprimés sur lesquels sont soudés des composants électroniques et des connecteurs. La carte mère est le circuit imprimé central, sur lequel sont connectés tous les autres équipements. Les périphériques sont par définition les équipements situés à l'extérieur du boîtier.

Un bus est un ensemble de lignes de communication qui servent aux échanges d'informations entre les composants de l'appareil informatique. les informations sont transmises sous forme de suites de signaux électriques. Chaque impulsion électrique correspond à un bit - la plus petite information manipulable par informatique.

Équipements d'entrée

Les périphériques d'entrée servent à commander l'appareil informatique ou à y envoyer des informations.

L'envoi des informations se fait par le procédé de numérisation.

L'ensemble des dispositifs de commande, et les périphériques de sortie directement associés forment une façade de commande appelée interface homme-machine.

La numérisation est le procédé de transformation d'informations brutes (une page d'un livre, les liste des éléments périodiques, etc.) en suites de nombres binaires pouvant être manipulées par un appareil informatique. La transformation est faite par un circuit électronique. La construction du circuit diffère en fonction de la nature de l'information à numériser.

Stockage d'informations

Une mémoire est un dispositif électronique (circuit intégré) ou électromécanique destiné à conserver des informations dans un appareil informatique.

  • Une mémoire de masse est un dispositif de stockage de grande capacité, souvent électromagnétique (bandes magnétiques, disques durs) destiné à conserver longtemps une grande quantité d'informations.
  • Une mémoire morte est une mémoire faite de circuit intégré où les informations ne peuvent pas être modifiées, (anglais Read Only Memory - ROM). Ce type de mémoire est toujours installé par le constructeur et utilisée pour conserver définitivement des logiciels embarqués.
  • Une mémoire vive est une mémoire faite de circuit intégré où les informations peuvent être modifiées. Les informations non enregistrées sont souvent perdues à la mise hors tension.
  • Un disque dur est une mémoire de masse à accès direct, de grande capacité, composée d'un ou de plusieurs disques rigides superposés et magnétiques. Les premiers disque durs ont été construits en 1956. C'est une des mémoires de masse les plus utilisées sur les ordinateurs.

Processeur

processeur

Un processeur est un composant électronique qui exécute des instructions.

Un appareil informatique contient au minimum un processeur, voire 2, 4, ou plus. Les ordinateurs géants contiennent des centaines, voire des milliers de processeurs.

L'acronyme CPU (en anglais Central Processor Unit) désigne le ou les processeurs centraux de l'appareil. L'exécution des instructions par le ou les CPU influencent tout le déroulement des traitements.

Équipements de sortie

Les équipements de sortie servent à présenter les informations provenant d'un appareil informatique sous une forme reconnaissable par un humain.

Équipements de réseau

Transmission par câbles

Les équipements de réseau sont relatifs à la communication d'informations entre des appareils informatiques. Ils servent à l'envoi d'informations, à la réception, à la retransmission, et au filtrage.

Les communications peuvent se faire par câble, par onde radio, par satellite, ou par fibre optique.

Un protocole de communication est une norme industrielle relative à la communication d'informations. La norme établit autant le point de vue électronique (tensions, fréquences) que le point de vue informationnel (choix des informations, format) ainsi que le déroulement des opérations de communication (qui initie la communication, comment réagit le correspondant, combien de temps dure la communication, …).

Selon le modèle OSI - qui comporte 7 niveaux, une norme industrielle (en particulier un protocole de communication) d'un niveau donné peut être combinée avec n'importe quelle norme industrielle d'une couche située en dessus ou en dessous.

Une carte réseau est un circuit imprimé qui sert à recevoir et envoyer des informations conformément à un ou plusieurs protocoles.

Un modem est un équipement qui sert à envoyer des informations sous forme d'un signal électrique modulé, ce qui permet de les faire passer sur une ligne de communication analogique telle une ligne téléphonique.

Le logiciel informatique

Article détaillé : Logiciel.

Un logiciel est un ensemble d'informations relatives à un traitement automatisé. Un logiciel contient des suites d'instructions qui décrivent en détail les algorithmes en rapport avec un traitement d'informations ainsi que les informations relatives à ce traitement (valeurs clés, textes, images, …)

Un ensemble d'instructions est appelé un programme informatique.
Un algorithme est une suite d'opérations qui permettent d'obtenir un résultat. L'exécution de la même suite d'opérations (par un humain ou une machine) donnera toujours le même résultat.


catégories de logiciels

Un appareil informatique peut contenir de très nombreux logiciels, organisés en trois catégories :

  • logiciel applicatif : un logiciel applicatif contient les instructions et les informations relatives à une activité automatisée. Un ordinateur peut stocker une panoplie de logiciels applicatifs, correspondant aux très nombreuses activités pour lesquelles il est utilisé.
  • logiciel système : un logiciel système contient les instructions et les informations relatives à des opérations de routine effectuées par les différents logiciels applicatifs.
    • système d'exploitation : le système d'exploitation est un logiciel système qui contient l'ensemble des instructions et des informations relatives à l’utilisation commune du matériel informatique par les logiciels applicatifs.
  • micrologiciel (firmware en anglais) : lors d'une utilisation d'un équipement matériel déterminé - lors d'une opération de routine. Un micrologiciel contient les instructions et les informations relatives au déroulement de cette opération sur l'équipement en question. Un appareil informatique peut contenir de nombreux micrologiciels. Chaque micrologiciel contient les instructions et les informations relatives à tous les traitements qui peuvent être effectués par les équipements d'une série ou d'une marque déterminée.

Un logiciel embarqué, un logiciel libre, un logiciel propriétaire font référence à une manière de distribuer le logiciel. Voir « Marché de l'informatique ».

Les algorithmes des logiciels font usage des résultats des recherches en intelligence artificielle. Et les logiciels font souvent usage de métaphores : il s'agit d'une pratique du langage qui consiste à expliquer une situation nouvelle en faisant analogie à une situation antérieure et connue. Dans un logiciel qui automatise une activité, les automatismes du logiciel sont présentés sous forme de symboles qui représentent les activités effectués par des « acteurs ». Avant l'automatisation de l'activité, ces acteurs étaient des humains ou des machines.

Les instructions disponibles diffèrent d'un processeur à l'autre. Un logiciel donné peut fonctionner uniquement sur un appareil informatique dont le jeu d'instructions du processeur correspond à celui qui est utilisé par ce logiciel. Le processeur est alors dit compatible avec le logiciel, et inversement.

Logiciel applicatif

Un logiciel applicatif ou application informatique contient les instructions et les informations relatives à une activité automatisée par un appareil informatique (informatisée). Il peut s'agir d'une activité de production (exemple : activité professionnelle), de recherche, ou de loisir.

  • Par exemple, une application de gestion est un logiciel applicatif servant au stockage, au tri et au classement d'une grande quantité d'informations. Les traitements consistent en la collecte et la vérification des informations fraîchement entrées, la recherche d'informations et la rédaction automatique de documents (rapports).
  • Un autre exemple, un jeu vidéo est un logiciel applicatif servant à jouer. Les traitements consistent en la manipulation d'images et de sons, la création d'images par synthèse, ainsi que l'arbitrage des règles du jeu.
  • Un progiciel est un logiciel applicatif dont les automatismes banalisés peuvent être influencés dans une large mesure par la modification de fichiers de configuration, permettant ainsi son usage dans plusieurs activités différentes.
Domaines d'activités informatisées

[21]

  • manipulation d'informations administratives : commerciales, financières, légales, industrielles et comptables depuis 1962.
  • ingénierie : en aéronautique, astronautique, chimie, électronique, physique.
  • sciences de la vie : biologie, santé.
  • sciences sociales : psychologie, sociologie, économie.
  • design et artisanat : architecture, littérature, musique.
  • conception assistée par ordinateur et fabrication assistée par ordinateur.
  • informatique : génie logiciel.
  • malware ou Logiciel malveillant : espionnage, vol d'information, usurpation d'identité.

Logiciel système

Un logiciel système contient les instructions et les informations relatives à des opérations de routine susceptibles d'être exécutées par plusieurs logiciels applicatifs. Un logiciel système sert à fédérer, unifier et aussi simplifier les traitements d'un logiciel applicatif. Les logiciels systèmes contiennent souvent des bibliothèques logicielles.

Lorsqu'un logiciel applicatif doit effectuer une opération de routine, celui-ci fait appel au logiciel système par un mécanisme appelé appel système. La façade formée par l'ensemble des appels systèmes auquel un logiciel système peut répondre est appelée Interface de programmation ou API (acronyme de l'anglais Application programming Interface).

Un logiciel applicatif effectue typiquement un grand nombre d'appels système, et par conséquent peut fonctionner uniquement avec un système d'exploitation dont l'interface de programmation correspond. Le logiciel est alors dit compatible avec ce système d'exploitation, et inversement.

Le système d'exploitation
Article détaillé : Système d'exploitation.

Le système d'exploitation est un logiciel système qui contient l'ensemble des instructions et des informations relatives à l’utilisation commune du matériel informatique par les logiciels applicatifs.

Les traitement effectués par le système d'exploitation incluent: répartition du temps d'utilisation du processeur par les différents logiciels (multitâche), répartition des informations en mémoire vive et en mémoire de masse. En mémoire de masse les informations sont groupées sous formes d'unités logiques appelées fichiers.

Les traitements effectués par le système d'exploitation incluent également les mécanismes de protection contre l'utilisation simultanée par plusieurs logiciels applicatifs d'équipements de matériel informatique qui par nature ne peuvent pas être utilisés de manière partagée (voir exclusion mutuelle).

POSIX est une norme industrielle d'une interface de programmation qui est appliquée dans de nombreux systèmes d'exploitation, notamment la famille UNIX.

L’environnement graphique
Environnement graphique

L’environnement graphique est le logiciel système qui organise automatiquement l'utilisation de la surface de l'écran par les différents logiciels applicatifs et redirige les informations provenant des dispositifs de pointage (souris). L'environnement graphique est souvent partie intégrante du système d'exploitation.

Le système de gestion de base de données

Une base de données est un stock structuré d'informations.

Un système de gestion de base de données (acronyme : SGBD) est un logiciel système dont les traitements consistent à l'organisation du stockage d'informations dans une ou plusieurs bases de données. Les informations sont disposées de manière à pouvoir être facilement mis à jour, triées, classées, ou supprimées. Les automatismes du SGBD incluent également des protections contre l'introduction d'informations incorrectes, contradictoires ou dépassées. [22].

Micrologiciel

puce contenant un micrologiciel
  • dans un équipement informatique : lors d'une utilisation d'un équipement matériel déterminé - lors d'une opération de routine. Un micrologiciel contient les instructions et les informations relatives au traitement de cette opération sur l'équipement en question. Chaque micrologiciel contient les informations relatives à tous les traitements de routine qui peuvent être effectués par les équipements d'une série ou d'une marque déterminée.
    • BIOS (acronyme de l'anglais Basic Input Output System) est le nom du micrologiciel présent sur les ordinateurs compatibles PC. Il effectue les opérations de routine d'envoi et de réception d'informations de différents équipements qui se trouvent dans l'ordinateur.
  • dans un appareil électronique : les micrologiciels sont utilisés dans de nombreux appareils électroniques pour réaliser des automatismes difficiles à réaliser avec uniquement des circuits électroniques. Par exemple dans des appareils électroménagers - lave-linge, lave-vaisselle, ou les moteurs à essence.

Le micrologiciel est souvent distribué sur une puce de mémoire morte qui fait partie intégrante du matériel en question.

L'informatique appliquée

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 diagnostic, 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 : informatique en rapport avec la gestion de données, à savoir le traitement en masse de grandes quantités d'information. L'informatique de gestion a de nombreuses applications pratiques dans les entreprises: manipulation des informations relatives aux employés, commandes, ventes, statistiques commerciales, Journaux de comptabilité générale y compris, en son temps, le calcul du décalage pour les déclarations de TVA à récupérer, auquel M. Balladur a mis fin - gestion de la production et des approvisionnements, gestion de stocks et des inventaires… - Ce domaine est de loin celui qui représente la plus forte activité.:Jusqu'en 1962, 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é générale avec suivi des créances innové par Le lettrage conversationnel de qualification des écritures, en 1962 en Grandes entreprises.
Gilbert Bitsch, Liste d'informaticiens et précurseurs de l'informatique chef de projets à la SACM de Mulhouse, réalisa le premier positionnement de compte sur une tabulatrice IBM 421, un outil de la mécanographie, 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 par la recherche opérationnelle ou par itération  ; des scénarios 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.
  • Il faut enfin citer les applications du renseignement économique et stratégique (intelligence en anglais), 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.

Exemples d'applications

  • Automatique : appareils de régulation tels que pilote automatique.
  • Bio-informatique : outils d'aide dans la recherche en biologie.
  • Bureautique : outils d'aide au travail de bureau: rédaction de documents commerciaux et correspondance.
  • Calcul parallèle : pour des applications qui demandent de nombreux calculs: prévisions météo ou image de synthèse.
  • Cryptographie : déchiffrage d'informations chiffrées par un code secret.
  • Domotique : commande d'appareils domestiques et systèmes d'alarme.
  • ECM : collecte des documents électroniques d'une entreprise: mail, fax, contrats.
  • Exploration de données : extraction automatique de connaissances.
  • Hypermédias : manipulation de documents de présentation contenant des vidéos, des images et du son.
  • Imagerie informatique : création ou manipulation d'images: images de synthèse, traitement d'images, jeux vidéo, simulateurs de vol.
  • Informatique décisionnelle : analyses et statistiques en vue d'aide à la décision pour les responsables d'entreprise.
  • Informatique de gestion : manipulation en masse de grandes quantité d'informations: listes de clients, des fournisseurs, de produits.
  • Informatique industrielle : utilisation dans des chaînes de fabrication industrielles.
  • Informatique médicale : manipulations d'images médicales (scanner, échographies), dossiers médicaux.
  • Informatique musicale : composition musicale.
  • Instrumentation : collecte d'informations provenant de capteurs, lors d'expériences scientifiques.
  • Linguistique informatique : correction d'orthographe, traduction automatique.
  • Mainframe : pilotage et exploitation d'ordinateurs géants.
  • Malware : logiciels mal intentionnés qui s'installent et agissent à l'insu de l'utilisateur: vol d'informations, falsification, usurpation d'identité.
  • Nanotechnologie : aide à la recherche en nanotechnologie.
  • Robotique : pilotage des machines autonomes que sont les robots.
  • Télécommunications : transmission d'informations.

Le marché de l'informatique

On trouve dans le monde environ 1 milliard de micro-ordinateurs[23], 300 000 stations de travail, quelques dizaines de milliers de mainframes, et 2 000 superordinateurs en état de marche.

On ne connaît pas avec certitude la part de marché occupée par l'industrie des systèmes embarqués mais on estime que l'informatique représente le tiers du coût d'un avion ou d'une voiture.[24]

La distribution des produits informatiques est faite sous la forme de multiples canaux de distribution, parmi lesquelles on compte la vente directe, le e-commerce, les chaînes de revendeurs, les groupements de revendeurs, la vente par correspondance.

Les grossistes informatiques ont un rôle clef dans la distribution informatique et sont un point de passage quasi obligé pour les sociétés qui ont choisi la vente indirecte (par un réseau de revendeurs). Les grossistes, qu'ils soient généralistes ou spécialisés, adressent la multitude de petits points de vente ou les sociétés de service pour lesquelles l'activité de négoce représente un volume d'activité faible.

Aujourd'hui la plupart des constructeurs sont spécialisés soit dans le matériel, soit dans le logiciel, soit dans les services. Apple et Sun sont parmi les seuls constructeurs spécialisés à la fois dans le matériel et le logiciel. IBM et HP sont parmi les seuls constructeurs spécialisés à la fois dans le matériel et les services.

Dans le sultanat d'Oman entre 2002 et 2005, 16 % des ventes concernaient du logiciel, 30 % concernait des ordinateurs, 28 % concernait des services, et 25 % concernait des équipements de transmission[25].

En Autriche, en 2007, 21 % des ventes concernent le logiciel, 34 % concernent le matériel, et 45% concernent des services[26].

Histoire

Historiquement, le matériel informatique était distribué par les grands constructeurs qui traitaient en direct avec leurs clients ; la plupart de ceux-ci étant de grandes entreprises ou des organismes publics. Les logiciels étaient créés par les clients. Les constructeurs fournissaient uniquement un système d'exploitation, et assistaient leurs clients par l'organisation de cours de programmation à la formation des analystes programmeurs. Au fur et à mesure de la baisse des prix des systèmes, le marché s'est élargi, obligeant plusieurs constructeurs à se structurer pour mieux diffuser leur produit et à s'appuyer sur des partenaires. Ces partenaires étaient au départ mono-marque et travaillaient souvent sous la forme d'agent semi-exclusif puis ils se sont transformés au fil du temps en revendeurs indépendants multi-marques.

Dans les années 1980, en même temps que les premiers micro-ordinateurs, sont apparus les premiers éditeurs spécialisés dans le logiciel.

Depuis 1987, le marché du micro-ordinateur est le principal secteur du marché informatique, et les micro-ordinateurs, initialement utilisés à des fins domestiques, sont désormais largement utilisés dans les entreprises et les institutions, où ils tendent à remplacer les stations de travail et les mainframes.

Du fait de la croissance très rapide du marché, vecteur de forte concurrence, de nombreuses sociétés ont disparu dans les années 1980. Des 14 grands fabricants de l'époque, il n'en reste aujourd'hui[Quand ?] plus que deux[27].[Qui ?]

Marché du matériel

L'ordinateur est un appareil modulable, construit par assemblage de composants de différentes marques. Le développement et la construction des composants est le fait de quelques marques très spécialisées. La majorité des constructeurs d'ordinateurs sont des assembleurs : un assembleur est une société qui vend des ordinateurs construits par assemblage de composants provenant d'autres marques, y compris de concurrents.

La loi de Moore

alignement à la loi de Moore

En 1965, Gordon Earle Moore, co-fondateur de Intel, un grand fabricant de microprocesseurs, émettait la Loi de Moore. Cette loi, basée sur l'observation prévoit que la complexité des microprocesseurs doublerait tous les 18 mois. Quarante ans plus tard cette observation se confirme toujours. Selon le magazine Ligne de crédit l'alignement à la Loi de Moore n'est pas le fait du hasard, mais une volonté de l'industrie informatique[28]. Selon certaines personnes[Qui ?], la loi de Moore serait infirmée dans les années à venir, à cause du ralentissement économique mondial[réf. nécessaire].

L'offre en matériel

Le matériel informatique est aujourd'hui produit par diverses multinationales, majoritairement du Japon et de Taïwan. Exemples :

En Autriche les principales marques d'ordinateur sont, en 2007 : Hewlett-Packard (Palo Alto, États-Unis), Dell, (Round Rock, États-Unis), Fujitsu (Japon), Siemens (Berlin, Allemagne), Sony (Tokyo, Japon) et Acer (Taïwan)[29].

Les principales marques de consoles de jeux sont en 2007 : Sony (Tokyo, Japon), Nintendo (Kyoto, Japon), et Microsoft (Redmond, États-Unis)[30].

Marché du logiciel

La fabrication d'un logiciel (développement) demande très peu de moyens techniques, et beaucoup de temps et de savoir-faire.

Il existe aujourd'hui un très grand nombre d'auteurs de logiciels, il peut s'agir de multinationales comme Microsoft, de petites entreprises locales, voire de particuliers ou de bénévoles.

Des entreprises, qui utilisent du matériel informatique pour leurs propres besoins ont souvent des équipes spécialisées, qui créent des logiciels sur mesure pour les besoins de l'entreprise. Ces logiciels ne seront jamais mis sur le marché.

Dans des secteurs industriels comme par exemple l'aviation, il existe des équipes qui créent des logiciels pour intégrer dans les systèmes embarqués de ce secteur. Ces logiciels ne sont jamais mis sur le marché séparément.

Un logiciel étant un ensemble d'informations, il peut être transmis par les moyens de télécommunications. le téléchargement est l'opération qui consiste à utiliser un réseau de télécommunication pour récupérer un logiciel en provenance d'un autre appareil. Le e-commerce est l'activité qui consiste à vendre des logiciels en les distribuant par des réseaux de télécommunication comme par exemple Internet.

Terminologie de la distribution de logiciels

Un logiciel libre (ou open source) est un logiciel que n'importe qui peut utiliser, étudier, modifier et redistribuer librement. Un tel logiciel peut être soumis au droit d'auteur (sous une certaine licence) ou non (dans le domaine public). Les logiciels libres sont généralement distribués gratuitement.

Un logiciel propriétaire est un logiciel non libre.

Un gratuiciel (en anglais freeware) est un logiciel gratuit.

Un shareware est un logiciel propriétaire qui est gratuit pendant une période d'essai et payant ensuite. De nombreuses variantes de shareware existent, selon le paiement demandé (qui est parfois un don à une organisation caritative, ou l'envoi d'une carte postale à l'auteur, etc.) et le fonctionnement du logiciel à la fin de la période d'essai (le logiciel peut ne plus être utilisable, ou le rester mais avertir fréquemment l'utilisateur qu'il doit l'acheter, etc.).

Un micrologiciel (en anglais firmware) est un logiciel incorporé dans un matériel informatique, et indissociable de celui-ci.

L'offre en logiciels

Il existe aujourd'hui une offre très large de logiciels, de tous les types: libres, propriétaires, shareware, freeware.

L'industrie du logiciel est un des principaux secteurs économiques en Europe et aux États-Unis. De nombreux constructeurs de logiciels sont aux États-Unis. La création de logiciels applicatifs représente 52% de l'activité.[31]

Si le Japon est un des pays les mieux équipés en matériel informatique, on y trouve les plus grands fabricants de matériel, il n'en va pas de même pour le logiciel, et de nombreux logiciels posent des problèmes pour l'écriture de textes en utilisant l'alphabet japonais[32].

Il existe maintenant (en 2008) environ 80 systèmes d'exploitation différents. Le marché est largement occupé par la famille Windows : cette famille de systèmes d'exploitation, propriété de Microsoft (Redmond, États-Unis) occupe environ 90 % du marché des systèmes d'exploitation pour ordinateurs personnels. la société Microsoft a fait l'objet de divers procès pour monopolisation du marché[33].

L'offre en logiciels libres

GNU est un projet de système d'exploitation lancé en 1985, entièrement basé sur des produits open source. Linux est un système d'exploitation open source, écrit par une équipe de plus de 3 200 bénévoles. La valeur de revente de Linux est estimée à plus de 1,4 milliards de dollars[34].

L'offre en logiciels libres consiste notamment en des ensembles qui contiennent à la fois des produits GNU et Linux. Ils sont distribués avec des magazines, ou mis à disposition pour le téléchargement.

Le piratage

vendeur pirate

Le piratage consiste à autoriser implicitement un acheteur à utiliser un logiciel sans le consentement de son éditeur: La licence d'utilisation est un contrat acquis implicitement par tout acheteur d'un logiciel, contrat par lequel l'éditeur autorise l'acheteur à utiliser le logiciel. La vente de licences d'utilisation est la première source de revenus pour les éditeurs de logiciels.

Le piratage consiste pour un tiers (pirate) à vendre des copies d'un logiciel légalement acquis. Ce qui signifie octroyer aux acheteurs le droit d'utiliser le logiciel à l'insu et contre le gré de l'éditeur. Le logiciel copié est strictement identique à l'original, mais la licence n'est pas authentique et la vente est assimilée à de la contrefaçon. Le piratage touche le marché du logiciel ainsi que d'autres biens immatériels tels que la musique ou la vidéo.

Les éditeurs vendent souvent leur logiciel accompagné de services tels que garantie et mises à jour, des services disponibles uniquement sur les logiciels légalement acquis.

Le nombre de copies de logiciels vendues par des pirates est plus ou moins élevé selon les pays. Exemple : en Algérie 85 % des logiciels vendus sont issus du piratage[35]. Au Luxembourg le taux est de 21 %, c'est le taux le plus bas du monde[36].

Marché des services

Le marché des services est un marché relativement récent et en forte progression. Le commerce de services consiste principalement en la vente et l'exécution de mandats concernant des modifications sur des systèmes d'information d'entreprises ou de collectivités.

Les systèmes d'information des entreprises sont parfois composés de centaines d'ordinateurs, sur lesquels sont exécutés des centaines de logiciels de manière simultanée. Il existe de nombreux liens entre les différents logiciels et les différents ordinateurs, et le simple fait d'arrêter un seul des éléments risque de déranger des milliers d'usagers, voire de provoquer le chômage technique de l'entreprise.

Selon le cabinet Gartner Dataquest, les services informatiques ont généré 672,3 milliards de dollars dans le monde en 2006. Soit un marché en augmentation de 6,4 % par rapport à 2005[37].

Un consultant est une personne chargée d'une mission de services.

L'offre en services

  • Une SSII (abréviation de Société de Service en Ingénierie Informatique) est une société qui met à disposition des spécialistes pour des missions de service sur des systèmes informatiques.

De nombreuses SSII se trouvent aux États-Unis et en Inde. Parmi les leaders du marché on trouve IBM - la plus ancienne société d'informatique encore en activité, ainsi que EDS, Accenture et Hewlett-Packard, toutes originaires des États-Unis.

Les principaux sujets des mandats sont la création de logiciels sur mesure, la mise en place de progiciels et la modification des fichiers de configuration en fonction des besoins, des opérations de réglage, d'expertise et de surveillance du système informatique. En France la majorité des constructeurs de logiciels sont des SSII.

  • SAP désigne par abus de langage un progiciel de gestion intégré pour les entreprises, construit par la société SAP AG (Walldorf, Allemagne). L'adaptation aux besoins des entreprises de ce logiciel riche et multi-fonctionnel est une activité courante des SSII.

Activités en rapport avec l'informatique

La création des logiciels

Le génie logiciel est l'activité qui consiste en la création de logiciels.

Article détaillé : génie logiciel.

L'étape centrale de la création d'un logiciel consiste en la rédaction des algorithmes de ce logiciel dans un langage de programmation donné. Les textes rédigés sont appelés code source. Diverses étapes préliminaires permettent de déterminer les algorithmes qui doivent être rédigés. Diverses étapes subséquentes permettent de contrôler la qualité de la rédaction et du choix des algorithmes.

Un langage de programmation est un code de communication, comparable à une langue, qui permet d'exprimer des algorithmes en utilisant des mots du dictionnaire (ces mots sont généralement en anglais) et des symboles. Un logiciel appelé compilateur effectue la transformation du code source en instructions, le résultat est appelé code binaire. Pour pouvoir être transformé en instructions, un code source doit être absolument conforme au langage de programmation (0 faute de grammaire et « d'orthographe »).

La création d'un logiciel demande très peu de moyens techniques et beaucoup de temps et de soin. Le temps de travail est la principale source du coût de construction d'un logiciel. Il s'agit d'un coût unique, qui ne dépend pas du nombre d'unités vendues du logiciel.

Les trois étapes clés de la création d'un logiciel sont l'analyse, la programmation et la validation. Selon les statistiques environ 40 % du temps de construction est utilisé pour l'étape préliminaire de spécification, 30 % est utilisé pour la programmation, et 30 % est utilisé pour la validation.[38]

Étape d'analyse

diagramme d'architecture
  • l'étape d´analyse consiste en une enquête pour déterminer avec précision les opérations qui devront être exécutées automatiquement par le logiciel.

Lors de la création d'un logiciel applicatif, cette enquête consiste pour un analyste à récolter le maximum d'informations concernant l'activité dans laquelle le logiciel va intervenir. L'analyste enquête directement auprès des personnes impliquées dans cette activité. L'analyste choisit alors les parties de l'activité qui vont être automatisées, et décrit avec précision les automatismes, et l'interface homme-machine, dans une suite de documents appelés une spécification ou cahier des charges.

Un architecte des systèmes d'information analyse alors les manières de subdiviser le logiciel en modules, et les effets que la subdivision apporte en termes de vitesse et de facilité de transformer le logiciel. L'architecte effectue également une enquête pour déterminer les caractéristiques techniques du système informatique dans lequel le logiciel devra être implanté et les communications qui seront effectuées entre le logiciel et ce système informatique. L'architecte rédige alors une cartographie du logiciel sous la forme de divers diagrammes d'architecture. Des diagrammes qui seront ajoutés à la spécification.

La programmation

Article détaillé : programmation informatique.

Codage: Le programmeur décrit point par point les algorithmes à automatiser, dans un ensemble de fichiers appelés code source, en suivant les règles de syntaxe du langage de programmation. Le non-respect d'une règle de syntaxe entraine l'échec de la transformation du code source en code binaire. Le programmeur utilise régulièrement le compilateur pour transformer le code source en code binaire, et confirmer l'absence d'erreurs de syntaxe.

atelier de génie logiciel

Tests: Le programmeur fait ensuite fonctionner un par un tous les automatismes, dans diverses conditions, pour vérifier que le code source rédigé est conforme à l'algorithme - c'est-à-dire qu'il donne le résultat prévu. Un bug est une non-conformité. celle-ci peut entrainer l'arrêt prématuré (crash) du logiciel en question voire de l'ensemble des logiciels présent sur la machine. Si le logiciel pilote une machine, cela peut entraîner la destruction de la machine, comme ça a été le cas lors du Vol 501 d'Ariane 5.

Plus le temps consacré aux tests est long, et plus le programmeur aura la possibilité de faire fonctionner les automatismes dans de nombreuses conditions, et plus le nombre de bugs décelés pourra être grand.

Un atelier de génie logiciel est un ensemble de logiciels destinés à la création de logiciels. Il comporte des logiciels de rédaction du code source, un compilateur, et divers logiciels permettant d'examiner le logiciel en cours de construction. Il peut aussi comporter des logiciels pour la rédaction de diagrammes, ainsi que des logiciels pour collecter les bugs et organiser le planning des travaux.

Le pilotage

Dans une équipe de génie logiciel, le chef de projet est la personne qui s'occupe de diriger les travaux. Il répartit les travaux entre les membres de l'équipe, établit les priorités, et contrôle régulièrement l'avancée des travaux par rapport au planning qu'il a préalablement fixé. Une bonne avancée des travaux permet de garantir que la création du logiciel sera terminée à temps, avec un nombre minimum de bugs.

Étape de validation

  • Lors de l'étape de validation le logiciel est mis à l'examen auprès du destinataire final, ou d'un représentant. Le logiciel est alors utilisé dans les moindre détails.

Cette étape permet de confirmer que les automatismes du logiciel sont en adéquation avec l'activité concernée. Un planning d'examen - basé sur la spécification - permet de garantir que la totalité des automatismes ont été contrôlés, et ce dans toutes les conditions possibles d'utilisation.

Lorsqu'il s'agit d'examiner un logiciel qui a déjà été examiné auparavant, et qui vient de subir des transformations, des tests de non-régression permettent de s'assurer que les automatismes qui avaient été examinés auparavant n'ont pas été endommagés par les transformations.

Cette étape peut être suivie d'une étape de garantie. Durant cette étape, le créateur se tient à la disposition du destinataire final pour effectuer toute correction nécessaire sur le logiciel.

Méthodes de génie logiciel

La création d'un logiciel est une tâche ardue : environ 31 % des projets informatiques sont abandonnés avant d'être terminés, plus de 50 % des projets coûtent le double du coût initialement estimé et seulement 15 % des projets finissent dans les temps et selon le budget défini. Les besoins de seule maintenance de l'existant peuvent prendre jusqu'à 50 % des effectifs d'une équipe chargée d'un logiciel (or, c'est là une fonction pénible, ingrate, peu valorisante et qui rebute et démotive souvent les bons programmeurs).[réf. nécessaire]

cycle de construction

Les sociétés de génie logiciel font souvent usage de méthodes de travail industrielles telles que Merise, agile, Extreme Programming ou les méthodes incluses dans le modèle CMMI. Ces méthodes disciplinaires ont été créées dans le but d'améliorer la qualité des logiciels et le respect des délais (et donc des coûts de fabrication).

Le logiciel est typiquement créé par étapes successives, selon un cycle ou les étapes de spécification, de programmation et de validation sont répétées plusieurs fois.

Le temps consacré à la construction de chaque algorithme dépend autant de la complexité de l'algorithme que du nombre d'étapes qu'il contient, et souvent 80 % du temps est consacré à 20% des algorithmes, alors que le 20 % du temps restant est consacré pour le 80 % du travail restant.

Notes et références

  1. en anglais : Computer science is no more about computers than astronomy is about telescopes.
  2. Compagnie Générale d'Informatique, Livret d'accueil des jeunes embauchés, 1981
  3. "Computer science is the study of information" Department of Computer and Information Science, Gutenberg Information Technologies
  4. "Computer science is the study of computation." Computer Science Department, College of Saint Benedict, Saint John's University
  5. "Computer Science is the study of all aspects of computer systems, from the theoretical foundations to the very practical aspects of managing large software projects." Massey University
  6. Michel Volle - étymologie du mot informatique
  7. (en) Karl Steinbuch[pdf], Bernard Widroww, Reiner Hartensetein, Robert Hechtnielsen
  8. (en)European Computer Driving License Foundation
  9. L'informatique, Science, Technique et outil
  10. http://en.wikipedia.org/wiki/Informatics
  11. http://monsite.orange.fr/franck.varenne.eng/page5.html
  12. Marcel Detienne, Les Ruses de l'intelligence: La mètis des Grecs
  13. Donald Knuth, The Art of Computer Programming, tomes 1 (fundamental algorithms), tome 2 (seminumerical algorithms), tome 3 (sorting and searching), tome 4 (combinatorial algorithms)
  14. Jean-Louis Giavitto, « Le calcul, une notion difficile à attraper », 2009
  15. Philippe Flajolet et Étienne Parizot, « Qu'est-ce qu'un algorithme ? », 2004
  16. Jean-Gabriel Ganascia, « Alan Turing : du calculable à l'indécidable », 2004
  17. Jean-Paul Delahaye, « P = NP, un problème à un million de dollars ? », 2007
  18. Sciences et informatique. le donnant-donnant
  19. Sciences cognitives et informatique - opposition et convergence
  20. voir aussi (en)About Symbian OS système d'exploitation pour téléphone portables
  21. (en)Associated Computer Machinery Taxonomy
  22. (en)Database functionality
  23. PC Adoption Worlwide
  24. L'industrie du logiciel
  25. le marché informatique en Oman
  26. Le marché informatique autrichien
  27. Futur et évolution de la micro-informatique 1997 !
  28. Loi de moore j-10 ans
  29. Le marché informatique autrichien
  30. Consoles et parts de marché
  31. Etude de l'industrie du logiciel
  32. L'informatique au Japon
  33. L'UE s'inquiète des parts de marché de Microsoft
  34. L'écosystème linux
  35. L'Algérie premier pays du monde arabe dans le piratage
  36. Le piratage de logiciels en baisse
  37. Les services informatique en augmentation
  38. Le génie logiciel


Voir aussi

Sur les autres projets Wikimedia :

Bibliographie

  • (fr) Michel Volle, De l'Informatique : savoir vivre avec l'automate, Economica 2006, (ISBN 2717852190)
  • (en) Paul E. Ceruzzi, A History of Modern Computing, MIT Press, 2003, (ISBN 0262532034)
  • (en) Tracy Kidder, The Soul of a New Machine, Atlantic-Little, 1981, (ISBN 0316491977)
  • (fr) David Fayon, L'informatique, Vuibert, 1999, (ISBN 2711769038)
  • (en) Harold Abelson et Gerald Jay Sussman, Structure and Interpretation of Computer Programs, MIT Press, 2001, (ISBN 0262510871)
  • (en) John von Neumann, The Computer and the Brain, Yale Nota Bene, 2000, (ISBN 0300084730)
  • (en) Donald Knuth, The Art of Computer Programming, Addison Wesley, 1997, (ISBN 0201485419)
  • (fr) Martin Campbell-Kelly, Une histoire de l'industrie du logiciel : des réservations aériennes à Sonic le Hérisson, Vuibert, 2003, (ISBN 2711748189)


  • Portail de l’informatique Portail de l’informatique
  • Portail sur les sciences Portail sur les sciences
Ce document provient de « Informatique ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Problème informatique de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Probleme de l'arret — Problème de l arrêt En théorie de la calculabilité, le problème de l arrêt consiste, étant donné un programme informatique quelconque (au sens machine de Turing), à dire s il finira par s arrêter ou non. Ce problème n est pas décidable, c est à… …   Wikipédia en Français

  • Informatique Théorique — L informatique théorique est l étude des fondements logiques et mathématiques de l informatique. Plus généralement, le terme est utilisé pour désigner des domaines ou sous domaines de recherche centrés sur des vérités universelles (axiomes) en… …   Wikipédia en Français

  • Informatique theorique — Informatique théorique L informatique théorique est l étude des fondements logiques et mathématiques de l informatique. Plus généralement, le terme est utilisé pour désigner des domaines ou sous domaines de recherche centrés sur des vérités… …   Wikipédia en Français

  • Probleme des huit dames — Problème des huit dames …   Wikipédia en Français

  • Problème des huit reines — Problème des huit dames …   Wikipédia en Français

  • INFORMATIQUE - Principes — Le traitement de l’information, au sens large, forme une part importante de l’activité humaine et elle est aussi ancienne que l’homme lui même. L’analyse de cette activité, qui est l’objet de l’informatique, a conduit à distinguer la manipulation …   Encyclopédie Universelle

  • INFORMATIQUE — LE MOT «informatique» a été proposé en 1962 par Philippe Dreyfus pour caractériser le traitement automatique de l’information. Ce terme a été accepté par l’Académie française en avril 1966, avec la définition suivante: «Science du traitement… …   Encyclopédie Universelle

  • Probleme des lecteurs et des redacteurs — Problème des lecteurs et des rédacteurs Le problème des lecteurs et des rédacteurs est un problème classique en théorie informatique, qui permet de modéliser les accès à des bases de données. Il fut énoncé sous cette forme par Edsger Dijkstra,… …   Wikipédia en Français

  • Probleme du sac a dos — Problème du sac à dos Le problème du sac à dos : quelles boîtes choisir afin de maximiser la somme emportée tout en ne dépassant pas les 15 kg autorisés ? Le problème du sac à dos, noté également KP (en anglais, Knapsack Problem) est un …   Wikipédia en Français

  • INFORMATIQUE - Informatique et médecine — Depuis les travaux des premiers pionniers américains vers la fin des années cinquante, les centres de calcul biomédical se multiplient partout dans le monde, et le nombre des biologistes et des médecins qui, directement ou indirectement,… …   Encyclopédie Universelle

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”