20
A Technical Discussion of Legacy Integration 05/20/03 IBM ® Rational ® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer [email protected]

IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

  • Upload
    others

  • View
    12

  • Download
    1

Embed Size (px)

Citation preview

Page 1: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

A Technical Discussion of Legacy Integration05/20/03

IBM® Rational® Rapid DeveloperA Guide to Legacy Integration

By Jeff DouglasAdvisory Software [email protected]

Page 2: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

Table of Contents

Introduction ........................................................................................................ 1

What Do We Mean by Legacy Integration? ...................................................... 1

What are the Benefits of Legacy Integration?.................................................. 1What Others are Saying ..................................................................................................................1

We are Talking About More than Mainframes Here......................................... 1

What Techniques are Available for Legacy Integration?................................ 1

How Do I Select the Proper Integration Technique? ....................................... 3Step 1 ...............................................................................................................................................3Step 2 ...............................................................................................................................................6

How Do I Interface to Each Technique? ........................................................... 7

More Detail for Each Integration Technique .................................................... 7Existing Relational Databases via Rational Rapid Developer .......................................................7Custom Methods via Rational Rapid Developer ............................................................................8Web Services via Rational Rapid Developer..................................................................................9Existing Non-Relational Databases via the Rational Rapid Developer Mainframe Adapter......10Messaging Systems via the Rational Rapid Developer Messaging Adapter..............................11Message-Driven Beans via Rational Rapid Developer................................................................12Existing Non-Relational Databases via iWay Software ...............................................................13CICS 3270 Applications via HostBridge .......................................................................................14CICS 3270 and Non-3270 Applications via Micro Focus Component Generator.......................15

Who Can I Contact for Additional Information?............................................. 17

Page 3: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

1

IntroductionThis guide presents the legacy integration capabilities of IBM® Rational® Rapid Developer. It includes:

ß A limited education of legacy integration and secondly,

ß Integration techniques available for Rational Rapid Developer customers, and how to select the rightone(s) for use.

What Do We Mean by Legacy Integration? Legacy integration refers to the methods and transportation techniques used to access, and perhaps update, pre-existingdata and applications from an existing computer system, often an IBM mainframe. Integration usually involves databasesbut it is not limited to such, as it may be desirable to integrate messaging and existing application programs, as well.

In the context of application development, legacy integration often means the creation of new front-ends, business logic,etc., that need to be delivered in a Web-based application that uses significant elements of already existing legacyapplications. This is commonly referred to as a “composite” application. These composite applications may require datafrom a mainframe database such as IMS or VSAM, transaction logic from a CICS program, messages from IBM®

WebSphere® MQ or a JMS message transport, other elements from an SAP or other ERP application, and finally, a newuser interface for viewing in an HTML or WML client. Today, these new composite applications are generally createdfor either J2EE or .NET technology.

What are the Benefits of Legacy Integration?The most significant benefit is continued use of the existing investments in generally smooth-running systems. Otherbenefits include retaining existing human legacy programming talent, minimal retraining of end-users, continued use ofexisting mainframe, network, and infrastructure assets. In essence, legacy integration provides minimal disruption andcost, and maximum reuse.

What Others are Saying

• “The cheapest application is the application you don’t have to write,” observes Jim Sinur of the GartnerGroup. “One way to unshackle from legacy applications is to rebuild applications on a new platform, with adifferent language, different communications, and different connectivity protocols. The problem is that,unless the application is small, and resources are plentiful, the time and expense required in rebuilding fromscratch is likely to be prohibitive.” 1

Thus the benefits of extending conventional host-based applications from proprietary desktops and networks include:

• Potential for financial savings by cutting network and terminal costs.

• Bonus return on the original investment in legacy systems.

• Opportunities for electronic commerce using legacy databases. Through “Weblications,” businesses cancreate a presence on the Web and outsource functions like order taking and servicing to end clients.

