middlware

Post on 14-Nov-2014

2.553 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Middleware Technologies

By

Sirisha Mandadi

Overview

Introduction Brief History of EAI/Middleware Middleware Categories CORBA Middleware and Computer Telephony Middleware Usage Considerations Middleware costs Advantages and Disadvantages of Middleware Conclusion

Introduction

Middleware is the "glue" that connects diverse computer systems. Typically, legacy systems store information in proprietary formats, use propriety protocols to communicate, and may even be running on hardware that's no longer manufactured or supported.

Brief History of EAI/Middleware

Enterprise applications, from as early as the 1960s through the late 1970s, were simple in design and functionality, developed largely in part to end repetitive tasks.

By the 1980s, several corporations were beginning to understand the value and necessity for application integration.

Enterprise Resource Planning (ERP)

As ERP applications became much more prevalent in the 1990s, there was a need for corporations to be able to leverage already existing applications and data within the ERP system; this could only be done by introducing EAI.

Legacy Enterprise Situation

Mainframe

Stock Inventory

C/C++

Sales Order Processing

ERP

Customer Billing

Mainframe

Legacy Application

WWW

E-Commerce

WWW

Supply Chain Mgmt

RDBMS

Customer Database

Middleware/ EAI Enterprise Solution

Mainframe

Stock Inventory

C/C++

Sales Order Processing

ERP

Customer Billing

Mainframe

Legacy Application

WWW

E-Commerce

WWW

Supply Chain Mgmt

RDBMS

Customer Database

EAI Infrastructure Services

Middleware can be divided in to 7 categories of services:

Data Management Services (i.e. Database and file system middleware).

Communication Services (i.e. RPC (Remote Procedure Call) and messaging middleware).

Distribution Services (i.e. location, time and security services).

Object Management Services (i.e. by using Object Request Brokers (ORBs)).

Application Co-operation Services (i.e. Transaction-Processing (TP) monitors, e-mail, etc.).

Presentation Services (i.e. User Interfaces, printing and multi-media middleware).

System Management Services (i.e. Configuration-, change-, operations-, problem-, and performance-management services)

Data Management Services

One example of a middleware supporting these features are CI-Link from Cornut Informatique in France. CI-Link is a middleware that connects MS-Windows and Macintosh applications to SQL databases under UNIX. It comes with a high-level built-in development language which lets you centralise tasks on the server. CI-Link is compatible with the several relational DBMSs like Oracle, Informix, Ingres and Progress.

Another database middleware candidate is Accessworks from Oracle Corporation, in co-operation with Digital. Accessworks provides a desktop API via ODBC, SQL services, and read/write access to a wide area of databases, etc. Accessworks is available for the most common client desktops such as MS-DOS, MS-Windows, OS/2, Macintosh, Open VMS, and UNIX systems.

Communication Services

Middleware supporting the communication services can be divided into two different groups: RPC and messaging systems. RPCs provide facilities for synchronous procedure calls on remote systems as if they were local.

The most famous RPC toolset is DCE (Distributed Computing Environment) from OSF, but also available from most UNIX

hardware vendors.

Messaging middleware enables distributed applications to send and receive messages asynchronously using a set of APIs. One example of a such a middleware API is Communications

Integrator from Covia Technologies.

Remote Procedure call

Object Management Services

Tools supporting object management services use Object Request Brokers (ORBs) to provide transparent communications between objects sited on different locations in a network.

OMG’s CORBA is an example of this technology. IONA’s ORBIX is the most famous implementation of CORBA.

In addition to provide communication between objects, CORBA middleware also provide communication with the WWW, RDBMs

and ODBMs.

CORBA

A middleware platform that supports a standardized OO architecture for software applications

- Common Object Request Broker Architecture

- Open standard - developed by the Object Management Group

- CORBA is a component of OMG’s Object Management Architecture

CORBA supports distributed object computing CORBA uses a broker

- an intermediary handling requests in a system

- facilitates communication between clients and server objects

- separates a component’s interface from its implementation

Distribution Services:

The distribution services can be divided into three categories: location services, security services, and time services. Tools supporting location services provide a directory and naming service.

The directory service allows a client to access a remote file, a remote table, or a remote process without having to know where that object is physically located in the network

Application Co-operation Services:

Tools supporting application co-operation services are providing support for a large number of concurrent users that access transactions programs and services (i.e. databases, security, workflows), local and distributed load balancing to optimise performance, and efficiently synchronising data updates to multiple databases during a single transaction using standard protocols.

Tuxedo from Novell is an example of a TP monitor providingthese features plus several others. The advantage by using TP monitors are their ability to manage several thousands of users, concurrent database accesses, and large volumes of data.

Presentation Middleware

