Q&A: Tackling Cloud Challenges
Social media, security, and customization all play a role in your choice of a cloud supplier.
Social media, security, and customization all play a role in your choice of a cloud supplier. We explore these issues, plus integration challenges in times of distributed data, with Lou Guercia, CEO and president of Scribe Software and a data integration specialist.
Enterprise Strategies: There’s a lot of buzz about the benefits of cloud computing. What are some of the downsides?
Lou Guercia: Cloud computing is an exciting trend in the application space. The ability to delegate the management of the physical infrastructure and lower levels of the application stack is certainly attractive, and there’s no doubt that cloud computing will be a dominant trend in the upcoming decade.
However, cloud computing is also relatively young. Standards are not well evolved yet. As an ISV, you pick a platform based upon your business and technical needs and invest specifically in that platform. I don’t foresee ISVs developing both Salesforce and Azure versions of their products -- at least not for a long time. It reminds me of the early days of relational databases -- you picked a database provider and stuck with it. As database technologies matured, more vendors began supporting multiple database back-ends.
Likewise, many of the technology tools and skills in which I’ve invested don’t necessarily transfer well to the cloud-based world. My IT staff probably has dozens of folks who can write SQL. We may have standardized on several tools we use in house, such as reporting tools. How well those skills apply to cloud-based applications and to what degree my existing tools work against the platforms are issues.
As with any packaged, on-premise application, customization is usually a priority. Are cloud applications generally flexible enough, in your opinion, to meet the needs of most business users?
The answer varies depending on the vendor in question. To some degree, this depends on the level of maturity of the vendor’s technology. Take Salesforce as an example of a mature technology, which the vendor has been building out for over a decade. Early versions of Salesforce provided limited configurability and its customizability. As their technology stack has evolved, they’ve increased the degree to which customers and partners can tailor the application to suit their needs -- eventually rolling out their own development platform (Force.com) and, more recently, opening their platform to other technologies, such as Java and Ruby on Rails.
As a customer, I no longer have to build out machines and manage physical infrastructure, but I have the same highly tailored business processes to run my business -- and that means I need to be able to tailor, configure, and customize my applications just as I used to in the on-premise world. For example, while many of the cloud-based application vendors provide robust APIs, integration -- a topic near and dear to my heart -- is just as much an issue as it ever was.
This raises an interesting point. The role of system integrators has been largely ignored by many cloud-based vendors. The knee-jerk thought process is that these systems are easier to implement and require less outside assistance. I think this pendulum will start swinging back as customers begin to realize that the role of trusted advisors remains critically important. Moving enterprise applications into the cloud requires the same degree of customization and configurability as it did in the on-premise world -- and that is the key value-add that system integrators provide. This trend will continue as traditional back-end transaction systems such as ERP begin to migrate to the cloud as well.
Security is also a big concern, isn’t it?
Yes, although I think the issue is broader than that.
Security is a concern, but as the cloud world evolves, companies are becoming increasingly comfortable storing their mission-critical business data in someone else’s data center. To a large degree, issues of security, although extremely important, are well-understood and well-defined. There are industry best practices that I, as a customer, would expect my ISV vendor to follow -- and certify that they follow those practices.
The issue of ownership of data is far more interesting. For example, if I upload my data to a cloud-based provider, are they allowed to mine that data for information? Moreover, if I decide to switch to a different cloud-based application, how easily can I get my data out of the old application? In the on-premise world, the data sits in a database on a server in my data center -- there’s no question I have access to it. In the cloud world, it’s less clear. I know of at least one major cloud player that charges a hefty fee to allow customers to export their data in this scenario.
Data volumes are growing. One challenge of moving to the cloud is that some data remains on site while other data is in the cloud. Doesn’t that make integration difficult?
Integration in hybrid environments does involve its own set of unique challenges.
For example, how does the integration tool connect to local on-premise systems? Does it require the customer to poke a hole in the firewall, or to write custom Web services that can be exposed to the Internet? Does it require software to be installed on premise; and if so, how heavyweight is that software? If the integration solution does require an on-premise component to negotiate communication through the firewall, does that requirement mitigate the benefits of a cloud-based solution?
Additionally, in the world of on-premise applications, one can almost always go through the backdoor of connecting directly to the database if the API exposed by the application prevents the user from satisfying his or her requirements. APIs are generally preferred because they typically validate the data, thereby ensuring referential integrity, but in a pinch -- either because the API doesn’t expose the required capability or for reasons of throughput -- it’s sometimes very helpful to have the option to go directly to the data. In the cloud-based world, the user can only get to the data through the front door. If the API does what the user needs it to do, great. Otherwise, the user is stuck.
Integrations between cloud systems are also impacted by latency. In an on-premise system, I might connect to a database. Operations are quick, cheap (from a resource perspective), and very fast. In the cloud world, an operation that might take several milliseconds if I were connecting to an on-premise database system could take upwards of a quarter of a second or more when connecting via a vendor’s Web service. Integrations that are “chatty” would suffer greatly. This has the potential to render certain approaches to integration infeasible. Consider the example of integrating an order between a CRM system and an ERP system -- and the user wants the integration to run in near real-time. If the CRM system was on premise, I could write a job to poll for changes every 15 seconds or so. In the cloud world, such frequent polling is likely not going to work -- moreover, many cloud-based vendors restrict or charge based upon the number of transactions.
I’m not sure those challenges are harder than they were in the on-premise world, but they are definitely different and more than likely require an integration solution specifically architected to address them.
What role does social media play?
Initially, companies sought to simply establish a presence in social media, then they began to figure out how to manage that presence and how to impact the people they were reaching through social channels. Now, it’s evolving to how people are affected and moved by social conversations. Although companies are starting to capture and save that social information into records, mining it for business intelligence is the new hurdle. Segmenting presence and conversations and targeting them based on customer behavior generates significant data, and the ability to integrate and mine that data in order to make social media relevant will be a challenge as these channels grow and proliferate.
What impact does cloud have on the role of the partner?
There is a misconception that moving to the cloud is easy; some companies and ISVs think that all businesses can quickly move to the cloud without any outside help. In reality, it’s a team effort, just as it was on premise. Success is largely dependent on having the right mix of employees and partners working together to move business applications into the cloud. Additionally, to maximize investment in the cloud, companies must integrate their cloud-based applications with their existing systems, and often the best and fastest way to do this is to bring in a knowledgeable partner to assist you.