Couverture du journal du 26/04/2024 Le nouveau magazine

Je choisis de faire développer un logiciel spécifique : à quoi faut-il faire attention ?

Les spécificités des entreprises font parfois qu’il n’est pas possible de trouver sur le marché un logiciel “clé en main“ répondant à ses besoins. L’entreprise pourra alors faire appel à un prestataire pour faire développer un logiciel sur mesure. Ce type de projet, coûteux et chronophage, ne doit surtout pas être appréhendé à la légère et une attention toute particulière doit être portée sur le contrat qui matérialisera la relation avec son prestataire. Nous vous proposons un aperçu des principaux sujets à avoir en tête.

Pierre Langlais et Jonathan Guilloux

Pierre Langlais et Jonathan Guilloux, avocats au cabinet Solvoxia. © Benjamin Lachenal

Bien définir et documenter ses besoins

Outre le contrat à proprement parler, qui sera souvent accompagné de l’offre commerciale du prestataire (attention, un devis seul avec uniquement un prix sans contrat est très loin d’être satisfaisant pour des projets de cette ampleur), il est important que figure l’expression de ses besoins par le client.

Il s’agit en effet de la fondation même de ce contrat, l’objectif qui doit être atteint par le prestataire pour que la solution réponde aux besoins de l’entreprise : sans expression de besoins, en cas de conflits il y aura nécessairement débat sur ce qui rentrait ou non dans le contrat.

En pratique, l’expression de besoins sera souvent matérialisée par un cahier des charges (CDC). Il peut être utile de confier sa conception à un tiers, en amont, qui sera potentiellement davantage indépendant dans sa rédaction que le prestataire qui, lui, pourrait être tenté de simplifier vos besoins pour faciliter sa tâche.

À quelles clauses faut-il plus particulièrement être attentif ?

Tout d’abord, aux clauses fixant des délais d’exécution pour le prestataire et prévoyant éventuellement des pénalités de retard. À défaut, le projet risque de s’allonger temporellement et de vous impacter opérationnellement (par exemple, la mise en ligne d’un site Internet avec six mois de retard peut avoir des conséquences lourdes sur votre business plan ou sur l’obsolescence programmée de votre précédent outil logiciel).

Concomitamment à la signature du contrat de développement, un contrat de maintenance devra également être signé afin d’encadrer, passé le développement du logiciel, la maintenance corrective de ce dernier en cas de bugs mais également la maintenance évolutive (prise en compte des évolutions souhaitées par la suite).

Vous devez également vous intéresser à la nature des développements qui seront réalisés, à savoir seront-ils réalisés sur la base de briques logicielles libres ou la base de codes propriétaires ? En effet, le point est important car dans le premier cas, selon la licence applicable, vous ne serez pas pleinement propriétaire car le logiciel aura été développé sur la base de briques logicielles préexistantes mais vous pourrez potentiellement (selon les licences applicables) vous appuyer sur un autre prestataire pour reprendre le projet ou assurer la maintenance en cas de conflit. À l’inverse dans le second cas, sauf cession de droits, vous serez dans la dépendance du prestataire retenu.

En résumé, vous l’aurez compris, dans les deux cas, une cession ou concession (licence) des droits de propriété intellectuelle sur le logiciel devra (de préférence) être prévue à votre profit afin de garantir votre capacité à maintenir ou faire évoluer votre solution sans le prestataire actuel en cas de conflit. Cela impliquera d’avoir communication des codes source du logiciel sans lesquels vous ne pourrez réaliser opérationnellement aucune des actions précitées.

Notons que même en l’absence de cession ou licence vous permettant d’assurer la maintenance ou l’évolution du logiciel comme bon vous semble, il faudra a minima prévoir, via un séquestre, un accès aux codes sources en cas de défaillance avérée du prestataire (ex : refus répété de corriger un bug, procédure collective, etc.)

Enfin, un enjeu important réside dans les conditions dans lesquelles la responsabilité du prestataire peut être engagée, les clauses limitatives étant communes en la matière et l’obligation du prestataire n’étant que de moyens. Attention donc à ce que vos enjeux soient couverts et que des risques importants ne soient pas purement et simplement exclus (exemple : dysfonctionnement du logiciel, failles de sécurité et cyber-attaques, etc.).

En résumé, le développement d’un logiciel sur mesure est un acte qui est loin d’être anecdotique ; logique que son contrat ne le soit pas non plus ! Même si la tentation peut parfois être forte de signer rapidement pour se lancer dans de tels projets, il convient d’être vigilant, notamment (mais pas que) sur les quelques points identifiés ci-dessus.