In a rapid world every organization is purchasing cloud based solution or SaaS technology (SaaS – Software as Service) to keeping an agenda in their minds to save money, infrastructure, ease of use, everything under on umbrella and most important an complete IT Freedom.
When organization opt for Cloud Solutions they have few major concerns – ADOPTION of SaaS technology. Once they cross this big hurdle there next challenge is Integration of SaaS technology with their existing system. Integration looks extremely simple on papers. Every SaaS Technology providers gives the access of API’s. I have seen in past most of the CTO’s prefer to do in house integration – It becomes first choice.
CTO’s always feels that they have bright team who can operate any code and create the bridge between two or more than two systems. And then starts the research work which take weeks and turns into no result. This entire activity increase the organization ROI’s and the cloud technology budget crosses the border easily resulting the closure of SaaS technology at times.
Forward thinking organization don’t take this approach their integration projects from a one – and – done perspectives. They see the big picture which included their on premise installed applications, cloud applications. Every application should be connected to successfully deliver within the overall business strategy.
Custom Coding Challenges –
As an technical architect I always emphasis on the robust SaaS application integration solution which includes the following:
- Perfectly designed integration process : Moving data between two systems is not simply the case of moving data from one database to another. Data structure will surely differ. Rules of synchronising will surely have difference.Beyond this one has to consider business logics too. Coding transformation and data conversation is one one part of integration. Hard coding business logics into integration takes many iterations and testing time. Most of the times these process become extremely challenging and make the project hard to handle.
- Ability to work with fast growing world of API’s : Every system has its own API’s, own rules, own nuances. The biggest challenge in API world is you need to understand your SaaS Solution also you need to understand the application which you need to integration with your cloud solution. When you choose to code, you need to completely rely on you Developers. You also need to force your developers to understand the new API’s with other technologies. Many API’s has its own programming language and even they are based on standards like SOAP / REST / WSDL will always have unique capabilities, different authentication requirements and different rules.One of the biggest benefits of a multi-tenant SaaS architecture is new applications can be deployed quickly and uniformly. Most API’s vendors update their APIs at least 4 times a year. For a custom code this means a broken integration every time your SaaS vendor upgrades.SaaS application allows you to create custom fields, business logics and objects to your org / instance. These changes immediately reflects in the API. New fields, links needs to be added in code in order to be integrated with other system. With custom driven functionality it means your project manager needs to pull your developer who will be away from the existing project to make sure that integration should not break.Whether it is connecting new systems together or upgrading current system it needs a full time IT resource to monitor small or big changes.
- Strict Monitoring : Unknown Errors. System is temporarily unavailable. What happens when connected apps shows error or down time messages. As a CTO or IT Director what will you do ? or How will you react ? In broad what next ??In fast moving life Integrated systems needs reporting system to monitor every transformation whether it is success or fail. System should also trigger / alert the stake holders of the project that something went wrong. This is one essential feature in integration what has went wrong and where. Only detailed logs can help to determine the exact type of fault and the best way to identify the same.
- Performance / Process Optimization : The multi tenant nature means that there are limitations on number of time you make a call to the application. Resulting the extra usage of API’s limit. If you aren’t coding around these limitations this will surly trouble your existing integration and decrease the performance; performance loss could be exponential. Hard-coding against WSDL all but ensure little scalability and lot of re coding in your coming time.
Benefits of ETL Tools / Integration Platforms – Strategic organizations focus on buying an integration platforms that doesn’t need IT resources or infrastructure. They need applications which can be architecture to scale quickly as the organization and infrastructure grow. Modern integration solutions address cloud integration challenges which includes :
- Interface designed for Business Analyst or System Administrators : One of the biggest challenge in the cloud is the ability to give your BA or other non technical users administrative power of the application, while eliminating dependence on IT to mange the underlying infrastructure.These benefits eliminates developer dependency and it will allow BA to easily modify any integration between on premise application or cloud based solution. Connections to systems are created using credentials forms, business logics and workflows are defined graphically and data mapping and transformations are done with our coding.Business process changes, and it is the BA / or Domain Expert who understands them the best. By allowing the person in this role to implement the process change within the integration will significantly decrease the ROI of the initial cloud investment.
- Loosely Coupled Web Services : Modern integration platform provides connectivity to any API with out coding. It will give the ability to pull in any API, and immediately display the structure of the data to the end user. This functionality is important to ensure that integration will keep working even the SaaS vendor updates the API or you make the customizations to your cloud apps / solutions.Perfect platform supports all type of Web Services, protocols, including HTTPS, SOAP, & REST.
- Redundancy and Performance Optimization : Network connections and by extension web based API’s are never going to be 100% reliable. There will be time when call out times or connectivity goes down. Integration Platform removes these types of worries. They also ensure to includes process for guaranteed message delivery, failure notifications and other error messages. These type of tools are easily customizable and any non technical user can manage them. Most of the integration platform provides various data chunking, parallel processing, and data streaming technologies.
- Administration and Testing : One of the biggest advantages that integration platform has over the code is the ability to log, track and mange when things goes wrong. Built in administration consoles allow users to drill down and pin point exactly where the failure occurred.Another advantage of ETL or integration tools is ability to fix things before they go wrong. Testing tools can be used to load sample data run operations in test mode without touching production data and automatically highlight the issues such as malformed queries or data formats.
- Integration on the Go : Few integration platform providers are providing the cloud based integration solutions that means you can do the administration on the go, you can login with the secure credentials and can make new / modify existing transformation over the ipads, android tablets. This means you don’t need to install the heavy integration application on you machine.=
Many companies believe that integration is simply moving the data from Point A to Point B, they think this can be simply achieved with in house development, with less money and more control. In fact, for even the most simple integrations, the opposite usually ends up being true. Custom Code is not a long term solution. Over time, the lack of scalability and dependency on programmers will increase costs and create unmanageable collection of hand coded scripts.
Integration strategy should be take the long term goals while eschewing short term fixes. Because it is easy to get up and running with SaaS applications, the natural tendency is to quickly cobble together connectivity between our other systems.
Best of breed integration solutions will mirror the value delivered by the cloud, scale to meet the rapidly changing world of SaaS and allow companies to focus resources on business expansion and future growth.