Thirteen contemporary definitions of Middleware were analyzed. The definitions agree that any software that can do the following should be classified as Middleware (1) provide service that provides transparent application-to-application interaction across the network, (2) act as a service provider for distributed applications, and (3) provide services that are primarily used by distributed applications (e.g., RPCs, ORBs, Directories, name-resolution services, etc.) Most definitions agree that Middleware is that level of software required to achieve platform, location, and network transparency. There is some discrepancy about the OSI levels at which middleware operates. The majority of definitions limit it to levels 5, 6, and 7. Additionally, almost half of the definitions do not include database transparency as something achieved by Middleware, perhaps due to the ambiguous classification of ODBC and JDBC as software. Assuming that the number of times a service is mentioned, the majority of the definitions rank services associated with legal access to an application as core to Middleware, along with valid, standardized APIs for application development as core to the definition of middleware.
Library of Congress Subject Headings
Department, Program, or Center
Computer Science (GCCIS)
Mathew, Maya, "Derivation of the required elements for a definition of the term middleware" (2002). Thesis. Rochester Institute of Technology. Accessed from
RIT – Main Campus