Balanced MVC Architecture for High Efficiency Mobile Applications
Mobile devices such as Android devices are emerging as a convenient client computing device with mobility and context-sensing capability. However, the computing power and hardware resource of the devices are limited due to their small form-factor. Consequently, large-scaled applications could not be deployed on these devices. Nonetheless, if the large-scaled applications are deployed and executed on the devices, high performance of the applications cannot be guaranteed. To remedy the limitation in terms of performance, it is inevitable to let some heavy-weight functionality executed on the server side and let a client application invoke the functionality in the server. To realize this kind of mobile applications, we adopt well-defined architecture design principles; being thin-client, being layered with Model-View-Controller (MVC), and being balanced between client side and server side. By adopting the principles, we propose a unique, ideal and practical architecture for mobile applications, called balanced MVC architecture. By considering the principles, key design considerations of realizing balanced MVC architecture lie in functionality partitioning. Hence, we define key criteria of determining the degree of performance. And, we define a method to design a balanced MVC architecture which embodies functionality partitioning for high performance, and a simulation-based evaluation method of balanced MVC architectures.
mvc architecture efficiency mobile application evaluation method design method