Le modèle client-serveur est un concept théorique de fonctionnement logiciel où des programmes autonomes échangent des messages. Il implique une séparation des rôles entre le client, qui fait une demande de service, et le serveur, qui la traite et renvoie les résultats. Ce modèle est souvent associé à des architectures distribuées et à des systèmes ouverts, favorisant l'efficacité et la gestion des données.