INTEGRATING ESB / BPM / SOA / AJAX TECHNOLOGIES ABSTRACT Enterprise Application Integration technologies have been in the market for approx 10 years. Companies deploying EAI solutions have now started migrating to SOA based architectures to loosely couple the applications and also for better agility/security. ESB tools are now being used to expose different processes as Webservices for consumption by n number of applications. There has been a significant shift towards BPM tools also which help build workflow applications where manual intervention/decision making is needed. These BPM tools can in turn be integrated with AJAX based forms (instead of plain vanilla default iprocess forms) to provide Rich GUI feel to the end users of these BPM tools. The paper attempts to understand the approach in order to integrate these different technologies. 1
INTEGRATING ESB / BPM / SOA / AJAX TECHNOLOGIES Paper Title: Integrating ESB / BPM / SOA / AJAX Technologies Name(s) of Author(s): Naveen Mudgal Email Address: Naveen@mudgals.com, naveen.mudgal@headstrong.com Website: http://www.mudgals.com Location: Ghaziabad, India 2
TABLE OF CONTENTS INTEGRATING ESB / BPM / SOA / AJAX TECHNOLOGIES ABSTRACT 1 1 FACTORS INFLUENCING THIS INTEGRATION APPROACH 4 2 SOA/BPM STACKS BY TECHNOLOGY VENDORS 5 3. A SAMPLE SCENARIO USING THIS APPROACH 6 4. CONCLUSION 7 5. REFERENCES AND ACKNOWLEDGMENTS 8 6. APPENDIX 1.0 9 7. ABOUT THE AUTHOR 10 3
1. FACTORS INFLUENCING THIS INTEGRATION APPROACH Business Drivers for adoption of these technologies Business Agility The Value Driver for SOA Agility, is a concept that is often used to describe the benefits of SOA, so it is important to step back and look at why and how organizations are seeking to accelerate and easily adapt to changing conditions. This agility comes from loose coupling of applications by the use of WSDL files which need to be imported in the SOAP clients. Eg. In older applications, the hostname and port nos. (of Server) had to be configured at client side. Any changes in these parameters needed re-building of these applications after code changes. However in the new SOA based approach, the SOAP clients need to just re-import the WSDL file in order to connect with Server. Rules Management is essential to SOA because it enables business agility and provides demonstrable value to IT modernization initiatives. Business policy is separated from core application code so that it can be easily understood in terms of its context and usage and it can be easily changed and deployed as needed, so that rules can be shared and reused in and across applications. This Rules/Policy management is facilitated by SOA stack products like Active Matrix from Tibco. Richer and Faster Client Side Applications This is the main driver for adoption of Ajax based technologies. Improving the end user experience a key goal of AJAX can be measured by the very large and very serious companies that are now integrating AJAX into their front ends. How quickly can customers find what they need? Client side MVC architecture of AJAX enables faster access to data objects residing at Client side by the Browser Engine. Application Integration fabric is provided by ESB which integrates BPM/SOA and the different applications/databases. ESB is also used to expose Webservices, Start/Close Cases automatically in BPM Engine using the application business logic. Control operational business processes - The main business driver for BPM is the need to couple Manual Decision Making with IT systems. Business Process Management (BPM) is a set of methods, tools, and technologies used to design, enact, analyze, and control operational business processes. The design is based on Workflow standards and the time lag between the different activities in workflow can be measured with BAM (Business Activity Monitoring). This guarantees better control over the decision dependent business processes. 4
2. SOA/BPM STACKS BY TECHNOLOGY VENDORS SOA stacks are provided by technology vendors like BEA, ORACLE, IBM and TIBCO to integrate these ESB/SOA/BPM technologies. 1) BEA Aqualogic SOA stack 2) Oracle Fusion SOA stack 3) Tibco Active Matrix SOA Stack 4) IBM WebSphere SOA Stack Below are tools provided by Tibco for implementation of these technologies. A sample application will be conceptualized using these tools in the next section of this white paper.. 1) AJAX - Tibco GI (General Interface) GI Webforms (having rich library of GUI components) used instead of plain vanilla default iprocess forms 2) ESB Tibco BW (Business Works) 3) SOA Tibco Active Matrix ( For Policy/Rules/Security Management of WebServices) 4) BPM Tibco iprocess Suite 5
3. A SAMPLE SCENARIO USING THIS APPROACH Some typical applications using this approach are as follows: 1) Loan Origination Systems 2) Insurance Claims Management 3) Telecom Service Activation Management 4) Pharmacy Reject Claims processing management 5) Workforce Management employee On-boarding Loan Processing System for a Bank is taken below as a case study for integration of ESB/BPM/SOA/AJAX. 6
4. Conclusion BPM and service-oriented architecture are converging with ESB acting as the glue. While BPM and SOA based strategies can be pursued independently of each other, they make far more sense when integrated together. When BPM is deployed using SOA techniques, services are used as building blocks that can be orchestrated to support the needs of even the most complex business processes. This is leading to evolution of 'EAI Practice' in IT companies to 'ESB/SOA/BPM Center of Excellence'. The COE would include a resource pool with skill-sets as varied as BPM project manager, a BPM tool expert, an ESB architect, SOA architect etc. and several domain project experts, The CoE will need to have expertise in SOA/BPM stacks being offered by multiple vendors. A Client s requirements will need to evaluated against the different products. The CoE should be capable of comparing/calculating TCO/ROI against the different Stacks on multiple parameters. 7
5. References and Acknowledgments Research data in this paper are extracted from various sources listed below on the Internet and acknowledged Webinars and presentations from EAI product vendors sites like www.tibco.com SOA in Practice by Nicolai Josuttis Ajax World Journal SOA World Magazine 8
6. Appendix 1.0 Glossary of the new Integration concepts: AJAX (Asynchronous JavaScript and XML) is a group of interrelated web development techniques used for creating interactive web applications or rich Internet applications. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page SOA (Service Oriented Architecture) Is an architectural style that is principled around defining and exposing loosely coupled, normalized and coursegrained business functionality in a manner independent of underlying implementation of those services BPM (Business Process Management) Refers to a concept of managing, monitoring and reporting an organization s business processes through software tools ESB (Enterprise Service Bus) Refers to an integration engine that is event driven, supports distributed operation and management, supports content based routing and transformation and provides a platform for business process automation and management 9
7. About the Author Naveen Mudgal is Lead Consultant with the EAI Practice of Headstrong. He is currently involved in EAI consulting for a large pharmacy chain in the United States. Over the years he has worked with large customers in manufacturing, telecom and healthcare services, helping them deploy EAI/Webbased/ClientServer solutions. He holds a Bachelor s degree in Computer Science from Jabalpur University, India. 10