fusionpaastm seamless integration with ibm db2 10.5 ... · pdf filehowever," as...
TRANSCRIPT
1
FusionPaaS™ Whitepaper
Boris Bialek Sri Rajan IBM Information Management Partner Services FusionPaaS Pte. Ltd. [email protected] [email protected]
IBM Software Whitepaper
FusionPaaSTM Seamless Integration with IBM DB2 10.5 High-Fidelity Automated Conversion of Oracle® Forms and Oracle Reports Apps to Java, Web 2.0, and REST-based Cloud Services
2
Contents
1. EXECUTIVE SUMMARY .......................................................................................... 3
2. CONSIDERATIONS FOR APPLICATION CONVERSION .............................................. 4
3. RE-‐ENGINEER LEGACY CORE SYSTEMS FOR INNOVATION ...................................... 5
4. FUSIONPAAS: MODERNIZATION WITH COMPATIBILITY ........................................ 6
5. END-‐USER RESULTS: ORACLE FORMS VS. JAVAFORMS .......................................... 7
6. END-‐USER RESULTS: ORACLE REPORTS VS. JAVAREPORTS .................................... 8
7. RAPID DELIVERY MODEL ....................................................................................... 9
8. FUSIONPAAS FUNCTIONAL OVERVIEW ............................................................... 10
9. SQL COMPATIBILITY FEATURES IN DB2 10.5 ........................................................ 11
10. EXPLORE ORACLE ALTERNATIVES WITH DB2 AND FUSIONPAAS ....................... 12
11. ADDITIONAL INFORMATION ............................................................................ 15
12. REFERENCES .................................................................................................... 15
3
1. Executive Summary
Corporate CIOs leading business imperatives include ways to retool their core applications for flexibility, responsiveness, standards, and seamless integration with multiple media channels within and external to their enterprise. Over 80% of IT spend is directed toward maintaining proprietary apps rather than innovation to align legacy apps with business needs. Today, CIOs worldwide are exploring ways to retool and re-‐engineer their core apps to modernize with the needs of their business to service their customers better. Further, the scarcity of skilled staff to support these legacy apps constrains optimum business decisions due to availability, geography, and cost. As a widely-‐used 4GL, Oracle Forms™ represents a 30-‐year-‐old legacy technology that is not standards-‐based, is not Java Enterprise Edition (JEE)-‐compliant, does not render modern UIs such as HTML5, Bootstrap, and others for friendly and rich User eXperience (UX), and is unsuitable for multi-‐tenant cloud computing. However, as Gartner® indicates in its report1, 2, customers face technical, cost, and risk barriers to wholesale conversion. Oracle Forms demands sophisticated understanding of PL/SQL client-‐side externals and internals, esoteric usages of object-‐orientation, trigger execution and scoping at form/block/item level, navigation, transaction, and validation cycles, expertise in over 1,300 Forms PL/SQL “built-‐ins”, and command of the Oracle Forms state machine. Over 24 years, the team at FusionPaaSTM has built in-‐depth expertise in Oracle Forms and Oracle Reports technologies. We developed FusionPaaS to dramatically simplify conversion of customer-‐developed Oracle Forms and Oracle Reports apps to JEE and Service Oriented Architecture (SOA), with high technical accuracy, low cost, and lowered risk through automation. FusionPaaS enables customers to convert their proprietary Oracle Forms and Oracle Reports apps to Java which are compatible with their original apps by broadly preserving transaction and process fidelity. In addition, FusionPaaS enables converted apps to embrace Web 2.0 readily through open cloud services, and which can be re-‐deployed on lower TCO, compatible RDBMS such as DB2 10.5. DB2 10.5 provides lower operational costs, ease of development, and reliability. The DB2 SQL compatibility features that have been available since DB2 9.7 are now enhanced in DB2 10.5, which further simplifies the porting of Oracle Database to DB2. FusionPaaS and DB2 deliver an outcome for customers that significantly lowers their annual IT spend on Oracle Forms and Oracle Reports maintenance, modernizes their platform to JEE, SOA, and Web 2.0, and empowers them to explore application and business innovations at the nexus of cloud computing, rich UX, and integrate extended enterprise participants formerly hamstrung by legacy app infrastructure.
4
2. Considerations for Application Conversion
According to Gartner 1, 2, key business drivers to migrate away from Oracle Fusion Forms include: • Risk Reduction – Java vs. Forms PL/SQL:
§ As the technology ages, the availability of developers skilled in Oracle Forms (and Oracle Reports) becomes scarce. As a result, this increases the cost of maintenance and risk.
§ Due to customer-‐developed PL/SQL code lock-‐in at the client, application server, and database server tiers, customers are compelled to upgrade their Oracle Forms stack when Oracle de-‐supports a current release.
§ The default choice of upgrading from an unsupported Oracle Forms release to a newer release also incurs software, hardware, and services cost.
• Application Modernization – Exploit SOA and Cloud Computing:
§ Considerable customer-‐developed PL/SQL business logic is locked in their Oracle Forms application, whose legacy technology complicates application logic and component re-‐use in an enterprise-‐wide SOA for business agility.
§ Oracle Fusion Forms/Reports Middleware and the Oracle database introduce complexity in the IT landscape that is unsuitable for multi-‐tenant, cloud computing.
§ In contrast, an open Java technology base that renders HTML5/JavaScript and runs on platforms such as IBM WebSphere and DB2 offers operational savings.
• Flexibility and Innovation – Adopt Rich UX, New Business Models: § Customers demand modern UX Web 2.0 technologies that support scalable application
architectures for business model innovation and competitive disruption made possible through cloud computing, increased users across the extended enterprise, and integration of social media customer channels.
5
3. Re-‐Engineer Legacy Core Systems for Innovation
In the table below, customers who run Oracle Forms and Oracle Reports applications must evaluate their support options as a current release is obsoleted.
Oracle Forms Support Schedule Source: Oracle Corporation
• Customers pay annual maintenance fees to Oracle for mature technology, but can derive greater flexibility and cost savings on JEE-‐standard architectures.
• Historically, no cost-‐effective option was available to migrate to open, cloud, SOA standards for existing application investments in Oracle Forms and Oracle Reports that run on Oracle Database.
• Without quick and reliable conversion to JEE/Cloud platform, innovation slows. Gartner on Oracle Fusion Forms:
• “Oracle Forms is still widely deployed…but is ill-‐positioned for most next-‐generation Application Development challenges.”
• “IT organizations assume considerable risk with unsupported deployments of Oracle Forms solutions, and this risk grows as the technology ages.”
• “All Application Development organizations should plan to migrate away from Oracle Forms applications during the next 10 years. All but the most-‐conservative AD organizations should plan to migrate [away from Oracle Forms] during the next 5 years.”
Gartner Recommends:
• “Modernize to gain advantages in centralized management and deployment.” • “Integrate with service-‐oriented architecture (SOA) best practices.” • “Migrate to industry-‐dominant technologies (for example, Java, Microsoft .NET, and open source
software) to align with industry best practices in the future.”
6
• Customers running Oracle Forms applications have been challenged to migrate to modern industry standards due to three primary barriers: Barriers to Migration Key Issues
Risk • Many Oracle Forms applications are complex, mission-‐critical, and ERP. • Oracle Forms behavior is esoteric with many undocumented side effects. • Supporting future-‐proof JEE technologies with amazing UX is not easy.
Cost • Historic conversion options require significant manual work, with higher overall service cost and migration time, increasing overall execution risk.
Technical Efficiency
If risk and cost concerns are addressed, customers need accurate conversions that are readable, maintainable, perform, scale, appeal to end-‐users and be easier to use than the existing Oracle Forms/Reports apps. In short, they must work, and work well.
4. FusionPaaS: Modernization with Compatibility
FusionPaaS was built to dramatically reduce migration risk, cost, and achieve technical efficiency. Converted Java-‐equivalent apps maintain high-‐fidelity with the original Oracle Forms/Reports app with broad and deep compatibility. Its design goals include: • Sophisticated conversion automation to dramatically reduce consulting services costs. • Deep compatibility in application behavior after conversion to JEE for accurate results. • Compliance with JEE best practices for UX-‐friendly, readable, maintainable, and extensible application
architecture for complex, mission-‐critical, ERP-‐grade customer applications. • ISV-‐friendly update capability to preserve customer-‐specific extensions to base application upgrades.
FusionPaaS meets the above design goals through two components of its conversion technology: • FusionPaaS Generator
FusionPaaS Generator parses, analyzes, and transforms an Oracle Forms application to JEE architecture.
• FusionPaaS cloudForms API, cloudReports API
FusionPaaS cloudForms and cloudReports Application Programming Interface (API) provides a distributed controller for the migrated JEE applications, JavaForms and JavaReports. These APIs perform the heavy-‐lifting necessary for compatibility of the Java-‐equivalent application with the original Oracle Forms and Oracle Reports application by understanding:
§ Oracle Forms processes § Oracle Forms state management and trigger execution § Oracle Reports Data Model, Layout Model, and trigger execution § Oracle Reports caching, queuing, clustering, and distribution. § Oracle Forms PL/SQL built-‐ins library § Oracle Reports PL/SQL built-‐ins library § PL/SQL data types
7
5. End-‐User Results: Oracle Forms vs. JavaForms
FusionPaaS Generator delivers a pure, Java-‐equivalent, compatible app, JavaForms, that may be deployed in the cloud. JavaForms dramatically simplifies exposing Oracle Forms business logic as coarse and fine-‐grain services.
Oracle Forms (PL/SQL) Client/Server and Web
JavaForms (HTML5/JavaScript) Apple iOS, Google Android, Any Browser
One Choice (30 Years)
Proprietary client Proprietary Middleware Proprietary business rules (PL/SQL) Origin: 1981 (IAF)
Proprietary P-‐Code runtime interpreter, PL/SQL.
Expensive Costly support Forms skills scarce Non-‐strategic budget spend
Non-‐Cloud Architecture
Monolithic, tightly-‐coupled architecture prevents cloud re-‐use of GUI and business rules
(No smart phones, no iPad)
Isolated Function-‐based, limited interoperability
Not SOA No Forms as Service; Integration with external services requires PL/SQL APIs; Runs only on WLS
Original and Proprietary (Tightly-‐coupled Functions)
Compatible, Open, and Web 2.0 (Loosely-‐coupled Services)
Open Choice Open Client Open JEE App Server (Runs on WAS) Open Database (Runs on DB2)
Standards Java, JEE, HTML5, JavaScript
Cost-‐effective Cloud-‐managed Java/HTML skills prevalent Re-‐purpose spend to align with strategy
Built for Cloud (Same Behavior)
100% Web 2.0 UX and server standards Zero software Unbroken results
Integrated Forms users/processes and communities now integrated into company cloud
100% SOA, Disruptive Innovation
De-‐coupled, services-‐based architecture enables breakthrough innovation; CloudForms migrates legacy assets into competitive advantage
8
6. End-‐User Results: Oracle Reports vs. JavaReports
FusionPaaS Generator delivers a pure, Java-‐equivalent, compatible app, JavaReports, that may be deployed in the cloud. JavaReports runs on customer’s choice of JEE Application Server and Database.
Oracle Reports applications converted through FusionPaaS run on industry-‐standard JEE application servers. As with JavaForms, JavaReports provides UX and functional compatibility with the original Oracle Reports application. Visual editors with rich drag-‐and-‐drop tools simplify Java application maintenance and extensions.
Oracle Reports (PL/SQL) Client/Server and Web
JavaReports (XML/HTML/PDF) JEE-‐standard JavaReports Server
9
7. Rapid Delivery Model
Enterprise application conversion through FusionPaaS mitigates consulting services risk typically associated with conversion projects, as indicated in the table below. Oracle Forms versions 4.5 through 11g are directly migrated through FusionPaaS. For earlier versions of Oracle Forms, an Oracle-‐supplied batch utility will convert .INP file format to .FMB. The example delivery process below outlines an example project schedule to migrate 300 Oracle Forms objects (.FMB, .MMB, .OLB, and .PLL files) to Java utilizing FusionPaaS:
Example Delivery Steps (300 Oracle Forms Files) Step Phase Duration
(Days) Description
1 Analyze 1 • Tool-‐driven analysis of the Oracle Forms application to identify usage of legacy PL/SQL constructs, such as PL/SQL “GO TO” statements, syntactically invalid or ambiguous in Java.
2 Stage 3 • Guided-‐assist by line-‐number to correct syntax issues identified within Oracle Forms app during Analyze stage.
3 Convert 1 • Run FusionPaaS Generator on Oracle Forms and Oracle Reports conversion set (interactive or batch mode).
• Correct compile errors due to ambiguous Forms PL/SQL logic, if any.
• Create the equivalent Java cloud app with automated build script.
4 Deploy 1 • Deploy the application to Test Server.
5 Test – User Acceptance
7 – 22 • Functional testing to validate Java application fidelity.
6 -‐ • Deployment and go-‐live.
Above estimates assume typical customer application comprising ~300 Forms objects (FMB, MMB, OLB, and PLL files). For greater than 300 objects, Steps 1, 2, and 5 may increase. Additional customer test cases may increase overall testing time.
10
8. FusionPaaS Functional Overview
The block diagram below shows key FusionPaaS components shaded in light green. The JEE App Server can be any standards-‐based server such as IBM WebSphere. IBM WebSphere, in particular, offers the advantage of leveraging FusionPaaS’ CloudForms Web Services in a composite app with WebSphere Process Modeler.
11
9. SQL Compatibility Features in DB2 10.5
Through FusionPaaS, Oracle Forms apps migrated to JEE can work seamlessly with DB2 10.5. DB2 10.5 contains enhancements of SQL Compatibility feature that makes database porting from Oracle to DB2 10.5 easier. These features reduce the syntax and semantic gap between Oracle and DB2. Oracle database objects and routines can be moved to DB2 10.5 with minimal changes. To achieve compatibility, the DBA can set DB2_COMPATIBILITY_VECTOR registry variable in DB2 10.5 to control activation of PL/SQL compiler included within DB2 10.5 engine. Once activated, the DB2 database that is created on the instance will have functionality to parse the Oracle PL/SQL syntax and establishes new compatible data types to match several Oracle non-‐ANSI standard basic types, such as NUMBER, VARCHAR2.
As shown above, PL/SQL source code will be compiled by the built-‐in PL/SQL compiler and executed by DB2’s SQL engine. The following table outlines some Oracle Database features that are supported in DB2 10.5:
12
With support for PL/SQL syntax, Oracle developers and database administrators can now leverage their existing skills on DB2 10.5. DB2 10.5 SQL Compatibility features further simplifies the integration of the migrated JEE cloud forms on DB2 10.5 database.
10. Explore Oracle Alternatives with DB2 and FusionPaaS
A typical application and database conversion plan can be viewed in 5 phases:
§ Assessment § Application Conversion § Application Testing § Database Conversion § Database Testing
IBM and FusionPaaS provide tools to ease the application and database conversion effort. While FusionPaaS is used for Oracle Forms to JEE conversion; the IBM Database Conversion Workbench (DCW) integrates many of the tools used for Oracle to DB2 database conversions into a single integrated development environment. DCW is provided as a plug-‐in to IBM Data Studio, a no charge graphical tool based on an Eclipse platform. For more information about IBM Data Studio, please visit: http://www.ibm.com/software/data/optim/data-‐studio/ For more information about IBM Database Conversion Workbench, please visit: DCW community on developerWorks (http://ibm.co/ibmdb2dcw) Assessment:
The Database Conversion Workbench (DCW) can be used to extract the DDL for the source Oracle database objects. The extracted DDL from the source Oracle database can be analyzed by the DCW Compatibility Evaluation Engine.
13
The DCW Compatibility Evaluation Engine provides an assessment report which outlines the compatibility of a source Oracle database with the target DB2 database. A part of the evaluation report is a detailed DDL and PL/SQL issues list, as well as some suggested workarounds to fix incompatible code.
FusionPaaS provides an analyzer tool to parse the Oracle Forms modules and provides a detailed summary of out-‐of-‐the-‐box compatibility, as well as recommended changes, either pre-‐conversion or post-‐conversion, to remove syntax or semantic ambiguity of Forms PL/SQL in Java. FusionPaaS’ Analyzer also reports compatibility features that either requires Java implementation or equivalent workaround. Application Conversion
14
FusionPaaS provides a wizard-‐driven interface to guide the Oracle Forms conversion process, step-‐by-‐step. The conversion wizard in FusionPaaS Generator uses configuration parameters to connect to the Oracle Forms’ database instance, and specifying the location of the distributed JEE application workspace and associated Java packages. Database Conversion The IBM Database Conversion Workbench offers the Conversion Engine to auto-‐convert common Oracle syntax to DB2 compatible syntax.
The Data Movement Engine provides an easy to use method that takes the user step-‐by-‐step to transfer the data from Oracle to DB2.
15
Application and Database Testing During the functional verification and testing phase, both database and converted forms functionality will be tested to validate accuracy. Database objects such as stored procedures, functions, packages, triggers and SQL statements will be executed to validate functionality. Consistency checks such as Table row count will be verified to confirm that all user data within Oracle database has been migrated to DB2 successfully. Migrated JEE forms will be tested for accuracy of user application workflows.
11. Additional Information
To learn more about DB2 compatibility feature, please refer to the following IBM Redbook: Oracle to DB2 Conversion Guide: Compatibility Made Easy (http://www.redbooks.ibm.com/redbooks/pdfs/sg247736.pdf) To learn more about Oracle to DB2 Conversion using DCW, please refer to the following white paper: IBM Database Conversion Workbench: Oracle to DB2 Conversion Guide (https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W252c18693c7e_432e_ad40_03c3417db6b1/page/DCW%20User%20Guides) For further enquiry, please contact: [email protected]
12. References
1. Gartner Report ID: G00169227 (August 2009), “Application Portfolio Triage” 2. Gartner Report ID: G00146666 (July 2007), “How to Maneuver Oracle Forms into an Ideal Position for Next Generation Challenges” 3. Oracle to DB2 Conversion Guide: Compatibility Made Easy http://www.redbooks.ibm.com/redbooks/pdfs/sg247736.pdf 4. IBM Database Conversion Workbench: Oracle to DB2 Conversion Guide https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W252c18693c7e_432e_ad40_03c3417db6b1/page/DCW%20User%20Guides
16
© Copyright IBM Corporation 2014 IBM Corporation Software Group 8200 Warden Avenue Markham, Ontario Canada, L6G 1C7 Produced in Canada January 2014 All Rights Reserved IBM, the IBM logo, ibm.com and Tivoli are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at ibm.com/legal/copytrade.shtml Oracle is a registered trademark of Oracle Corporation and/or its affiliates in the United States, other countries, or both. FusionPaaS is a trademark of FusionPaaS Pte. Ltd. in Singapore, other countries, or both. Google is a registered trademark of Google Inc, in the United States, other countries or both. Adobe is a registered trademark of Adobe Systems Incorporated in the United States, other countries, or both. Gartner is a registered trademark of Gartner, Inc. in the United States, other countries or both. Other company, product and service names may be trademarks or service marks of others. References in this publication to IBM products and services do not imply that IBM intends to make them available in all countries in which IBM operates. No part of this document may be reproduced or transmitted in any form without written permission from IBM Corporation. Product data has been reviewed for accuracy as of the date of initial publication. Product data is subject to change without notice. Any statements regarding IBM’s future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only. THE INFORMATION PROVIDED IN THIS DOCUMENT IS DISTRIBUTED “AS IS” WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IBM EXPRESSLY DISCLAIMS ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.
IBM products are warranted according to the terms and conditions of the agreements (e.g. IBM Customer Agreement, Statement of Limited Warranty, International Program License Agreement, etc.) under which they are provided. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you. This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurement may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment. Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. The information in this publication is provided AS IS without warranty. Such information was obtained from publicly available sources, is current as of July 2009, and is subject to change. Any performance data included in the paper was obtained in the specific operating environment and is provided as an illustration. Performance in other operating environments may vary. More specific information about the capabilities of products described should be obtained from the suppliers of those products.