Porting a phone motion simulator to the cloud


Phomo is a phone motion simulator that allows to test location-based apps. Location-based mobile applications change behavior when the device changes location. Usually, in order to verify if the application behaves properly, developers have two choices. First, they can walk around with their phones. This solution might be necessary in the late stages of development, but is very cumbersome and time consuming, which makes it inadequate for frequent use during early stages of development. Second, developers can use location simulation provided by their IDE (e.g., Xcode, Netbeans). Unfortunately, this solution is generally very course grain: location can be changed from on city to another, but there is generally no support for smaller movement and multiple devices, at least before the introduction of Phomo. Phomo addresses both these issues and provides a simple way to simulate real-life movement for one or several devices.


In its current version, Phomo is a rich standalone application written in Java, so it needs to be installed locally on the developer computer. However, with the raise of so-called Software as a Service (SaaS) solutions, porting and deploying Phomo to the cloud is expected to contribute to its adoption in the mobile developer community. The good news here is that internally, the current version of Phomo is already relying mostly on web technologies: its core engine is based on an embedded version of Tomcat and its user interface relies on online maps accessed via JavaScript.