Le développement logiciel a son jargon, et il n’est pas toujours simple à suivre quand on n’est pas développeur. Ce glossaire réunit le vocabulaire essentiel, expliqué simplement, pour mieux comprendre les échanges avec une équipe technique et cadrer sereinement un projet.
Il est pensé par Sokeo, agence de développement informatique sur mesure, à destination des porteurs de projet comme des curieux. Les termes sont regroupés par thème, et chaque notion clé renvoie vers une explication plus complète.
Les fondamentaux
- Logiciel : ensemble de programmes et d’instructions qui font fonctionner un ordinateur et lui font exécuter des tâches. Nous proposons une définition complète du logiciel.
- Application : logiciel conçu pour un usage précis côté utilisateur, qu’il soit web, mobile ou de bureau. À ce sujet, voir la différence entre logiciel et application.
- Programme informatique : suite d’instructions écrites pour réaliser une tâche, brique de base d’un logiciel. On précise ici ce qui distingue un programme d’un logiciel.
- Progiciel : logiciel standardisé, vendu clé en main pour un usage métier (comptabilité, paie…). Détails sur le progiciel comparé au logiciel.
- Logiciel applicatif : logiciel qui répond à un besoin concret de l’utilisateur, par opposition aux logiciels système. Voir notre page sur le logiciel applicatif.
- Firmware : logiciel embarqué directement dans un matériel pour le piloter. À approfondir : firmware et logiciel.
- Code source : texte écrit par les développeurs dans un langage de programmation, avant sa traduction en programme exécutable.
- Algorithme : suite ordonnée d’étapes logiques permettant de résoudre un problème ou d’obtenir un résultat.
- Programmation : activité qui consiste à écrire le code définissant le comportement d’un logiciel. Voir la définition de la programmation informatique.
- Développement informatique : ensemble des activités de conception, d’écriture et de mise au point d’un logiciel. On explique en détail ce qu’est le développement informatique.
- Compilation : traduction du code source en langage exécutable par la machine, réalisée par un compilateur.
- Bug : erreur ou dysfonctionnement dans un programme, qui provoque un comportement inattendu.
Les métiers et les acteurs
- Développeur : professionnel qui conçoit, écrit et maintient le code des logiciels. Le métier de développeur recouvre plusieurs spécialités (front, back, mobile).
- Architecte logiciel : profil qui définit la structure technique globale d’un projet et ses grands choix. On détaille le rôle de l’architecte logiciel.
- DevOps : approche qui rapproche développement et exploitation pour livrer plus vite et de façon plus fiable.
- Product owner : responsable qui porte la vision du produit et priorise les fonctionnalités à développer.
Langages, frameworks et outils
- Langage de programmation : ensemble de règles et de mots-clés servant à écrire des instructions compréhensibles par la machine (Python, Java, C#, PHP…).
- Python : langage réputé pour sa lisibilité, très utilisé en web, en data et en IA. Voir notre page sur le développement Python.
- PHP : langage historique du web, qui fait tourner une grande partie des sites. À découvrir : le développement PHP.
- Java : langage portable très répandu en entreprise et sur mobile. Plus de détails sur le langage Java.
- JavaScript : langage du web côté navigateur, devenu incontournable côté serveur également.
- React : bibliothèque JavaScript populaire pour construire des interfaces web modernes. Voir notre page sur React.
- C# et .NET : langage et plateforme de Microsoft, courants pour les applications de bureau et web.
- Framework : socle de code prêt à l’emploi qui structure et accélère le développement (React, Symfony, par exemple).
- Bibliothèque : ensemble de fonctions réutilisables qu’un développeur intègre à son projet pour ne pas tout réécrire.
- IDE : environnement de développement intégré réunissant éditeur, débogueur et outils dans un même logiciel, comme Visual Studio.
- WinDev : atelier de génie logiciel français de PC SOFT, fondé sur son propre langage. Découvrez ce qu’est WinDev.
- API : interface qui permet à deux logiciels de communiquer et d’échanger des données entre eux.
- SDK : kit de développement fourni par une plateforme pour y créer des applications.
Logiciel libre, propriétaire et licences
- Open source : logiciel dont le code source est public, consultable et modifiable.
- Logiciel libre : logiciel qui garantit les libertés d’utiliser, d’étudier, de modifier et de redistribuer le code. Voir la définition du logiciel libre.
- Logiciel propriétaire : logiciel au code fermé, dont l’usage est encadré par une licence commerciale. Plus de détails sur le logiciel propriétaire.
- Licence GPL : licence libre de référence qui impose de conserver les mêmes libertés en cas de redistribution.
Architecture, données et hébergement
- Architecture logicielle : organisation générale des composants d’un logiciel et de la façon dont ils interagissent. Voir l’architecture d’une application.
- Architecture 3-tiers : découpage d’une application en trois couches (présentation, traitements, données). On explique l’architecture 3-tiers.
- Frontend : partie visible d’une application, l’interface avec laquelle l’utilisateur interagit.
- Backend : partie invisible, côté serveur, qui gère la logique, les traitements et les données.
- Client-serveur : modèle où un programme client envoie des requêtes à un serveur qui les traite et répond.
- Base de données : système organisé qui stocke, structure et permet de retrouver des données (MySQL, PostgreSQL…).
- Cloud : infrastructure distante accessible par internet, qui héberge applications et données sans serveur local.
- SaaS : logiciel hébergé en ligne et accessible par abonnement, sans installation locale. C’est le principe du logiciel en tant que service.
- Application native : application développée spécifiquement pour un système (iOS, Android), au plus près du matériel.
- PWA : application web qui s’utilise comme une application installée. Voir notre comparatif PWA et application native.
- Interopérabilité : capacité de plusieurs systèmes à fonctionner et à échanger ensemble. À ce sujet, voir les normes d’interopérabilité.
- Conteneur : environnement léger et isolé qui embarque une application et ses dépendances (Docker).
- Microservices : architecture qui découpe une application en petits services indépendants.
Conception et expérience utilisateur
- Cahier des charges : document qui décrit les besoins, fonctionnalités et contraintes d’un projet avant le développement. Voir comment rédiger un cahier des charges.
- Spécifications fonctionnelles : description détaillée de ce que le logiciel doit faire. On détaille les spécifications fonctionnelles.
- UML : langage de modélisation visuelle pour concevoir un logiciel avant de le coder. À découvrir : la conception UML.
- Cas d’utilisation : description d’une interaction type entre un utilisateur et le système.
- Maquette : représentation visuelle de l’interface avant développement (wireframe, prototype).
- UX/UI design : conception de l’expérience utilisateur et de l’interface. Voir notre page sur le design d’application.
- Ergonomie : facilité d’utilisation et confort d’un logiciel pour ses utilisateurs. On traite l’ergonomie d’une application.
- Responsive : capacité d’une interface à s’adapter à toutes les tailles d’écran.
Méthodes et cycle de développement
- Méthode agile : approche de gestion de projet itérative et flexible, qui livre par petites étapes plutôt qu’en une seule fois.
- Scrum : cadre agile organisé en sprints, avec des rôles et des rituels précis.
- Sprint : cycle court (souvent deux à quatre semaines) au terme duquel une partie fonctionnelle est livrée.
- Backlog : liste priorisée des fonctionnalités et tâches restant à réaliser.
- MVP : version minimale viable d’un produit, suffisante pour tester l’idée auprès des premiers utilisateurs.
- Versioning (Git) : gestion des versions du code, qui conserve l’historique des modifications et facilite le travail à plusieurs.
- Cycle de vie du logiciel : ensemble des étapes d’un logiciel, de la conception à la maintenance. Voir notre article sur le cycle de vie d’un logiciel.
- Projet de développement : démarche structurée pour concevoir et livrer un logiciel. On explique ce qu’est un projet de développement informatique.
- Déploiement : mise en production d’une application pour la rendre accessible aux utilisateurs.
- Intégration continue (CI/CD) : automatisation des tests et des livraisons à chaque modification du code.
- Migration : transfert d’une application ou de données vers une nouvelle technologie. Exemple détaillé : la migration de VBA.
Qualité, sécurité et maintenance
- Débogage : recherche et correction des bugs présents dans le code.
- Test : vérification, manuelle ou automatisée, que le logiciel fonctionne comme prévu. On explique pourquoi tester un logiciel.
- Test automatisé : test exécuté par des scripts plutôt que manuellement, pour gagner en fiabilité. Voir le test automatisé.
- Test de charge : vérification du comportement d’une application sous forte affluence. À ce sujet : le test de charge.
- Recette : phase de validation où le client vérifie que le logiciel répond bien au cahier des charges.
- Refactoring : réécriture du code pour l’améliorer et le rendre plus lisible, sans changer son comportement.
- Dette technique : accumulation de raccourcis techniques qui font gagner du temps à court terme mais coûtent cher à corriger plus tard.
- Sécurisation : protection d’une application contre les failles et les attaques. On traite la sécurisation d’une application.
- Monitoring : surveillance d’une application en production pour détecter les incidents. Voir le monitoring applicatif.
- Maintenance : ensemble des interventions qui corrigent, adaptent et font évoluer un logiciel après sa mise en service.
- Scalabilité : capacité d’un logiciel à absorber une montée en charge sans perdre en performance.
Ce qu’il faut retenir
Maîtriser ce vocabulaire ne fait pas de vous un développeur, mais cela change beaucoup la qualité du dialogue avec une équipe technique : besoins mieux exprimés, attentes plus claires, décisions plus rapides. Gardez ce glossaire sous la main au moment de cadrer un projet. Et si vous préférez être accompagné de bout en bout, découvrez notre offre de développement de logiciels sur mesure.
FAQ
À quoi sert de connaître le vocabulaire du développement logiciel ?
À mieux dialoguer avec les développeurs et à cadrer un projet sans malentendu. Comprendre des termes comme cahier des charges, MVP ou recette permet d’exprimer clairement ses attentes, de suivre l’avancement et de prendre les bonnes décisions au bon moment.
Faut-il être technique pour mener un projet de développement avec une agence ?
Non. Une bonne agence vulgarise et traduit le besoin métier en solution technique. Connaître quelques notions clés aide à suivre, mais le rôle du prestataire est justement de vous accompagner sans exiger de compétences en programmation.
Par quoi commencer quand on lance un projet de développement logiciel ?
Commencez par clarifier le besoin et les objectifs, puis formalisez-les dans un cahier des charges décrivant fonctionnalités, utilisateurs et contraintes. Vient ensuite le choix d’un prestataire capable de proposer la bonne solution technique et de vous guider jusqu’à la mise en production.