Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Avoiding a Mess with Your “Spaghetti” Integrations Avoiding a Mess with Your “Spaghetti” Integrations Stephen 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 Goals 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… Independent 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) “Spaghetti” 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 Functional/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? Benefits 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 Case 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 Case 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 Steps 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 Step 1: List Independent Applications netFORUM Custom Education DB Steps 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 Step 2: Plot Business Functions Custom Education DB netFORUM Customer Customer Registration Transaction Event Online Course Delivery Registration Conference Delivery Event Web Seminar Delivery Steps 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 Step 3: Connect Integration Points Custom Education DB netFORUM 1. Login 2. Setup Customer 3. Login 4. Add/Update Customer 1. Setup Registration 2. Registration List Transaction Event 3. Pay 3. Launch 3. Launch Event 5. Launch Online Course Delivery Registration Conference Delivery 4. Access 5. Register Web Seminar Delivery Identify 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 Synchronization 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 Use Case: Setup Education Content Custom Education DB netFORUM Customer 2. Setup Customer 1. Setup Transaction Event Event 3. Configure Online Course Delivery Registration Conference Delivery Registration Web Seminar Delivery Use Case: Register for Education Content Custom Education DB netFORUM Customer 1. Login 4. Add/Update Customer 5. Register Transaction Event 3. Pay Online Course Delivery Registration Conference Delivery Registration 2. Register Event Web Seminar Delivery Use Case: Access Education Content Custom Education DB netFORUM 1. Login 3. Login Customer Customer 4. Access Transaction Event 3. Launch 3. Launch Event 5. Launch Online Course Delivery Registration Conference Delivery Registration 2. Registration List Web Seminar Delivery Case 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 Use Case: Adding Proposed LMS Custom Education DB netFORUM Customer 1. Login Customer Registration 2. Register Transaction Event 3. Pay Online Course Delivery Registration Proposed LMS Conference Delivery Event Web Seminar Delivery 4. Add/Update 3. Login 5. Register Customer 4. Access Registration Event 5. Launch Online Course Delivery Use Case: Full Plate of Spaghetti Custom Education DB netFORUM 1. Login 2. Setup Customer 3. Login 4. Add/Update Customer 4. Access 5. Register 1. Setup Registration 2. Registration List Transaction Event 3. Pay 5. Launch Online Course Delivery Registration 2. Setup 3. Launch Conference Delivery 3. Launch Event Web Seminar Delivery Proposed LMS 4. Add/Update 3. Login 5. Register Customer 4. Access Registration Event 5. Launch Online Course Delivery Use Case: Universal Transcript (Option 1) Custom Education DB netFORUM 1. Login 3. Login Customer Customer Universal Transcript Transaction 4. Access Registration 2. Registration List Event Registration 4. GetStatus Online Course Delivery 3. GetStatus 3. GetStatus Proposed LMS Conference Delivery Event Web Seminar Delivery 3. Login Customer 4. Access 5. GetStatus Registration Event Online Course Delivery Use Case: Universal Transcript (Option 2) 1. Login Custom Education DB netFORUM Customer 3. Login Customer Registration 4. Access Transaction Event Registration Online Course Delivery 2. Login 5. GetStatus 2. Registration List Proposed LMS Conference Delivery Event 3. GetStatus Web Seminar Delivery 3. Access 3. GetStatus Customer Universal Transcript Registration Event 5. GetStatus Online Course Delivery Key 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?