a4b1fc14bb1019de07c09b45417fc1d5.ppt
- Количество слайдов: 26
® IBM Software Group Application Modernization via migration to Rational’s EGL Todd Britton IBM Rational Application Transformation & Migration © 2009 IBM Corporation
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Agenda Business Realities EGL Review Automated Migration Demo
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Problems that IBM i customers encounter Reality … business and regulatory needs are highly dynamic major investments in existing applications … they: Applications “run the business” and took years, sometimes decades, to build are “stuck” in their current environment (green screens, etc…) MUST be leveraged while advancing! … evolve or die Customers need … Teams People a modern, “real” web user interface Need latest “web 2. 0” capabilities to compete, but the technology curve is very steep Too hard to train new users in 5250 screens “Screen scraping” is good, but is not adequate as a strategic solution flexibility Need to be able to deploy to other platforms as business needs change Transition to a service-oriented architecture easily and quickly New applications purchased on Linux, AIX, Windows…need to be able to integrate with them to leverage existing skills Used to high productivity with RPG and IBM i…don’t want to give that up Need to leverage skills & knowledge of current developers most effectively for the future without … • Taking 5 years • Breaking the bank • Incurring significant risk
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Problems that IBM i customers encounter 1. Need a modern, “real” web user interface – Options Leave as Green Screen Pro’s: Con’s: • Easy to create/maintain • “The business” views as “out of touch” • “legacy” data entry folks have it all memorized • Can’t extend to web and specialized devices “Screen Scrape” to achieve Web UI • Hard to train new users Pro’s: Con’s: • Quick ROI and Web UI • Maintenance activities take you back to DDS • Don’t integrate well with new web applications Re-factor RPG and build new web UI Pro’s: Con’s: • High quality results • Large work effort to achieve results • Might require different developers for UI Migrate RPG/DSPF to EGL/EGL RUI Pro’s: Con’s: • Result is true Web 2. 0 UI … DDS goes away • No Green screen alternative for those die hards… • Quick results and high quality • Refactor and enrich UI as desired 4
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Problems that IBM i ISV’s and some customers encounter 2. Need Platform Flexibility Business Logic System z Browser IE Firefox Safari IBM i Windows, Linux, Unix Web. Sphere Tomcat Native Web. Sphere Tomcat IBM i Integrated Web Server Native i 5/OS Web. Sphere USS Linux Batch CICS IMS
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Problems that IBM i ISV’s and some customers encounter 3. Leverage Business-aware Developers for Web 2. 0 … Leverage them for Web 2. 0! RPG/COBOL developers … they know the business EGL
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language EGL Solution to these problems EGL is a true cross-platform, cross-tier language targeted at all types of developers and applications Traditional, procedural, object-oriented, Web, SOA, etc. Web 2. 0 built in SOA built in The goal of EGL is to shield developers from complexities that are unnecessary for building business applications. EGL is an excellent target language for evolving existing, traditional applications in RPG, COBOL and many other languages Machine Assembly Java Code Language Ph. P C++/C# COBOL RPG EGL
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language EGL Web 2. 0 built in Build end-to-end Web 2. 0 quickly with a single language Fully extensible Use a language that is easy to learn Benefit from productive development Use Ajax without any of its complexities Use a rich, extensible widget library Debug web applications in an Eclipse IDE Consume any type of web service 8
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language EGL Web 2. 0 in EGL is much more productive EGL Rich UI HTML and Java. Script handler My. Rui. Handler type RUIhandler { initial. UI = [ address. Form, map ] } <html xmlns="http: //www. w 3. org/1999/xhtml" xmlns: v="urn: schemas-microsoft-com: vml"> All code, including UI and controller logic, <title>Google Maps API Example: Simple Geocoding</title> is written completely <script src="http: //maps. google. com/maps? file=api& v=2. x in <script type="text/javascript"> EGL. <head> address. Field Text. Field { text = "1600 Pennsylvania Ave, Washington }; go. Button { text = "Go!", on. Click : : = go. Button_clicked }; address. Form Box { children = [ address. Field, go. Button ] }; map Google. Map { width = "500 px", height = "300 px" }; function go. Button_clicked (e Event in) addresses String[] = [ address. Field. text ]; map. show. Addresses(addresses, addresses); end DC", width = 250 <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> var map = null; var geocoder = null; function initialize() { if (GBrowser. Is. Compatible()) { The complexity of the Google Map APIs are geocoder = new GClient. Geocoder(); hidden from the } } developer, so the developer can focus on function show. Address(address) { the actual business if (geocoder) { geocoder. get. Lat. Lng( requirement and not address, technical complexities. map = new GMap 2(document. get. Element. By. Id("map_canvas")); map. set. Center(new GLat. Lng(37. 4419, -122. 1419), 13); function(point) { map. set. Center(point, 13); var marker = new GMarker(point); map. add. Overlay(marker); marker. open. Info. Window. Html(address); } } </script> </head> <body onload="initialize()" onunload="GUnload()"> <form action="#" onsubmit="show. Address(this. address. value); return false"> <p> <input type="text" size="60" name="address" value="1600 Pennsylvania Ave, Washington DC" /> <input type="submit" value="Go!" /> </p>
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Web 2. 0 The proper balance Client Server Mainframe computing “Dumb” green screen clients Omnipotent big mainframe servers Client-server computing “Smart” Personal Computer clients Simple file and database servers Web (1. 0) computing Light Web Browser clients Rich application and database servers Web 2. 0 computing Rich Internet Application clients Lighter application and database servers
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language EGL SOA built in Service part: a generatable part containing code that will be accessed: - from EGL code by way of a local or TCP/IP connection (EGL Service). - from any code by way of an HTTP connection (EGL Web service). Interface part: Used to access external services as EGL services or simply to provide separation of concern. At development time… Focus on the business logic Implement SOA design elements: services and interfaces Leverage existing business developers for new SOA development Ignore deployment targets/technology while coding/testing Leverage external web services… EGL Interfaces represent external web services are created via import from WSDL allow the EGL developer to stay within the context of EGL programming Deploy EGL services… To any platform (Java to WAS/Tomcat, COBOL to CICS, i 5/OS ) As a Web service (uses SOAP) As a private service (uses CICS ECI or TCP)
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language EGL Provides Ultimate Platform Flexibility Batch Processes Web Text UI Program Reports Web 2. 0 Handler SOA Service EGL Business Logic System z Browser IE Firefox Safari IBM i Windows, Linux, Unix Web. Sphere Tomcat Native Web. Sphere Tomcat IBM i Integrated Web Server Native i 5/OS Web. Sphere USS Linux Batch CICS IMS
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language EGL Leveraging RPG skills RPG EGL Externally Described Files Records Field References Data Items 1 Month to get proficient and productive Procedural Only prerequisite is procedural programming experience Program Subroutine Function Service Program Service Short learning curve to learn EGL Procedural language with standard programming constructs 2 Weeks to understand basics and start building applications Data on Migration to “Professional” Java Skills – from other languages COBOL to Java C++ to Java Cost (total expenses and losses) $57, 000 $23, 000 Time (Duration of migration) 12 months 5 months Time/COBOL developer’s time 100% 40% Risk (Probability of Failure) 60% 5% Probability of Success 40% 95% *Source: Gartner Group Study EGL
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language RMEi: Rational Migration Extension for IBM i Transform your legacy applications… Achieves: RMEi COBOL RPG Conversion Tooling * 1. Modern, “real” Rich web UI 2. If needed, also Platform Flexibility 3. Easy transition for RPG developers EGL • Common Language for the Power Platform • Web 2. 0 enable and Service Enable Integrated Intel Server Blade Server * Future 14
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Modernize Past Development Investments Transform your legacy applications… z – CICS COBOL RPG * z – IMS RMEi z – Linux RMEn Enterprise EGL Conversion Tooling Ideal RMEca HPS/App. Builder z – z. AAP z – WAS Testing, Remediation, Deployment i – WAS i – Native Linux AIX … * Windows * = Future Capability 15
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Rational Migration Extension Philosophy Low risk Procedural to procedural; OO to OO Lateral move first, enhancements follow (if desired) Frequent deliveries of running applications (Agile processes) Short timeframes High level of automation … “factory” approach Reasonable cost High level of automation … “factory” approach Low cost resources where it makes sense Easy Maintainability Leverage existing, extensive investments in current applications and developers EGL and EGL Rich UI as targets for procedural sources Java as target for OO sources High Flexibility EGL allows broad deployment flexibility 16
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Migration Strategy Interactive Programs: Goals: • UI modernization • Service-oriented architecture DSPF RPG RMEi DSPF EGL Rui. Handler Batch Programs: Goals: • Platform independence • Flexible service-oriented architecture RPG RPG CLP CLP RMEi Platform specific – reimplement in EGL & other technologies EGL EGL EGL, etc…
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Function Declaration Database Access Array Lookup Date Formatting Function Data access Assignment Statements
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Transition from 5250 to EGL Rich UI 1. Need a modern, “real” web user interface Original 5250 Automated Migration to EGL/RUI Enriched UI
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Transition from 5250 to EGL Rich UI 1. Need a modern, “real” web user interface Original layout sflctl … overlay … EGL RUIHandler Automated Migration sflctl … overlay … Related. Data RUI Gateway EGL Service Original Program Doweq … … Filsfl write overlay read sflctl prcsfl … end EGL Program Automated Migration Do while … … Filsfl show overlay converse sflctl prcsfl … end After migration: • UI layout, Controller logic, and business logic • migrated to EGL • controller/business logic run on server • low risk/quick results • True “Web 2. 0” UI • driven by controller logic on server • enrich UI using any web 2. 0 widgets Get. Related. Rows() End • Migrated program placed in an EGL Service • Easy extensibility
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Transition from 5250 to EGL Rich UI 1. Need a modern, “real” web user interface Original Layout sflctl … overlay … EGL RUIHandler Automated Migration sflctl … overlay … Related. Data EGL RUIHandler Sflctl End RUI Gateway Overlay End EGL Service Original Program Display. Grid End EGL Program … Doweq Do while … … On your schedule: … … • Refactor … Filsfl write overlay • Move controller logic out show overlay to RUIHandler read sflctl converse sflctl • Automated Create “operations” in EGL business logic prcsfl • Migration flexibility and reusability Focus on … … end Get. Related. Rows() End EGL Service Filsfl() End Prcsfl() End Get. Related. Rows() End … 21
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Migration to EGL Extra Benefit: move to SOA after migration Refactor migrated EGL code Service part: EGL Program a generatable part containing code that will be accessed: - from EGL code by way of a local or TCP/IP connection (EGL Service). - from any code by way of an HTTP connection (EGL Web service). EGL Service Interface part: Used to access external services as EGL services or simply to provide separation of concern. EGL Program Java At development time… Focus on the business logic Implement SOA design elements: services and interfaces Leverage existing business developers for new SOA development Ignore deployment targets/technology while coding/testing Leverage external web services… EGL Interfaces represent external web services are created via import from WSDL allow the EGL developer to stay within the context of EGL programming Deploy EGL services… To any platform (Java to WAS/Tomcat, COBOL to CICS, i 5/OS ) As a Web service (uses SOAP) As a private service (uses CICS ECI or TCP)
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Demo
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Rational Application Transformation Briefing Sheet Customer: Business: Agri-business ISV Location: Orlando Context: Requirements: Support for additional platforms (currently only support IBM i) Can’t find RPG skills Richer User Interfaces Scope of problem: 5 M LOC of RPG systems Have very large and complex RPG programs Solution: Migrating applications to EGL Largest RPG program migrated: 27, 000 lines Building new user interfaces in EGL RUI First application in progress; presenting this at their User Conference in March
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Summary • Existing RPG or COBOL apps need strategic new UI • • Screen scraping good for tactical web UI Strategic web solutions needed • EGL and EGL RUI • • Easy transition for RPG/COBOL developers Best Web 2. 0 tooling on the market today • Automated migration to EGL can give you a competitive advantage • • Evolve RPG and COBOL assets into Web 2. 0 … strategic UI modernization solution UI Enrichment opportunities abound Low risk, Quick ROI Easy transition for RPG and COBOL developers Flexible deployment targets Highly productive and flexible language and environment Migrate at your own rate and pace: interactive programs only, complete applications, or entire systems • Next Steps • • Run a pilot Contact Todd Britton (tbritton@us. ibm. com) or one of our key partners for more details
IBM Software Group | EGL Simplify Innovation IBM Software Group EGL – IBM’s Newest Business Language Thank You
a4b1fc14bb1019de07c09b45417fc1d5.ppt