CrossVista @ BMO Improving The DevOps Lifecycle On WebMethods With CrossVista - Before & After Sujoy Ghosh Senior Technology Officer June 20th, 2013
Client Information & Payments Gateway (CIPG) Acts as a central gateway for file exchange between the bank’s back- end applications, its customers and their subscribing departments, and the bank’s partners such as Symcor, GXS, and the U.S. Federal Reserve System. CIPG is build on top of multiple technology components webMethods being the primary and largest webMethods components: Integration Server, TN, Broker, MWS and Optimize GXS components Enterprise Gateway and AI Mapping Engine Non-webMethods Components COBOL, Custom Jar files & Shell scripts
CIPG Facts We process over 150,000 files per day We have over 250 variations of files We have over 10,000 customers We have over 150 BPMs We have over 40 applications including EDI We support FTP, SFTP, SMTP, SOAP, JMS and MQ protocols Plan to expand to NDM and extend MQ usage We split files, merge files, transform files, encrypt/decrypt files We have 7/24 monitoring to ensure SLAs We have teams in Toronto, Chicago and India
Logical Stack Operating System CIPG Custom Core Services CIPG Custom Java Services CIPG Custom Applications ACH, ARP, EDI, REMCON, BAL … MWS CIPG Custom Portal Enterprise Gateway Integration Server & Broker JVM Optimize AI MQ Oracle
File Processing Flow – Logical Operating System CIPG Custom Core Services CIPG Custom Java Services CIPG Custom Applications ACH, ARP, EDI, REMCON, BAL … MWS CIPG Custom Portal Enterprise Gateway Integration Server & Broker JVM Optimize AI MQ Oracle
Physical Stack
File Processing Flow – Physical 10 1 2 3 9 4 8 5 7 6
Background – ClearCase, Ant, Shell scripts Code & Configuration Developers checked in/out Flow, JSF, Java, AI Maps & COBOL into ClearCase No provision to track IS, MWS, Optimize & TN configuration changes in ClearCase Build Manager relied on Delivery Letter & Software Build Guide to identify changes Developers often forgot to check in code; especially new artefacts Build Manager had no way of verifying configuration changes in IS, MWS, Optimize & TN Build Build Manager used Ant scripts to build JSF, Java, AI Maps & COBOL code Package Build Manager used Shell scripts to manually “zip” artefacts to create package Package required to be tested in a “clean” environment Deployment SA manually “unzips” and copies artefacts to folders as per System Build Guide SA manually makes configuration changes as per Software Build Guide
Manual Deployment & Verification
CrossVista – High Level Architecture webMethods Environments (IS, TN, Broker, BPM,Optimize, etc.) ClearQuest (Ticket Mgmt) CrossVista TEAM Server ClearCase (VCS) Audit Database (JDBC)
Current – Crossvista Code & Configuration Build Package Deployment Developers checks in/out Flow, JSF, Java, AI Maps & COBOL as well as IS, MWS, Optimize & TN configuration changes into Crossvista Build Manager is able to crosscheck Delivery Letter using Crossvista Changes are visible even if the artefacts has not been checked in Build No building required for webMethods artefacts; “build” prepared by Crossvista Build Manager uses Ant scripts to build AI Maps & COBOL code Package No packaging required for webMethods artefacts; “release” prepared by Crossvista Package is exported from Crossvista for delivery to Production Deployment SA loads exported package into Crossvista & deploys to the cluster SA manually moves non-webMethods components to respective servers
Auto Deployment & Verification
Branch Strategy APR 18 MAY 18 EQF Jun 18 July 18 R9.0.21 R10.0.0 R10.0.1.EQF R 10.1.0.June R10.1.0.PROD R10.0.0.Jockey R10.2.0.July
Make changes using Designer Change Process Create Branch Check-out Branch Make changes using Designer Check-in changes A Promote to SIT Testing OK Promote to DIT Review changes Testing OK Promote to UAT Testing OK Promote to PROD A A
Intangible Savings Complete code & configuration control Developer and Build Manager has complete visibility of all changes Build Manager has complete control of the changes going into the Release Build Manager can safely back out changes from the Release if required Reduction of Paperwork Developers no longer has to provide delivery letters Build Manager can generate release notes/contents from Crossvista Software Build Guide for configuration changes has been eliminated Simplified Deployment SA no longer has to manually deploy components and make configuration changes No Emergency Quick Fixes due to missing code No impact to BMO customers
Net savings of 3,378 man hours annually Tangible Savings Net savings of 3,378 man hours annually