Title: Avoiding a Mess with Your Spaghetti Integrations
1Avoiding a Mess with Your Spaghetti Integrations
2Avoiding a Mess with Your Spaghetti Integrations
3Stephen Spruce Agilutions Consulting
- Former netFORUM Client and Technical Lead with
CFP Board - Founded Agilutions Consulting in 2005
- Focused on implementing and supporting netFORUM
based solutions - Extensive experience with the challenges
encountered with integrating multiple independent
systems to create seamless business processes
4Goals for the Session
- Identify the Spaghetti Integrations on our
plate - Define a Functional/Integration Map and its uses
- Walk through an Education Management Case Study
using a Functional/Integration Map - Empower you to untangle your own spaghetti
- Disclaimers
5Independent Applications
- Stand alone application that provides one or more
business functions - 3rd Party or Common Off The Shelf (COTS)
- Home Grown Database
- Custom Web Application
- Imported/Exported Spreadsheet
- Premise Based or Hosted (SASS)
6Spaghetti Integration
- Exchanging of data and sharing a common work flow
- Data Synchronization
- Types of Integration
- Web Services (xWeb)
- Direct API calls
- Direct SQL Queries
- File Import and Export
- Manual Dual Entry
- Single Sign On
- Same Login/Password to access different
applications
7Functional/Integration Map
- A picture can explain a thousand headaches
- Maps business functions to applications and
identifies the integrations between them - Defines the Source of Record for key data
- Primary copy of the data
- All changes must be synchronized with the source
of record - All other applications need to refer to the
source of record to get current state - Potential Tools
- PowerPoint, Visio, Whiteboard
- Needs a better name Spaghetti Map?
8Benefits of a Functional/Integration Map
- Document where core business functions are
supported - Identify integration points and data dependencies
- Estimate scope, level of effort, and complexity
for integrations - Develop requirements for RFPs and conduct vendor
selections - Determine short and long-term costs of ownership
and maintenance for integrations
9Case Study Education Management
- netFORUM as AMS
- iWeb for CRM, Events, Membership, Accounting, COE
- eWeb for Online Access, Registration, Shopping
Cart - Educational Content offered by 3 different
Applications - netFORUM
- Conference Sessions
- Web Seminars
- Custom Education Database
- Online Courses
- Proposed LMS
- Future Online Courses
10Case Study Education Management
- Source of Records
- Customers (netFORUM)
- Customer ID, Email, Password, Contact Info
- Registrations (netFORUM)
- Register, Cancel
- Transactions (netFORUM)
- Invoices, Payments
- Events (Shared by all 3 Applications)
- Start and End Dates
- Attendance and Progress
- Score and Result
11Steps to Create a Functional/Integration Map
- 1. List Independent Applications (The Boxes)
- Web Applications
- Databases
- 3rd Party Software
- 2. Plot Business Functions to Applications (The
Circles) - Modules
- User Interfaces
- Major Data Objects
- 3. Connect Integration Points (The Lines)
- Use Cases
- Customer Transactions
- Staff SOPs
12Step 1 List Independent Applications
netFORUM
Custom Education DB
13Steps to Create a Functional/Integration Map
- 1. List Independent Applications (The Boxes)
- Web Applications
- Databases
- 3rd Party Software
- 2. Plot Business Functions to Applications (The
Circles) - Modules
- User Interfaces
- Major Data Objects
- 3. Connect Integration Points (The Lines)
- Use Cases
- Customer Transactions
- Staff SOPs
14Step 2 Plot Business Functions
Custom Education DB
netFORUM
Customer
Customer
Registration
Transaction
Event
Registration
Online Course Delivery
Event
Web Seminar Delivery
Conference Delivery
15Steps to Create a Functional/Integration Map
- 1. List Independent Applications (The Boxes)
- Web Applications
- Databases
- 3rd Party Software
- 2. Plot Business Functions to Applications (The
Circles) - Modules
- User Interfaces
- Major Data Objects
- 3. Connect Integration Points (The Lines)
- Use Cases and Business Process Workflows
- Staff SOPs
- Arrows in direction of Application that initiates
the call
16Step 3 Connect Integration Points
Custom Education DB
netFORUM
Customer
1. Login
2. Setup
3. Login
4. Add/Update
Customer
4. Access
Registration
1. Setup
5. Register
Transaction
2. Registration List
Event
5. Launch
3. Pay
Registration
Online Course Delivery
3. Launch
3. Launch
Event
Web Seminar Delivery
Conference Delivery
17Identify Integration Points
- Look for Common Terminology
- Customer, Registration, Registrant, Event,
Invoice - Follow Foreign Keys
- reg_cst_key, reg_evt_key
- Open Remote Connections
- System Options, Configuration Files (web.config),
Database Connections, Triggers - Dedicated Connections
- Arm Chair Integration
- User Manually logs in and enters information to
complete workflow
18Synchronization Takes Practice
- Identity Fields
- Customer Key, Account Number, Primary Email
- What happens when one of them changes?
- Synchronous vs. Asynchronous
- How important is it to have the data the same?
Real Time? - Document the Data Mapping
- Field from Application A maps to Field from
Application B
19Use Case Setup Education Content
Custom Education DB
netFORUM
Customer
2. Setup
Customer
Registration
1. Setup
Transaction
Event
3. Configure
Registration
Online Course Delivery
Event
Web Seminar Delivery
Conference Delivery
20Use Case Register for Education Content
Custom Education DB
netFORUM
Customer
1. Login
4. Add/Update
Customer
Registration
5. Register
Transaction
2. Register
Event
3. Pay
Registration
Online Course Delivery
Event
Web Seminar Delivery
Conference Delivery
21Use Case Access Education Content
Custom Education DB
netFORUM
Customer
1. Login
3. Login
Customer
Registration
4. Access
Transaction
2. Registration List
Event
5. Launch
Registration
Online Course Delivery
3. Launch
3. Launch
Event
Web Seminar Delivery
Conference Delivery
22Case Study New Requirements
- Purchase an LMS to develop future Educational
Content and formats - Continue to support existing Educational Content
and formats - Produce Universal Transcript across all
Applications and forms of Educational Content
23Use Case Adding Proposed LMS
Custom Education DB
netFORUM
Customer
1. Login
Customer
Registration
Transaction
2. Register
Event
3. Pay
Registration
Online Course Delivery
Proposed LMS
Event
Web Seminar Delivery
Conference Delivery
Customer
4. Add/Update
3. Login
5. Register
4. Access
Registration
Event
5. Launch
Online Course Delivery
24Use Case Full Plate of Spaghetti
Custom Education DB
netFORUM
Customer
1. Login
2. Setup
3. Login
4. Add/Update
Customer
4. Access
Registration
1. Setup
5. Register
Transaction
2. Registration List
Event
5. Launch
3. Pay
Registration
Online Course Delivery
2. Setup
3. Launch
Proposed LMS
3. Launch
Event
Web Seminar Delivery
Conference Delivery
Customer
4. Add/Update
3. Login
5. Register
4. Access
Registration
Event
5. Launch
Online Course Delivery
25Use Case Universal Transcript (Option 1)
Custom Education DB
netFORUM
Customer
1. Login
3. Login
Customer
Universal Transcript
4. Access
Registration
2. Registration List
Transaction
Event
Registration
Online Course Delivery
4. GetStatus
3. GetStatus
3. GetStatus
Proposed LMS
Event
Web Seminar Delivery
Conference Delivery
Customer
3. Login
4. Access
Registration
5. GetStatus
Event
Online Course Delivery
26Use Case Universal Transcript (Option 2)
Custom Education DB
1. Login
netFORUM
Customer
3. Login
Customer
Registration
Transaction
4. Access
Event
Registration
Online Course Delivery
2. Login
5. GetStatus
2. Registration List
Proposed LMS
Event
Web Seminar Delivery
Conference Delivery
Customer
3. Access
3. GetStatus
Universal Transcript
3. GetStatus
Registration
Event
5. GetStatus
Online Course Delivery
27Key Take Aways for Function/Integration Maps
- Simple to make Powerful to use
- Can help document and understand the complexity
of your environment - Are only good as they are maintained
- Can be as high-level or detailed as you need
- Questions?