We have all been at software demonstrations where someone in the audience has asked about integration. The answer is always “yes, we can integrate with anything”. How many times have you found this isn’t quite true? You don’t get the fully integrated solution you’d hoped for, and when something goes wrong, you find yourself trapped between solution providers arguing over whose fault it is. Well, it doesn’t have to be that way.
Successful housing organisations are making the most of the many cost-effective solutions available in the cloud. Extending the power and functionality of their back-office HMS with specialist solutions such as Mobysoft’s arrears software, VerseOne’s self-service portals, PayPoint’s real-time cash processing system and, of course, the numerous Microsoft Dynamics solutions. They all require integration which can create a spider’s web of fragile point-to-point interfaces, each using different technologies and all supported by different suppliers.
A new approach to integration
How do you start seeing integration as a powerful business asset instead of a complicated risk waiting to trip you up the next time you upgrade? The answer requires a change in thinking and a new approach.
Traditional interfaces are point-to-point; written by one system vendor (usually at significant cost) to only talk to one other vendor. All the business logic, formats and fields are hard-coded, making them inflexible and limiting their use anywhere else in the business.
Most system vendors will also give you the option of buying web services so in theory you can write your own interfaces. Unfortunately, each vendor uses different, incompatible web services, all based on different technologies and security principles, and all requiring different skills to use them.
Wouldn’t it be great to remove all of these barriers so you could finally have complete control over all the integration between your systems? That’s exactly what we do for our customers, but how do we do it?
The aim is to convert traditional interfaces and requests for data into re-usable microservices. Microservices are small, loosely-coupled business functions which can be thoroughly tested and securely called by any system. A microservice might retrieve a rent balance, add a repair or book an appointment. If it retrieves, updates or processes data, then it can be turned into a microservice.
Tip 1: Reuse the interfaces you already have as much as possible. Don’t worry about the format because it’s not important; SOAP, REST, XML, JSON, CSV, SFTP – none of it matters. Applications such as our Universal Adapter will seamlessly convert any format to any other format on the fly.
Microservices are written once but can be used by many systems, making them extremely cost-effective and quick to deploy. A microservice that adds a repair can be published so it can be called from your CRM system, a customer portal or a mobile working app; it will always work reliably and consistently every time.
Another advantage of microservices is that they can be chained together by you to rapidly build new and even quite complex interfaces.
An example of microservices
We are often asked to provide contractor integration. For example, there could be three repair contractors (each using a different system) that all want to be able to complete a repair in the client’s HMS.
Traditionally, this would require the client to buy three bespoke interfaces from their HMS provider. Alternatively, the three contractors would each need to write a new interface that’s compatible with the HMS.
Using microservices, you can just use a single standard HMS interface and the contractors can send you the data in any format they want. This saves a lot of money and a huge amount of time. The solution is flexible, and everyone is using standard supported interfaces.
The integration layer would simply comprise:
- A microservice that completes a repair in the HMS using the standard HMS interface;
- A microservice for validating the data before it’s sent to the HMS , such as checking SoRs and target dates;
- Each contractor will have their own simple microservice that will authenticate them and accept the data in their preferred format.
Tip 2: Try to avoid asking software suppliers to write an interface because it costs a fortune, takes too long and they control what you do with it. Instead, just ask them what interfaces they already have and use one of them. You can then argue down the price because it’s standard product, plus you’ll also know that it’s tried and tested. Middleware like our Universal Adapter will allow you to use any interface that’s available.
You now have complete control over all the interfaces; the validation, who can use them and what formats they will accept.
Versioning can be used to allow microservices to be safely modified whenever you need. For example, perhaps you would like to extend the functionality to create a CRM case on a third ‘no-access’ visit. Simply add a microservice that creates a CRM case (by calling a web service), then create a modified version of the validation process so that it now checks for ‘no-access’.
Tip 3: Don’t ignore the power and features of your underlying databases, such as SQL, Oracle or Progress. You should never update a database without the vendor’s permission but it’s your data, so read it as much as you want!
Implementation in the real world
December 2021 saw the go-live of Westminster City Council’s new Microsoft Dynamics CRM cloud solution, custom designed and built by their fantastic in-house development team. The architecture stipulated leaving all the data in the back-office HMS and relying completely on a suite of responsive REST web services to retrieve and update housing data in real-time.
Manifest Software Solutions worked closely with the in-house team, building an integration layer comprising over 60 microservices. These microservices expose views and allow updates of the data held in the HMS. The result was a cloud CRM system that is fully integrated with the on-premise HMS solution.
Successful integration is more than just technology
We provide everything our customers need to integrate systems successfully. This includes providing experienced technical consultants who work closely with you to help design, configure and test all the integration.
All our technical consultants have extensive experience working in social housing IT. This allows them to properly understand the business requirements; this is essential when developing and testing any sort of interface. It’s important to note that how an interface works is not as important as understanding what it needs to do.
To ensure we are always on hand to help, each customer continues to have direct access to their implementer and our team of consultants at any time after go-live.
All the integration is fully supported by us, even if the interface was built by the customer. This comprehensive, no-quibble support ensures you never need to worry about integration ever again!
“We have worked with Manifest Software Solutions since 2017 and they are, by far, the best software company I’ve worked with. They are helpful and flexible, and proactively come up with ideas. Their work far outweighs the value other companies provide and I can’t sing their praises highly enough!”
Steve Kesterton, ICT Project Manager, Black Country Housing Group
We love a challenge and are often asked to set up a proof of concept for customers who have been told previously that integration with their system is impossible. If you have a challenge, just let us know.
Alan Swift is the technical director of Manifest Software Solutions.