Share on Facebook Share on Twitter Email
Answers.com

middleware

 
(mĭd'l-wâr') pronunciation
n.
Software that serves as an intermediary between systems software and an application.


Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
TechEncyclopedia:

middleware

Top

Software that functions as a conversion or translation layer. It is also a consolidator and integrator. Custom-programmed middleware solutions have been developed for decades to enable one application to communicate with another that either runs on a different platform or comes from a different vendor or both. Today, there is a diverse group of products that offer packaged middleware solutions as outlined in the following examples. See application integration.

TP Monitors
The TP monitor (transaction processing monitor) was perhaps the first product to be called middleware. Sitting between the requesting client program and the databases, it ensures that all databases are updated properly (see TP monitor).

Messaging Middleware
Messaging middleware provides a common interface and transport between applications. If the target machine is down or overloaded, it stores the data in a message queue until it becomes available. The messaging system may contain business logic that routes messages to the appropriate destinations and reformats the data as well. Messaging middleware is similar to an e-mail messaging system, except that it is used to send data between applications. (see messaging middleware).

Distributed Processing
Distributed object systems such as CORBA, DCOM and EJB enable processes to be run anywhere in the network. They differ from messaging middleware in that they cause processes (components/objects) to be executed in real time rather than sending data.

Database Middleware
Middleware provides a common interface between a query and multiple, distributed databases. Using either a hub and spoke architecture (top) or a distributed architecture (bottom), it enables data to be consolidated from a variety of disparate data sources (see EDA and DQbroker).

Common Interfaces
Common programming interfaces between applications are considered middleware. For example, Open Database Connectivity (ODBC) enables applications to make a standard call to all the databases that support the ODBC interface.

Application Server Middleware
A Web-based application server that provides interfaces to a wide variety of applications is used as middleware between the browser and legacy systems. The browser can be used at desktops or on laptops when traveling. A wide range of server-side processing has been supported by appservers (see J2EE).

Universal Computing
These two examples link an application to an operating environment and are the Holy Grail of computing. They enable the same program to run on any hardware platform without modification. HTML pages written in JavaScript can execute on any JavaScript-enabled Web browser running under any operating system. Java applications and applets are executed by a Java Virtual Machine, which can be created for any operating system. Thus, the browser and Java negate the requirement for a single operating system and hardware environment.

Network Logon
Middleware for networks includes a common approach for identifying users and network resources, authorizing and authenticating users and setting up standardized directory schemas. Using middleware in this fashion avoids the problems that occur when applications are responsible for these tasks and incompatible versions arise. The Internet2 project is expected to make advancements in this area. For more information, visit http://middleware.internet2.edu.

Enterprise Integration
ActiveWorks software was designed solely as an integration solution. Brokering messages between a wide range of enterprise applications, it added processing where required. ActiveWorks was later acquired by webMethods and folded into its BPM suite. (Image courtesy of Active Software, Inc.)

Download Computer Desktop Encyclopedia to your PC, iPhone or Android.

Wikipedia on Answers.com:

Middleware

Top

In its most general sense, middleware is computer software that provides services to software applications beyond those available from the operating system. Thus middleware is not obviously part of an operating system, and neither is it part of one software application. Middleware is intended to solve general “plumbing” issues faced by developers, so they can focus on the specific purpose of their application.

Contents

Middleware in distributed applications

The term is most commonly used for software that enables communication and management of data in distributed applications. In this more specific sense middleware can be described as “the dash in client-server”.

ObjectWeb defines middleware as: "The software layer that lies between the operating system and applications on each side of a distributed computing system in a network."[1]. Services that can be regarded as middleware include enterprise application integration, data integration and message oriented middleware(MOM).

Other examples of middleware

