 The importance of a service provider doing some upgrades on the customer premises equipment is only with a perspective of offering better connectivity to the customer. But it might also turn out that an enterprise has a different relationship or a different business workflow with the customer now. In that case, an enterprise has to be given access to the consumer or customer infrastructure for programming. This would lead us to an interesting concept known as BYOD, bring your own device. We would have a look at it through certain example and a specific use case. So BYOD is something that has been there in the corporate world for some time. What it essentially means is that the interns or people who have relatively less involvement of stakes with the organization are asked to bring in their own devices. And the overall overhead and the burden of these interns or relatively less operationally important staff is managed by keeping the overall capital expenditure of the organization low. In this particular case, we have the customer or the consumer that has CPE equipment. The CPE equipment is actually a set of box that was of concern for a service provider. But in this case, at the application layer, if you recall the five layers of the TCP IP, the application layer to application layer connectivity essentially implies that we are talking about CPE equipment in terms of mobile devices. Now, these devices are programmable, so there is a possibility to reconfigure them for security updates for certain legal right of use by an enterprise. So it means the enterprise has to be given access to these devices. The enterprise could actually offer a software update, a service patch or a basic and executable to be downloaded and executed on the smartphone or any other CPE device. This actually means that we can now think about an entire different kind of business execution model where we have personal devices such as smartphones and PCs that could be used as their own personal devices for a certain business activities regarding work from home or regarding possible use in an enterprise. As an example, American telephone and telegraph AT&T introduced an app known as Toggle that lets users to switch between the work and personal partitions on their own smartphones and they realize this as a complete and wonderful manifestation of how they were able to program the consumer infrastructure. As we will come back to that later, as another case, consider for now, I have taken the reference from Compute Data where we have organizations that invite the customers to bring in their own devices and work possibly from home or possibly work within the organization and contribute their own infrastructure in a win-win manner to the organization. So this would involve some kind of operational software that is provided to the staff by the enterprise or the corporate and then certain security dictates and policies have to be ensured like sandboxing and then some use guidelines have to be agreed upon. Some authentication mechanisms have to be provided and from time to time the device has to be managed in order to make sure that the personal part and the organizational part on that smartphone are fairly earmarked and partitioned. The example that we were talking about the AT&T Toggle application, we have the title that we can think about as partitioning the workplace on mobile device. This actually is pretty much self obvious, but let's look at the programmable aspect. Where we have smartphones, we also have the enterprise that is talking to the smartphone for security and legal purposes and it will enable the smartphone to change its behavior as per the enterprise requirements. Compare this to more traditional approach where the employees could have carried separate devices for business and personal use. If you recall Microsoft provided some utility known as briefcase on their desktops to enable these organizations to allow their personal data, their organizational data to be kept separate from the individual users data in a separate briefcase. The programming approach is nothing but as simple as executing an app. It could be more involved also for instance expecting the client to run certain scripts and then allow the app to be executed automatically. The network programmability involves nothing but the CPE itself. The service provider could actually have the backend service or the servlet side that is running on cloud and allows the applet side or the API to run on the mobile device. The possible threat or we can say some challenge is going to be again having a storm of device update if there's a reconfiguration requirement required across all the employees and the advantage is obvious that it would result into a better customer experience for all the staff that is providing services to better control of the data both for the customers who are managing their own devices and the staff who is remotely executing the applications for the organization and is interacting with the client. So this is kind of a win-win situation. This particular example of AT&T was taken with courtesy from arstechnica.com. You might like to have a look at it as well.