Applying Rigor to the Cloud UC&C Decision
Before you make a decision on cloud-based unified communications and collaboration, make sure you understand all the implications.
Cloud-based UC&C received considerable attention at Enterprise Connect 2016 this month. From the keynote stage, for example, Cisco talked about turning Spark into a cloud-based system with a monthly subscription per user for businesses. Microsoft made a big push with Skype for Business. And Google, Dialpad (formerly Switch Communications), and Motorola Solutions demonstrated the benefits of cloud-based UC&C.
Customization of Cloud-Based Services
Some of my most valuable sources of information at conferences are other attendees, as we meet and talk about things that are not on the scheduled agenda -- and cloud-based UC&C carried through those, as well. During one lunch-table conversation, for example, I talked with other attendees about organizations that start with cloud services and eventually need to customize those services in some way to better match business needs.
As we learned during the enterprise roundtable at Enterprise Connect, customization was a cloud pain point for Airbnb, which had to bring its cloud-based contact center in-house due to its provider's inability to customize quickly enough for its evolving needs (see related article, "False Clouds & Acid Tests: How "Cloudy Do You Have to Be?").
While Airbnb found its best option to be bringing its contact center in-house, other organizations have addressed their customization challenges by partnering more closely with their UC&C providers. In such cases, organizations should push the provider to deliver what it needs when it needs it. In essence, the provider functions more like an internal development group than a traditional external supplier.
One of the advantages of cloud-based services is that providers can upgrade incrementally. This is the same type of incremental development that many Web-based companies have demonstrated. In the old model, a vendor would develop new software that incorporated a long list of feature additions and bug fixes. At some point, it would build, test, and deploy the new software release. This process is also known as the waterfall method of software development.
In the new world of incremental updates, developers use an agile software development process. The software provider deploys new features and bug fixes as soon as it has created and validated them. It makes many small changes instead of fielding a large, potentially significantly different, new release. The advantage for enterprise organizations is that each incremental update carries much less risk than does deploying a software release that incorporates many fixes. Some organizations are even making many updates per day, using automation to make the process easily repeatable.
The software developers in an agile process are much more involved in each release. In some organizations, the update isn't released if developers are not available to support it. This insures that if problems crop up with the update that developers are immediately available to correct it or to perform a rollback to the prior functionality. Because each update is small, it is easy to test and the number of interactions between software functions is much more limited than with large, waterfall-type releases.
Providers of cloud-based systems may also have the flexibility to make the new function available to only a fraction of customers as a way to test the functionality prior to a full release. This is how Facebook releases new features. If the new software functions correctly, the update is propagated to more of the cloud infrastructure and therefore to more customers. Should a problem arise in that limited release, backing out of the update is easy enough and affects only a small fraction of customers.
Monitoring Tools and Troubleshooting
Tools and troubleshooting can be more difficult with cloud-hosted UC&C than with on-premises systems. Do the media streams go from client to client, as with most UC systems? In this case, the monitoring and troubleshooting is much more difficult. How much data can the clients provide when a problem arises? Are instrumentation and control capabilities available within the client for basic troubleshooting? Do the client systems report real-time performance statistics to the UC&C control system so it can generate alerts and collect data?
Media streams can also go through the cloud servers. This path is likely to be longer because the media streams have to go from each client to the cloud server infrastructure. Latency will be higher, and the possibility of higher jitter and packet loss is very real. However, having all the communication flows going through the same infrastructure means that it is easier to monitor with passive network taps.
Based on the number of cloud-centered questions I fielded during my "Trends in Management and Troubleshooting of UC Systems" session at Enterprise Connect, I know cloud-based UC monitoring and troubleshooting is becoming a concern for organizations. Monitoring and troubleshooting tools that can function across network infrastructure that you do not own or operate is an imperative. Virtual machine-based monitoring tools deployable in cloud infrastructure also are essential.
I personally like the functionality and deployment model of active probes like Netscout's TruView Live and AppNeta's PathView. Organizations can deploy these tools as simple hardware probes, virtual machines in cloud infrastructure, or applications that run on PCs at remote sites. They send and receive packets that simulate UC traffic and measure the network's ability to handle the packets.
Other tools get involved with the call servers and place simulated calls, allowing validation of the complete UC system. The ability to place simulated calls is valuable in checking call routing during network or server failure scenarios involving critical systems like call centers.
Are You Ready?
Are you ready to migrate to a cloud-based UC&C system? Have you identified your existing tools that will still be functional in a cloud-based solution? Have you created the processes and procedures that are necessary for using a cloud-based UC&C system? When a failure occurs within the system, does the IT team know how to diagnose and correct the problem? These are critical questions to answer before jumping on board. Running UC&C in the cloud can be productive as long as you are adequately prepared to handle it.