メッセージ指向ミドルウェア
通信プログラマは、メインフレームのネットワークとPCのネットワークのプロトコルが異なる場合、ゲートウェイシステムを実装する必要がある。このゲートウェイはパケットの中身を変換して双方のシステム間で通信ができるようにする。
このような問題によってアプリケーションの統合は困難となっていた。また、個々のシステムで状況が異なるため、このような統合は個々のシステム毎に設計が必要である。異機種上のアプリケーション間の連結には、オリジナルのシステム開発以上のコスト(場合によっては10倍)がかかった。
複数のアプリケーションの中間に位置して、それらの間の「配管」をする新たな独立したソフトウェアが必要なのは明らかだった。そのようなソフトウェアは、異なるプラットフォーム、異なるプログラミング言語、各種通信プロトコル、様々なハードウェアを扱える必要があった。すなわち、基盤となるインフラストラクチャーの複雑さを切り離すことで、開発者が個々のアプリケーションの機能開発に注力できるようになる。
1980年代末までにミドルウェアがこれら問題への対策として登場した。初期のミドルウェアはサポートするプラットフォームや言語が限られており、有用性は限定的だった。しかし時間とともにミドルウェア製品は複数のプラットフォーム、言語、プロトコルをサポートするようになり、高度化していった。
異機種混合のネットワーク環境で各システムを連結するというミドルウェアの能力は、この技術の利点のほんの一例に過ぎない。2006年現在、ミドルウェアは相互接続可能な既存アプリケーションを増やし、強化する新たな機能を提供している。