IRMAC Enterprise Application Integration Ken Dschankilic, Manager Integration Architecture April 16, 2003 IRMAC Enterprise Application Integration Ken Dschankilic, Manager Integration Architecture April 16, 2003 Canadian Tire Corporation, Limited
Agenda Who is Canadian Tire EAI Defined The Integration Problem Integration Frameworks Integration Design Patterns Dave Callingham’s EAI Components Integration at Canadian Tire Q & A Who is Canadian Tire EAI Defined The Integration Problem Integration Frameworks Integration Design Patterns Dave Callingham’s EAI Components Integration at Canadian Tire Q & A
Customer Count: 226.8MM Retail Sales: $7.4 Billion Customer Count: 226.8MM Retail Sales: $7.4 Billion Today, we are an inter-related family of businesses Customer Count: 172.1MM Retail Sales: $5529.5MM Customer Count: 1.7MM Retail Sales: $53.4MM Customer Count: 1.7MM Retail Sales: $53.4MM Customer Count: 4.2MM GOR: $352.3MM Customer Count: 4.2MM GOR: $352.3MM Customer Count: 8.7 million Retail Sales: $510.4MM Customer Count: 8.7 million Retail Sales: $510.4MM Customer Count: 40.1MM Retail Sales: $911.9MM Customer Count: 40.1MM Retail Sales: $911.9MM
$7 billion (CDN) - Canadian Tire Corporation, Limited is Canada’s most shopped retailer $7 billion (CDN) - Canadian Tire Corporation, Limited is Canada’s most shopped retailer – More than 1,000 retail outlets (Canadian Tire Associate Stores, Gas Bars, Mark’s outlets) across Canada – More than 45,000 employees – More than 25 million customer transactions each year – 90% of Canadians shop at a Canadian Tire store, 40% are in our stores every week $7 billion (CDN) - Canadian Tire Corporation, Limited is Canada’s most shopped retailer $7 billion (CDN) - Canadian Tire Corporation, Limited is Canada’s most shopped retailer – More than 1,000 retail outlets (Canadian Tire Associate Stores, Gas Bars, Mark’s outlets) across Canada – More than 45,000 employees – More than 25 million customer transactions each year – 90% of Canadians shop at a Canadian Tire store, 40% are in our stores every week Canadian Tire Corporation, Limited
– Canadian Tire Petroleum is the country’s largest independent retailer of gasoline 203 gas bars 203 gas bars 21 Simoniz car washes 21 Simoniz car washes – Canadian Tire “Money” is the most widely recognized loyalty program in Canadian retail – Canadian Tire Financial Services is the largest non- bank issuer of MasterCard in Canada – Our website ended 2001 among the country’s top three e-commerce websites – Canadian Tire Petroleum is the country’s largest independent retailer of gasoline 203 gas bars 203 gas bars 21 Simoniz car washes 21 Simoniz car washes – Canadian Tire “Money” is the most widely recognized loyalty program in Canadian retail – Canadian Tire Financial Services is the largest non- bank issuer of MasterCard in Canada – Our website ended 2001 among the country’s top three e-commerce websites Canadian Tire Corporation, Limited
EAI Defined
What is Application Integration Yankee Group; …the continuous process of improving the enterprises’ entire information technology base-applications, information, communications, and infrastructure to support the business. Yankee Group; …the continuous process of improving the enterprises’ entire information technology base-applications, information, communications, and infrastructure to support the business. Gartner Group says; “Application integration is defined as making independently designed application systems work together.” Mercator; …EAI is the process of integrating different applications to enable an enterprise to communicate with a single voice.
The Integration Problem “Imagine if you didn’t have common electric outlets and plugs in your house, and every time you bought a new appliance, you had to wire up the appliance to the wires in your wall. And everybody’s wires in everybody’s walls were different. And everybody’s appliance wiring was different. That’s really the way it works today with trying to integrate business software applications.” - Paul Margolis, past chairman of the OAG, Inc.
The Integration Problem Multiple, disparate applications Multiple platforms Multiple databases Multiple transaction processors Multiple data entry points Multiple versions of the same data Incompatible business data Multiple, disparate applications Multiple platforms Multiple databases Multiple transaction processors Multiple data entry points Multiple versions of the same data Incompatible business data
Factors Contributing to the Problem Application systems are built at different times by different groups operating independently of each other Organizations are stuck w/ incompatible architectures and hard-to-maintain, but harder-to- eliminate legacy applications Organizations are embracing a buy before build strategy that favours purchased application packages over internal development Application systems are built at different times by different groups operating independently of each other Organizations are stuck w/ incompatible architectures and hard-to-maintain, but harder-to- eliminate legacy applications Organizations are embracing a buy before build strategy that favours purchased application packages over internal development
IT’s Dirty Little Secret Planning Systems Application System C Application System B Application System A Program Extract Load Down load file screen scrape Database Replicator Extract Down load file Load APPC trans- action file Update Sockets Extract Down load file Load Extract Down load file
– Need a systematic approach to the problem – No E.F. Codd of Integration No mathematical basis No mathematical basis No relevant academic leadership No relevant academic leadership – Multiple Vendor Specific Frameworks unlike DBMS marketplace where DB implementations are similar unlike DBMS marketplace where DB implementations are similar Integration Software vendors have widely different implementation frameworks Integration Software vendors have widely different implementation frameworks – Need a systematic approach to the problem – No E.F. Codd of Integration No mathematical basis No mathematical basis No relevant academic leadership No relevant academic leadership – Multiple Vendor Specific Frameworks unlike DBMS marketplace where DB implementations are similar unlike DBMS marketplace where DB implementations are similar Integration Software vendors have widely different implementation frameworks Integration Software vendors have widely different implementation frameworks Integration Framework
– Standards only recently impact integration design patterns in the DBMS marketplace, standards were established early in the development life cycle in the DBMS marketplace, standards were established early in the development life cycle in the Integration marketplace, only w/in the last 2 years have standards such as XML, Web Services emerged in the Integration marketplace, only w/in the last 2 years have standards such as XML, Web Services emerged – Standards only recently impact integration design patterns in the DBMS marketplace, standards were established early in the development life cycle in the DBMS marketplace, standards were established early in the development life cycle in the Integration marketplace, only w/in the last 2 years have standards such as XML, Web Services emerged in the Integration marketplace, only w/in the last 2 years have standards such as XML, Web Services emerged Integration Framework
– A Framework is required for integration: Adapters Adapters Transformation Transformation Asynchronous messaging Asynchronous messaging Intelligent Routing Intelligent Routing Business Process Management Business Process Management Canonical Messages Canonical Messages – A Framework is required for integration: Adapters Adapters Transformation Transformation Asynchronous messaging Asynchronous messaging Intelligent Routing Intelligent Routing Business Process Management Business Process Management Canonical Messages Canonical Messages Integration Framework
– 3 Main Patterns to solve the integration problems: Data Consistency Data Consistency – asynchronous, loosely coupled Multi-Step Business Process Multi-Step Business Process – asynchronous, loosely coupled Composite Application Integration Composite Application Integration – synchronous, tightly coupled – 3 Main Patterns to solve the integration problems: Data Consistency Data Consistency – asynchronous, loosely coupled Multi-Step Business Process Multi-Step Business Process – asynchronous, loosely coupled Composite Application Integration Composite Application Integration – synchronous, tightly coupled Integration Patterns
Data Consistency Pattern Integration Framework Add prod 1234 Add item Add UPC Add prod 1234
Multi-Step Business Processes Pattern Integration Framework Ship Notice Alloc Order Alloc Order StoreOrder StoreOrder Ship Notice
Composite Application Pattern Data Programs Data Programs Data Programs New code & data Legacy Applications Purchased application packages Integration Framework Browser Place Order Check Logistics Check Credit Check Inventory
Vendor Implementations
Integration at CTC
What needed to be fixed Organization issues – where does the Competency Centre reside – who does the work Methodology – no consistent way to document interfaces Exception Management – escalation process of data issues…. Organization issues – where does the Competency Centre reside – who does the work Methodology – no consistent way to document interfaces Exception Management – escalation process of data issues….
Key Data Issues Data Quality Data Quality Data Consistency Data Consistency Data Ownership Data Ownership Semantic Knowledge and Behaviour Semantic Knowledge and Behaviour Latency Latency Formats Formats Data Quality Data Quality Data Consistency Data Consistency Data Ownership Data Ownership Semantic Knowledge and Behaviour Semantic Knowledge and Behaviour Latency Latency Formats Formats
Hub and Spoke Pattern Point to Point Hub & Spoke Hub and spoke organizing principles 1. Don’t connect anything directly to anything 2. Applications are autonomous and share no databases directly 3. Knowledge of interconnections removed from source and targets and moved to the hub Benefits 1. Operational simplification 2. Adaptation to change 3. Reuse leverage
– 2 Brokers are in place: Homegrown Broker supports near-time integration patterns Homegrown Broker supports near-time integration patterns Broker is MVS based using MQSeries to connect to applications on: Broker is MVS based using MQSeries to connect to applications on: – AS/400, NT, DEC/ALPHA, AIX, MVS Mercator supports batch integration patterns Mercator supports batch integration patterns – Mercator is used for most of the transformations – Bulk data movement is done using homegrown File Transfer/MQSeries – 2 Brokers are in place: Homegrown Broker supports near-time integration patterns Homegrown Broker supports near-time integration patterns Broker is MVS based using MQSeries to connect to applications on: Broker is MVS based using MQSeries to connect to applications on: – AS/400, NT, DEC/ALPHA, AIX, MVS Mercator supports batch integration patterns Mercator supports batch integration patterns – Mercator is used for most of the transformations – Bulk data movement is done using homegrown File Transfer/MQSeries CTC Integration Infrastructure
150+ interfaces 150+ interfaces 40+ w/ re-usable objects (source/target/mapping objects) 40+ w/ re-usable objects (source/target/mapping objects) 45 applications involved in integration with the Broker 45 applications involved in integration with the Broker Real-time messaging a combo of XML and ASCII payloads Real-time messaging a combo of XML and ASCII payloads FT/MQ per day FT/MQ per day 450+ Queue Managers 450+ Queue Managers 150+ interfaces 150+ interfaces 40+ w/ re-usable objects (source/target/mapping objects) 40+ w/ re-usable objects (source/target/mapping objects) 45 applications involved in integration with the Broker 45 applications involved in integration with the Broker Real-time messaging a combo of XML and ASCII payloads Real-time messaging a combo of XML and ASCII payloads FT/MQ per day FT/MQ per day 450+ Queue Managers 450+ Queue Managers
What Worked Re-use of infrastructure Re-use of infrastructure – FT/MQ, Maps Mercator for batch legacy data & recently XML, DB2 & MQ Adapters (95%) Mercator for batch legacy data & recently XML, DB2 & MQ Adapters (95%) Messaging - APIs (5%) Messaging - APIs (5%) Methodology & Design Patterns Methodology & Design Patterns Competency Centre Competency Centre IMS Bridge to unlock legacy transactions IMS Bridge to unlock legacy transactions Phased rollout - unplug old-turn on new functions at the hub Phased rollout - unplug old-turn on new functions at the hub Re-use of infrastructure Re-use of infrastructure – FT/MQ, Maps Mercator for batch legacy data & recently XML, DB2 & MQ Adapters (95%) Mercator for batch legacy data & recently XML, DB2 & MQ Adapters (95%) Messaging - APIs (5%) Messaging - APIs (5%) Methodology & Design Patterns Methodology & Design Patterns Competency Centre Competency Centre IMS Bridge to unlock legacy transactions IMS Bridge to unlock legacy transactions Phased rollout - unplug old-turn on new functions at the hub Phased rollout - unplug old-turn on new functions at the hub
Canadian Tire Corporation, Limited IRMAC Enterprise Application Integration Ken Dschankilic, Manager Integration Architecture April 16, 2003 IRMAC Enterprise Application Integration Ken Dschankilic, Manager Integration Architecture April 16, 2003