Generally integrations are hard, only accessible to specialized players and have a tendency to re-create the wheel over and over. It’s complex because of closed systems and vendor priorities making APIs optional as well as application customization that is abstracted from the API. Today however a closed system will gain no traction, APIs are compulsory and multi tenancy architecture forces customizations to be manifested in the API.
The new system integrators now fill a critical void in PaaS development and are transitioning themselves from long term large scale projects to low margin engagements. They’re moving to enable customers to trial the solution during the integration exercise.
So what’s happening across these systems?
- Data synchronization
- Business process automation
- Data aggregation
Nucci suggested some best practice approaches towards these sort of integrations;
- Justify the investment in the integration
- Calculate the actual cost of labour in the unintegrated situation
- Ensure the integration is SaaS, the same way the app is
- Leverage pre-built integrations (if there are any)
Key success factors for your API
- Your API is part of your product and should be owned by product management
- Do not charge for your API
- Think self-service
- Expose objects and not operations in your API
- Put the semantics in the API and not in the documentation
- Version the API (as part of the URL)
- Gate the API with a batching mechanism
- Patterns of re-use will emerge across implementations
- Implement a discovery process for those cases
- Package up the most popular integrations
- Bundle into your application