Lesson 2 | Middleware |
Objective | Describe the function of middleware. |
What is middleware?
Middleware is software that connects two otherwise separate applications, enabling software architectures and applications to communicate and
operate with one another in spite of being hosted on heterogeneous architectures or platforms. In general, all
categories of middleware accomplish the same thing. They provide a set of services that automate the process by which
applications communicate. But there different types of middleware. Why? The data and processes in various applications
are stored and represented using different techniques. Different types of middleware technologies specialize in
providing different types of data or process interoperability. Until there is a middleware tool that integrates
everything, companies will continue to combine various tools to meet their specific needs.
Question: What is the function of middleware?
Answer: To connect two otherwise separate applications, enabling software architectures and applications to communicate and operate with one another.
Middleware Categories
These middleware products fall into various categories. The most common middleware categories are:
- Message-oriented middleware
- RPC systems
- Data integration middleware
- Distributed object middleware
- Transaction processors
- Enterprise application integration products
- Workflow services
General Middleware Considerations
Throughout this module, we address the pros and cons of each type of middleware. Here, we'd like to raise some
overarching considerations that should be raised when you're contemplating the purchase and implementation of any
kind of middleware. These considerations include:
- In-house expertise
- System compatibility
- Maintenance
In the MouseOver below, we will explain why you should consider these issues.
Middleware Considerations
These general middleware considerations are also available
in table form.
- In-house expertise: The developers of integration applications are often people whose primary expertise is not in programming but
rather in the processes being automated. This is problematic because middleware applications often come with user interfaces that are difficult for programmers and professionals to work with.
- System compatibility: Not all middleware fits into standard applications, networks, and systems management product suites. This can
make QA and debugging more complex. Some middleware packages have tried to surmount these difficulties, but even they often require workarounds.
- Maintenance: Unlike major database and development tools, many middleware packages are not updated in predictable cycles. Integration applications typically incorporate business rules that change constantly. As a result, integration applications must evolve rapidly in ways that are hard to predict, and even harder to maintain.
Middleware Function - Quiz
Click the Quiz link below to check your understanding of the function and types of middleware available and of the issues
important to adopting it.
Middleware Function - Quiz
The next lesson is about one type of middleware known as
message-oriented middleware.