soa: case study halifax bank of scotland if
DESCRIPTION
SOA: Case Study Halifax Bank of Scotland IF.com. Chapter 17. Background. Halifax Bank of Scotland (HBoS) is a UK financial services provider with divisions in Retail banking, insurance and investment, business banking, corporate banking and treasury. - PowerPoint PPT PresentationTRANSCRIPT
04/21/23Page 1
SOA: Case StudyHalifax Bank of ScotlandIF.com
Chapter 17
04/21/23Page 2
Background
• Halifax Bank of Scotland (HBoS) is a UK financial services provider with divisions in Retail banking, insurance and investment, business banking, corporate banking and treasury.
• It is UK’s largest mortgage and savings provider with a customer base of 22 million.
• HBoS was formed with through the merger of Halifax and Bank of Scotland
• IF (Intelligent Finance) was launched with aim of attracting customers outside Halifax esp. in UK.
• It was launched as Project Greenfield in 2000 and became a successful http://www.IF.com in 2003: look mortgage offset demo.
• In 2004 IF announced that the project had broken even and has become a huge success.
• Latest news: HBoS is being acquired by Llyods TSB.
04/21/23Page 3
Business principles
• In order to prevail in a competitive market a unique product has to be devised, enabling customers to link to a range of personal banking products– mortgages, credit cards, personal loans, savings, and current accounts…
• With interest charged only on the difference between their debit and credit balances.
• In order to be cost effective, only direct channel will be used, no expensive branch offices.
• Market survey indicated that the direct channel would be combination of web access and telephone.
04/21/23Page 4
Core business components
• At the core of IF.com is a generic banking engine which offers access to products and services for different customer access channels.
• It was a very large project under heavy time pressure for delivery: it was decided to take a full blown SOA approach for its transactional aspects.
• It was developed initially as xml/idl; later transformed into wsdl.
• The banking engine provides a suite a XML, web services, processing over 1000000 transactions a day.
04/21/23Page 5
Business Impact
Extreme Time pressure
Modern Accesschannels
Greenfieldbank
InnovativeBankingProducts:offsetting
customers
competition
04/21/23Page 6
Business outcome: timeline
Oct.1999J. SpowartJoins halifaxGreenfiled co.
2000IF.comlaunch
2001 2002IF announcesIncrease in Balances and mortgageIncrease to 9%
2003
Savings and currentBalances increase by 50%Customers doubled 600000
2004
Customer baseIncreases to 820000Assets also double
04/21/23Page 7
IF’s Service Architecture
Enterprise Layer
Web channel
Web channel
Call center
Call center
Emailchannel
Emailchannel
Basic layerLinks toBanksSWIFT,etc
Links toBanksSWIFT,etc
Feeds to general ledger
Feeds to general ledger
Credit scoring
Credit scoring
Customer accounts
Customer accounts
BackoffWorkflowMgt.
BackoffWorkflowMgt.
Process + intermediary service layer
IF.com onePlan Engine
Openaccount
Fullfilment
Servicerequest
DocumentMgt.
DocumentMgt.
04/21/23Page 8
Details of SOA (p.364): Banking engine
• Banking engine: a mixture between process centric service and intermediary service
• For example banking engine provides access to different customer accounts that reside on different sub-systems: does not add much to business functionality Intermediary service
• Other parts of the banking engine provides service request features: “replace lost credit card”
• Service request feature uses the underlying workflow engine• Banking engine provides the interface between the workflow
engine and the user access channels through a set of process-oriented service interfaces. – Approximately 250 different service requests are implemented
this way• Another set of banking engine interfaces is dedicated to the
offsetting functionality of the bank.
04/21/23Page 9
Banking engine (contd.)
• Offsetting: it is also a combination of intermediary and process-oriented services
• One the one hand, it provides the necessary functionality that is required for customers to control the balances on their individual accounts.
• On the other hand, it also acts as intermediary for complex calculations in the basic services, that take place, for example, if mortgage and credit-card interest is being set off against interest on savings.
04/21/23Page 10
Centralized banking engine
• Centralized banking engine to allow all user channels to share common functionality and to provide consistent view.
• This design allow for efficient integration among different access technologies.
• Disadvantages: lack of modularity, development and maintenance of services difficult; team is currently addressing this issue.
04/21/23Page 11
Key Implementation Details
• XML services: because of the extremely tight schedule and high integration requirements, existing EAI and blueprints would not be suitable.
• SOA, XML, SOAP and WDSL were used even though not many details were available at that time.
04/21/23Page 12
…Implementation details
• Service repository: IF uses the CCC Harvest source control system as central repository for all service definitions used by the project.
• All services are defined as XML Schema definitions and WSDL definitions.
• Repository managed by XML Tsar.• Content of the service repository is used by IF.com build
manager to generate type-safe APIs and stubs for a variety of programming languages including VB, C++ and Java
• These stubs allow developers to client-side and server-side programs/services to access them in a transparent way.
04/21/23Page 13
IF.com Service Repository
BusinessAnalyst
XML Tsar(technicalArchitect)
Service repository
XML schema Definitions +
WSDL definitions
WSDL compiler
Java stubs VB stubs C++ stubs
Build repository
Buildmanager
04/21/23Page 14
Project Management
• Design in Action plan (DIA) provided a delivery program, including mobilization plans, training plans, and an outline of required infrastructure.
• Work streams and IT steering committee: 23 work streams including banking engine, service design, DB design , workflow, mainframe integration etc.
• Architecture board: six senior architects to oversee the overall design.
• XML Tsar and Tsardom: to design, develop, deploy and manage XML related service interfaces, repository, and specifications.
04/21/23Page 15
Technology
• We now look at the actual technology used in realization of the implementation discussed.
• Technical architecture, XML service definitions and technical infrastructure.
04/21/23Page 16
Technical Architecture (TA)
• TA of IF.com required integration of wide range of technologies
• Banking engine is implemented in Java and BEA WebLogic
• Web channel is based entirely on Microsoft technologies: since existing system had security approval for this system for MS products.
• Call center and IVR (Interactive Voice Recognition) is based on Genesys CTI suite using customized C/C++ on Unix.
• Backend consisted of a variety of mainframe, unix and NT systems.
04/21/23Page 17
Technical Architecture of IF.com
XML Switch
OS/390mainframe
Other Backendsystems
OtherBackendsystems
XML switchClient APIs
XML parserCORBA etc.
EJB Application server
IF.comOne plan
session beans
WSDL Java Skeletons
RDBMSJDBC
CTI server
WSDLC++ Stubs
Call centerIVR
ASP/IIS/MTS server
WSDLVB/COM Stubs
Web Channel
SOAP(XML/HTTP)
XML/IIOPXML MQ series
04/21/23Page 18
TA: Service repository, service interfaces, and contracts
• All services are hardwired through configuration files. That is, there is no explicit service registry.
• Basic services: are implemented using different technologies ranging from CORBA, DCOM , XML and MQ series.
• Banking engine: IF.COM engine is based on about 1300 schema definitions, 120 WSDL WS interfaces, 600 WS operations, 1,000,000 XML SOAP transactions a day. (one of biggest and most successful)
04/21/23Page 19
Technical Architecture (contd.)
• Banking engine services is divided into a number of namespaces including Common, ContcatCentre, Workflow, OpenAccount, PersonalAdvisors, QuickQuote, and ServiceRequest.
• OpenAccount namespace in turn includes service interfaces such as AddressMgr, ApplicationMgr, BroadRequest, OfferEngine, CreditCardApplication, CurrAccounApplication, etc.
• Banking engine runs on J2EE application server and session beans to implement service interfaces.
• IF has realized the importance of dividing the complex monolithic banking engine into smaller service units and is attempting this in the next version.
04/21/23Page 20
Lessons Learned, Benefits and Perspectives
• SOA requires not only sound technical design but also a project management initiative that supports technical architecture on the project level.
• XML Tsar as key project management tool for coordinating the development of a large set of technical interfaces.
• Banking engine was initially developed as a tightly coupled system to be evolved into a loosely couples service-oriented system.
• 90% of services were developed in first 9months.• Later phases involved maintenance, third-party
integration and increasing system agility.• SOA provided IF.com one of the most advanced IT
architectures in the banking world.