• More satisfied users who get an attractive graphical interface.

• More integrated and efficient functionality.

We are Talking About More than Mainframes HereIBM mainframes are likely to be the predominant legacy challenge — and opportunity. However, there are otheropportunities, like the IBM iSeries (previously known as the AS/400), and Unix servers. These additional, sometimesoverlooked, server platforms represent a significant opportunity. Consider just the iSeries: there are hundreds ofthousands of these boxes all over the world, with few vendors actually interfacing with them.

What Techniques are Available for Legacy Integration?Rational Rapid Developer currently supports a variety of integration techniques. Different customers will certainly havedifferent integration requirements, so the recommended integration technique will vary in most cases. Factors such astype of database, method of access, performance requirements, allowable code changes, and invasiveness all need to beassessed at to determine the best solution recommended. 1 Jim Sinur quoted on web site: http://java.sun.com/features/1999/08/unshackled1.html written by Janice J. Heiss

Page 4: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

2

Figure 1. Legacy Integration ChoicesA variety of integration techniques exist today, some within Rational Rapid Developer directly and others in partnership withthird-party vendors. Table 1 displays the currently supported integration techniques:

Table 1. Legacy Integration Techniques

Integration IBMRationalRapidDeveloper

IBMRationalRapidDeveloperCustomMethod

IBMRationalRapidDeveloperMainframeAdapter

IBMRationalRapidDeveloperMessagingAdapter

IWay(PartnerAdapter)

HostBridge(PartnerAdapter)

MicroFocus(PartnerAdapter)

IBM Relationaldatabases

Yes

Non-relationaldatabases

Yes

IMS Yes YesVSAM Yes Yes YesCICS non-3270applications

Yes Yes

CICS 3270applications

Yes Yes

MVS non-3270applications

Yes

Messaging YesMessage-DrivenBeans

Yes

EJBs YesEAI Yes YesERP Yes YesRules engines Yes YesStoredprocedures

Yes Yes

Tables and Views Yes

Page 5: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

3

Integration IBMRationalRapidDeveloper

IBMRationalRapidDeveloperCustomMethod

IBMRationalRapidDeveloperMainframeAdapter

IBMRationalRapidDeveloperMessagingAdapter

IWay(PartnerAdapter)

HostBridge(PartnerAdapter)

MicroFocus(PartnerAdapter)

Web services Yes

How Do I Select the Proper Integration Technique?Below are two charts to help in your integration technique selection. You need the following information:

• Type of legacy asset being accessed (Access)

• Where it is being accessed (Location)

• Method of access (Method)

• Performance requirement (Perform)

• Can developers insert additional logic into the system (Chg)

• Can they support the specified additional requirements (Requirements)

Step 1In Table 2, locate the type of legacy asset being accessed and ensure that the details for that table row are acceptable forthe situation.

Table 2. Legacy Asset Selection

Access Vendor Location Method Perform Chg RequirementsRelational Databases

DB2 v4.5 IBM iSeries JDBC viaDB2Connect

High No None

DB2 v5.1 IBM iSeries JDBC viaDB2Connect

High No None

DB2 v6 IBM Mainframe JDBC viaDB2Connect

High No DB2 server

DB2 v6 IBM Middle tierserver

JDBC directaccess

High No None

DB2 v7 IBM Mainframe JDBC viaDB2Connect

High No DB2 server

DB2 v7 IBM Middle tierserver

JDBC directaccess

High No None

DB2 v8 IBM Mainframe JDBC directaccess

High No None

DB2 v8 IBM Middle tierserver

JDBC directaccess

High No None

Access Microsoft® Middle tierserver

JDBC directaccess

Low No None

SQL Server 7 Microsoft® Middle tierserver

JDBC directaccess

High No None

SQL Server2000

Microsoft® Middle tierserver

JDBC directaccess

High No None

Oracle 7.3 Oracle Middle tierserver

