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.
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:
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.
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.
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.
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.
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.