Proven Methods to Drive Effective TrackWise Integration
Transcription
Proven Methods to Drive Effective TrackWise Integration
Proven Methods to Drive Effective TrackWise Integration Blake Deakin Manager, Services Center of Excellence Sparta Systems, Inc. Carl Ning Senior Solutions Consultant Sparta Systems, Inc. Agenda Introduction Definitions and Use Cases Technical Approaches The Integration Project: Planning and Execution Demonstration Wrap-up and Q&A 2 Introduction A little bit about your presenters: Blake Deakin − Role – Manager, Services Center of Excellence, Solutions Delivery & Support − Experience – 7 years at Sparta, spanning Software Quality Assurance and Services Carl Ning − Role – Sr. Solutions Consultant − Experience – 7 years at Sparta, first in Solutions Delivery (as an implementer and manager), then in Solutions Consulting 3 Definitions and Use Cases What is Integration? Fundamentally: The ability to share master data (e.g., product lists) The ability to automatically generate records, queries, reports, etc. from 1 system when working in another (e.g., from SAP automatically open TrackWise nonconformance) The ability to update a source system based on actions in another (e.g., update SAP hold status based on TrackWise nonconformance investigation status) The ability to function in 1 system but actually touch many (e.g., TrackWise to multiple ERP systems) 5 Why Integration? Reduce errors Eliminate non-value add steps Reduce compliance risk Supports M&A strategies Scalability Re-usable ‘parts’ Much easier to build and maintain than old point-to-point integrations Integrated Electronic Best of Paper + point solution breed system Enterprise Paper More and more electronic companies finally have enough global systems to integrate to (NC, CAPA, (EQMS, ERP, tracking Systems doc control) doc control) 6 Enterprise Integration ERP CRM Customer master data EDMS Product/material/ vendor information Integrated change management workflow Batch release Access to controlled documentation Return/repair processing Automated complaint initiation Automated initiation of deviations/ nonconformances PLM LIMS Automated initiation of lab investigations MES Enterprise Bus Engineering Change Order Document Access 7 Need for Integration 8 TrackWise Web Services Allows external applications to consume TrackWise functionality such as creating records, querying records, posting workflow activities, etc. Allows TrackWise to consume external web services Point and click outbound web service configuration Map web service parameters to your data fields 9 Terminology Web Services – Programmatic method of intercommunicating between systems CSV – Comma separated value file (often generated from Excel) XML – Extensible Markup Language SOA – Service Oriented Architecture SOAP – Simple Object Access Protocol WSDL – Web Services Description Language Middleware – Product or platform designed to connect (integrate) various applications or software components 10 TrackWise: New Deviation 11 TrackWise/SAP: Updating Batch Status Submit Supervisor Review Complete Review Hold Batch! Investigation and Root Cause Analysis Web Services 12 TrackWise/SAP: Impact Analysis Submit Supervisor Review Complete Review Investigation and Root Cause Analysis Hold Additional Batches! Investigation Completed Web Services 13 TrackWise/SAP: Deviation Closure & Batch Release All Actions Completed Pending Final Approval Take Batches off Hold Approve Closed - Done Web Services 14 Integration Details: SAP – TrackWise Release Master data integration User-entered product information Validated data Place on hold Update disposition Initiate incident on batch Disposition incident 15 Technical Approaches to Integration Import / Export functionality Records are imported to TrackWise using Import Utilities (services) which ship with the product. They are configured with data mappings to a common-delimited file and imported into the system. TrackWise Using Import / Export functionality, commadelimited flat files are passed between TrackWise and an external system. File passing is based on scheduling of TrackWise configuration (exports) and batch job scheduling for external systems (import). External System Records are exported from the TrackWise system using the TrackWise Coordinator business rules engine. They are transferred to the external system where they are imported. 17 17 External Fields SQL query to for list of values based on user input in data entry form List of values returned to TrackWise and presented. Database TrackWise SQL statements are created by the application based on configuration for the external database – connection parameters, etc. This database is typically either the system database (or a copy of it) for the external system, or some intermediary table which is populated regularly based on a batch load. External System In this case, TrackWise queries an external system directly using the “External Fields” feature, which runs SQL queries directly against an external system and returns a list of values based on user input. 18 18 Web Services Data lookup Investigation disposition lookup from external system Data synchronization Record creation in TrackWise based on event TrackWise External System Typical integrations delivered using Web Services API. The interface can be delivered using an existing middleware infrastructure or via “point-to-point” integration between systems. TrackWise uses SOAP-based web services calls. 19 19 Typical Use Cases Defined Method Data Lookup Data synchronization Transfer Search and Populate (Preview) Daisy Chained Populate Record Creation Description Lookup of master data (appearing in a pick list) Keeping data the same between two systems Sending TrackWise data upon performance of an activity Lookup of master data using various input parameters Multiple populate operations occurring sequentially Initiation of TrackWise records based on events in an external system File Passing (Import / Export) Yes, via the import of those values into TrackWise. Yes, via Coordinator AutoExport and PR Import. Yes, via Coordinator AutoExport. No No Yes, via PR Import service. External Fields Yes, via configuration of the feature. No No No No No Web Services Yes, via Search and Populate. Yes, via Inbound and Outbound Web Services. Yes, via Outbound Web Services. Yes, via Outbound Web Services. Yes Yes, via Inbound Web Services API. 20 Pro/Con Assessment by Method Method Pro File Passing (Import / Export) 1. 2. External Fields 3. 1. 2. 3. 4. Web Services 1. 2. Con Fast development time (controls costs) Utilizes configuration (no customization) Does not require special resources Fast development time Utilizes configuration Permits for easy maintenance of a single “system of record” Integration is real-time Most functional of all integration techniques Integration is real-time 1. 2. 3. 4. 1. 2. 3. 1. 2. Reliability concerns (infrastructure points of failure) May not be applicable in all circumstances Re-creates data in multiple places Not real-time integration Only accommodates data lookup (like product master data), not data interchange Data must be staged in a specific way for it to be applicable Avoid using when source database is very large Slower development time (requires customization) and higher costs Customizations require analysis prior to conducting upgrades of integrated systems 21 Middleware vs. Point-to-Point SOA Point-to-Point Lower cost upfront, but increases monotonically with additional points Middleware Common interface layer / Enterprise Service Bus Reusable parts Standards based Higher upfront cost, but savings as each point is reused Encourages tightly coupled systems which can drive business value, but also increases impact of change 22 Planning and Executing an Integration Project What Makes Integration Projects Different? Web services and SOA are new technologies for many TrackWise teams. Enlist help from the experts (internal or external). Where does the master data live? How clean is it? Is it replicated in other systems that must also be cleaned up? How will the TrackWise team interact with the interfaced systems? Change control? 24 Biggest Challenge Why: Each system is designed for a different purpose, with different Organizational stakeholders and governance models. Alignment It can prove quite challenging to align multiple audiences to support the project at the same time Mitigation: Executive sponsorship is critical to helping align organization to support integrations. 25 SOA Technical Architecture 26 Multiple ERPs Consider M&A implications with a strategy like this. You can have different ERPs but share a common Quality System 27 Things to Consider How will the data be sourced? What’s the forward looking technology roadmap for systems to be integrated? What are the true business requirements behind the integration? − Realtime? − Uni- or bi-directional data synchronization? − What types of data? What is your support network for all of the “points” in the integration? − − − − Middleware team? Infrastructure / Wintel support Development team? System application owners? 28 Project Planning – Web Services Task Month 1 Month 2 Month 3 Review / Prioritize - Review Requirements - Prioritize based on Scope & Available Resources Develop - Establish Interface Contract (WSDL) between Teams - Develop TrackWise Middleware Adapter - Develop / Enhance Middleware – External System Adapter - Update TrackWise Configuration Test - Perform Unit Testing - Finalize and Produce Documentation Final TDD Deliver - Demonstrate in Development Environment - Deploy to Validation Environment - Validation Discrepancy Handling - Author Deployment & Cutover Checklist - Deploy to Production 29 Project Planning – File Passing / External Fields Typically completed in the context of a broader project File Passing − Some effort may be required to “massage” data being imported to or exported from TrackWise so it can be consumed − Account for working with teams to make sure files can be placed in accessible locations, retrieved, and to conduct appropriate testing External Fields − Time should be allocated to ensuring that the external data is staged in a manner which External Fields is compatible with − Testing should be performed, especially when the domain of data is large, to ensure there is no performance impact 30 Risk Assessment Risk Category Risk Description Risk Mitigation Timeline Availability of resources (including external system owners, developers and IS personnel) • Ensure all company resources are identified at the start of the project and the timeframe of the required tasks reviewed to ensure availability Timeline User access to sensitive information • Prepare a plan for how to obtain the sensitive data, including who is able to access it, view it, at what time, etc. Timeline Consistency and authoritativeness of data • Make certain there is an owner of the data and that this person is in control and has taken the necessary steps to cleanse and prepare data according to requirements Scope Lack of agreement or priority on specific integration points • Ensure requirements are reviewed during the initial stage and prioritized as to what can be accomplished in the set amount of time and that all members are in agreement prior to advancing to development 31 Validation Recommendations for validating an integration project include the following: − Ensure to validate any data being passed • From an external system into TrackWise • From TrackWise into an external system − Ensure to validate any configuration changes that were made to accomplish the integration − Execute a full workflow for each record type impacted by the integration and confirm the process from creation to closure is as expected and that any data is passed at the appropriate time − Negative testing should include unexpected downtime from each system to confirm how the other system behaves during that time and then how it behaves once the system is back online 32 Keeping the Project on Track Critical success factors for making an integration project successful include: − Organizational alignment − Understanding business and system requirements upfront − Assurance that all data that is being passed has been cleansed and/or formatted correctly − Adequate unit, functional, and true end-to-end testing − Confirmation that the external systems to be integrated with are accessible for development and that no other development work is being conducted on them at the time − Availability according to the project plan for: • Key business resources • Technical resources • External system experts 33 Demonstration Conclusion Companies find significant value in integration projects and are actively building them across the industry Sparta’s overall strategy is to provide a flexible, powerful toolkit to enable integrations − Contrast to alternative model, which is force-fitting integrations into what worked for previous customer Sparta continues to actively invest in building incremental web service technology based on feedback from the field Our customers truly are driving innovation 35 Wrap-up and Q&A Thank you.