Software engineering for mobility: reflecting on the past, peering into the future

At the end of the second millennium, mobility was a hot research topic. Physical mobility of devices was becoming commonplace with the availability of cheap wireless cards, the first attempts to transform phones into personal do-it-all devices were beginning to appear, and mobile ad hoc networks were attracting a huge interest from many research communities. Logical mobility of code was still going strong as a design option for distributed systems, with the Java language providing some of the ready-to-use building blocks. In 2000, when we put forth a research “roadmap” for software engineering for mobility, the challenges posed by this dynamic scenario were many. A decade and a half later, many things have changed. Mobility is no longer exotic: we juggle multiple personal devices every day while on the move, plus we grab and update applications on a whim from virtual stores. Indeed, some trends and visions we considered in our original paper materialized, while others faded, disappeared, or morphed into something else. Moreover, some players unexpected at the time (e.g., cloud computing and online social networks) appeared on the scene as game changers. In this paper we revisit critically our original vision, reflecting on the past and peering into the future of the lively and exciting research area of mobility. Further, we ask ourselves to what extent the software engineering community is still interested in taking up the challenges mobility bears.

[1]  Jie Liu,et al.  Enabling energy efficient continuous sensing on mobile phones with LittleRock , 2010, IPSN '10.

[2]  Leah Buechley,et al.  A Construction Kit for Electronic Textiles , 2006, 2006 10th IEEE International Symposium on Wearable Computers.

[3]  Andrew B. Schwartz,et al.  Brain-Controlled Interfaces: Movement Restoration with Neural Prosthetics , 2006, Neuron.

[4]  Roy H. Campbell,et al.  Cerberus: a context-aware security scheme for smart spaces , 2003, Proceedings of the First IEEE International Conference on Pervasive Computing and Communications, 2003. (PerCom 2003)..

[5]  Ye Xu,et al.  Preference, context and communities: a multi-faceted approach to predicting smartphone app usage patterns , 2013, ISWC '13.

