SOA in banking issues and remedies


Published on

Published in: Technology, Business
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SOA in banking issues and remedies

  1. 1. SOA in Banking – Issues and Remedies - Debajani Mohanty
  2. 2. Agenda  What is SOA  How it could benefit Banking Industry  Concern on Performance Issues with SOA  Service Level Agreements (SLA’s) for SOA  Infrastructure & Capacity Planning  Key to SOA Performance Testing  SOA Performance Testing Challenges  Overcoming Challenges  Methodology and Approach  TCS’s Experience in SOA Market  Summary
  3. 3. What is SOA  Service Oriented Architecture  Architectural pattern/model  Variety of heterogeneous systems (dissimilar)  Different locations and owners  Web Services?  SOA creates a lot of value which could be divided into four basic categories:  Reduces expensive integration  Allows for more asset reuse  Increased business agility  Reduces business risk
  4. 4. How it could benefit Banking Industry In order to be successful in Banking, the Banking Industry needs to be customer-centric. Becoming more customer-centric requires banks to focus on four key areas:  Customer Information Management  Multi-Channel Integration  Operational Excellence  Intelligent Inbound Cross-Selling
  5. 5. Customer Information Management  Bank wants an easy way to access customer, product, and account information spread across all lines-of-business.  Deploying SOA, where customer data can be consolidated and integrated across the different product silos, can provide a single, comprehensive real- time view of a customer’s relationship with the bank. By connecting back- end legacy systems to front-end delivery channels, an SOA enables customer data to be made available in real-time at all the bank’s touch points – ATMs, online banking, call centers and retail branches – so that the bank is able to provide accurate, personalized service based on a complete relationship profile.
  6. 6. Multi-Channel Integration  Customers want to interact with their bank using a variety of channels.  However, over time, channel growth and expansion has led to lack of integration between channels as they are often managed separately from one another.  The result is little or no sharing of information across the different channels, unsatisfactory multi-channel experience for the customer. Traditional point-to-point integration approach
  7. 7. Multi-Channel Integration Cont.  Adopting an SOA approach delivers a more consistent multi-channel experience. Data, applications and processes are exposed as services, which can be re-used across the different channels, ensuring that all channels have access to a common set of processes, systems and data.  Banks can achieve tighter coordination and integration of their channels so that customer interactions can be managed, tracked and completed across multiple channels. For example, a customer can initiate an activity such as applying for a loan via one channel and complete it using another. Converging isolated back-office systems into a single, consistent data and services hub
  8. 8. Operational Excellence (By Automation)  A complex IT environment can lead to automation gaps in business processes, which result in customer service issues. For example, a fragmented mortgage origination process often leads to lengthy ‘time to offer’ cycles, which ultimately causes the customer to be so frustrated that he ends up taking his business elsewhere.  BPM technology can help banks achieve operational excellence by bridging automation gaps and enabling banks to standardize on best-in-class practices across the different channels and product lines. Advantages:  Reduced processing time  Reduction of employee cost by automation  Adjust business rules rapidly  Increased Accuracy
  9. 9. Loan Processing Automation BPEL
  10. 10. Intelligent Inbound Cross-Selling  Banks have now reached a position where they know their customers well, are servicing them effectively and efficiently and can better understand their present and future needs.  This presents an ideal environment in which banks can generate opportunities for intelligent inbound cross-selling.
  11. 11. Concern on Performance Issues with SOA Can implementation of SOA affect performance? YES. SOA offers enterprises the flexibility and efficiency they need, but they can have unforeseen effects on the overall performance and scalability in production. SOA applications are composite applications, composed of many services often developed, tested, and deployed independently by separate development teams, therefore more vulnerable to network outages.
  12. 12. SOA Application must satisfy SLA  A service-level agreement (SLA) is a formal contract between a service provider and a consumer  Service availability  Performance  Traffic levels  Messages / queries per hour / minute / second  Response time  Rejected transactions  Errors  … Poor Response Time Missed SLA Noncompliance with industry and government regulations
  13. 13. What to do now? Hence in order to fulfill the SLA, and sort out performance, availability and scalability issues we must  Proactively do necessary analysis and do proper capacity planning, followed by implementation and testing.  In production, do an end-to-end monitoring of the performance across all application tiers, back-end databases and Web Services, to pinpoint and address performance bottlenecks within the application and find root causes.
  14. 14. Capacity Planning  Within the network infrastructure there are many components that impact performance and capacity including connection speeds, routers, switches, traffic load balancers, encryption (SSL) and transformation (XLST) accelerators, application server, database.  SOA is a composite application made of services with varying performance and availability characteristics. One must consider the SLA of every service within the composite service since the weakest link impacts overall performance and availability.  To establish a capacity plan one must establish the baseline performance characteristics of the infrastructure then plan for future growth. Once the initial infrastructure is setup, establish a set of processing patterns to test capacity. The processing patterns need to cover typical SOA design patterns and exercise all the components within the infrastructure. Processing patterns should include a mix of simple, medium and complex patterns. For example, a simple pattern would be validate (a schema), transform (XLST) and publish (a message). More complex patterns would include work flows, database lookups (cross reference and enrichment), message routing and database transactions.
  15. 15. Infrastructure Best Practices * Properly plan for infrastructure cost, time, deliverables and dependences as part of the SOA project plan * Consider professional services for hardware sizing, software installation, configuration and certification * Put the software vendor on the hook to support the initial architecture, configuration and performance of the infrastructure * Dedicate an administrator to the SOA infrastructure early in the project to work with the vendor though the installation, configuration and testing * Send the administrator to the administration training courses * Do a capacity test on the production environment before deployment * Track your systems dependencies and include them in an operations guide as part of project transition
  16. 16. Key to SOA Performance Testing  The key to successful performance testing in general require:  Understanding the application and the infrastructure  Understanding the user/stakeholders of the application  Generate accurate anticipated volumes of traffic  Investigate the impact of the traffic on the application and systems under test  SOA Adds Complexity to Performance Testing  Wide range of technologies  Many different applications and usages  Different hardware / infrastructure  Knowledge of the application and the technologies  Replicating traffic patterns
  17. 17. SOA Performance Testing Challenges  SOA being a distributed environment, find candidates with right skill sets who possess in-depth knowledge of involved platforms, applications, databases and any middleware.  Assign appropriately skilled team of performance engineers to the test effort with knowledge of the systems to monitor and analyze the impact of testing  An in-depth understanding of the service is required for adequate testing and evaluation  A significant increase in testing activities and test assets (performance testing suites that include sophisticated harnesses and stubs) will be required at a service level  Predicting the future usage of services to assist with performance, load, stress, scalability  Test strategy differs from traditional testing and generally has to encompass many internal political factors e.g. ownership and responsibility
  18. 18. Overcoming Challenges  To simplify performance testing for SOA applications break them down into the smallest components possible:  Individual Service  Systems  Databases  Technology  Protocols  Messaging  Functionality  Evaluate and analyze the performance of individual services based on components
  19. 19. Methodology and Approach  Discovery: Narrow the testing event to the smallest element/service and understand the transaction, application service and the environment/systems  Test Plan: Document the testing approach and the expected deliverables  Automation: Develop automation to replicate transactions  Test Execution: Conduct testing generating traffic increasing the traffic to pre-defined levels  Monitoring: Monitor the response time for the requests sent under varying traffic levels and the impact of the traffic on the application and infrastructure under varying traffic levels  Measurement and Analysis: Analyze the traffic patters to with the traffic/load
  20. 20. Test Planning  Test Plan - Document the Following:  Services and sub services  Infrastructure  Transaction  Automation  Data  SLA requirements (load/transactions)  Pass / fail criteria
  21. 21. Test Execution  Load Testing (up to defined SLA transactions per second or other)  Stress Testing (up to service failure)  Volume Testing (introducing large amounts of data into system)  Reliability Testing (high levels of load over long periods of time)
  22. 22. Monitoring  Load Size (transactions per second/other)  Throughput  Response Time  Hardware  OS  Disk  Web (for Web Services)  Application specific counters  Database
  23. 23. Monitoring Tools  Standard Business Activity Monitoring (BAM) Tools are available in the market to Enable business operations workers and managers to:  Monitor business processes & services in real-time  Key Performance Indicators (KPIs)  Service-Level Agreements (SLAs)  Analyze events as they occur through complex event processing  Correlate events & key performance indicators  Identify trends as they emerge  Alert users to bottlenecks, exceptions, and solutions to business problems  Act on current conditions either automatically or manually  Event-driven Alerts  Real-time Dashboards  BPEL Processes & Web Services Integration  Provides IT with a set of web-based applications to:  Capture real-time data from any database, message queue or application  Construct data objects for analysis  Define metrics, dashboards, alerts & automated actions
  24. 24. Summary  Banking and financial sector can be highly benefited by adopting SOA  SOA is not a destination, it’s a journey  For making SOA success good planning, implementation and monitoring is mandatory  SLAs play critical role in success of SOA based projects
  25. 25. Thank You