Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

Logiciel

Un article de Wikipédia, l'encyclopédie libre.
Page d’aide sur l’homonymie

Ne doit pas être confondu avecProgramme informatique ouApplication (informatique).

Démarche de construction d'un logiciel.

Eninformatique, unlogiciel est un ensemble de séquences d’instructions interprétables par une machine et d’unjeu de données nécessaires à ces opérations. Le logiciel détermine donc les tâches qui peuvent être effectuées par la machine, ordonne son fonctionnement et lui procure ainsi son utilité fonctionnelle. Les séquences d’instructions appeléesprogrammes ainsi que les données du logiciel sont ordinairement structurées enfichiers. La mise en œuvre des instructions du logiciel est appeléeexécution et la machine chargée de cette mise en œuvre est appeléeordinateur ou calculateur.

Un logiciel peut être classé commesystème,applicatif,standard,spécifique, oulibre, selon la manière dont il interagit avec le matériel, selon la stratégie commerciale et selon les droits sur le code source des programmes. Le termelogiciel propriétaire est aussi employé.

Les logiciels sont créés et livrés à la demande d'un client ou sur l'initiative du producteur, et mis sur le marché, parfois gratuitement. En 1980, 60 % de la production et 52 % de la consommation mondiale de logiciels est auxÉtats-Unis. Les logiciels sont aussi distribués illégalement et la valeur marchande des produits ainsi distribués est parfois supérieure auchiffre d'affaires des producteurs. Leslogiciels libres sont créés et distribués comme des commodités produites par coopération entre les utilisateurs et les auteurs.

Créer un logiciel est un travail intellectuel qui prend du temps. La création de logiciels est souvent le fait d'une équipe, qui suit une démarche logique et planifiée en vue d'obtenir un produit de bonne qualité dans les meilleurs délais. Lecode source et lecode objet des logiciels sont protégés par laconvention de Berne concernant les œuvres littéraires.

Étymologie

[modifier |modifier le code]

Le terme anglaissoftware a été utilisé dès 1953 pour distinguer la partie modifiable de l'ordinateur, par opposition auhardware qui est la partie matérielle permanente. Il est apparu dans la littérature pendant les années 1960[1].

En français, le mot « logiciel » est formé en1969 enFrance à partir des mots « logique » et « matériel » comme traduction par la Délégation à l’informatique chargée duPlan Calcul[2].

Ce terme a été adopté par l'Académie française en1972[3]. Cette traduction est officialisée par un arrêté publié auJournal officiel de la République française le[4] et confirmé par l'arrêté du[5].

Introduction

[modifier |modifier le code]

Unordinateur est composé de matériel et de logiciels. Par analogie avec un orchestre, on peut dire que le matériel représente des musiciens et des instruments, tandis que le logiciel est la partition[6]. Sans logiciel l'ordinateur ne fait rien parce qu'il n'a pas reçu les instructions lui indiquant ce qu'il doit faire[6]. Les logiciels sont composés deprogrammes informatiques, qui indiquent à l'ordinateur comment effectuer les tâches[7]. Le logiciel détermine les tâches qu'unappareil informatique peut effectuer[7].

Alors qu'à la vente d'un appareil informatique, l'accent est souvent mis sur le matériel informatique, c'est avant tout le logiciel qui donne à l'ordinateur sa valeur ajoutée[6]. Le mot anglaissoftware (en français :logiciel) était à l'origine utilisé pour désigner tout ce qui est immatériel dans un ordinateur : des programmes, des données, des documents, des photos[7]

Logiciel n'est pas synonyme deprogramme informatique. Un logiciel est un ensemble typiquement composé de plusieurs programmes, ainsi que tout le nécessaire pour les rendre opérationnels :fichiers de configuration, images bitmaps, procédures automatiques[8]. Les programmes sont sous forme decode binaire ainsi que parfois sous forme decode source[9].

Les deux principales catégories de logiciels sont leslogiciels applicatifs et leslogiciels de système. Le logiciel applicatif est destiné à aider les usagers à effectuer une certaine tâche, et le logiciel de système est destiné à effectuer des opérations en rapport avec l'appareil informatique[7].

La plus importante pièce de logiciel est lesystème d'exploitation. Il sert à manipuler le matériel informatique, diriger le logiciel, organiser les fichiers, et faire l'interface avec l'utilisateur[6]. Les logiciels disponibles dans le commerce sont toujours destinés à être utilisés avec un ou plusieurs systèmes d'exploitation donnés[6].

Typologie

[modifier |modifier le code]

Les logiciels sont couramment classifiés en fonction de[10] :