JDBC directaccess

High No None

Oracle 8i Oracle Middle tierserver

JDBC directaccess

High No None

Oracle 9i Oracle Middle tierserver

JDBC directaccess

High No None

Sybase 11 Sybase Middle tierserver

JDBC directaccess

High No None

Page 6: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

4

Access Vendor Location Method Perform Chg RequirementsGeneric Various

(vendorspecific)

Middle tierserver

JDBC directaccess

High No None

Messaging(Rational Rapid Developer includes a Messaging Adapter feature)

WebSphere MQ IBM iSeries Nativelyaccessed viaAPI call

High No None

WebSphere MQ IBM Mainframe Nativelyaccessed viaAPI call

High No None

WebSphere MQ IBM Middle tierserver

Nativelyaccessed viaAPI call

High No None

MSMQ Microsoft Middle tierserver

Nativelyaccessed viaAPI call

Medium No None

JMS Any vendorthat providesJMS

Middle tierserver

Nativelyaccessed viaAPI call

Medium No None

Message-Driven BeansJMS Any vendor

that supportsMDBs

Middle tierserver

Nativelyaccessed viaAPI call

Medium No None

Enterprise Java BeansEJB application Rational Rapid

DeveloperCustomMethod

Various Custom Javamethod toinvoke EJB

Medium No User must write custommethod. Rational RapidDeveloper providessample code templates.

EAI, ERP and Rules EnginesEAI Any Various XML message,

Java/J2EE APIif provided byvendor

Medium No EAI system must acceptXML messages fromRational Rapid Developer

ERP Any Various XML message,Java/J2EE APIif provided byvendor

Medium No ERP system must acceptXML messages fromRational Rapid Developer

Rules engine Any Various XML message,Java/J2EE APIif provided byvendor

Medium No Rules engine must acceptmessages from RationalRapid Developer

Stored ProceduresSupportedrelationaldatabase

IBM RationalRapidDeveloperCustomMethod

Various Custom Javamethod toinvoke JDBCstored-procedure call

Medium No User must write custommethod. Rational RapidDeveloper providessample code templates.

Tables and ViewsSupportedrelationaldatabase

Any Various Nativelyimported intoclass modelthrough JDBC

High No None

Web Services

Page 7: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

5

Access Vendor Location Method Perform Chg RequirementsSOAP Industry

standardVarious Natively

accessed viaAPI call

Medium No None

UDDI Industrystandard

Various Nativelyaccessed viaAPI call

Medium No None

Mainframe–Based ApplicationsMainframeapplications

Rational RapidDeveloperMainframeAdapter

MVSMainframe

JDBC viaDB2Connect

Low No DB2 server

3270 CICSapplications

HostBridge(PartnerAdapter)

CICSMainframe

URL / XML Medium No HostBridge

3270 CICSapplications

Micro FocusComponentGenerator(PartnerAdapter)

CICSMainframe

WebSphereMQ

Medium Yes Component Generator

Non-3270 CICSapplications

Rational RapidDeveloperMainframeAdapter

CICSMainframe

JDBC viaDB2Connect

Low Yes DB2 server

Non-3270 CICSapplications

Micro FocusComponentGenerator

CICSMainframe

WebSphereMQ

Medium Yes Component Generator

Non-Relational DatabasesVSAM Rational Rapid

DeveloperMainframeAdapter

CICSMainframe

JDBC viaDB2Connect

Low Yes DB2 server

VSAM Micro FocusComponentGenerator

CICSMainframe

WebSphereMQ

Medium Yes Component Generator

IMS DB Rational RapidDeveloperMainframeAdapter

Mainframe JDBC viaDB2Connect

Low No DB2 server

Non-Relational Databases via iWay Software(Representative sample list here. You may use any non-relational iWay Software supported database.)

Adabas iWay Software Various iWayODBC/JDBC

High No iWay adapter

