At most research institutions, the question is not whether you have multiple software applications — it’s how many. With the abundance of digital solutions, institutions must be sure to ask the right questions to get the most value out of their electronic research administration (eRA) software. For example, how will these solutions keep your data synced across applications?
Integrations are an efficient and effective way to share data between systems. This article will share institutional best practices for defining and implementing successful cross-system integrations.
Narrowing your focus
To narrow your field of view to integration top priorities, it helps to assess a few key factors:
- Volume: How often do you compile the data or create reports?
- Effort: What is the level of effort involved in your manual data work? How much time is spent on manual tasks?
- Data integrity: Do you have issues with consistency or manual input errors?
It’s very common for research administration teams to use Excel and CSV files to manually create monthly, weekly, or even daily reports. Long hours spent on clunky or error-prone manual tasks are a good signal that you can benefit from integrating solutions.
5 steps to defining your integration needs
Once you’ve decided which of your internal processes are good candidates for integration, it’s essential to define the specifics before starting work.
Here are the five most important questions to ask when defining the scope of your integration:
- What is the problem to be solved?
- What are the systems and who uses them?
- What information does each set of users and systems need from the others?
- How should the data be mapped between systems?
- How often is the integration needed?
What is the problem to be solved?
The most common problem is the time-consuming nature of manual, repetitive tasks like compiling, selecting, and sending data between separate, unintegrated systems. Doing this by hand costs institutions a considerable amount of time that could be spent on skilled tasks like analysis and interpretation. Consistency is also a common pain point, as manual processes frequently result in data input errors.
Clearly define the problem you hope to solve through automation. What is your ideal outcome? The answer will help you identify metrics for success and keep the project in scope.
What are the systems and who uses them?
At Cayuse, one of the most common use cases for integration is managing user and organization data flowing to and from the Cayuse Platform Admin Module. Most research institutions pull their user and organization data from more than one place, so the first step is to identify each source of data and the users and inputs attached.
Integration allows disparate systems to communicate directly, so defining what those systems are and what data will come from each is critical.
What information does each system need from the other?
Determine which data points should be shared and which should not be. A data surplus can create confusion if the receiving system doesn’t have a way to sort or interpret all of the inputs. Sharing more data than necessary can also hijack valuable bandwidth better directed toward the focused analysis of useful information.
Avoid the mistake of using a massive data dump as a shortcut during configuration. Instead, map out exactly which data points should be shared and how often. (We’ll explore these steps in the last two subsections.)
How should the data be mapped?
When determining how the source and receiving software should communicate, creating a physical map in the form of a table, diagram, or flow chart is a valuable exercise. Outline each data source and element that should be integrated before mapping specific fields to each other. How should labels and tags in each system map to fields in the other?
This process yields a visually comprehensive understanding of what the integration will do, including the source, target, and purpose of each dataset. The documentation from that process will aid in everyone’s understanding of your software and data ecosystem, so this process is well worth the time and energy.
How often should the integration be run?
The perfect cadence for any integration depends on the use case. If you only need to exchange fresh data once a week, schedule the integration to run once a week. Be careful not to overdo it; the frequency you choose should revolve around your business need. Small institutions can often exchange data monthly or weekly, while very large institutions may need to run integrations hourly to stay current.
Also, note that you don’t necessarily need to exchange all data on the same cadence. If only a few data points should update hourly, specify that in your requirements so you can avoid more data exchange than necessary.
Finally, don’t make assumptions about the business need from a technical perspective. Instead, take the time to understand what is required, why it’s needed, and how it will impact your team.
Assemble your integration team
Next, assemble your integration team. At a minimum, this team should include the following participants:
- Subject Matter Experts
- Authorized Agents of Change (on both sides of the integration)
- Technical team and point of contact
- Project Manager
Keep the team lean, pared back to only essential staff members. This helps keep the project moving, with input from the wider team as needed.
Keys to a successful software integration
Remember the old DIY “telephone” using two tin cans and a string? At its most basic level, an integration is essentially the string between two or more “tin cans” (software applications). The first step is to simply identify the tin cans on either end and the ideal functionality for the string (i.e., direct API integration vs. flat-file exchange).
When you’re ready to proceed to testing, begin in a sample environment. Test your integration in UAT (user acceptance testing) to ensure the data maps correctly and the integration behaves as planned. Integrations almost never run perfectly on the first attempt. Yours will likely require adjustments better identified outside of a live environment through end-to-end functional testing.
Finally, maintain your integration. Your system and business needs will change over time; try to anticipate updates that will impact your integrations and plan accordingly.
Still have questions about your integration? Join the Cayuse Community for more best-practice guidance and community support.