SOA-4: Introduction to OpenEdge ® Integration Technologies Jamie Townsend Applied Architect
© 2008 Progress Software Corporation2 SOA-4: Introduction to OpenEdge Integration Technologies Agenda Reasons to Integrate Outgoing Integration Incoming Integration Choosing The Right Approach Introduction to OpenEdge Integration Technologies
© 2008 Progress Software Corporation3 SOA-4: Introduction to OpenEdge Integration Technologies Business Environment Highly Susceptible to Change Customer Demands Competition Mergers & Acquisitions Divestitures Business Partners Technology Business Expansion Drive for Cost Efficiency
© 2008 Progress Software Corporation4 SOA-4: Introduction to OpenEdge Integration Technologies The IT Reality Requirements Time IT Systems Business Constant changes reduces the ability to respond
© 2008 Progress Software Corporation5 SOA-4: Introduction to OpenEdge Integration Technologies Agenda Reasons to Integrate Outgoing Integration Incoming Integration Choosing The Right Approach Introduction to OpenEdge Integration Technologies
© 2008 Progress Software Corporation6 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing Integration OpenEdge App DB ABL UI Web service ODBC Oracle ® MS SQL MS SQL COM / ActiveX SonicMQ ® /Sonic ™ ESB Process Flat File
© 2008 Progress Software Corporation7 SOA-4: Introduction to OpenEdge Integration Technologies Usability Legend Ease of Implementation Suseptible to Change Future Ready E EE C CC F FF
© 2008 Progress Software Corporation8 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Flat File ABL Developers Interpret File Format IMPORT / EXPORT INPUT FROM / OUTPUT TO PUT READ-XML()* / WRITE-XML()* * OpenEdge 10.1A E CF
© 2008 Progress Software Corporation9 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Process ABL Developers Interpret Process Input / Output Format INPUT THROUGH / OUTPUT THROUGH External processes are platform dependent! E CF
© 2008 Progress Software Corporation10 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Sockets* ABL Developers Socket Management Implement Custom Protocol Remote System Developers Implement Custom Protocol * Progress 9.1A / OpenEdge 10.0B
© 2008 Progress Software Corporation11 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Sockets Typical Uses FTP HTTP SMTP Special needs: –Performance –Non-Standard protocol E CF
© 2008 Progress Software Corporation12 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – COM / ActiveX* ABL Developers Instantiate & Use COM objects Embed ActiveX component in GUI Program for each event / method Typical Uses Custom GUI Objects Word Processing, Spreadsheets, *Primarily Windows – otherwise very limited support E CF
© 2008 Progress Software Corporation13 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing –.Net* ABL Developers Embed existing.Net components Requires a little OOABL programming Typical Uses Custom GUI Objects Custom.Net Objects *Supported only on Windows *Requires OpenEdge 10.2A (not yet released) E CF
© 2008 Progress Software Corporation14 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Web Service Web service = HTTP + SOAP ABL Developers Connection Management Very similar to calling OpenEdge AppServer ™ Interpret WSDL bprowsdldoc creates sample code E CF
© 2008 Progress Software Corporation15 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – SonicMQ ABL Developers JMS Connection Management Produce/Consume SonicMQ Messages Offers Guaranteed Delivery Message ordering E CF
© 2008 Progress Software Corporation16 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Sonic ESB ABL Developers Produce/Consume SonicMQ Messages Call ESB hosted Web service Offers Application independant connection to basically anything* *JMS, WebService, FTP, , HTTP, 100+ Apps E CF
© 2008 Progress Software Corporation17 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing – Data Server ABL Developers Either: Tweak data access Existing code will just work......but maybe not efficiently Or: Reimplement foreign business logic Oracle, MS/SQL, other ODBC E CF
© 2008 Progress Software Corporation18 SOA-4: Introduction to OpenEdge Integration Technologies Outgoing Integration Overview Implementation Approach Ease of Implementation Suseptibility to Change Future Ready Flat File Process Sockets COM / ActiveX.Net Web Services SonicMQ Sonic ESB Data Server E CF E CF E CF E CF E CF E CF E CF E CF CF E
© 2008 Progress Software Corporation19 SOA-4: Introduction to OpenEdge Integration Technologies Agenda Reasons to Integrate Outgoing Integration Incoming Integration Choosing The Right Approach Introduction to OpenEdge Integration Technologies
© 2008 Progress Software Corporation20 SOA-4: Introduction to OpenEdge Integration Technologies Incoming Integration OpenEdge App DB App Server App Server UI Web service Java ™ SonicMQ / ESB ODBC / JDBC
© 2008 Progress Software Corporation21 SOA-4: Introduction to OpenEdge Integration Technologies Incoming –.Net /Java ABL Developers Proxy Gen Distribute proxies.Net / Java Developers Use proxies No special coding E CF
© 2008 Progress Software Corporation22 SOA-4: Introduction to OpenEdge Integration Technologies Incoming – Web Services ABL Developers Proxy Gen Distribute WSDL Remote System Developers Use Web Service No Special Coding E CF
© 2008 Progress Software Corporation23 SOA-4: Introduction to OpenEdge Integration Technologies Incoming – Sonic ESB ABL Developers Insert Code Annotation Directly deployed into Sonic ESB Remote System Developers Use easiest approach: SonicMQ, Other JMS, Web service, File Drop, DB Event, , many more... E CF
© 2008 Progress Software Corporation24 SOA-4: Introduction to OpenEdge Integration Technologies Incoming – ODBC / JDBC ABL Developers Do Nothing Remote System Developers Understand Database Schema Replicate ABL Logic E CF
© 2008 Progress Software Corporation25 SOA-4: Introduction to OpenEdge Integration Technologies Incoming Integration Overview Implementation Approach Ease of Implementation Suseptibility to Change Future Ready.Net / Java Web Services Sonic ESB ODBC / JDBC E CF E CF E CF E CF
© 2008 Progress Software Corporation26 SOA-4: Introduction to OpenEdge Integration Technologies Agenda Reasons to Integrate Incoming Integration Outgoing Integration Choosing The Right Approach Introduction to OpenEdge Integration Technologies
© 2008 Progress Software Corporation27 SOA-4: Introduction to OpenEdge Integration Technologies IT Dilemma: “The Accidental Architecture” Proprietary technologies and skill sets Multiple communication infrastructures High cost of license, consulting and operation Lots of turf control and organizational issues CRM ERP PARTNER SYSTEMS FINANCE ORDER ENTRY Inability to Respond
© 2008 Progress Software Corporation28 SOA-4: Introduction to OpenEdge Integration Technologies IT Architecture Requirements Simplicity Agility and flexibility Reusability Technology independent Promote integration Software that reflects business needs Built to Change
© 2008 Progress Software Corporation29 SOA-4: Introduction to OpenEdge Integration Technologies Service-Oriented Architecture An approach for building distributed computing systems based on encapsulating business functions as services that can be easily accessed in a loosely coupled fashion.
© 2008 Progress Software Corporation30 SOA-4: Introduction to OpenEdge Integration Technologies It Has Been Tried Before CORBA Microsoft ® DCOM Java RMI .NET Remoting DCE EJB Easier for Programmers – API Focused
© 2008 Progress Software Corporation31 SOA-4: Introduction to OpenEdge Integration Technologies How is SOA Different? Uses established distributed computing and messaging concepts Scales-up as well as down Department Enterprise Extended enterprise Incorporates multiple communication models – events and request/reply Driven by standards and well-known protocols, e.g. Web Services, XML, HTTP, etc. Easier for Business Analysts – Document Focused
© 2008 Progress Software Corporation32 SOA-4: Introduction to OpenEdge Integration Technologies SOA: It’s Not a Thing Product A specific technology An application A specific standard A specific set of rules It’s not a: An Approach for Building Agile and Flexible Business Applications
© 2008 Progress Software Corporation33 SOA-4: Introduction to OpenEdge Integration Technologies For More Information, go to… SOA-1: Applied SOA – Building Out Your SOA Environment with OpenEdge SOA-9: Reliable Messaging with OpenEdge SOA-17: Introducing Native Invocation with the OpenEdge Adapter for Sonic ESB SOA-27: Practical Approaches for Implementing a Service-Oriented Architecture Relevant OpenEdge Integration Sessions
© 2008 Progress Software Corporation34 SOA-4: Introduction to OpenEdge Integration Technologies For More Information, go to… DEV-5: Application Architecture Made Simple DEV-6: Introduction to the OpenEdge Advanced GUI DEV-11: Architecting Your Application in OpenEdge 10 …and many more Relevant OpenEdge Integration Sessions
© 2008 Progress Software Corporation35 SOA-4: Introduction to OpenEdge Integration Technologies PSDN – Just some topics... SOA Overview and Business Drivers Principles of a SOA Identifying Services in your App Access Web services from OpenEdge Patterns for Async Web service calls Building Services in OpenEdge (Overview) Exposing ABL as Web Services Messaging Patterns for OpenEdge
© 2008 Progress Software Corporation36 SOA-4: Introduction to OpenEdge Integration Technologies Documentation OpenEdge Installation and Configuration Guides Application and Integration Services Core Business Services Messaging and ESB Application Server Administration
© 2008 Progress Software Corporation37 SOA-4: Introduction to OpenEdge Integration Technologies Questions ?
© 2008 Progress Software Corporation38 SOA-4: Introduction to OpenEdge Integration Technologies Thank You
© 2008 Progress Software Corporation39 SOA-4: Introduction to OpenEdge Integration Technologies