Les deux principales catégories de logiciels sont le logicielapplicatif et le logiciel desystème :

  • le logicielapplicatif est destiné à aider les usagers à effectuer une certaine tâche ;
  • le logiciel desystème est destiné à effectuer des opérations en rapport avec l'appareil informatique[7].

Les autres types de logiciels sont les applications, les utilitaires, les programmes et les pilotes (anglaisdriver) :

  • les applications sont utilisées pour effectuer une tâche ;
  • les utilitaires sont utilisés pour manipuler l'ordinateur ou à des fins de diagnostic ;
  • un pilote est un logiciel qui permet d'utiliser un matériel informatique[6].

Il n'y a pas de distinction claire entre un logiciel standard et un logiciel spécifique, et il existe un continuum entre ces deux extrêmes[10] :

  • unlogiciel spécifique est construit dans le but de répondre à la demande d'un client en particulier, ce type de logiciel peut être créé par le département informatique de l'entreprise qui s'en sert, ou alors celle-ci fait appel à un éditeur de logiciel ;
  • unlogiciel standard est créé dans le but d'être vendu en grande distribution, et répond au plus petit dénominateur commun des besoins de différents utilisateurs. Un logiciel standard s'adresse à un marché anonyme, parfois à la suite d'une expérience pilote répondant aux besoins spécifiques de certains consommateurs[10].

Selon les droits accordés par le contrat de licence, on parle de :

  • logiciel propriétaire lorsque l'auteur se réserve le droit de diffuser et de modifier le logiciel ;
  • logiciel libre oulogiciel open source lorsqu'il est permis de l'exécuter, d'accéder aucode source pour l'étudier ou l'adapter à ses besoins, redistribuer des copies, modifier et redistribuer le logiciel ;
  • logiciel gratuit ou gratuiciel, ou (freeware en anglais), pour un logiciel propriétaire qui peut être distribué, copié et utilisé gratuitement, sans frais de licence[11] ;
  • partagiciel (shareware en anglais), lorsque l'auteur autorise autrui à diffuser le logiciel.

Histoire

[modifier |modifier le code]
Article détaillé :Histoire du logiciel.

Années 1950

[modifier |modifier le code]

Dans les années 1950 les logiciels sont écrits par les fabricants de matériel informatique et vendus avec. Parfois des sociétés d'ingénierie créaient sur demande des logiciels applicatifs sur mesure pour un utilisateur ou un autre, mais lessystèmes d'exploitation étaient exclusivement le fait de fabricants de matériel.

Années 1960

[modifier |modifier le code]

Le séisme du brevet demandé en avril 1965 par ADR

[modifier |modifier le code]

Les sociétés de logiciel se multiplient dans la seconde moitié des années 1960 grâce à la percée énergique de trois pionniers qui n'hésitent pas à défier les constructeurs informatiques en proposant les premiers logiciels universels, vendus séparément, à des tarifs plus transparents, et souvent centrés sur la gestion et la simplification d'une quantité de données en croissance exponentielle en raison succès descircuits intégrés et des nouvelles applications, et en se faisant connaitre grâce àWall Street.

Cinq ans aprèsComputer Usage Company, première entreprise de logiciel de l'histoire à réaliser uneentrée en Bourse en 1960, trois autres la suivent en 1965-1967. D'abordApplied Data Research (ADR) en 1965, puisInformatics General en mai 1966 et enfin en 1967Advanced Computer Techniques (ACT), fondé à New York en avril 1962 par Charles P. Lecht[12] et introduite grâce à une petite banque spécialisée dans la technologie,Faulkner, Dawkins & Sullivan. Selon leThe New York Times l'action ACT triple de valeur au premier jour, alors que ses revenus resteront pourtant entre 2 et 3 millions de dollars entre 1968-1970[13], l'enougement boursier témoignant d'un énorme intérêt des investisseurs pour la technologie[14],[15].

Informatics General qui avait en mai 1966 levé 3,5 millions de dollars à 7,50 dollars par action[16],[17], sur le marché OTC[18] avait elle 300 salariés et un chiffre d’affaires de 4,5 millions de dollars, soit 3 à 4 % du marché total des logiciels personnalisés[19]. Son action ne pâtit pas de l'arrivée d'ACT en 1967: sonmultiple de capitalisation des bénéfices monte de 25 à 200 à la mi-1968 puis 600 au début de 1969 malgré une rentabilité insignifiante[16], grâce à son logiciel Mark IV, embryon de dictionnaire logiciel de la galaxie des produits IBM.