[6]  Giovanni Vigna,et al.  Is Code Still Moving Around? Looking Back at a Decade of Code Mobility , 2007, 29th International Conference on Software Engineering (ICSE'07 Companion).

[7]  Jie Liu,et al.  LittleRock: Enabling Energy-Efficient Continuous Sensing on Mobile Phones , 2011, IEEE Pervasive Computing.

[8]  Gian Pietro Picco Software engineering and wireless sensor networks: happy marriage or consensual divorce? , 2010, FoSER '10.

[9]  Jörg Ott,et al.  SCAMPI: service platform for social aware mobile and pervasive computing , 2012, MCC '12.

[10]  Pierangela Samarati,et al.  Location privacy in pervasive computing , 2008 .

[11]  Robin R. Murphy,et al.  Human-robot interactions during the robot-assisted urban search and rescue response at the World Trade Center , 2003, IEEE Trans. Syst. Man Cybern. Part B.

[12]  Yvonne Rogers,et al.  Moving on from Weiser's Vision of Calm Computing: Engaging UbiComp Experiences , 2006, UbiComp.

[13]  Andrew McCallum,et al.  FACTORIE: Probabilistic Programming via Imperatively Defined Factor Graphs , 2009, NIPS.

[14]  Jue Wang,et al.  Dude, where's my card?: RFID positioning that works with multipath and non-line of sight , 2013, SIGCOMM.

[15]  Cecilia Mascolo,et al.  An Empirical Study of Geographic User Activity Patterns in Foursquare , 2011, ICWSM.

[16]  Maximiliano Firtman,et al.  Programming the Mobile Web , 2010 .

[17]  Andreas Holzinger,et al.  Making Apps Useable on Multiple Different Mobile Platforms: On Interoperability for Business Application Development on Smartphones , 2012, CD-ARES.

[18]  Cecilia Mascolo,et al.  METIS: Exploring mobile phone sensing offloading for efficiently supporting social sensing applications , 2013, 2013 IEEE International Conference on Pervasive Computing and Communications (PerCom).

[19]  Emiliano Miluzzo,et al.  A survey of mobile phone sensing , 2010, IEEE Communications Magazine.

[20]  Byung-Gon Chun,et al.  TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones , 2010, OSDI.

[21]  Lada A. Adamic,et al.  Computational Social Science , 2009, Science.

[22]  Peter A. Flach,et al.  Evaluation Measures for Multi-class Subgroup Discovery , 2009, ECML/PKDD.

[23]  Mirco Musolesi,et al.  Sensing meets mobile social networks: the design, implementation and evaluation of the CenceMe application , 2008, SenSys '08.

[24]  Roy H. Campbell,et al.  Towards Security and Privacy for Pervasive Computing , 2002, ISSS.

[25]  Amy L. Murphy,et al.  Software engineering for mobility: a roadmap , 2000, ICSE '00.

[26]  Raymond Oung,et al.  The Distributed Flight Array: Design, implementation, and analysis of a modular vertical take-off and landing vehicle , 2014, Int. J. Robotics Res..

[27]  Byung-Gon Chun,et al.  CloneCloud: elastic execution between mobile device and cloud , 2011, EuroSys '11.

[28]  Abdelsalam Helal,et al.  Enabling Smart Spaces with OSGi , 2003, IEEE Pervasive Comput..

[29]  Karin Strauss,et al.  PocketWeb: instant web browsing for mobile devices , 2012, ASPLOS XVII.

[30]  Amy L. Murphy,et al.  Programming Wireless Sensor Networks with the TeenyLimeMiddleware , 2007, Middleware.

[31]  Randy H. Katz,et al.  Next century challenges: mobile networking for “Smart Dust” , 1999, MobiCom.

[32]  Mirco Musolesi Big Mobile Data Mining: Good or Evil? , 2014, IEEE Internet Computing.

[33]  Amy L. Murphy,et al.  Is there light at the ends of the tunnel? Wireless sensor networks for adaptive lighting in road tunnels , 2011, Proceedings of the 10th ACM/IEEE International Conference on Information Processing in Sensor Networks.

[34]  Bradley R. Schmerl,et al.  Software Engineering for Self-Adaptive Systems: A Second Research Roadmap , 2010, Software Engineering for Self-Adaptive Systems.

[35]  Gian Pietro Picco,et al.  Understanding code mobility , 1998, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[36]  Jie Liu,et al.  Fast app launching for mobile devices using predictive user context , 2012, MobiSys '12.

[37]  Peter Stone,et al.  A Multiagent Approach to Autonomous Intersection Management , 2008, J. Artif. Intell. Res..

[38]  Eemil Lagerspetz,et al.  BeTelGeuse: A Platform for Gathering and Processing Situational Data , 2009, IEEE Pervasive Computing.

[39]  Daniel Gatica-Perez,et al.  Mining large-scale smartphone data for personality studies , 2013, Personal and Ubiquitous Computing.

[40]  Cynthia Dwork,et al.  Differential Privacy , 2006, ICALP.

[41]  Seungyeop Han,et al.  The Case for Onloading Continuous High-Datarate Perception to the Phone , 2013, HotOS.

[42]  P. Hartvigsen The Computer for the 21st Century (1991) , 2014 .

[43]  Fredrik Rehnmark,et al.  Robonaut: A Robot Designed to Work with Humans in Space , 2003, Auton. Robots.

[44]  Luca Mottola,et al.  Programming wireless sensor networks , 2011, ACM Comput. Surv..

[45]  Mahadev Satyanarayanan,et al.  Pervasive computing: vision and challenges , 2001, IEEE Wirel. Commun..

[46]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[47]  Alec Wolman,et al.  MAUI: making smartphones last longer with code offload , 2010, MobiSys '10.

[48]  Marco Luca Sbodio,et al.  AllAboard: A System for Exploring Urban Mobility and Optimizing Public Transport Using Cellphone Data , 2013, ECML/PKDD.

[49]  Andrew T. Campbell,et al.  From Smart to Cognitive Phones , 2012, IEEE Pervasive Computing.

[50]  Christine Julien,et al.  An energy-efficient quality adaptive framework for multi-modal sensor context recognition , 2011, 2011 IEEE International Conference on Pervasive Computing and Communications (PerCom).

[51]  Suman Nath,et al.  ACE: Exploiting Correlation for Energy-Efficient and Continuous Context Sensing , 2012, IEEE Transactions on Mobile Computing.

[52]  Marc Langheinrich,et al.  Privacy by Design - Principles of Privacy-Aware Ubiquitous Systems , 2001, UbiComp.

[53]  Cecilia Mascolo,et al.  Smartphones for Large-Scale Behavior Change Interventions , 2013, IEEE Pervasive Computing.

[54]  Y. H. Lee,et al.  Fuzzy systems to process ECG and EEG signals for quantification of the mental workload , 2000, Inf. Sci..

[55]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[56]  James A. Landay,et al.  Modeling Privacy Control in Context-Aware Systems , 2002, IEEE Pervasive Comput..

[57]  Yung-Hsiang Lu,et al.  Cloud Computing for Mobile Users: Can Offloading Computation Save Energy? , 2010, Computer.

[58]  Fabio Gramazio,et al.  Aerial Robotic Construction towards a New Field of Architectural Research , 2012 .

[59]  P. Abbeel,et al.  Path and travel time inference from GPS probe vehicle data , 2009 .

[60]  Jim White,et al.  Telescript technology: mobile agent , 1999 .

[61]  Dennis J. McFarland,et al.  Brain–computer interfaces for communication and control , 2002, Clinical Neurophysiology.

[62]  Shaohan Hu,et al.  NeuroPhone: brain-mobile phone interface using a wireless EEG headset , 2010, MobiHeld '10.

[63]  Mirco Musolesi,et al.  Anticipatory Mobile Computing , 2013, ACM Comput. Surv..

[64]  Christine Julien,et al.  Evasion planning for autonomous vehicles at intersections , 2012, 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[65]  Amy L. Murphy,et al.  LIME: A coordination model and middleware supporting mobility of hosts and agents , 2006, TSEM.

[66]  Gediminas Adomavicius,et al.  Context-aware recommender systems , 2008, RecSys '08.

[67]  Andrew Campbell,et al.  The Rise of People-Centric Sensing , 2008, IEEE Internet Computing.

[68]  John Zimmerman,et al.  I'm the mayor of my house: examining why people use foursquare - a social-driven location sharing application , 2011, CHI.

[69]  John Krumm,et al.  Location-aware computing comes of age , 2004, Computer.

[70]  Kevin Blankespoor,et al.  BigDog, the Rough-Terrain Quadruped Robot , 2008 .

[71]  Gordon S. Blair,et al.  Emergent Middleware: Tackling the Interoperability Problem , 2012, IEEE Internet Computing.

[72]  Dongmei Zhang,et al.  The Future of Software Engineering , 2016, IEEE Softw..

[73]  Adrian Holzer,et al.  Trends in Mobile Application Development , 2009, MOBILWARE Workshops.

[74]  Antonio Lima,et al.  Exploiting Cellular Data for Disease Containment and Information Campaigns Strategies in Country-Wide Epidemics , 2013, ArXiv.

[75]  Mark Weiser The computer for the 21st century , 1991 .

[76]  Amy L. Murphy,et al.  Monitoring heritage buildings with wireless sensor networks: The Torre Aquila deployment , 2009, 2009 International Conference on Information Processing in Sensor Networks.

[77]  Lars Kai Hansen,et al.  Smartphones Get Emotional: Mind Reading Images and Reconstructing the Neural Sources , 2011, ACII.

[78]  Gaetano Borriello,et al.  Open data kit sensors: a sensor integration framework for android at the application-level , 2012, MobiSys '12.

[79]  Deborah Estrin,et al.  PEIR, the personal environmental impact report, as a platform for participatory sensing systems research , 2009, MobiSys '09.

[80]  R. Forchheimer,et al.  Towards woven logic from organic electronic fibres. , 2007, Nature materials.

[81]  Eija Kaasinen,et al.  User needs for location-aware mobile services , 2003, Personal and Ubiquitous Computing.

[82]  Huajun Chen,et al.  The Semantic Web , 2011, Lecture Notes in Computer Science.

[83]  Ahmad Rahmati,et al.  Dandelion: a framework for transparently programming phone-centered wireless body sensor applications for health , 2010, Wireless Health.