Mobile Application Profiling for Connected Mobile Devices
Total Page:16
File Type:pdf, Size:1020Kb
PERVASIVE APPLICATION PROFILING Mobile Application Profiling for Connected Mobile Devices The SymPA (Symbian Protocol Analyzer) tool correlates traffic information, radio-access-technology measurements, and location data to help developers evaluate mobile applications in the field. he recent appearance of open has different �������������������������������������behaviors���������������������������� and is suitable for differ- operating systems and virtual ent contexts. In addition, the simultaneous use machines optimized for mobile of different radio-access technologies is a new devices has led to new and inno- challenge for mobile developers. vative applications.1 However, Several existing tools can analyze a mobile ap- Talthough these mobile devices pave the way for a plication’s resource consumption performance. new generation of applications that exploit their However, these tools don’t address communica- intrinsic mobility, proximity to the user, and tion performance from a developer’s standpoint dependence on handheld devices, they create (see the “Related Work in Application Profil- unique challenges for developers.2 For instance, ing” sidebar) or answer these questions: new mobile devices come with powerful multi- tasking processors, but their performance and • How can I debug the application’s data con- processing capacity differ significantly from nection behavior? those of traditional desktop • What’s my protocol’s performance? Almudena Díaz, Pedro Merino, computers. In this restricted • Can I improve my application’s connection and F. Javier Rivas and unknown development performance? University of Málaga environment, developers face • What’s my application’s connection quality? new constraints related to not • What’s my real available bandwidth? only hardware issues such as processors and memory but also the lack of Such questions proliferate in dynamic scenarios tools for debugging the different aspects that in which propagation conditions are less stable affect mobile application performance. and vertical handover occurs between different Mobile device technologies such as Bluetooth, radio-access technologies. wireless local area networks (WLANs), General To provide the answers to these and other Packet Radio Service (GPRS) or Enhanced Data questions, and to help developers find the Rate for Global Evolution (EDGE), Universal cause of errors related to accessing network Mobile Telecommunications System (UMTS)/ resources, we created SymPA (Symbian Proto- High-Speed Packet Data Access (HSDPA), and col Analyzer; www.lcc.uma.es/~pedro/mobile). WiMAX also introduce variables during devel- SymPA is a free software tool with packet- opment that developers working on fixed net- sniffing features, measurement localization works are unaccustomed to. Each technology maps, and other relevant functionalities (see 54 PERVASIVE computing Published by the IEEE CS n 1536-1268/10/$26.00 © 2010 IEEE Authorized licensed use limited to: University of Texas at Arlington. Downloaded on April 24,2010 at 22:41:01 UTC from IEEE Xplore. Restrictions apply. Related Work in Application Profiling ymbian wireless network performance analysis tools, use, memory use, and key events. Mobile application eval- S such as QualiPoc (www.swissqual.com), Nemo Handy uation requires not only using real devices but also testing (www.anite.com), and Customer Experience Manager (www. them in the field.2 SymPA addresses this key issue of mobile mformation.com), provide low-level information and focus on application development. specific service tests. However, unlike SymPA, they don’t let Finally, stability and security are crucial. Stability is key for developers debug their protocols’ behavior, solve connectivity mobile devices because they must operate for long time peri- problems, or correlate these issues with location data. ods. Users must always be able to switch away from any execut- Other solutions focus on providing on-target tests and de- ing application and make an emergency call. Symbian Signed bugging capabilities. JInjector is an instrumentation tool that (www.symbiansigned.com) provides a unified testing and cer- lets developers evaluate code coverage for Java 2 Micro Edition tification process to ensure that devices operate normally after applications both in emulators and on the actual devices.1 The applications are installed or removed and that applications are ability to debug applications on real devices is indispensable safe for users and don’t harm network operation. This initiative, because applications usually work successfully on the emulator as well as Java Verified (www.javaverified.com) and True Brew but fail on real targets. On-target testing is also one of the most Certification (http://brew.qualcomm.com), reveals that applica- time-consuming tasks and therefore requires simplification and tion integrity concerns not only end users but also developers, facilitation. mobile network operators, and phone manufacturers. Forum Nokia’s Remote Device Access (RDA) service offers The mobile sector’s different stakeholders are clearly aware remote access to a wide range of mobile devices, so develop- that the correct performance of mobile applications is vital for ers can test their applications on a pool of real devices. RDA the technological evolution of devices, applications, and serv- also provides the possibility of testing on prototypes, which ices. But it’s also clear that communications performance, an lets developers design new applications that exploit these new open issue in application development,3 is beyond the scope of devices’ functionalities. Similar initiatives from Forum Nokia current development support tools. are the Virtual Developer Lab, powered by DeviceAnywhere, and the Device Loaner Program. These initiatives reveal the importance of using real devices during mobile application REFERENCES development. 1. M. Sama and J. Harty, “Using Code Instrumentation to Enhance Test- Deploying the application on real devices during testing is ing on J2ME: A Lesson Learned with JInjector,” Proc. 10th Workshop also necessary to analyze application performance on the hard- Mobile Computing Systems and Applications, ACM Press, 2009, pp. ware for which it was designed. The Nokia Energy Profiler lets 1–6. developers monitor their applications’ energy use in real time 2. T. Halonen, J. Melero, and J.R. Garcia, GSM, GPRS and EDGE Perfor- and analyzes the processor, memory, and network signal levels. mance: Evolution toward 3G/UMTS, Halsted Press, 2002. The performance investigator delivered with Carbide.c++, an 3. K.A. Brown, “Impact of Wireless Communication on Multimedia Ap- Eclipse-based development tool supporting Symbian OS devel- plication Performance,” Multimedia Systems and Applications (Proc. opment, enables on-target data tracing of function calls, power SPIE, vol. 3528), 1999, pp. 566–573. Figure 1) that let developers profile mo- and lets developers test applications methodologies, mobile device soft- bile applications with advanced com- programmed in different languages. ware development has a long time- munication capacities. We developed University of Málaga researchers have scale.5 Networking is one of the most SymPA using Symbian, the most ex- successfully tested SymPA on projects important issues developers deal with tended OS for mobile phones, according ranging from mobile application devel- during implementation and testing on to the Canalys report “Smart Mobile opment to mobile service characteriza- real devices. Guaranteeing mobile ap- Device Shipments Hit 118 Million in tion over cellular networks.3,4 plication networking performance is 2007, up 53% on 2006” (www.canalys. key for the future of mobile devices. com/pr/2008/r2008021.htm). Symbian New Profiling Needs One reason this new generation of supports an ample range of program- in “Always Connected” mobile phones has been designated as ming languages, including Symbian Applications “smart” is their capacity to communi- C++, native C, native C++, Java, Py- Because programmers need to manage cate with many smart networks, rang- thon, Adobe Flash Lite, and Ruby, new APIs, OSs, and implementation ing from near-field communication to JANUARY–MARCH 2010 PERVASIVE computing 55 Authorized licensed use limited to: University of Texas at Arlington. Downloaded on April 24,2010 at 22:41:01 UTC from IEEE Xplore. Restrictions apply. PERVASIVE APPLICATION PROFILING issue might seem trivial, but develop- ers must analyze more complex issues Traf c related to mobile communications’ capture changeable nature to discern between application performance issues or net- work errors. Battery Signal Developers should also be able to consumption strength cope with issues such as link outages. Connected However, to implement such function- mobile ality, they need tools to analyze traffic application pro ling and correlate it with location, speed, and wireless network issues. Improv- Data ing the application’s radio technology Mobility connection battery consumption is also a concern. QoS pro le The protocol stack configurations Localization on mobile devices differ from those (cell ID and of traditional PCs, so developers can’t GPS) use emulators. We don’t recommend using a mobile phone as a modem be- cause applications tested this way use Figure 1. Mobile application profiling. A complete characterization of mobile the computer protocol stack to estab- applications requires monitoring and correlating different types of information, lish data connections. So, developers such