C'est la deuxième entrée en Bourse, celle d'ADR en 1965, qui fut la plus importante car couplée avec lapremière demande d'un brevet pour un logiciel, effectuée en avril 1965 pourAutoflow, afin de se protéger d'IBM, qui espérait copier et proposer gratuitement ce ce logiciel à ses clients[20],[21]. Au cours des trois années qui suivent, la valeur de l'action ADR est multipliée par cinq[20] car ce logiciel génère des revenus significatifs dès 1966[20]. La société est alors suivie de très près par la presse et les analystes financiers et leur consacre du temps[20].

Une seconde accélération est apportée par la réponse positive au printemps 1968: le brevet est accordé à ADR. Son logiciel Autoflow permet de créer undiagramme de flux pour d'autres programmes informatiques et ainsi mesurer leur occupation de la machine et leur degré de priorité. Son succès a permis aux ventes d'ADR de grimper à 10 ou 12 millions de dollars par an à la fin de la décennie des1960[20] dont 40% à 50% en services[20] mais la tension est à son comble avec le concurrent IBM[20]. Le printemps 1968 voit aussiune bulle spéculative générale, notamment sur les petites valeurs, l'afflux d'achat obligeant à unvaste projet d'informatisation qui donne naissance en 1971 auNASDAQ, première bourse électronique à distance.

Floraison d'éditeurs et pénurie de développeurs

[modifier |modifier le code]

Dans une newsletter mensuelle publiée depuis le milieu des années 1960 par IDC,Pat McGovern, du journalComputerworld donne en 1967 un liste des sociétés spécialisées dans le logiciel qui sont déjà 10 à 15[20] et dont le nombre et les initiatives vont augmenter quand IBM en décembre 1968 annonce comme prévu qu'il va facturer ses logiciels séparément[21], sous la pression du gouvernement[21] qui début janvier lance une action antitrust contre lui[21]. Dans la seconde partie de la décennie, il y avait déjà 40 à 50éditeurs de logiciels américains mais souvent petits[15], sans capacité à organiser la formation et la promotion de leurs personnels et près de 300 cabinets spécialisés encore plus petits, avec souvent seulement 2 à 3 consultants[15] ce qui créé une forte pénurie d'ingénieurs qualifiés pour les écrire, qui culmine fin 1969, d'autant que ce travail revenait auparavant à des techniciens.

Malgrétransaction obtenue avec IBM en 1970, l'actionApplied Data Research est divisée par dix en seulement un an ou deux après avoir valu 40 dollars au début en 1969, puis en 1973 ne vaut plus qu'un dollar, après lepremier choc pétrolier[21] et la désaffection des analystes à partir de 1972[21]. Les actions des autres éditeurs de logiciels chutent aussi[21] et beaucoup font faillite[21].

Les premières formations

[modifier |modifier le code]

Leplan calcul français, lancé fin 1966 après de larges consultations en 1964-1965, pour pallier le "manque de capacité des ordinateurs et de moyens humains de développement interrompait de nombreux projets avant qu’ils soient effectivement appliqués"[22], selonMarion Créhange, pionnière de l'informatique à l'université de Nancy lance les premiers IUT etmaîtrises d'informatique pour accompagnerun gros effort de recherche et nouvelles formations, avec les premiers diplômés en 1968 et une extension à huit universités seulement en 1970. L'Institut de programmation de Paris, créé en novembre 1963 pour lamécanographie et des non bacheliers formés sur un mois[23], voit ses effectifs exploser entre 1967 et 1969 quand il passe réellement à la programmation[23].

Années 1980

[modifier |modifier le code]

dans les années 1980, la production / consommation des États-Unis représente 60 % de la production mondiale de logiciels, et 52 % de la consommation[24]. 50 % des logicielsstandards mis sur le marché sont des logicielsapplicatifs[25].

Années 1990

[modifier |modifier le code]

En 1990, il existe auxÉtats-Unis, premier consommateur et premier producteur mondial plusieurs milliers d'éditeurs de logiciels. Les premiers sontIBM,Microsoft,Computer Associates,Digital etOracle. Ils sont concurrencé principalement par l'Europe et leJapon (SAP,Dassault Systèmes etSony).

Editeur de systèmes pour entreprise,Novell est alors numéro2 mondial du logiciel derrièreMicrosoft, et très actif sur le marchés des réseaux d'ordinateurs internes aux entreprises. Il prend aussi à l'époque 15% du capital de la société françaiseChorus Systèmes[26], fondée en 1986 sur le marchés des OSUnix parHubert Zimmermann, après avoir racheté Unix Systems Labs à ATT en 1993[26], pour le décliner enmicro-noyaux Chorus[26], en prévision d'une élargissement d'Internet à des applications embarquées et au téléphone mobile[26].

Secteur industriel

[modifier |modifier le code]
Article détaillé :Industrie du logiciel.

