Middleware is software that allows elements of applications to interoperate across networks links, despite differences in underlying communications protocols, system architectures, operating systems, and databases and other application services.
— Computer Science