As much as we would like to be able to complete all our work in a single application, doing so is near impossible. There are various developers, thinkers, and entrepreneurs in the world that are creating applications that specialize in assisting with specific needs and roles within companies. So, rather than relying on a single application, we inevitably end up relying on many. While this helps us complete multiple tasks, managing multiple applications and the data that they hold can be difficult.
Application integration is used to help maintain, manage, and keep all your applications up to date while alleviating data duplication and redundancy. By creating an application integration network that allows applications to communicate with each other, business and work processes can be done more effectively and efficiently. Application integration additionally helps to mitigate the issue of information silos.
Why Application Integration?
The need for application integration stems from the need to move data between applications. This includes transferring data from one application to another in a scheduled, ongoing way, or for moving data once from a legacy system into something new. Or, in short, application integration is used to make life easier.
With application integration, you can enter data once and connect it to multiple applications instead of having to enter it as many times as you have applications. When you add new data into an application that has been integrated with other applications, the data will be automatically distributed throughout the connected applications. This reduces human error, the need for manual intervention, and overall ensures consistency across your platforms.
By having a comprehensive system that forms a bridge between heterogeneous applications, you won’t have to be concerned about whether your applications were originally intended to communicate with each other or not. This gives you the freedom and flexibility to choose applications of your choice, not just apps that are within a collection of technologies or from the same vendor.
How to Integrate Applications
The Basics of APIs
Application integration is typically done with the use of APIs. An API (application programming interface) is a package of functions or rules that allow a user to reference and interact with parts of an application for their own purposes. This allows for control and flexibility for the end user while allowing the original creators to maintain their application without interference.
Within an API are the protocols that allow for application integration to take place.
While APIs these days are most often referencing web APIs, APIs have long been used with the integration of on-premise based software systems. They have played a significant role in SOA (service-oriented architecture), which has mainly taken place on-premise. This means application integration was only really able to take place internally. With the web and the development of cloud applications, application integration is more commonly an external process. You do not necessarily have to an application stored on your computer for you to be able to access the API of an application.
APIs and Web Applications
APIs for web applications have become very popular and essential for various tasks due to the increase in mobile applications and cloud-based software. Web APIs are distinct for the following reasons:
- They are exposed over the web using an HTTP or HTTPS protocol
- Public web APIs are available over the internet, typically with supporting documentation
- They are most often built using JSON or XML
While web APIs do share consistencies, most web APIs will be unique in the way that you can use them. These differences are dependent on how the developers of the application decided to create the corresponding API. Therefore, the specific information that is needed to fully make use of a specific API relies heavily on the documentation that is provided.
The use of middleware is one of the most common ways to set up an application integration architecture. Without middleware, application integration would rely on tedious amounts of programming and manual intervention. Middleware is standard due to the efficiency it can add to your application integration workflow, especially when you are dealing with multiple applications.
Middleware can be on-premise or cloud based, depending on the needs of your company. No matter your choice, the program that you use to implement application integration will allow for your applications to communicate with each other directly. Your system can also be set up in a consistent way among all applications which overall creates a well-organized structure. This also means that maintenance will be more straight forward.
With middleware, you can remove the need to manually enter data into each of your applications and help facilitate the sharing of business data between your most important applications.
FME For Application Integration
While FME is most well known for its ability to integrate data, it can also support application integration workflows. Whether you are needing to integrate applications for the purpose of switching from a legacy system to something new, or are looking to enable application integration as an on-going routine process, FME is the integration platform that is here to help.
Connectors and FME Hub
FME allows you to connect to applications by the use of Connectors. Connectors are created by using the API from the application you are trying to connect to. Pre-built connectors require credentials for the application so that you’re able to access your data and information securely.
Some Connectors are available directly within FME Desktop, while others are available for download from FME Hub. By supporting API connections outside of the product it is easier for the Safe Software team to ensure that the API parameters and specifications are up-to-date, independent of the FME release cycle.
Connectors in FME Hub can be found under Web Connections, within Packages (have multiple items related to a format or application), and as Custom Transformers. To view items that have official FME support versus items that have been created by other FME users, you can filter by publisher.
Create Your Own Connections
Every company has its own unique set of applications they’d like to connect to. If FME does not currently support the application of your choice, don’t worry, there are still ways that you can create a connection.
The HTTPCaller transformer in FME Desktop allows you to connect to a URL via HTTP or HTTPS. This transformer will give you the flexibility to connect to any application of your choice via a web API.
Putting it All Together
With FME Desktop you can create workflows that integrate your application(s) with each other. Depending on the needs of your application, you can use transformers between your connections to ensure that your data and information is delivered as needed. With transformers you can ensure that your business rules and standards are maintained across all your applications.
Once you have created a workflow that integrates your applications with each other or with other existing data, you can use FME Server to schedule and automatically run your workflows as needed. By specifying times, dates, or event triggers like data being uploaded into a repository, FME Server will know when and how to integrate your data.
The end result? Your data and information being where you need it when you need it.
What is FME?
FME is recognized as the data integration platform with the best support for spatial data worldwide. However, it can handle much more than just spatial data. FME can help you integrate business data, 3D data, and applications all within the same platform. FME has a range of supportive data transformation tools called transformers that make it easy to integrate over 450 formats and applications. With FME you have the flexibility to transform and integrate exactly the way you want to.
Safe Software, the makers of FME, are leaders in the technology world that strive to stay one step ahead of data integration trends. FME is continuously upgraded to ensure it has been adapted to support new data formats, updated versions of existing data formats, and large amounts of data. Gone is the idea that individual departments must work in their data silos, with IT structures limiting the company’s potential to truly work as one. Data should be able to flow freely no matter where, when, or how it’s needed.
Getting Started with APIs
How to Connect to Any API (Without Writing Code)
Webinar: Application Integration for Smart Cities
Why You Should Care About Spatial Data