Les principaux procédés de commercialisation des logiciels sont la production sur mesure de logiciels spécifiques pour les entreprises, la vente de logiciels standard destinés aux entreprises et la vente de ces derniers aux particuliers[10].

  • Les logiciels vendus auxparticuliers sont distribués dans la grande distribution, ou pré-installés dans le matériel informatique, le consommateur paye les frais uniques d'une licence d'utilisation. Ce procédé est apparu dans les années 1980.
  • Pour les logicielsstandards vendus auxentreprises, celles-ci contactent généralement directement des producteurs, les coûts des licences sont négociés, et sont souvent accompagnés de contrats de service en rapport avec la mise en place et l'utilisation du logiciel qui sont payés de manière régulière.
  • Pour leslogiciels spécifiques, le client contacte directement le producteur, et paie le coût de fabrication du produit. Les services additionnels sont souvent demandés par le client et font partie du contrat conclu avec le fournisseur. Ce procédé existe depuis 1960.

Les activités des entreprises du secteur du logiciel sont, outre de créer des logiciels, d'assurer l'installation du logiciel chez le client ainsi que son exploitation. Pour une entreprise commeSAP (numéro un du logiciel en Europe) l'installation de leurs logiciels et la formation des utilisateurs est une part non négligeable de leur activité[10].

Leslogiciels libres sont distribués comme des commodités produites en coopération entre les utilisateurs et les entreprises du secteur. Les entreprises qui les distribuent vendent parfois des contrats d'assistance dans l'utilisation et la modification de ces logiciels[27].

Pour les produits numériques tels que les logiciels, la création de la première copie coûte très cher, tandis que les copies subséquentes coûtent très peu. Pour un logiciel, la création ducode source demande un investissement important, sans aucune garantie de succès[10]. Une fois créé, un logiciel peut être copié sans perte de qualité, la copie étant strictement identique à l'original. Des outils departage de fichiers en pair-à-pair sont utilisés pour copier, parfois illégalement, des logiciels, comme ça se fait dans le marché de la musique. Les logiciels couramment copiés illégalement sont ceux qui peuvent être utilisés tels quels par les particuliers - logiciels debureautique ou jeux vidéo. Les éditeurs de ces logiciels disent que ces copies illégales entraînent des manques à gagner et ceux-ci incluent dans leurs produits des mécanismes de protection[10].

Les lois dudroit d’auteur et dusecret industriel permettent de protéger les intérêts des producteurs de logiciel. Les producteurs du logiciel considèrent que ces lois permettent de les motiver à investir le temps et l'argent nécessaire pour produire et distribuer de nouveaux produits. Selon eux, la distribution de copies illégales de logiciels a pour effet direct de diminuer la rentabilité de la production de logiciel par une baisse des ventes, et comme effet indirect de diminuer leur motivation[28]. La valeur marchande des copies vendues illégalement est souvent supérieure au chiffre d'affaires des ventes des producteurs et cette vente illégale est une des principales préoccupations de tous les éditeurs de logiciel[24].

Les situations de monopole sont caractéristiques du secteur du logiciel : il arrive souvent qu'une seule technologie ou un seul vendeur contrôle un pan du marché[10]. Le marché du logiciel est sujet à l'effet réseau : la popularité élevée d'un logiciel le rend d'autant plus intéressant pour l'acheteur. Ce phénomène renforce les fortes et grandes entreprises et fragilise les fragiles petites entreprises. Ce qui explique que les petites entreprises peu populaires doivent se battre pour survivre, et explique les situations de monopole[10]. L'adhésion des logiciels aux standards technologiques permet aux producteurs de profiter de l'effet réseau : le fait que plusieurs produits adhèrent au même standard facilite les échanges d'informations ce qui les rend plus intéressants pour l'utilisateur[10].

Philosophielibre

[modifier |modifier le code]

Lelogiciel libre est un mouvement social basée sur la philosophie formulée parRichard Stallman dans les années 1980.

Richard Stallman, à l'origine de cette mouvance, se décrit lui-même comme étant« le dernier survivant de la cultureHacker ». Selon le livre deSteven Levy, leshackers sont une communauté et une culture née en 1960 à l'institut de recherche enintelligence artificielle duMIT et presque disparue dans les années 1980[27]. Dans cet institut de jeunes hobbyistes passent leur temps à étudier les ordinateurs et explorer les possibilités qu'offre la programmation de ces machines. Dans ce milieu les programmes informatiques sont traités de la même manière que n'importe quelle information scientifique : mis à la disposition de tout un chacun pour étude, exploitation et amélioration[27]. Il y règne un fort esprit de coopération et de partage, lecode source des programmes est utilisé comme moyen de communication, et le fait de restreindre l'accès au code source limite les interactions de la communauté[27].