Btrieve iWay Software Various iWayODBC/JDBC

High No iWay adapter

C-ISAM iWay Software Various iWayODBC/JDBC

High No iWay adapter

D-ISAM iWay Software Various iWayODBC/JDBC

High No iWay adapter

DBMS iWay Software Various iWayODBC/JDBC

High No iWay adapter

FOCUS iWay Software Various iWayODBC/JDBC

High No iWay adapter

IDMS iWay Software Mainframe iWayODBC/JDBC

High No iWay adapter

ISAM iWay Software Mainframe iWayODBC/JDBC

High No iWay adapter

Page 8: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

6

Access Vendor Location Method Perform Chg RequirementsMUMPS iWay Software Various iWay

ODBC/JDBCHigh No iWay adapter

PACE iWay Software Various iWayODBC/JDBC

High No iWay adapter

Pick iWay Software Various iWayODBC/JDBC

High No iWay adapter

QSAM iWay Software Mainframe iWayODBC/JDBC

High No iWay adapter

System 2K iWay Software Various iWayODBC/JDBC

High No iWay adapter

Teradata iWay Software Various iWayODBC/JDBC

High No iWay adapter

TOTAL iWay Software Various iWayODBC/JDBC

High No iWay adapter

Step 2In Table 3, locate the type of legacy asset being accessed and select the method that makes the most sense for thesituation. In the left-hand column, scan for the legacy asset in which you are interested. Then scan to the right; for eachenvironment that supports this type of legacy asset the performance throughput (Low, Medium or High) is shown. Ifyour throughput requirements are identified, you can use that type of integration in your Rational Rapid Developerapplication.

Table 3. Legacy Method Selection

IBMRationalRapidDeveloper

IBMRationalRapidDeveloperCustomMethod

IBMRationalRapidDeveloperMainframeAdapter

IBMRationalRapidDeveloperMessagingAdapter

IWay(PartnerAdapter)

HostBridge(PartnerAdapter)

MicroFocus(PartnerAdapter)

Relationaldatabases

LowMedium

HighNon-relationaldatabases

LowMedium

HighIMS Low Low

MediumHigh

VSAM Low LowMedium

High

LowMedium

CICS non-3270applications

Low LowMedium

CICS 3270applications

LowMedium

LowMedium

Messaging LowMedium

HighMessage-DrivenBeans

LowMedium

COM objects LowMedium

EJBs LowMedium

EAI LowMedium

LowMedium

Page 9: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

7

IBMRationalRapidDeveloper

IBMRationalRapidDeveloperCustomMethod

IBMRationalRapidDeveloperMainframeAdapter

IBMRationalRapidDeveloperMessagingAdapter

IWay(PartnerAdapter)

HostBridge(PartnerAdapter)

MicroFocus(PartnerAdapter)

ERP LowMedium

LowMedium

Rules engines LowMedium

LowMedium

Storedprocedures

LowMedium

LowMedium

Tables and Views LowMedium

HighWeb services Low

Medium

How Do I Interface to Each Technique?The scope of this document is to provide you a general assessment framework. For a more detailed technical description,refer to these Rational Rapid Developer documentation chapters:

• B.6 Database Modeling

• D.2 Message Modeling

• D.4 Mainframe Integration

• D.5 iSeries Integration

More Detail for Each Integration TechniqueThis section provides some level of detail for each integration technique.

Existing Relational Databases via Rational Rapid Developer

How does it work?

Rational Rapid Developer provides direct access to various relational databases, through acombination of design time and execution time techniques. At design time, you establish anODBC driver interface to the data source to be used. By issuing ODBC interface calls for you,Rational Rapid Developer allows you to query the actual details of the relational database thatthis ODBC driver describes. Rational Rapid Developer automatically imports this databasedefinition information into the application being created, saving a significant amount of setuptime since all of the class, attribute and relationship information is ured automatically ratherthan manually entered.

Page 10: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

