140 likes | 363 Views
Application Transformation using EGL. Todd Britton IBM Rational. The Legacy Bar (Running your Business Today). Equivalent. Transform. Equivalent. Re-Write. Replace. Equivalent. Options for “moving forward”. Functionality Performance and Stability. 100%. 75%. 50%. 25%. 0%.
E N D
Application Transformation using EGL Todd Britton IBM Rational
The Legacy Bar (Running your Business Today) Equivalent Transform Equivalent Re-Write Replace Equivalent Options for “moving forward” Functionality Performance and Stability 100% 75% 50% 25% 0% Year 1+ Year 3+ Year 5+ … Year n
Evolve Past Development InvestmentsTransform your legacy applications… * Enterprise • Modernize UI’s • Reduce Operating Costs • Platform flexibility • Easy transition for existing developers z – CICS z – IMS z – Linux z – zAAP z – WAS i – WAS i – Native Linux AIX Windows RPG RMEi COBOL RMEn Testing, Remediation, Deployment Automated Conversion Tooling EGL Ideal/Datacom RMEca COBOL HPS/AppBuilder RMErui Green Screens
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
Function Declaration Database Access Array Lookup Date Formatting Function Data access Assignment Statements
Transition from 5250 to EGL Rich UI 1. Need a modern, “real” web user interface Automated Migration to EGL/RUI Enriched UI Original 5250
Transition from 5250 to EGL Rich UI 1. Need a modern, “real” web user interface Original layout EGL RUIHandler Automated Migration sflctl …overlay … sflctl …overlay … RUI Gateway RelatedData EGL Service Original Program EGL Program • 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 • Migrated program placed in an EGL Service • Easy extensibility Doweq … … Filsfl write overlay read sflctl prcsfl … end Do while … … Filsfl show overlay converse sflctl prcsfl … end Automated Migration GetRelatedRows() End
Transition from 5250 to EGL Rich UI 1. Need a modern, “real” web user interface Original Layout EGL RUIHandler EGL RUIHandler Automated Migration sflctl …overlay … sflctl …overlay … Sflctl End Overlay End DisplayGrid End … RUI Gateway RelatedData EGL Service Original Program EGL Program Doweq … … Filsfl write overlay read sflctl prcsfl … end Do while … … Filsfl show overlay converse sflctl prcsfl … end EGL Service • On your schedule: • Refactor … • Move controller logic out to RUIHandler • Create “operations” in EGL business logic • Focus on flexibility and reusability Filsfl() End Prcsfl() End GetRelatedRows() End … Automated Migration GetRelatedRows() End
Migration to EGLExtra Benefit: move to SOA after migration Refactor migrated EGL code • 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. EGL Program EGL Service 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, i5/OS ) • As a Web service (uses SOAP) • As a private service (uses CICS ECI or TCP)
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: 5M 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
Positioning of UI modernization offerings • Use these options when … • HATS transformation • Time is of the essence or • Tactical, low-budget situations • Source code is not available • HATS service wrapping and build new UI • A UI technology other than EGL RUI has been selected to build new UI’s for existing logic or • Source code is not available • Migration of interactive programs to EGL RUI • Need to adopt a long term UI modernization solution or • Want to take advantage of the latest web 2.0 widgets and capabilities or • Need better web performance
Summary • Existing RPG or COBOL apps will exist for a long time and need a 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