Computer Science Department
School of Computer Science, Carnegie Mellon University
Meeting the Software Engineering Challenges
Rajesh Krishna Balan, João Pedro Sousa, Mahadev Satyanarayanan
In this paper we validate that the idea of stub generation can successfully address the complexity introduced by resource adaptation. Our approach is based on factoring generic resource-adaptation mechanisms out of the applications and into operating system extensions. Rather than having to deal with system-specific details, an application writer provides a high-level description of the adaptation needs for each application. The generation of code stubs bridges such high-level descriptions to the adaptation mechanisms specific to each platform.
We validated this approach against three representative applications: a video streaming application, a natural language translator and an augmented reality application. In all three cases, the effort for the application writer was reduced by orders of magnitude. The cost of writing the operating system extensions and the stub generator is amortized over the many applications that can share the generic resource-adaptation mechanisms.