8

Figure 2. Existing Relational Database at Execution TimeDuring application execution, Rational Rapid Developer uses the standard JDBC driver for its access to the data.The attributes of the JDBC driver will have been defined in the Rational Rapid Developer application, and it isthrough this JDBC driver that the actual rows and columns of the relational database are accessed.Relational database access comes in two forms: via dynamic SQL statements, or through procedures storedwithin the database itself. Each of these techniques has its benefits, and the Rational Rapid Developer designercan determine which technique to use. If appropriate, each Web page in the application can use the mostappropriate technique, which may differ from the technique used on other pages.

Why would you use it?

This is the “cleanest” form of relational database access, with seamless usage already built intothe Rational Rapid Developer product. It’s easy to set up and deploy, and was the basis for thedesign of the product. This should be your basis for all relational database access.

Additional Information

For more information about relational database integration, refer to current Rational RapidDeveloper documentation.

Custom Methods via Rational Rapid Developer

How does it work?

One of the most valuable features of Rational Rapid Developer is that it allows you to ignore thecoding requirements for any of the highly complex infrastructure code required for n-tierdeployments, and instead be concerned only with the actual business logic code snippets thatmake the Web site unique to the customer. This saves a significant amount of programming time,and allows developers whose skill set and experience do not include Web development to behighly productive in these new technologies.

Because of this, Rational Rapid Developer allows developers to write and invoke specificbusiness logic as custom Java™ methods. Numerous inflection points are provided that allowdevelopers to insert code at exactly the right location: methods connected to an action like a page

Page 11: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

9

button, methods to validate or initialize an attribute, or methods to override existing databasecalls, for example. Developers will code some useful method logic that allows them to unleashthe entire power of the Java runtime libraries, if desired.

Some integrations will require custom methods to be written. We understand that certain specificlogic will need to be written, and through the use of the code editor and available code patternsystem, Rational Rapid Developer helps developers write these methods.

Why would you use it?

Custom methods allow application developers to write code to any unsupported systems that aredeemed necessary. These all take the form of Java code deployed in the middle tier. RationalRapid Developer provides most of the infrastructure code, which allows the applicationdeveloper to concentrate, unhindered, on the actual business logic code. This should be yourbasis for all unsupported system access.

Web Services via Rational Rapid Developer

How does it work?

Built-in to Rational Rapid Developer is the Web service interface that will allow developers toboth discover existing Web services and to publish new ones. These Web services are availableto the developer from any of the custom methods they write. The code editor helps with theselection and usage of the previously discovered Web services. API calls to invoke the Webservice are automatically handled by Rational Rapid Developer.

Figure 3. Web Services at Execution TimeRational Rapid Developer helps developers publish any desired Web services. Once again, API calls to publishthe Web service are handled automatically by Rational Rapid Developer.

Page 12: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

10

Why would you use it?

Web services allow application developers to discover and access previously publishedapplication code, anywhere on the Internet, and to optionally publish their own useful routinesfor others to use. Rational Rapid Developer provides most of the infrastructure code, whichallows the application developer to concentrate, unhindered, on the actual business logic code.This should be your basis for all Web application program access.

Existing Non-Relational Databases via the Rational Rapid Developer Mainframe Adapter

How does it work?

The Rational Rapid Developer Mainframe Adapter provides the ability to access non-SQLlegacy mainframe environments. It does this transparently to the Rational Rapid Developerapplication by making these environments “look” like SQL tables. Applications can issue SQLSELECT statements to load result sets containing specific IMS (Information ManagementSystem), VSAM (Virtual Storage Access Method), or program data. They can also insert, deleteand update IMS or VSAM records and call application programs as easily as they can access atable row. The Rational Rapid Developer Mainframe Adapter provides support for:

o IMS databases

o VSAM files available under CICS

o Application programs available under CICS

