choisir logiciel libre ou open source

Comment choisir un logiciel libre ou open source ?


Le choix d’un logiciel libre ou open source repose sur un ensemble de considérations plus ou moins spécifiques. Certaines considérations sont communes aux logiciels propriétaires, comme la couverture fonctionnelle. D’autres sont plus particulières et entraînent souvent bon nombre d’interrogations, voire font reculer les utilisateurs potentiels. Un article qui se positionne dans le contexte de l’entreprise.

Un logiciel libre ou open source reste… un logiciel

Commençons par éliminer le questionnement le plus simple. Quoi qu’il arrive, cette famille de logiciels reste un programme que l’on exécute sur un ordinateur ou un serveur. Ce programme doit rendre des services attendus par les utilisateurs. Cette première étude, celle de la couverture fonctionnelle et de l’adéquation aux besoins, reste incontournable.

Cependant, l‘ouverture procurée par les licences libres ou open source peut amener à être plus « souple » sur ce point. Souvent, lorsqu’un logiciel propriétaire ne dispose pas d’une fonctionnalité qui vous est indispensable, vous n’avez d’autres choix que de chercher ailleurs. Rares sont les éditeurs qui accepteront d’ajouter juste pour vous une fonction. C’est d’autant plus vrai que l’éditeur est gros.

Avec les logiciels libres, ce n’est pas tout à fait aussi fermé. Noter bien que je n’ai pas dit que c’était simple. Si la licence vous autorise effectivement à modifier le logiciel ou à le faire modifier par un tiers, encore faut-il s’assurer que cette modification soit acceptée par ceux qui gèrent le logiciel. Autrement dit, il faudra qu’ils acceptent d’intégrer votre modification dans le code du logiciel.

Dans le cas contraire, vous vous retrouverez avec votre version modifiée du logiciel. Lors de la sortie d’une nouvelle version, il vous faudra à nouveau intégrer votre modification ce qui peut être problématique. Je referme cette parenthèse, car la capacité à reverser le code modifié à un logiciel libre est un point souvent ignoré par les utilisateurs et pourtant hautement stratégique.

Communauté, intégrateur, éditeur

C’est là que les choses se compliquent quelque peu avec les logiciels libres ou open source. Ils sont portés par une grande diversité d’acteurs. Nous sommes en effet habitués au principe de l’éditeur de logiciel. Une entreprise qui développe et commercialise le logiciel.

Ici, on peut identifier au moins quatre grands types d’acteurs :

  • La communauté d’amateurs éclairés : un ensemble d’individus regroupés autour d’un projet de logiciel et d’une « forge » qui développent et maintiennent un logiciel sur leur temps libre. Un modèle sur lequel reposent parfois des outils d’une grande complexité.
  • L’intégrateur ou société de services, on parle aussi de SSLL (Société de Services en Logiciel Libre). Ils fournissent des services de mise en place, de formation, de développement à façon ou encore de support autour d’un ou plusieurs logiciels.
  • L’éditeur, c’est une peu une sorte d’intégrateur qui se serait spécialisé sur un seul logiciel. Souvent même, il en a assuré seul le développement.
  • La communauté industrielle : nous avons là un ensemble d’entreprises qui se regroupent pour mutualiser leurs moyens autour de briques logiciels. Souvent ces entreprises sont du domaine technologique ou de grands groupes.

Bien sûr il existe des modèles mixtes entre ces différents acteurs où se croisent parfois l’amateur et l’entreprise. Il convient de porter une attention particulière à la façon dont sont organisés le projet et les acteurs.

Difficile de dire sans étudier le contexte et les attentes de chacun quel est le meilleur modèle. Certains  préféreront le logiciel porté par un éditeur pour avoir l’assurance d’obtenir une réponse compétente aux problèmes rencontrés avec le logiciel, tandis que d’autres préféreront les logiciels communautaires, jugés plus pérennes.

Le projet

On s’intéressera à l’historique du projet, s’il est issu d’un « fork » (la séparation d’un même projet en deux projets distincts) ou en passe d’en être victime,  son âge, mais aussi  sa feuille de route si elle existe et est accessible. Comme pour un logiciel classique, la communauté des utilisateurs est un indicateur. Dans le cas des logiciels libres, on recherchera l’existence de références significatives dans le monde de l’entreprise.

On parcourra les forums ou listes de diffusion associées afin d’évaluer l’activité du projet. Un autre critère à étudier est d’essayer d’identifier le nombre de développeurs qui contribuent réellement à un projet. Parfois, il peut exister un très grand déséquilibre entre l’adoption d’un logiciel libre et le nombre de développeurs qui le portent réellement.

Un autre point important est la nature des contributeurs. Dans les communautés industrielles, un projet peut être fortement dépendant d’une entreprise qui poussera les développements dans le sens qui l’arrange et pas forcément dans l’intérêt de l’utilisateur final. En somme : plus le nombre de contributeurs est élevé et leurs origines diverses, plus c’est un gage d’indépendance et de pérennité pour l’évolution du projet.

Les licences de logiciel libre impliquent qu’il y a un détenteur des droits sur le projet. Un point qu’il faut analyser pour savoir si le projet peut facilement ou pas changer de licence. Ce point est assez complexe à étudier. La nature de la licence et sa « permissivité » (capacité à modifier et encapsuler  le logiciel dans un logiciel fermé) sont à prendre en considération également.

Pour en savoir plus

Reportez-vous à ma présentation sur l’économie du logiciel libre.

Crédit Image du domaine public (CC0), Pixabay