En 1984 Richard Stallman, selon sa philosophielibre - héritée du milieu hacker, lance la création d'unsystème d'exploitation (GNU) et fait appel à un conseiller juridique de laFree Software Foundation pour créer une nouvellelicence de distribution, laGNU General Public License (abr.GPL), qui garantit que le code source d'un logiciel, initialement publié par son auteur, ne sera jamais mis sous secret industriel en application des lois decopyright par quiconque le récupère et le redistribue[27].

Dans son ouvrageGNU Manifesto, Richard Stallman suggère aux producteurs de logiciels de changer leur manière de travailler, et, au lieu d'acheter et vendre du logiciel, de le considérer comme une commodité produite en coopération entre les utilisateurs et les entreprises du secteur. Il suggère que même si le logiciel est libre, les utilisateurs auront besoin d'assistance dans l'utilisation et la modification du logiciel, services que les entreprises peuvent vendre[27].

La GPL est la licence la plus fréquemment appliquée aux logiciels libres. En 2002 plus de 50 % des projets deSourceForge.net sont sous licence GPL, et c'est également la licence appliquée à la plupart desdistributions GNU/Linux[27].

Certains commeEric S. Raymond considèrent que la supériorité des logiciels libres est avant tout technique. Pour promouvoir cet aspect du logiciel libre ils ont créé l'Open Source Initiative en 1998.

Licence et droits

[modifier |modifier le code]
Article connexe :licence de logiciel.
Capture d'écran du logiciel de messagerie électronique gratuit KMail.

EnEurope de l'Ouest les logiciels sont protégés par la loi en tant qu’œuvres littéraires auxquelles s'applique laconvention de Berne. Convention qui prévoit qu'un accord explicite de l'auteur est obligatoire avant de retoucher, de modifier, de publier le logiciel, ou de s'en servir comme base pour réaliser un autre logiciel[24].

Uncontrat de licence fixe les droits et les obligations du fournisseur et de l'utilisateur du logiciel. Ce contrat formalise également les biens et les services qui devront être offerts par le fournisseur. Lorsque les logiciels ont commencé à être vendus en grande distribution, ce contrat - auparavant signé par l'acheteur - a été remplacé par unelicence sous emballage (anglaisshrink wrap), qui lie automatiquement et tacitement le fournisseur avec l'utilisateur du moment que ce dernier ouvre l'emballage du logiciel[24].

Les logiciels sont également protégés par les lois dusecret industriel, destinées à empêcher la concurrence de se servir des caractéristiques techniques du logiciel dans ses produits. Pour les logiciels vendus en grande distribution souslicence sous emballage, cette protection est assurée en gardant secret lecode source du logiciel et en commercialisant uniquement lecode objet : la découverte des caractéristiques techniques à partir du code objet nécessite des outils spécialisés et un gros effort de réflexion[24].

LalicenceGNU General Public License (abr.GPL) a été créée en 1984 comme outil de soutien de la philosophielibre. Cette licence garantit à quiconque recevant une copie du logiciel d’obtenir les mêmes droits, c’est-à-dire le droit d’exécuter le logiciel dans n’importe quel but, de le copier, de l’étudier, de le modifier et d’en distribuer des copies exactes ainsi que des copies modifiées[27].

Distribution

[modifier |modifier le code]
Article détaillé :distribution de logiciels.

Les logiciels peuvent être distribués dans lecommerce de détail, téléchargés en libre-service, incorporés dans un appareil informatique, ou mis en ligne sur un ordinateur du fournisseur. La distribution peut être gratuite, peut faire l'objet de commerce et peut être complétée par des contrats de service concernant par exemple de la maintenance ou de l'assistance technique. En plus de la distribution publique, des techniques permettent la distribution automatisée de logiciels aux employés d'une entreprise. La majorité des logiciels continuent d'appartenir à leur producteur après avoir été distribués.

Les logiciels sont « emballés » sous une forme qui facilite le transport avant d'être distribués aux utilisateurs. Pour un logiciel vendu en grande distribution, lecolis (anglaispackage) est conçu pour permettre l'utilisation immédiate du logiciel sans l'intervention d'un informaticien. Il contient généralement lecode objet des programmes, le nécessaire pour les installer et la documentation. Le colis est rarement vendu, et généralement mis à disposition assorti d'une licence d'utilisation. Le fournisseur peut y ajouter des services de formation, de maintenance, demise à jour et de garantie, souvent sur paiement additionnel[29].

