SPARK Rapid Prototyping Environment – Mobile Phone Development Made Easy

  • Robert Adelmann
  • Marc Langheinrich
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 53)


Over the past few years mobile phones have evolved into attractive platforms for novel types of applications. However, compared to the design and prototyping of desktop software, mobile phone development still requires programmers to have a high level of expertise in both phone architectures and their low-level programming languages. In this paper we analyze common difficulties in mobile phone programming and present SPARK, a publicly available rapid prototyping platform that allows programmers without prior mobile programming experience to create advanced mobile phone applications in a fast and easy way. SPARK currently supports Symbian S60 devices and enables developers to quickly design, test, upload, monitor, and update their applications. We also present the results of a case study, where 70+ students used SPARK to develop mobile applications as part of a graduate course on distributed systems.


Rapid prototyping mobile phone toolkit PyS60 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Adelmann, R.: Mobile Phone Based Interaction with Everyday Products - On the Go. In: Proc. of NGMAST 2007, pp. 63–69. IEEE Computer Society, Los Alamitos (2007)Google Scholar
  2. 2.
    LaMarca, A., et al.: Place lab: Device positioning using radio beacons in the wild. In: Gellersen, H.-W., Want, R., Schmidt, A. (eds.) PERVASIVE 2005. LNCS, vol. 3468, pp. 116–133. Springer, Heidelberg (2005)Google Scholar
  3. 3.
    Nicolai, T., Yoneki, E., Behrens, N., Kenn, H.: Exploring social context with the wireless rope. In: Meersman, R., Tari, Z., Herrero, P. (eds.) MONET 2006. LNCS, vol. 4277, pp. 874–883. Springer, Heidelberg (2006)Google Scholar
  4. 4.
    Python for S60 Open Source Project,
  5. 5.
    Symbian Ltd. Symbian Signed User Guide,
  6. 6.
    J2ME Java 2 Micro Edition,
  7. 7.
    Harrison, R.: Symbian OS C++ for Mobile Phones. Wiley, Chichester (2003)Google Scholar
  8. 8.
    The ensymble developer utilities for symbian os,
  9. 9.
  10. 10.
    Laurila, J., Tuulos, V., MacLaverty, R.: Scripting Environment for Pervasive Application Exploration on Mobile Phones. In: Fishkin, K.P., Schiele, B., Nixon, P., Quigley, A. (eds.) PERVASIVE 2006. LNCS, vol. 3968, Springer, Heidelberg (2006)Google Scholar
  11. 11.
  12. 12.
    BlueCove library for Bluetooth (JSR-82) implementation,
  13. 13.
    Holleis, P., Schmidt, A.: MakeIt: Integrate User Interaction Times in the Design Process of Mobile Applications. In: Indulska, J., et al. (eds.) PERVASIVE 2008. LNCS, vol. 5013, pp. 56–74. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  14. 14.
    Joki, A., Burke, J.A., Estrin, D.: Campaignr: A Framework for Participatory Data Collection on Mobile Phones. Center for Embedded Network Sensing. TR 770 (2007)Google Scholar
  15. 15.
    Raento, M., Oulasvirta, A., Petit, R., Toivonen, H.: Contextphone: a prototyping platform for context-aware mobile applications. Pervasive Computing, IEEE 4, 51–59 (2005)CrossRefGoogle Scholar
  16. 16.
    Forstner, B., et al.: Supporting Rapid Application Development on Symbian Platform. In: Proc. of EUROCON 2005, pp. 72–75. IEEE Computer Society, Belgrade (2005)Google Scholar
  17. 17.
    Long, S., et al.: Rapid prototyping of mobile context-aware applications: the Cyberguide case study. In: Proc. ofMobiCom 1996, pp. 97–107. ACM, New York (1996)Google Scholar
  18. 18.
    Adelmann, R., et al.: Toolkit for Bar Code Recognition and Resolving on Camera Phones – Jump Starting the Internet of Things. In: Proc. MEIS 2006, pp. 366–373 (2006)Google Scholar
  19. 19.
    Huebscher, M., et al.: Issues in Developing Ubicomp Applications on Symbian Phones. In: Proc. FUMCA 2006, pp. 51–56. IEEE Computer Society, Los Alamitos (2006)Google Scholar
  20. 20.
    Card, S.K., Moran, T.P., Newell, A.: The Keystroke-Level Model for User Performance Time with Interactive Systems. Comm. of the ACM 23(7), 396–410 (1980)CrossRefGoogle Scholar
  21. 21.
    Mohan, P., Padmanabhan, V.N., Ramjee, R.: Nericell: Rich monitoring of road and traffic conditions using mobile smartphones.. In: Proc. of SenSys 2008, pp. 323–336. ACM, New York (2008)CrossRefGoogle Scholar
  22. 22.
    Gartner Report on Smartphone Sales,
  23. 23.
  24. 24.
  25. 25.
    Scheible, J., Tuulos, V.: Mobile Python: Rapid Prototyping of Applications on the Mobile Platform. Wiley, Chichester (2007)Google Scholar
  26. 26.
  27. 27.
  28. 28.
    Ruby for S60 devices,
  29. 29.
  30. 30.
    Hecl – The Mobile Scripting Language,
  31. 31.
    Froehlich, J., et al.: MyExperience: a system for in situ tracing and capturing of user feedback on mobile phones. In: Proc. of MobiSys 2007, pp. 57–70. ACM, New York (2007)CrossRefGoogle Scholar
  32. 32.
    Yang, L., James, A.L.: Activity-based prototyping of ubicomp applications for long-lived, everyday human activities. In: Proc. of SIGCHI, pp. 1303–1312 (2008)Google Scholar
  33. 33.
    Fielding, R.T.: Architectural Styles and the Design of Network-Based Software Architectures. Doctoral Thesis. UMI: AAI9980887, University of California, Irvine (2000)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Robert Adelmann
    • 1
  • Marc Langheinrich
    • 2
  1. 1.ETH ZürichZürichSwitzerland
  2. 2.Università della Svizzera italianaLuganoSwitzerland

Personalised recommendations