The IBM Rational Rapid Developer Mainframe Adapter is generated on the mainframe as aseries of COBOL stored-procedure programs that are placed within the IBM DB2® environment.These procedures react to the SQL statement and perform the appropriate functions.

The generation of these stored procedures is done based upon the user’s own COBOL copy filesthat describe the various IMS database segments, VSAM files, or program APIs. No changes tothe user’s code are required. A Rational Rapid Developer Mainframe Adapter generationprogram reads in any number of these COBOL copy files and generates the XML descriptors andCOBOL stored procedures. These procedures are then compiled into the mainframe stored-procedure library, where they will be invoked at runtime when a Rational Rapid Developerapplication issues SQL calls.

Page 13: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

11

Figure 4. Mainframe Adapter at Design and Execution TimeThe user provides a source library containing all of the COBOL copy files that are needed to describe themainframe environment, and in the case of IMS, the IMS DBD load library as well. Using these libraries as input,the Rational Rapid Developer Mainframe Adapter generation creates customizable source files that are compiledand linked into the DB2 stored-procedure library. These stored procedures interrogate incoming requests and setup an interface to the appropriate subsystem (IMS, VSAM or CICS) where the actual processing occurs. As abyproduct of the generation, an XML source file is created describing the user environment. You download thisfile and import it into Rational Rapid Developer, simplifying setup. Once completed, a DB2 request can be madefrom the workstation through a DB2 Connect to the mainframe DB2 system. This invokes the generated programas a stored procedure within the stored-procedure address space. This address space is controlled by themainframe Workload Manager environment, which allows the management of the environment including two-phase commit processing, when available.

Why would you use it?

This technique provides access to both hierarchical databases and application programs, runningon an IBM mainframe. It provides seamless access to mainframe systems through the IBM DB2Connect facility. Although this approach is modest in cost, it is not intended for high-performance requirements.

Additional Information

See the Rational Rapid Developer documentation chapter titled: D.4 Mainframe Integration.

Messaging Systems via the Rational Rapid Developer Messaging Adapter

How does it work?

The Rational Rapid Developer Messaging Adapter allows the customer to model and deployXML and non-XML messages through a variety of transport techniques, communicating withvarious message destinations, both JMS and non-JMS. This is key if your application needs tointegrate with heterogeneous transports. Messages can be inbound or outbound, have associatedcustom methods, and can be used to communicate with other systems like EAI, ERP and rulesengines, to name a few.

Page 14: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

12

Figure 5. Messaging Adapter at Execution TimeMessages are defined within Rational Rapid Developer as either input or output, and then modeled. Thismodeling allows you to import a DTD, in the case of XML, and associate the DTD elements to Rational RapidDeveloper attributes via a simple drag and drop. This association then allows these messages to utilize theRational Rapid Developer messaging framework to its full function. You can optionally develop custom methods,with the help of the Rational Rapid Developer code editor and code pattern system, and connect these methodsto an inbound or outbound message. The Rational Rapid Developer Messaging Adapter runs asynchronously onthe middle-tier server, and can run without intervention from the end-user.

Why would you use it?

The Rational Rapid Developer Messaging Adapter is the supported gateway to all messagingsystems, both XML-based and otherwise. ERP and EAI systems can be accessed through thistechnique. This is the “cleanest” messaging system access, with seamless usage already built intoRational Rapid Developer. It’s easy to set up and deploy, and was the basis for the design of theproduct. This should be your basis for all messaging system access.

Additional Information

See the Rational Rapid Developer documentation chapter titled: D.2 Message Modeling.

Message-Driven Beans via Rational Rapid Developer

How does it work?

Rational Rapid Developer can construct message-driven beans (MDBs) to process and handleincoming messages, via JMS (Java Messaging Service), interacting with the middle-tier serverinstead of the Rational Rapid Developer Messaging Adapter. They work in the same techniquesas described above for the Messaging Adapter.

