Generic selectors
Correspondance stricte
Recherche dans le titre
Recherche dans le contenu
Post Type Selectors
Filtre par catégorie
ADNEthique
Algorithmique
Asso Référentiel
Association
Bibliographie
Domaines abordés
Données personnelles
Economie numérique
Emploi
IA
IA Etat de l'art
IA Risques
Informatique
Marché
Usages du numérique

Logiciel

Un Logiciel est un ensemble fonctionnellement cohérent de Programmes et de paramètres permettant de structurer chacun des traitements Informatiques élémentaires qu’intègre ce logiciel.
Par exemple, un logiciel de Gestion des Ressources Humaines est une architecture fonctionnelle organisée en différents modules, chacun proposant des traitements constitués en programmes. Pour illustration, un premier module sera pour la gestion de la Base de Données des collaborateurs (dont : création d’un nouveau collaborateur ; modification du détail de ses données ; suppression du registre du personnel ; gestion des effectifs ; listes et tableaux de bord ; etc.), un deuxième module pour le calcul de la paie (dont : saisie des variables ; simulation de la paie ; validation ; édition des bulletins ; gestion des virements ; déclarations fiscales et des cotisations ; etc.), un troisième module pour la gestion des absences et congés, un quatrième pour la gestion des plans individuels de formation, etc.

Logiciel est un terme générique qui cache une réalité complexe. Ainsi, les logiciels sont classés selon deux dimensions complémentaires :

  • Selon le modèle de la licence d’utilisation qui régit les droits de propriété intellectuelle et leur commercialisation ;
  • Selon leur usage, leur positionnement et leur contribution à l’exécution d’un traitement informatique.

Propriété et commercialisation des logiciels

Logiciel propriétaire et logiciel du marché :
Un logiciel propriétaire résulte d’un Développement Applicatif  interne à une Organisation.
Si telle est la décision de l’organisation auteure, un logiciel propriétaire ayant démontré sa valeur économique (combinaison des qualités intrinsèques du logiciel et de la valeur ajoutée pour son utilisateur) peut être packagé pour être proposé sur le marché des logiciels.
L’exception européenne fait que la protection des logiciels est assimilée à celle des œuvres littéraires, telle que définie par la Convention de Berne. Le plagiat, la modification, la revente, ou la réutilisation de tout ou partie du logiciel sont interdits sans accord préalable et de l’ayant droit.
Un droit d’usage peut être accordé, dans les limites définies par un contrat de licence.

