The Importance Of Software Integrations For Your Product
Tags: automation, softwareintegrations, ansiblecollections
Published: 2020-12-09 13:56:06

**WORDS BY** Gregor Berginc

Integration is a crucial aspect of any modern business. As businesses in every industry are managing increasingly more complex systems, a shift towards unified automation and DevOps principles is essential to stay competitive.

With software integration, it’s easy to connect disparate systems and applications, enabling your users to bring different products and departments together, making their business processes more efficient and less painful.

Read on as we explore software integration, reveal the benefits of building integrations for your product, and discuss the best practices you can follow.

#**What is software integration?**
Integration in software engineering is the combination of various software subsystems into a single, unified architecture. This process of creating integrated systems facilitates greater functionality and performance across all the separate components.

[A recent study by Pandium] (https://chiefmartec.com/2020/05/proof-platform-saas-apps-median-15-integrations/) on the 1,000 fastest-growing SaaS (software-as-a-service) companies found that these companies have a median of 15 integrations. App platforms like Zapier typically have over 500 integrations. Configuration management tools like [Puppet] (https://puppet.com/), [Chef] (https://www.chef.io/) and [Ansible] (https://www.ansible.com/) have hundreds of integrations. Ansible, for example, even has more than 4.000 such integrations (Ansible modules).

#**Integration Types**
There are four key types of software integration, each of which serves a distinct purpose:

##1. System integration and automation
System integration is a core element of software integration, which enables an application to communicate with all the existing services and applications within a company’s IT ecosystem.

For example, Ansible integration for AWS cloud services enables seamless connectivity with a user’s AWS cloud. By using the AWS Ansible Collection, AWS users can efficiently manage Amazon resources, build a secure VPC, and deploy documents, which improves their user experience with AWS Cloud.

##2. API
An Application Programming Interface (API) is an interface that allows separate systems to communicate. The users—like third-party app developers and business partners—don’t need to know how the software works on the back-end, as they simply use the API to leverage the app’s functionalities.

You can think of an API like a waiter at a restaurant. Users can view the available options on the menu and order what they like. They don’t see what happens in the kitchen—they just place an order and receive the finished meal.

In this way, an API serves as a bridge between applications that use integration to transmit data seamlessly, without any complexity. A good example is the payment processing platform, Stripe. Another example is Ansible Tower offering API-based integration for external systems like CI/CD.

##3. Webhooks
Webhooks are user-defined HTTP callbacks that are triggered by specific events to link applications together.

When the trigger event occurs in the source website, the webhook recognizes the event, collects data, and sends it to the specified URL as an HTTP request. It’s possible to set up a webhook event on one website to trigger actions on another website.

This type of integration provides access to real-time data at any time. Also, as the process updates information whenever events occur, businesses can automate data collection.

##4. ISC
Integration Services Components (ISC) live on a webserver to simplify connections with local management tools. These components are not code-based, and so, the business only needs cloud access to integrate ISC.

An ISC allows users to access data directories and on-premise software tools for business intelligence and asset management without the need to import large files. In many ways, it is an out-of-the-box solution. However, you must be familiar with the local database to set up an ISC integration.

#**Why should you build integrations for your product?**
The most prominent benefit is to simplify complex business processes by unifying them with system integrations. However, it’s far from being the only one. Read on to discover 6 benefits for building product integrations:

##Ease the complexity of user’s systems
Nowadays it is not enough to build the best in breed products. Customers are seeking ways to integrate your products efficiently into their workflows. It is not uncommon to find solutions from multiple vendors for a single area of operations. Having to learn how to manage each one requires time and money. By offering integrations, however, you are enabling your customers to unify all the technologies seamlessly.

##Speed up the adoption of your product
Introducing new products into an existing environment always poses barriers, even when you have a far superior product. This is mainly rooted in the fact that people do not like the change.

Using integrations with industry adopted tools like Ansible or Puppet simplifies the onboarding of your products into organizations already using such tools. Integrating them into their workflows will cause less friction as their Ops teams will already be familiar with the core platform unifying access across the whole ecosystem.

##Faster growth of your user base
Onboarding a new solution is only the first step of a company-wide adoption process. One of the key requirements is the ease of adding new users and thus leveraging the new solution to its full potential.

Let’s take a look at the example of [Sensu] (https://steampunk.si/blog/ansible-integration-helps-sensu-reach-more-users/). Their solution is an Observability Pipeline that delivers Monitoring-as-Code for any cloud infrastructure. Before integrating with Ansible, they were facing two challenges - a drop off during the onboarding process and a sub-optimal user base within already onboarded businesses.

With the Sensu Ansible Content Collection in place, Sensu customers can now get better business results by expanding its usage and adding additional users with ease.

##Improve the customer experience
Improving your solution’s customer experience is a mix of different changes, but one thing stays constant - familiarity.

If businesses can work with already widely adopted configuration management tools (such as Ansible) for onboarding and using your product, there’s a good chance that the familiarity will simplify its early stages of use, improving the first impression and the overall experience.

The real impact of familiarity results in saved time by leveraging already existing know-how and not investing resources into learning new tech or processes.

This brings us back to the [Sensu] (https://steampunk.si/blog/ansible-integration-helps-sensu-reach-more-users/) example - they managed to significantly improve their product experience by offering an Ansible Content Collection. Here’s a quote from their client:

“I tried your product a couple of months ago” but they didn’t finish setting it up for one reason or another, “But then I saw that there was an Ansible Collection for it, so I tried again and I got it set up and started using it right away across thousands of devices.”

##Grow your business with integrations
All of the above lead to growing your business faster and more efficiently through such integrations. Think of an integration as an additional sales channel. Your product appears in the marketplace of the product you are integrating it with.

For example, Ansible Content Collections are available on [Ansible Galaxy] (https://galaxy.ansible.com/). However, those are community-generated Collections that can be downloaded at no cost. If you’d really like to attract new customers with a high-quality, supported, enterprise-grade integration, certifying your Collection is a must. This assures your customers the integration meets the standards of the Ansible Automation Platform. And we can help you with that.


<center>![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/gb22sh0qlbuz9rwfk0rv.PNG)
*Automation Hub screenshot (source: https://www.ansible.com/products/automation-hub)*</center>

##It Minimizes Customer Churn
Customers expect easy-to-use solutions in the modern age. System integrations make that possible by giving businesses the ability to unify all their solutions with their preferred configuration management tool. If your product becomes an integral part of a company’s solution network from day one, there’s no incentive to churn at any point in time.

Regardless of the industry, your business can gain a lot from adopting a customer-centric approach to all operations. With integrations, you can offer a great customer experience that encourages people to buy more and return for future purchases.

A [study from Cloud Elements] (https://blog.cloud-elements.com/why-api-integration-is-crucial-for-software-companies) found that companies that offer pre-built integrations can reduce customer churn by 60% and increase customer lifetime value by 15%.

#**Best Integration Practices**
Integration presents organizations with valuable new business opportunities, but it is not a guarantee of success on its own. If your company is going to achieve its goals, you need a well-defined strategy AND a high-quality integration.

Here are three best practices for software integration to help you maximize its potential:

##Good Integrations Start With Customers
The most successful customer-centric organizations build their success on simple principles: they listen to their customers and put them first.

When it comes to building integrations for your applications, research your customers. Ask yourself and your customers questions like:

* What systems and applications do they use now?
* What do they want to integrate with?
* How could automation and integration make their life easier or make their business better?

When you know your audience at a deep level, you have a blueprint to guide your internal processes, including your sales and marketing campaigns. With this guide, you can develop integrations that are tailored to your customers’ needs.

##Prioritize Long-term Roadmaps Ahead of Quick Hacks
For an integration to deliver the true value to your customers it must be planned just as much as your core product.

To deliver benefits presented in the previous section, an integration should not be a side job or a quick hack. You should develop integrations with long-term business objectives in mind. With a staged approach, you can take customer feedback on board and roll out multiple releases, launching improvements with each iteration. This development method improves the performance of integrations over time.

##Build a Foundation
APIs form the foundation of all integration projects. You know best how you want your customers to be using your products and whether an existing API can already provide efficient access.

However, for an integration to be successful, you have to think about the ways your customers will be consuming this integration, not just your product. Remember, you want them to onboard your product through a different channel. For example, with configuration management tools such as Ansible users are expecting certain guarantees from third-party integrations because they are used to the way Ansible works, not your product.

#**Summary**
You may believe the path to innovation is through the latest technology. However, in reality, a business must make its customer the focal point. By embracing a customer-first culture, software companies can create integrated systems that keep the market’s desires top-of-mind at every stage of development.

In the end, this approach will result in more successful, intuitive solutions that offer seamless connections, higher productivity, and greater customer satisfaction.

Would you, too, like to reap the benefits of integrating your solution with Ansible? **[Let’s talk!] (https://steampunk.si/#contact-us)**