Rational Rapid Developer MDB support requires a J2EE application server that supportsmessage-driven beans, and uses JMS. This facility allows the customer to model and deployXML and non-XML messages through JMS, to and from various message destinations.

Page 15: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

13

Messages can be inbound or outbound, have associated custom methods, and can be used tocommunicate with other systems like EAI, ERP and rules engines.

Why would you use it?

If your environment includes a J2EE application server that supports MDBs, you would use thisRational Rapid Developer facility for the same reasons as the Rational Rapid DeveloperMessaging Adapter.

Existing Non-Relational Databases via iWay™ Software

How does it work?

iWay Software (a wholly-owned company of Information Builders Inc.) provides both sides ofthe communication interface to allow support for a large variety of data sources. The customerinstalls one or more iWay servers associated with one or more data sources. At design-time, youset up an iWay ODBC/JDBC driver interface to the intended target data source. By issuingODBC interface calls for you, Rational Rapid Developer allows you to query the actual details ofthe non-relational database with which this ODBC driver is associated. Through iWay, thesedetails appear to be relational in nature. Rational Rapid Developer automatically imports thisinformation into the application being created, saving a significant amount of setup time since allof the class, attribute and relationship information is captured automatically rather than manuallyentered.

Figure 6. Databases via iWay Adapter at Execution TimeAt execution time, Rational Rapid Developer uses the supplied iWay JDBC driver. The attributes of the JDBC driver will havebeen defined in the Rational Rapid Developer application, and it is through this JDBC driver that the actual simulated rows andcolumns of the non-relational database are accessed. Since iWay support for all iWay Adapters is generally coded to a specificcommon baseline, this may cause various restrictions when using some of the available data sources. Users might not be ableto take advantage of some features in a specific database, as all iWay Adapters do not share in this support.

Page 16: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

14

Why would you use it?

iWay Adapters provide access to all of those other, usually legacy, database engines, well-knownor otherwise. iWay Adapters provide access to both relational and non-relational databases.However it is only recommended to use the non-relational support to legacy systems, as variousfeatures of the relational databases have been excluded in the iWay support.

CICS 3270 Applications via HostBridge

How does it work?

HostBridge provides the ability to invoke mainframe CICS transactions even if these transactionsdisplay BMS screen maps during the logic. Responses can be sent back to the displayed screenand the transaction can continue until termination or another screen is presented. WithHostBridge, any CICS transaction can be invoked and the responses can be directly integratedwithin your Rational Rapid Developer application.

Figure 7. HostBridge at Design TimeThe user provides a CICS load library containing all of the BMS mapsets that are needed to describe the environment. Usingthis library as input, the Rational Rapid Developer Mainframe Adapter generates a DTD source file that is a concatenation of anumber of individual DTDs, each describing a different BMS map that is to be downloaded to the workstation. These DTDs canthen be imported into Rational Rapid Developer to allow the user seamless access to the CICS transactions running underHostBridge.

Page 17: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

15

Figure 8. HostBridge at Execution TimeAfter users have downloaded and imported these DTD files, they can then model their Rational Rapid Developer applications asthey normally would, with the addition of being able to invoke any CICS transaction and automatically import any displayedscreen image into the Rational Rapid Developer ObjectSpace (transaction model). At any time in the future, the Rational RapidDeveloper application can then respond to the mainframe CICS transaction with the appropriate input fields and allow thetransaction to continue or end.

Why would you use it?

HostBridge provides access to all of those “unfriendly” CICS applications that simply love topop up 3270 screens here and there. HostBridge does this by trapping the BMS screen mapoutput in the 3270 bridge and sending that as a response, via XML, to the calling application.Support for HostBridge is provided within Rational Rapid Developer, and sample code templateshelp you write the interface to it.

CICS 3270 and Non-3270 Applications via Micro Focus Component Generator

How does it work?

