Un middleware est un logiciel de couche intermédiaire qui vient faire la jonction avec d'autres éléments ou logiciels informatiques.
Généralement utilisé pour de la sécurisation, de la simplification ou du mapping de données le middleware est très populaire dans les architectures logiciels de part la flexibilité qu'il procure.
Concrètement un middleware est un programme qui reçoit des données, qu'il utilise pour interagir avec un autre programme tout en fournissant une abstraction de simplification au premier programme ou en sécurisant l'accès au programme final qui lui ne possède pas de couche d'accès de contrôle.