The term middleware is used in other contexts as well.

  • The Android environment uses the Linux operating system at its core. In addition, Android provides a middleware layer including libraries and services to facilitate the development of performance-sensitive or device-specific functionality, such as data storage, screen display, multimedia, and web browsing. The Android middleware layer also contains the Dalvik virtual machine and its core Java application libraries[2].
  • Game engine software such as Gamebryo and Renderware are sometimes described as middleware, because they provide many services to simplify game development.
  • In simulation technology, middleware is generally used in the context of the high level architecture (HLA) that applies to many distributed simulations. It is a layer of software that lies between the application code and the run-time infrastructure. Middleware generally consists of a library of functions, and enables a number of applications --simulations or federates in HLA terminology-- to page these functions from the common library rather than re-create them for each application.
  • Wireless networking developers can use middleware to meet the challenges associated with wireless sensor network (WSN), or WSN technologies. Implementing a middleware application allows WSN developers to integrate operating systems and hardware with the wide variety of various applications that are currently available.[3]
  • The Miles Sound System provided a middleware software driver allowing developers to build software that worked with a range of different sound cards, without concerning themselves with the details of each card.
  • Universal Home API, or UHAPI, is an application programming interface (API) for consumer electronics appliances, created by the UHAPI Forum. The objective of UHAPI is to enable standard middleware to run on audio/video streaming platforms via a hardware-independent industry standard API.

Boundaries

The distinction between operating system and middleware functionality is, to some extent, arbitrary. While core kernel functionality can only be provided by the operating system itself, some functionality previously provided by separately sold middleware is now integrated in operating systems. A typical example is the TCP/IP stack for telecommunications, nowadays included in virtually every operating system.

Origins

Middleware is a relatively new addition to the computing landscape. It gained popularity in the 1980s as a solution to the problem of how to link newer applications to older legacy systems, although the term had been in use since 1968.[4] It also facilitated distributed processing, the connection of multiple applications to create a larger application, usually over a network.

References

  1. ^ Krakowiak, Sacha. "What's middleware?". ObjectWeb.org. http://middleware.objectweb.org/. Retrieved 2005-05-06. 
  2. ^ Charlie Collins, Michael Galpin and Matthias Kaeppler, Android in Practice, Manning Publications, 2011
  3. ^ Hadim, S. and Mohamed, N. (2006). Middleware challenges and approaches for wireless sensor networks. IEEE Distributed Systems Online vol 7. Issue 3. Retrieved March 4, 2009 from iEEE Distributed Systems Online
  4. ^ Gall, Nick (July 30, 2005). "Origin of the term middleware". http://ironick.typepad.com/ironick/2005/07/update_on_the_o.html. 

External links


Translations:

Middleware

Top

Dansk (Danish)
n. - middleware (edb)

Français (French)
n. - (Comput) logiciel médian, (Comput) logiciel qui fournit une interface commune de programme d'applications

Deutsch (German)
n. - (Comp) Middleware

Ελληνική (Greek)
n. - (Η/Υ) διαβαθμιστικό πρόγραμμα (μεταξύ προγραμμάτων ελέγχου και εφαρμογών)

Español (Spanish)
n. - software intermedio

Svenska (Swedish)
n. - övergångsprogram

中文(简体)(Chinese (Simplified))
中间设备, 中间件

中文(繁體)(Chinese (Traditional))
n. - 中間設備, 中間件

한국어 (Korean)
n. - 매개 소프트웨어

العربيه (Arabic)
‏(الاسم) برامج وسيطه‏

עברית (Hebrew)
n. - ‮תוכנת מחשב שנכתבה במיוחד לצורכי לקוח מסוים‬


 
 
Related topics:
integration middleware (technology)
MQ (technology)
ESB (technology)

Related answers:
What the various types of middleware? Read answer...
How many middleware certifications are availble in Microsoft? Read answer...
Which are the large middleware software company in the world? Read answer...

Help us answer these:
What is middleware software?
How does a middleware operate?
What are middleware used for?

Post a question - any question - to the WikiAnswers community:

 

Copyrights:

American Heritage Dictionary. The American Heritage® Dictionary of the English Language, Fourth Edition Copyright © 2007, 2000 by Houghton Mifflin Company. Updated in 2009. Published by Houghton Mifflin Company. All rights reserved.  Read more
TechEncyclopedia. THIS DEFINITION IS FOR PERSONAL USE ONLY.
All other reproduction is strictly prohibited without permission from the publisher.
© 1981-2012 The Computer Language Company Inc.  All rights reserved.  Read more
Wikipedia on Answers.com. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article Middleware Read more
Translations. Copyright © 2007, WizCom Technologies Ltd. All rights reserved.  Read more

Follow us
Facebook Twitter
YouTube

Mentioned in

» More» More