Micro Focus Component Generator provides the ability to invoke one or more screen orCOMMAREA mainframe CICS transactions. Responses can be sent back to the displayed screenand the transaction can continue until termination or another screen is presented. Multipletransactions or popped up screens can be incorporated into one encompassing program, callablefrom Rational Rapid Developer as an EJB.

Page 18: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

16

Figure 9. Micro Focus Component Generator at Execution TimeUsers install the Micro Focus Component Generator software on their workstations. They download the mainframe source codefor the CICS applications and model their environment with the built-in Component Generator painter. This painter generates acallable EJB, which must be deployed in either the IBM WebSphere or BEA WebLogic application server. It also generates amainframe eBiz transaction that is uploaded and deployed into your CICS environment. Once deployed, the EJB is called by theappropriate custom methods within Rational Rapid Developer, written with the help of the built-in code patterns.

Why would you use it?

Micro Focus Component Generator provides access to both “well-behaved” CICS applicationsthat are pure business logic, and “unfriendly” CICS applications that pop up 3270 screens hereand there. They do this by sending WebSphere MQ (MQ Series) messages back and forth to theCICS server from the middle tier, where these messages are controlled by an eBiz transactionthat sets up the proper input and output fields to application programs. Support for Micro Focusis provided within Rational Rapid Developer, and sample code templates help you write theinterface to it. It’s easy to set up and deploy.

Page 19: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

17

Who Can I Contact for Additional Information?

Contact me, Jeff Douglas, ([email protected]), Advisory Software Engineer, or JamesFarrell, ([email protected]) Rational Rapid Developer, Product Manager for any additional help.We will be happy to oblige.

Page 20: IBM ® Rational ® Rapid Developer A Guide to Legacy Integration · IBM® Rational® Rapid Developer A Guide to Legacy Integration By Jeff Douglas Advisory Software Engineer ... user

18

IBM software integrated solutions

IBM Rational supports a wealth of other offerings from IBM software. IBMsoftware solutions can give you the power to achieve your priority businessand IT goals.

• DB2® software helps you leverage information with solutions for dataenablement, data management, and data distribution.

• Lotus® software helps your staff be productive with solutions forauthoring, managing, communicating, and sharing knowledge.

• Tivoli® software helps you manage the technology that runs your e-business infrastructure.

• WebSphere® software helps you extend your existing business-criticalprocesses to the Web.

• Rational® software helps you improve your software developmentcapability with tools, services, and best practices.

Rational software from IBM

Rational software from IBM helps organizations create business value byimproving their software development capability. The Rational softwaredevelopment platform integrates software engineering best practices, tools,and services. With it, organizations thrive in an on demand world by beingmore responsive, resilient, and focused. Rational’s standards-based, cross-platform solution helps software development teams create and extendbusiness applications, embedded systems and software products. Ninety-eight of the Fortune 100 rely on Rational tools to build better software,faster. Additional information is available at www.rational.com andwww.therationaledge.com, the monthly e-zine for the Rational community.

Rational Software Corporationis a wholly owned subsidiary ofIBM Corp. © Copyright RationalSoftware Corporation, 2003. Allrights reserved.

IBM CorporationSoftware GroupRoute 100Somers, NY 10589U.S.A.

Printed in the United Statesof America

06-03 All Rights Reserved. Madein the U.S.A.

IBM, the IBM log, DB2, Lotus,Tivoli, and WebSphere aretrademarks of InternationalBusiness Machines Corporation inthe United States, other countries,or both.

Rational is a trademarks orregistered trademark of RationalSoftware Corporation in theUnited States, other countriesor both.

Microsoft and Windows NT areregistered trademarks of MicrosoftCorporation in the United States,other countries, or both.

Java and all Java-basedtrademarks are trademarks of SunMicrosystems, Inc. in the UnitedStates, other countries, or both.

Other company, product or servicenames may be trademarks orservice marks of others.

The IBM home page on theInternet can be found at ibm.com

TP905