A computer solution that allows applications to be interconnected and communicate using a common language.