Informing the Design of New Mobile Development Methods and Tools

application development [2] is of particular interest to this work. ... Android. iOS. Windows Phone. jQuery Mobile. Version. 2.3. 5.0. 7.5. 1.1.0. Language. Java.
920KB Sizes 0 Downloads 126 Views
Informing the Design of New Mobile Development Methods and Tools Abstract Michael Nebeling, Christoph Zimmerli and Moira C. Norrie Institute of Information Systems, ETH Zurich CH-8092 Zurich, Switzerland {nebeling,zimmerli,norrie}

Given the proliferation of new mobile devices and different technologies, it is becoming increasingly difficult to develop for mobile settings. To gain a better understanding of the engineering problem and how developers currently work, we conducted a 14-week experiment with four developers. Using a diary study, we analysed commonalities and differences between various native mobile and webbased approaches including the different kinds of tasks and the effort expended on them. We discuss implications for design and describe our current work towards better supporting multi-platform development based on our findings.

Author Keywords Multi-device engineering; development experience.

ACM Classification Keywords H.5.2 [User Interfaces]: Screen design; Input devices and strategies

Introduction Copyright is held by the author/owner(s). CHI 2013 Extended Abstracts, April 27–May 2, 2013, Paris, France. ACM 978-1-4503-1952-2/13/04.

The current proliferation of mobile devices requires a redesign of many applications traditionally consumed through desktop-like interfaces to access them in a mobile setting. Given the diversity of device characteristics, it is a major challenge for application developers to create user inter-

faces (UIs) for the current range of mobile technologies. The range of mobile platforms, not only requires a wide skill set and experience with different programming languages and software development kits, but also results in a duplication of design effort and increased maintenance costs. To show the dimension of this problem, The New York Times currently offers six separate applications for mobile devices , but still does not cover the whole range of existing devices. A recent debate on native mobile vs. web-based application development [2] is of particular interest to this work. Proponents of the first approach see benefits in terms of performance and interface design, while advocates of the latter argue for the reduced implementation and maintenance costs of a device-independent platform. Based on a study of four developers and current approaches, this pa- per aims to build a better understanding of the design and implementation effort when migrating desktop applications to mobile platforms. Our analysis includes a diary study to identify the main tasks and the effort expended on them for current mobile platforms as well as determining commonalities and differences in the approach and collecting feedback on the development experience. Our specific observations concern framework usability and productivity in terms of both technical and subjective criteria as a basis for identifying factors that contribute to a “better” development experience and platform reachability. We also contribute metrics and criteria for evaluating different implementation approaches to help developers and designers determine an appropriate mobile strategy for a particular application. After describing the application and experiment design, we present a detailed analysis of the developer diaries and

feedback based on a set of criteria and metrics for evaluating the mobile application development experience. In our ongoing work, we build on these findings to improve on existing multi-device solutions with the major goal of supporting interactive development on the mobile devices themselves.

Experiment Our experiment concerned the development of mobile client applications for an existing server system called Twitstore 1 , which offers a Twitter-like approach to personal notes consisting of free-form text with hashtags for metadata used to organise them. Similar to the desktop application, a mobile client would allow users to create and manage new items, retrieve existing ones and update, delete or