Ledéploiement est effectué en plusieurs étapes qui visent à placer le logiciel dans son environnement cible de manière qu'il soit prêt à être utilisé. La première étape consiste à emballer (anglaispackage) un logiciel en vue de faciliter son envoi vers l'environnement cible. Puis une étape dite d´installation consiste à effectuer les opérations nécessaires pour placer le logiciel dans son environnement cible, ceci peut nécessiter une modification de laconfiguration des logiciels déjà en place. L'opération dedésinstallation consiste à effectuer les opérations inverses de l'installation, en vue de retirer le logiciel[30].

La procédure d'installation est typiquement automatisée par des logiciels - qui sont essentiellement des outils dedécompression[30]. Un logiciel évolue durant toute sa vie, et est typiquement distribué plusieurs fois, à plusieurs stades de son évolution, appelésversions ourelease[9].

Il faut aussi tenir compte des évolutions en cours dans les modèles de distribution des logiciels avec la montée en puissance de l'’informatique en nuage, et notamment du mode SaaS (Software as a Service). Celui-ci change les modes de rémunérations associés et la facturation en regard.

Construction

[modifier |modifier le code]
Article détaillé :Développement de logiciel.

Créer un logiciel est une activité intellectuelle et prend du temps. La construction d'un logiciel comporte généralement différentes activités telles que l'étude de faisabilité, l'analyse des besoins, la conception, la programmation, les tests, le déploiement et la maintenance. La construction d'un logiciel modérément complexe dans un délai raisonnable n'est généralement pas réalisable par une personne seule. La construction nécessite alors d'être découpée en tâches qui seront réparties entre plusieurs personnes d'une entreprise ou d'une équipe[31].

L'étude de faisabilité permet de déterminer si le logiciel peut être réalisé : s'il est possible d'apporter une solution technique au problème posé, en tenant compte du système informatique à disposition. L'analyse des besoins permet de produire laspécification fonctionnelle qui servira de référence pour la conception et la programmation. Laconception consiste à choisir les technologies et les outils qui devront être utilisés, tandis que laprogrammation consiste à créer des programmes exécutables en se servant deslangages de programmation. Les tests consistent à simuler des scénarios d'utilisation en vue de vérifier le fonctionnement correct du programme. La maintenance est des travaux de modification effectuésa posteriori, après la distribution du logiciel[31].

La construction doit suivre une démarche logique et réfléchie en vue d'éviter des produits de piètre qualité, qui donnent des résultats incorrects et tombent en panne. L'utilisation systématique d'une démarche réfléchie fait du travail de programmation une discipline d'ingénierie. Si créer un logiciel simple, répondant à un problème simple, peut être effectué de manière informelle par une personne seule, plus le logiciel est complexe plus sa construction est complexe, coûteuse en temps et risquée. Les principales causes d'échec sont soit que la construction prend plus de temps que prévu, ce qui peut augmenter considérablement le coût de construction, soit que le logiciel ne donne pas les résultats attendus ou est abandonné par l'utilisateur parce qu'il tombe trop souvent en panne[31].

L'évolution du matériel informatique, les nouveaux domaines d'utilisation des ordinateurs tels que la recherche scientifique, l'image et le son, l'industrie ou la communication ont augmenté l'importance du logiciel et la complexité moyenne de celui-ci. Les logiciels simples ne sont alors plus que des exercices ou des résolutions théoriques de problèmes, tandis que la résolution de problèmes concrets nécessite des logiciels complexes où le travail discipliné de construction est une nécessité[31].

Un logiciel en version bêta (ou bêta-test) est un logiciel non finalisé, pour lequel on effectue une série de tests jusqu'à ce qu'une stabilité relative soit atteinte. Les personnes qui cherchent les dernières erreurs de ces versions de logiciels sont appelés des bêta-testeurs.

Un logiciel qui est opérationnel sera maintenu. Lamaintenance du logiciel désigne les modifications apportées à un logiciel, après sa mise en œuvre, pour en corriger les fautes, en améliorer l'efficacité ou autres caractéristiques, ou encore adapter celui-ci à un environnement modifié (ISO/IEC 14764).

Eric S. Raymond, dans son livreLa Cathédrale et le Bazar, compare la démarche de construction utilisée pour les logicielsopen sourceLinux etfetchmail — lebazar — avec la démarche traditionnelle des éditeurs de logiciels — la construction decathédrales[32] :

Dans la démarcheopen source, les usagers sont co-développeurs du logiciel et ont un intérêt personnel pour le produit. Le code source est public et accessible à tout le monde. On considère que plus il y a d'yeux et plus les bugs sont aisés à repérer. Une nouvelle version du logiciel est publiée chaque jour, voire plus, ce qui permet aux utilisateurs de constater une évolution constante[32].

