No matter how large your organization is, you're most likely using more than one software solution to manage your construction business. Some tools you love, some tools you are indifferent towards, but you need them all. The problem is: how do you get your data to sync between your different applications?
Integrating disjointed software applications is one of the biggest challenges construction organizations face today. Most applications are not connected, which means you must manage different silos of information.
Luckily, ProjectTeam is built on modern web technologies that make adding integrations easy. In this post, we'll cover the basics of how integrations work and how they can make your life easier.
What is software integration?
Entering into the world of integrations can be intimidating but it doesn't have to be. The point of software integration is to make your life easier and eliminate areas of double-entry. Integrations are connections between systems and applications that work together to share information and data.
Integrations are built on APIs (application programming interface) and allow for the flow of data between applications. Integrations are more easily accomplished between cloud-based applications but they can also be created for on-premise solutions. Before deciding which integrations you need, you'll need to answer the following questions:
1. What type of software will you integrate?
Larger organizations tend to be rooted in custom-built and on-premise software but are moving towards adopting Software as a Service (SaaS) solutions. Smaller, more agile construction organizations tend to have more modern web solutions on their projects. SaaS tools enable them to manage business processes without the hassle of managing hardware, downloading software, or manually installing updates.
In most cases, SaaS solutions are easier to integrate but on-premise solutions are still possible. In cases where there is no way to integrate with an on-premise solution, you may be able to establish workarounds such as scheduled imports or email notifications nudging users that they need to manually update the other system.
2. What type of data needs integration?
Data can come in many types, including text, numbers, people, currency, or even files. Before planning your integration, you need to identify which parts of your systems make sense to combine.
When planning your requirements, you should recognize that each system may define data in different ways. For example, in your accounting solution, you may have a text field that has a max of 30 characters while in your project management solution the limit is over 200 characters. In those cases, you will need to make decisions on how to map those fields together (i.e. do you truncate the data? translate the data? etc).
In some cases, data from your multiple systems may not play together nicely but that doesn't mean they can't complement each other. Finding similar data in each system gives you a complete view of how your integration should work.
3. How often should your systems "talk" to each other
Something to consider when developing your integration plan is how frequently you need your systems to sync data. For example, do you need a real-time integration or is it acceptable for your systems to transfer data on a nighly-basis? In some cases, the possibilities may be constrained by what each system is capable of but it's good to outline your ideal situation.
Along the same lines, it's important to identify your business processes for data integration. Building off of the example above, most organizations would be very worried about sending "bad" or unfinished data from project management solutions to your accounting system. Therefore, you should identify internal workflows that let the appropriate people make final approvals before transferring data. In other cases, you may not need any approval but it is something to think about and call out in your requirements.
4. What to do about errors?
Inevitably, there may be cases where your integration gets interrupted or runs into an edge case that had not been developed. In that case, it is best to identify error cases and who from your organization should receive the error notifications. Error notifications can help keep your team up-to-date on how your integration is performing over time. The people receiving the notifications may be instructed to perform manual fixes to re-sync the data.
Software integration is a broad term and there are many types of integrations available. Hopefully, the information above can help you establish your high-level integration goals and identify key scenarios to think about.
- What type of software will you integrate - You have options to create integrations for on-premise and cloud systems.
- What type of data needs integration - You probably don't need every field in one system to map to every field in your other system. You just need to identify the data that will complement each other in a way to accomplish your goals.
- How often should your systems "talk" to each other - You have options for real-time integration and scheduled integration.
- What to do about errors - Identify the people within your organization that have the appropriate access to receive error notifications and make the needed manual system updates.
ProjectTeam allows you to integrate with 200+ different applications including systems such as accounting systems, CRM applications, e-Signature solutions, and more. If you're interested in learning more about creating integrations with ProjectTeam, contact us today.