← Lexique

Développer
un logiciel.

Le développement logiciel n'est pas l'écriture de code. L'écriture de code est la partie visible — et rarement la plus coûteuse. Voici le cycle complet, ce que chaque étape coûte réellement, et où les projets déraillent le plus souvent.

Définition

Le développement logiciel est l'ensemble des activités qui transforment un besoin en un système fonctionnel, exploité et maintenu : comprendre le problème, concevoir une solution, l'implémenter, la vérifier, la livrer, l'opérer et la faire évoluer.

On parle de génie logiciel quand on insiste sur la discipline d'ingénierie qui encadre ces activités : méthodes, mesures, qualité, gestion du risque.

Les six étapes

1. Cadrage et exigences

Comprendre le problème avant de proposer une solution. L'erreur la plus chère de toute l'industrie se commet ici : construire correctement la mauvaise chose. Un défaut d'exigence détecté en production coûte plusieurs ordres de grandeur de plus que le même défaut détecté au cadrage — le rapport exact varie selon les études, mais l'ordre de grandeur ne fait aucun doute.

Un cadrage sérieux mesure la situation de départ. Sans référence chiffrée avant, personne ne pourra dire après si le projet a fonctionné.

2. Conception

Architecture, modèle de données, frontières entre modules, choix technologiques. C'est là que se prennent les décisions difficiles à défaire : le modèle de données en particulier survivra à trois générations de code applicatif.

Règle utile : concevez en détail ce qui est difficile à changer, laissez flou ce qui est facile à changer.

3. Implémentation

L'écriture du code, la revue par les pairs, l'intégration continue. En agile, cette phase ne se fait pas d'un bloc : elle s'entrelace avec les autres, cycle après cycle.

4. Vérification

Tests unitaires, tests d'intégration, tests de bout en bout, tests de charge, revue de sécurité. La vérification n'est pas une phase qui suit le développement : c'est une activité continue, sinon elle est la première sacrifiée quand la date approche.

5. Mise en production

Déploiement, migration des données, bascule, plan de retour arrière. La partie la plus sous-estimée : livrer un logiciel neuf est simple, migrer les données et les habitudes d'une entreprise qui tourne déjà l'est beaucoup moins.

6. Exploitation et évolution

Supervision, correctifs, mises à jour de sécurité, nouvelles fonctionnalités, remboursement de la dette technique. C'est l'étape la plus longue et la plus chère — la maintenance représente typiquement la majorité du coût total de possession d'un logiciel sur sa durée de vie.

Autrement dit : si votre budget s'arrête à la première mise en ligne, vous avez budgété la petite moitié du projet.

Les modèles de cycle de vie

Ce qui fait vraiment dérailler un projet

Rarement la technologie. Presque toujours l'une de ces cinq causes :

  1. Un problème mal posé. Le logiciel demandé résout un symptôme, pas la cause. Il fonctionne, et il ne sert à rien.
  2. Aucune référence de départ. Personne n'a mesuré la situation avant. Le débat sur le succès du projet devient une affaire d'opinions.
  3. Un périmètre qui glisse sans arbitrage. Ajouter est toujours possible, à condition que quelque chose sorte. Sans cet arbitrage, la date meurt en silence.
  4. Le prototype promu en production. Le démo impressionne, on décide de le garder, et on découvre qu'il n'a ni tests, ni sécurité, ni supervision. C'est le mode d'échec le plus fréquent des projets d'IA en particulier.
  5. Le transfert oublié. Le logiciel est livré, mais personne chez le client ne sait l'opérer ni le faire évoluer. Six mois plus tard, il est gelé.

Combien ça coûte, honnêtement

Personne ne peut donner un prix sérieux sans comprendre le problème. Ce qu'on peut donner, ce sont les facteurs qui font varier le chiffre d'un ordre de grandeur :

Au Québec, plusieurs programmes de subvention et de crédit d'impôt s'appliquent aux projets de développement et d'innovation numérique. On identifie ceux qui s'appliquent au vôtre et on aide à monter le dossier — c'est inclus dans le plan.

Notre façon de travailler

Quatre étapes, sans surprise : on mesure votre situation de départ, on écrit un plan que vous approuvez avant qu'une ligne de code soit écrite, on livre en production par incréments, puis on remesure. Le code, la documentation et la propriété intellectuelle vous appartiennent, et on bâtit pour que vos équipes puissent opérer sans nous.

Questions fréquentes

Qu'est-ce que le développement logiciel ?

C'est l'ensemble des activités qui transforment un besoin en un système fonctionnel exploité : comprendre le problème, concevoir, implémenter, vérifier, livrer, opérer et faire évoluer. L'écriture de code n'en est qu'une partie.

Quelles sont les étapes du développement d'un logiciel ?

Le cadrage et les exigences, la conception, l'implémentation, la vérification, la mise en production, puis l'exploitation et l'évolution. En agile, ces étapes ne se font pas en séquence : elles se répètent à chaque cycle.

Combien de temps faut-il pour développer un logiciel ?

Une première version en production prend généralement de quelques semaines à quelques mois selon le nombre d'intégrations, le volume de données à migrer et les exigences réglementaires. Un délai plus long avant la première mise en ligne est en soi un facteur de risque.

Quelle part du coût représente la maintenance ?

La majorité du coût total de possession sur la durée de vie d'un logiciel. Un budget qui s'arrête à la première mise en ligne ne couvre qu'une partie du projet réel.

Faut-il développer sur mesure ou acheter un logiciel existant ?

Achetez ce qui n'est pas votre différenciateur — comptabilité, courriel, paie. Développez sur mesure ce qui constitue votre avantage concurrentiel ou ce qu'aucun produit du marché ne fait comme vos opérations l'exigent.

À lire ensuite

Parlons de votre projet

Un logiciel à bâtir, à reprendre ou à sauver ? Décrivez-nous votre situation — on vous dit franchement si on est les bons, et lequel de nos trois services s'applique.

← Lexique Nous parler