Dans la démarche classique des éditeurs de logiciels, les développeurs sont des employés qui, la plupart du temps, ne vont jamais utiliser le logiciel qu'ils ont construit. C'est une petite équipe très spécialisée qui s'occupe également de trouver et corriger des bogues éventuels, ce qui peut exiger des mois de travail. Les périodes entre chaque version de logiciel sont relativement longues. D'où de fréquentes déceptions quant aux imperfections du produit publié[32].

Dans la démarche diteopen source, les développeurs ne sont pas choisis, mais sont le résultat d'unesélection naturelle : pour que le développeur participe il faut qu'il soit intéressé par le produit, qu'il ait pris le temps de l'étudier, qu'il ait réussi à en comprendre suffisamment pour arriver à y apporter des modifications au code source. Un individu qui a réussi à aller si loin a forcément le profil adéquat pour devenir co-développeur du logiciel[32].


Qualité des logiciels

[modifier |modifier le code]
Article détaillé :Qualité logicielle.

L'évaluation de la qualité d'un logiciel tient compte de :

  • la complétude des fonctionnalités
  • la précision des résultats
  • la fiabilité
  • la tolérance de pannes
  • la facilité et la flexibilité de son utilisation
  • la simplicité
  • l'extensibilité
  • la compatibilité et la portabilité
  • la facilité de correction et de transformation
  • la performance
  • la consistance et l'intégrité des informations qu'il contient.

Un logiciel est un produit qui ne se détériore pas. Les facteurs de qualité peuvent être directement observables par l'utilisateur, ou alors constatable par les ingénieurs lors desrevues de code ou des travaux demaintenance[33].

Un consortium s'est créé le aux États-Unis pour établir un standard mondial de laqualité des logiciels. Ce consortium s'appelle leConsortium for IT Software Quality (CISQ).

Bogues

[modifier |modifier le code]
Article détaillé :Bug informatique.
Le Mac triste
Le Mac triste : Ecran indiquant un code erreur sur les premières versions du MacIntosh d’Apple.

Lesbogues, oubugs, sont des erreurs de conception ou de programmation dans les logiciels, qui peuvent causer des comportements incorrects. La gravité du dysfonctionnement peut aller de très mineure (apparence légèrement incorrecte d'un élément d'interface graphique), à des événements catastrophiques (explosion de la fusée Ariane lors duvol 501, irradiation incorrecte de patients par une machine de traitement…) en passant par des pertes plus ou moins grandes de données, et, rarement, par une détérioration dumatériel.

Il est difficile, pour des raisons fondamentales, de produire des logiciels sans bogue. Cependant, il existe des mécanismes par lesquels on peut limiter la quantité de bogues, voire les supprimer. Citons d'une part des préceptes d'organisation des équipes de programmation et leur méthodologie, d'autre part les techniques de recherche de bogues dans les logiciels. La recherche en informatique a développé un domaine d'étude, lavérification formelle, dont l'objectif est de certifier la qualité des logiciels et de garantir leur fiabilité. Dans l'ensemble, l'obtention de logiciels complexes peu bogués est coûteuse en temps et en main d'œuvre. Plus les anomalies sont détectées tôt au long du développement du logiciel, moins leur correction est difficile.

Logiciels critiques

[modifier |modifier le code]
Article détaillé :Profil d'application.

Pour lasécurité globale des systèmes d'information d'une entité, il peut être nécessaire de définir desprofils d'application, afin d'identifier leslogiciels critiques sur lesquels il est nécessaire de porter une attention particulière du point de vue de lasécurité.

Notes et références