Tools supporting presentation services provide features for mapping GUIs and transparent printing.

These services are often included in other tools. But there exists dedicated tools for mapping character based UIs intoGUIs.

X Windows is an example of a toolset providing presentation services.

Mobile Middleware

MM is the software component that can be integrated with any application to add mobility. It constitutes services that can be transmitted over the mobile network to the clients on move. Also enables to add new features to an existing system quite easily.

Mobile Agent (MA) is a software component that operates autonomously. MA allows codes to move freely around the network, thus enabling us to have much more flexible architecture with better network performance. These code snippets executed on top of a runtime platform, interact with the local system in a controlled way, through a set of well-defined interfaces provided by the agent

platform.

Middleware service components

The services in our proposed architecture are classified into two broad categories: Application services, and Network services.

COM/DCOM

Microsoft’s middleware infrastructure in many wayssimilar to CORBA

Defines a binary standard for component interoperability programming language independence

Platform independentWindows (95, 98, NT)MacUnix

Distribution transparencydoes exploit operational characteristics

Dynamic component loading and unloading

DCOM

DCOM = COM binary standard+

runtime infrastructure for communicating across distributed address spaces initially only on Windows

recently adding Mac and Unix Uses OSF’s DCE RPC as a basis for remote interaction

proxy/stub mechanism Attempts to address challenges of distributed computing

interacting components should be “close” to one anothersome components’ locations are fixedinverse relationship between component size and flexibility

Distribution in COM/DCOM — In-Process

Middleware and Computer Telephony

Middleware in computer telephony tends to be software that sits right above that part of the operating system that deals with

telephony. This is the Telephone Server Application Programming Interface (TSAPI) in NetWare and the Telephone Application

Programming Interface (TAPI) in Windows.

TAPI is an evolutionary API providing convergence of both traditional PSTN telephony and IP Telephony. IP Telephony is an emerging set of technologies which enables voice, data, and video collaboration over existing LANs, WANs, and the Internet.

TAPI Objective

LANLegacy Phone Switch

*LAN IP-PSTN Bridge

Move from this….

To this….

Middleware Usage Considerations

There is a gap between principles and practice. Many popular middleware services use proprietary implementations.

The sheer number of middleware services is a barrier to using them. To keep their computing environment manageably simple, developers have to select a small number of services that meet their needs for functionality and platform coverage.

While middleware services raise the level of abstraction of programming distributed applications, they still leave the application developer with hard design choices.

Middleware costs

A technology may impose an otherwise unnecessary interface standard, it might require investment in other technologies (see bullets below), it might require investment of time or money, or it may directly conflict with security or real – time requirements.

As an example, at a start-up telecommunications carrier-of-carriers service provider, AFN Communications, there were approximately $20 million dollars expended just to implement operational and business support systems that were fully integrated across a client/server middleware information “bus”, which indicates that all applications are integrated via a common path

Advantages of Middleware:

Real time information access among systems

Streamlines business processes and helps raise

organizational efficiency.

Maintains information integrity across multiple systems

Disadvantages of Middleware

Prohibitively high development costs. EAI implementations are very time consuming, and need a lot of

resources. There are few people with experience in the market place. There exists relatively few satisfying standards. The tools are not good enough. Too many platforms to be covered. Middleware often threatens the real-time performance of a system. Middleware products are not very mature.

EAI / Middleware Leaders

BEA Systems (worldwide locations). CrossWorlds Software (Australia). IONA Technologies (Ireland, Scotland, California). Level 8 Systems (North Carolina, California, New Jersey, Virgina,

London, Milan, and Paris).

Mercator Software (England, Massachusetts). NEON (purchased in 2001 by Sybase) (California). SeeBeyond (California, multiple U.S. States, Australia, Korea,

Japan, Singapore, Cyprus, multiple European locations). Software AG (Germany).

Conclusion:

Middleware technologies are very important to succeed with an incremental migration of legacy systems into client/server systems, but that it is hard to find the correct tools and people to accomplish the work.

References:

http://www.infosecwriters.com/text_resources/pdf/Middleware.pdf http://www.infoweblinks.com/content/middleware.htm http://www.dis.uniroma1.it/~tucci/corsi/SD06/SD06-middleware.pdf http://sunset.usc.edu/~neno/cs477_2003/April8.pdf http://www.comp.lancs.ac.uk/projects/RenaissanceWeb/project/Acro

bat/Middleware.pdf http://www.comsware.org/Comsware2006/index.html

“Mobile middleware service architecture for EMS application”, Janet Light and Bhuvaneswari Arunachalan, COSMOWARE 2006.

Questions:

What is Middleware technology? Mention different types of Middleware. What are Advantages and Disadvantages of

Middleware?

top related