230 likes | 259 Views
Stefano Sergi WW EM Solutions Manager IBM Rational software. EGL Overview. Customers are asking, can we. Leverage existing assets? Leverage modern architectures? Leverage existing skills and attract new skills? Leverage a common development environment for all development teams?
E N D
Stefano Sergi WW EM Solutions Manager IBM Rational software EGL Overview
Customers are asking, can we.... • Leverage existing assets? • Leverage modern architectures? • Leverage existing skills and attract new skills? • Leverage a common development environment for all development teams? • Leverage my development spending better? Your current application programming environment is a key inhibotor ? ?
Enterprise Modernization – Solution Overview • Leverage value in existing assets • Drive innovation with SOA and web technology advancements • Leverage existing and new staff on multi-platform projects • Improve quality and flexibility with a consolidated team infrastructure • Reduce maintenance costs Assets Architectures Understand, transform, reuse and mange enterprise application assets Discover new SOA applications, reuse existing application as services Processes and Infrastructures Leverage modern processes, tools and middleware to reduce costs, improve quality and productivity Skills Rapidly develop cross-platform applications using new and existing skills Investments Invest resources in new opportunities System z IBM i LUW For more information, visit: www.ibm.com/rational/modernization
Why EGL? Today’s key development challenges • Costly to maintain • Monolithic • Hard to repurpose Existing Applications • Skills silos • Skills mismatch • Skills erosion Skills • Proliferation • Coexistence • Complexity Platforms / Middleware Compromise High costs Slow response
Why EGL? Because building applications today is not easy ASP Spring WSDL SWT DOM EGL ! Servlet JSE XML HTML ! AJAX EJB Struts JSF CSS JavaScript JCA SOAP TopLink JSP SQLJ JMS JDBC Hibernate • Learn and master myriads of • programming languages and semantics • middleware interfaces • programming paradigms and styles • frameworks and libraries • Constantly emerging new technologies • Code at a more abstract and simpler level • Easy to learn, modern and comprehensive language (not your father 4gl!) • Keeps up with emerging technologies • Inter-operates seamlessly with legacy
EGL and Rational Business DeveloperA simple, robust, unified approach to end-to-end construction of application and services that shields developers from intricacies of runtimes and middleware Rapidly Deliver… Modern Innovative Solutions… With the people who know the business
The power of the LanguageSimple and familiar…. yet robust and complete • Rich data types • Primitive • Simple (int, string, boolean, etc.) • Complex (any, arrays, dynamic arrays, dictionaries, array dictionaries, etc.) • User defined Data Parts • Keywords • Case, if-then-else, while, for loop, for loop cycling through a database result set, etc. • High power language capabilities • Automated Casting (e.g. using AS operator) • Mixing data types in assignments and expressions • Exception handling • Rich libraries of built-in functions • Math, string, date/time, system, i5/OS objects APIs • Robust integration with existing investment or access to low level APIs • Call RPG, COBOL, C, etc. • Full Java interoperability • Invoke Java from EGL (map Java classes with EGL External Types) • Invoke EGL from Java
The power of Abstractions and Declarative programming • Data access: • “Records” provide access to: • SQL, Indexed, Relative, Serial, DL/I, Service data, Message Queues • Common Verbs for data access (Get, Add, Replace, Delete). • Allows complete access to SQL statement if needed. • Common Error Handling. • Remote Invocation • Call COBOL, RPG, C, Java. • Linkage information separated from code. • Data mapping, protocol invocation all resolved at runtime, NO code necessary • User Interface: • EGL “handlers” hide complexities of • Web (JSF) UI • Reports (BIRT) • Portlets • Rich Web (Ajax) • Validation/Editing Rules: • Via properties in “Data Items. • Define formatting & validation rules in a common place. • Reuse data items for Records, screens, web pages, reports.
The power of tools • Web development • Integrate seamlessly with Page Designer and JSF tools • EGL native coding within JSF, mask all JSF complexity • Drag drop, code behind • Powerful IDE • Smart EGL editor, Code templates and snippets, Code completion • SQL visualization, editing, validation • References and declarations, Refactoring • Integrated interactive Debugger • State-of-the-art • No compile necessary, just click and aniimate execution as you define the code! • Full control, step, run, reposition, skip, change variables content, etc • Model Driven Development tools • Generate fully functional CRUD applications from UML models or Database schemas • including default JSF, and EGL or Web Services!
The power of ServicesBuilt into the language • 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, i5/OS ) • As a Web service (uses SOAP) • As a private service (uses CICS ECI or TCP)
Respond to Broadest Application Needs Portals Batch Processes Text UI Web Rich UI* Reports Web/Native Services Encapsulate existing or create new resources User Interface Program Control Logic Business Logic Informix DL/I VSAM other… DB2 UDBSQL Server Oracle Derby • RPG • COBOL • C, C++ • Java Service/Interface Enterprise Connection Write application and control logic with EGL Java COBOL JavaScript System z System i • WebSphere • USS • Linux • Batch, CICS, IMS • WebSphere • Native i5OS • Native i5OS Browser* LUW • IE* • Firefox* • Safari* • WebSphere • Tomcat • Native
Edit EGL Source Transform Iterate JavaScript 200 ms Publish Render EGL Rich UI Web 2.0 made easy • Why Rich Internet Applications (RIA)? • Applications are responsive and user friendly (user productivity) • Applications can leverage services “mush-up (business innovation) • Why is it hard to create RIA • Need to know many low level intricate technologies • Compound the slill/tool silos and fragmentation • Currently domain of “tech heads” • EGL and Rich UI • Includes visual composition, libraries of RUI widgets • Instant deploy/visualize while you code • Fully open and extensible • Easily integrate/consume any service (REST or SOAP) • Single language end-to-end • Brings legacy data and assets to Web 2.0
EGL Rich UI: Simplifying Innovation The Internet EGL Internet Services EGL COBOL RPG Server Browser Partner Services and Data Enterprise Data XML JavaScript JSON SOAP DOJO ExtJS PHP Ajax … • Check out the RSDC Personal Planner for iPhone ! * Tech Preview : http://www.alphaworks.ibm.com/tech/reglrws
EGL Use Cases: New Systems • EGL end-to-end (web-to-backend logic and services) • EGL front-end to RPG (or COBOL) backend EGL Rdi SOA Enterprise Data RPG Enterprise Data RDi SOA EGL
EGL Use Cases: Modernizing existing systems Web UI Rich UI Portals UI Services HATS/EGL bridge UI Face lift UI Service rendering Refactored Application EGL Conversions RPG/COBOL EGL Refactor 3270/5250 Business Logic Convert Database Access Services New Application Extract Design Re-Build EGL Interfaces Re-Build
Ideal PowerBuilder Maestro ConversionTooling Enterprise Deploy to: Linux AIX Solaris HP-UX System i System z Windows WAS Modernizing your Development Investments Solutions Challenges • Cannot find skills in the market • Cannot motivate new hires to learn • No education available • Cannot target multiple platforms • Convert and refactor • Highly automated transformation • Single language breaks skills silos • Deploy to i5OS or Java runtimes (LUW) • Web 1.0 or Web 2.0 and SOA ready i4gl CSP RPG VAGen HPS/AppBuilder COBOL IDMS ADS/Online
Accelerating Application Delivery Hand-Coded Java/J2EE IDE RBD 60 Hours 507 Hours 330 Hours • RBD isdramatically fasterthan traditional development* • RBD is more productive than MS VS 2005** * Internal benchmark using Sun PetStore application ** Branham Study April 2008
Challenge:Deliver a Web based B2B ordering system for wholesale men’s formalwear rental business with little to no web development experience Solution:Leverage existing Order entry system (RPG) core functionality with a completely new JSF based interface Results:In the time allocated for a prototype, ADS had the entire system up and running ready for final test “Our original estimate for this project using Java/JSF was 4-6 months and our client would never accept that. With EGL we were ready for test in 4 weeks!” Rusty Gadberry - Arkansas Data Services Arkansas Data ServicesDeliver B2C retailer Web solution
KBCUnify application dev across platforms and transaction managers Challenge: • High costs and low responsiveness to business: redundancy and duplication across IT groups, fragmentation of languages and tools Solution: • Leverage EGL to achieve the Cross-System components development, eliminate skills silos among their dispersed development teams, eliminate various platform specific languages and tools Results: • Enable component based architecture. Shift to component based architecture, product factories and multi channel. • Created interchangeable developers. Shift from monolithic (3270) applications to browser based and open systems. Transform 600 mainframe developers to multi platform developers (Unix, mainframe, WAS, IMS). “… We want to avoid the ‘skill silos,’ what we really need is a large group of general developers who should not worry about target platforms and focus on developing business components, and only a small number of technology specialists, so that we can swiftly allocate general developers to upcoming business needs… EGL is helping us achieve this goal…” - Lieven Gouwy, IT Architect, KBC, Redmonk Podcast
EGL MomentumHundreds of new EGL users, growing EGL Partners EcosystemThousands of VAGen (previous version of EGL) users worldwide, now converting ot EGL Xact Inc Logicalis MSystems Morpheus ClearBlade ASIST Prologics Synobsis QGroup Livinfo PKS Oxford Intl. CWI Metaware Optimus Informatika Nextel Troytech eSmartSoft ValueSource WIPRO TCS GBS Provision Advus DataExpressOnline
HeadlinesIBM has announced EGL as the “newest business oriented language” Key role within Rational offerings in latest System z and System i Launches
Assets Architectures Processes and Infrastructures Skills Investments System z IBM i Distributed The importance of EGL for Enterprise Modernization • Enables COBOL, RPG, 4GL developers to create Web applications and SOA solutions with minimum learning curve • Provides a modern programming paradigm for “legacy” platforms, attract new staff to your trusted box • Enables to easily connect to, wrapper and extend trusted valuable assets • Affords maximum flexibility of deployment options and architectures • Delivers a modern language thatadapts more easily to changingtechnologies • Can be used as a target for legacy programs conversion
Summary • EGL: IBM newest business language • Break the skill silos and leverage business know-how of all developers. • Build innovative state-of-the-art solutions without the bite of skill ramp • Lower risk and increase project success rate. • Lower costs of training. • Lower Cost of development. • Deliver Projects faster. • For More information • EGL Café http://www-949.ibm.com/software/rational/cafe/index.jspa • RBD Product Page http://www-01.ibm.com/software/awdtools/developer/business/