[modifier |modifier le code]
  1. (en) PaulNiquette, « Softword: Provenance for the Word 'Software' », adapté deSophisticated: The Magazine(ISBN 1-58922-233-4).
  2. Pierre Mounier-Kuhn,L'informatique en France, de la seconde guerre mondiale au Plan Calcul. L'émergence d'une science, Paris, PUPS, 2010, ch. 4.
  3. Informationslexicographiques etétymologiques de « logiciel » dans leTrésor de la langue française informatisé, sur le site duCentre national de ressources textuelles et lexicales
  4. Le Dictionnaire de l'informatique, Paris, Larousse,, 341 p.(ISBN 2-03-701005-2)
    Extraits du JO du, page 337.
  5. « Enrichissement du vocabulaire de l'informatique », surlegifrance.gouv.fr, Journal officiel du 17 janvier 1982, page 50 624.
  6. abcde etf(en) Dan Gookin,PCs For Dummies, John Wiley & Sons - 2011,(ISBN 9781118051504)
  7. abcd ete(en) June Jamrich Parsons et Dan Oja,New Perspectives on Computer Concepts 2013: Comprehensive, Cengage Learning - 2012,(ISBN 9781133190561)
  8. (en) Ian Sommerville,International computer science series, Pearson Education, 2007,(ISBN 9780321313799)
  9. a etb(en) Bharat Bhushan Agarwal, Sumit Prakash Tayal,Software Engineering, Firewall Media,(ISBN 9788131802151)
  10. abcdefghi etj(en) Peter Buxmann - Heiner Diefenbach et Thomas Hess,The Software Industry: Economic Principles, Strategies, Perspectives, Springer - 2012,(ISBN 9783642315091)
  11. (en) Rick Schummer - Rick Borup et Jacci Adams,Deploying Visual FoxPro Solutions, Hentzenwerke, 2004, page 289,(ISBN 9781930919327)
  12. Fishman,The Computer Establishment, p. 269.
  13. Campbell-Kelly,From Airline Reservations to Sonic the Hedgehog, p. 60.
  14. Haigh,An Interview with Oscar Schachter, pp. 11–13.
  15. ab etc"The Business of Software. What Every Manager, Programmer, and Entrepreneur Must Know to Thrive and Survive in Good Times and Bad", par Michael A. Cusumano, en 2004 aux Editions Freepress[1]
  16. a etbCampbell-Kelly,From Airline Reservations to Sonic the Hedgehog, p. 81.
  17. « Walter Ferdinand Bauer : Obituary », Legacy.com,(consulté le)
  18. « Over-the-Counter Quotations »,The New York Times,‎,p. 175(lire en ligne)
  19. Campbell-Kelly,From Airline Reservations to Sonic the Hedgehog, p. 66.
  20. abcdefg ethMartin A. Goetz Interviewé par Luanne Johnson pour le musée de l'histoire de l'informatique, le 28 mars 1996[2]
  21. abcdefg ethTémoignage, en 1988, de Martin A. Goetz, le premier homme à déposer un brevet pour un logiciel en avril 1965, Musée de l'histoire de l'informatique[3]
  22. "Ma randonnée informatique", par Marion Créhange, le 13 octobre 2021 dansInterstices , revue publiée par l'Institut national de recherche en sciences et technologies du numérique[4]
  23. a etb"Pour une histoire de l'informatique dans l'enseignement français, premiers jalons", par Émilien Pélisset. Article paru dans Système éducatif et révolution informatique, Collection Recherches, Les cahiers de la FEN, 1985,[5]
  24. abcd ete(en) United States. Congress. Office of Technology Assessment,Finding a balance: computer software, intellectual property, and the challenge of technological change, DIANE Publishing,(ISBN 9780160361883)
  25. (en) Oecd,OECD Information Technology Outlook: ICTs and the Information Economy, OECD Publishing - 2002,(ISBN 9789264197541)
  26. abc etdLe succès mondial d'un logiciel français, dansL'Usine nouvelle du 9 juin 1994[6]
  27. abcdefg eth(en) Kirk St. Amant - Brian Still,Handbook of Research on Open Source Software: Technological, Economic, and Social Perspectives, Idea Group Inc (IGI), 2007,(ISBN 9781591408925).
  28. Thales, « Mini guide 2021 du droit d’auteur sur les logiciels », surcpl.thalesgroup.com,(consulté le).
  29. (en) United States. National Bureau of Standards,Introduction to Software Packages, Sheila Frankel, 1984
  30. a etb(en) Roger Lee,Software Engineering Research, Management and Applications, Springer - 2008,(ISBN 9783540707745)
  31. abc etd(en) K. L. JAMES,SOFTWARE ENGINEERING, PHI Learning Pvt. Ltd. - 2008,(ISBN 9788120335899)
  32. abc etd(en) Eric S. Raymond,The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary, O'Reilly Media - 2008,(ISBN 9780596553968)
  33. Alain April et Claude Laporte,Assurance qualité logicielle 1: concepts de base, Lavoisier, 2011,(ISBN 9782746231474), page 387

Voir aussi

[modifier |modifier le code]

Sur les autres projets Wikimedia :

Articles connexes

[modifier |modifier le code]

Liens externes

[modifier |modifier le code]

v ·m
Domaines de l'informatique
Remarque : cette liste s'inspire dusystème de classification informatique de l'ACM édité en2012
Matériel
Appareil et organisation
d'unsystème
Réseau
Organisation dulogiciel
Théorie etoutil (en)
de programmation
Développement de logiciel
Théorie du calcul (en)
Algorithmique
Mathématiques
de l'informatique
Système d'information
Sécurité
Interactions humain-machine
Concurrence (en)
Intelligence artificielle
Apprentissage automatique
Infographie
Audio informatique
Informatique appliquée
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=Logiciel&oldid=223931427 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2025 Movatter.jp