Logiciel Libre (en anglais « Free Software ») :
Un logiciel est dit libre quand son utilisation, son étude, la distribution de copie, sa modification ou sa duplication sont légales et libres de droits. Le cycle de vie d’un logiciel libre dépend d’une coopération entre ses utilisateurs et les sociétés de services informatiques. Les droits peuvent être mis dans le domaine public ou dépendre d’un contrat de licence particulier indiquant que chacun peut librement bénéficier de cette liberté, mais à la condition expresse que personne ne détourne ce logiciel à son bénéfice exclusif.
La FSF (acronyme de la « Free Software Foundation », http://www.fsf.org/ ) définit un Logiciel Libre comme répondant à 4 libertés pour son utilisateur.

  1. la liberté d’exécuter tout ou partie du code source sans limite quant à l’usage destiné ;
  2. la liberté d’étudier le fonctionnement du programme et de l’adapter à ses besoins ;
  3. la liberté de redistribuer des copies du logiciel ;
  4. la liberté d’améliorer le programme et de publier ses propres améliorations ;

La condition de base est l’accès non contraint aux sources d’un programme. On remarquera que cette liste ne fait pas référence à la gratuité de l’usage. Cependant, aucun ne peut s’opposer à une offre de service gratuite utilisant le code source libre.

Logiciel à Code Ouvert (en anglais « Open Source ») :
Moins que des valeurs philosophiques généreuses, l’Open Source défend l’accès au code du logiciel comme ayant d’abord un intérêt technique : celui de bénéficier des apports d’autres développeurs. Dans ce contexte, il n’y a pas d’objection de principe à l’utilisation combinée dans un même logiciel de code open source et de code propriétaire.
l’OSI (acronyme de l’«Open Source Initiative », http://opensource.org/) propose un modèle de licence plus adapté aux professionnels et entreprises, en particulier parce qu’il précise les concepts de liberté et de gratuité. Une licence Open Source certifiée par l’OSI répond à 10 conditions :

  1. La libre distribution logicielle : la licence ne peut, par exemple, faire l’objet d’une redevance supplémentaire ;
  2. Le code source doit être fourni ou accessible. Un Patch peut être fourni en tant que package indépendant (par opposition à la licence libre qui qui suppose la mise à disposition d’une version complète à chaque correctif)
  3. Les dérivés des œuvres (ndr : des Logiciels) doivent être permis ;
  4. L’intégrité du code source doit être préservée, la licence ne peut restreindre l’accès au code source ;
  5. Pas de discrimination entre les groupes et les personnes : toute personne détentrice du logiciel bénéficie des termes de la licence tant qu’elle s’y conforme elle-même ;
  6. Pas de discrimination entre les domaines d’application : la licence se limite à la propriété intellectuelle : elle ne peut en aucun cas réguler d’autres domaines politiques ;
  7. La licence s’applique sans dépendre d’autres contrats : on ne peut par exemple ajouter d’accord de confidentialité (en anglais NDA pour « Non Disclosure Agreement ») lors de la cession du logiciel ;
  8. La licence ne doit pas être propre à un produit, elle est attachée au code source et non à un logiciel particulier : une brique logicielle peut donc être réutilisée dans un logiciel différent, voir concurrent ;
  9. La licence d’un logiciel ne doit pas s’étendre à un autre (chacun de ces logiciels doit faire référence à une licence distincte et dissociée);
  10. La licence doit être neutre technologiquement, c’est-à-dire la qu’elle ne concerne que le code, sans référence particulière aux technologies et contextes qui le mettent en application ;

Logiciel gratuit (en anglais « Freeware » ou « Shareware ») :
Un « freeware » (parfois traduit en gratuiciel) est un logiciel propriétaire qui autorise un usage gratuit. Son propriétaire en tire un bénéfice en facturant des services associés (de maintenance, de formation, d’hébergement, etc.), en s’en servant comme support de promotion de sa marque, ou en rendant payantes les fonctionnalités plus élaborées requises par un usage intensif ou professionnel. L’accès au code source n’est pas souvent ouvert.

Un « shareware » (parfois traduit en partagiciel) diffère du « freeware » en ce que sa gratuité est limitée à une période d’essai après laquelle une contribution financière est demandée.

Les Logiciels selon leur usage

Le schéma ci-dessous montre les différentes couches de logiciels (en bleu) pouvant contribuer à un traitement informatique :

Les logiciels embarqués sur les matériels (Firmware) :
Les matériels contiennent les programmes indispensables à leurs opérations. Le terme générique couramment utilisé est Firmware. Trois exemples :

  • Une machine à laver est équipée d’un logiciel qui contrôle l’exécution du cycle de lavage sélectionné. Ce logiciel est embarqué dans un composant électronique souvent appelé programmateur.
  • Sur l’équipement central d’un Système informatique (souvent nommé l’Ordinateur), les programmes du firmware sont stockés dans sa Carte Mère.
    Le BIOS (pour Basic Input-Output System, ou système basic d’entrée/sortie) était, à l’origine, l’ensemble des fonctions programmées pour être automatiquement exécutées à la mise sous tension du système (« Bootloader » en Anglais, amorçage en Français) ou permettant l’identification des périphériques connectés. Aujourd’hui, ce terme dépasse ce cadre de base. Le BIOS est une sorte de suite logicielle stockée dans la carte mère pour contrôler le système informatique.
  • Un peu sur le même modèle, les Périphériques disposent également d’un processeur faisant appel à un ensemble logiciel qui permet de guider leurs opérations. La complexité de ce dispositif dépend bien sûr de la complexité du périphérique concerné. De même, son architecture technique n’est pas toujours basée sur le modèle de Von Neumann.

Le Système d’Exploitation (ou « Operating System », OS) :

  • C’est un logiciel regroupant l’ensemble des programmes coordonnant l’utilisation des ressources d’un Système informatique par les logiciels applicatifs. Son initialisation est activée par le programme d’amorçage du firmware lors de la mise sous tension de l’unité principale.
  • Le Pilote informatique est un groupe de programmes spécifiques à un périphérique informatique mettant en pratique les protocoles d’interactions entre le système d’exploitation et ce périphérique.

Les logiciels applicatifs :
Les logiciels développés pour une Application informatique sont sollicités par les utilisateurs. Les traitements et leurs interactions avec les autres ressources logicielles et matérielles sont pilotés par le Système d’Exploitation.

Les Intergiciels (ou « Middleware » en anglais) :
« Middleware » désigne une catégorie de logiciel qui réalise des interactions entre Applications Informatiques ou entre leurs composants. Deux exemples :

  • Les logiciels ETL (acronyme anglais de « Extract, Transform and Load », soit en français extraire, transformer et charger) sont des systèmes d’interfaçage paramétrables permettant d’extraire des Données produites par une première application informatique, d’en transformer la structure pour la rendre compatible et la réintégrer dans une seconde application.
  • Un SGBD-R est un Intergiciel qui gère les données d’une Base de Données relationnelles :
    – Le Code Source de l’Application informatique contient des instructions écrites dans le langage du SGBD-R (le plus souvent SQL, selon son DML, pour « Data Manipulation Language »). Lors de l’exécution du logiciel, les instructions SQL sont interprétées et exécutées.
    – Les SGBD-R comprennent aussi des composants logiciels pour : élaborer le Modèle de données (selon le DDL, pour « Data Description Language ») ; permettre de concevoir et d’exécuter de requêtes dynamiques d’analyse des données stockées (composant logiciel souvent appelé requêteur).

Autres types de logiciels :

Tous les types de logiciels ne figurent pas sur ce schéma simplifié, notamment :

  • Les logiciels d’administration et de services techniques :
    L’administrateur du Système informatique dispose généralement de nombreux utilitaires qui sont autant de logiciels aux fonctions spécifiques : suivre le fonctionnement global (« monitoring ») ; analyser l’activité des composants matériels ; planifier des traitements ; mesurer les performances des applications informatiques ; gérer les situations exceptionnelles ; administrer l’espace disponible sur ses disques, etc.
  • Les logiciels de développements :
    Les concepteurs de nouvelles Applications Informatiques disposent de logiciels de Modélisation de leurs traitements ou de leur système de données.
    Les programmeurs disposent d’Éditeurs de Langage de Programmation qui contrôlent dynamiquement la syntaxe de leur de Code Source ; les Compilateurs sont d’autres logiciels qui traduiront ce code source en Code Exécutable.
    L’équipe de développement peut aussi disposer de logiciels de conception et de gestion des jeux d’essais ainsi que d’outils de gestion des versions livrées. Etc.

Note complémentaire :
Le concept de logiciel est indissociable de celui de Version Logicielle qui qualifie chacune de ses publications.

Synonymes:
Software, Open Source, Logiciel Libre, Freeware, Shareware, Intergiciel, Middleware, Firmware
Sidebar