Logiciel est une suite de instructions écrites être interprété par un ordinateur dans le but d'effectuer des tâches spécifiques. Il peut également être défini comme le programmes qui contrôlent le fonctionnement d'un ordinateur.
Sur un ordinateur, le logiciel est classé comme la partie logique dont la fonction est de fournir des instructions pour le Matériel. Le matériel est toute la partie physique qui constitue l'ordinateur, par exemple le processeur, la mémoire et les périphériques d'entrée et de sortie. Le logiciel est constitué de l'ensemble des programmes qui existent pour un système donné, qu'ils soient produits par l'utilisateur ou par le constructeur de l'ordinateur.
Le terme anglais "Logiciel" a été utilisé pour la première fois en 1958 dans un article écrit par le scientifique américain John Wilder Tukey. Il était également responsable de l'introduction du terme "bit" pour désigner "chiffre binaire".
Les logiciels peuvent être classés en trois types :
Logiciel système: est l'ensemble des informations traitées par le système interne d'un ordinateur qui permet l'interaction entre l'utilisateur et les périphériques de l'ordinateur via une interface graphique. Il comprend le système d'exploitation et les pilotes de périphériques (mémoire, imprimante, clavier et autres).
Logiciel de programmation: est l'ensemble des outils qui permettent au programmeur de développer des systèmes informatiques, en utilisant généralement des langages de programmation et un environnement de développement intégré visuel.
Logiciel d'application: sont des programmes informatiques qui permettent à l'utilisateur d'effectuer une série de tâches spécifiques dans plusieurs domaines d'activité tels que l'architecture, la comptabilité, l'éducation, la médecine et d'autres domaines publicités. Il existe également des jeux vidéo, des bases de données, des systèmes d'automatisation industrielle, etc.
Il y a aussi la notion de logiciel gratuit, qui fait référence à un programme qui donne à l'utilisateur la liberté, lui permettant de l'étudier, de le modifier et de le partager avec d'autres personnes. Pour cela, l'utilisateur doit pouvoir accéder au code source, pour le modifier en fonction de ses besoins.