# Developing Mobile Software with FLOSS

Anthony I. Wasserman

► To cite this version:

Anthony I. Wasserman. Developing Mobile Software with FLOSS. 8th International Conference on Open Source Systems (OSS), Sep 2012, Hammamet, Tunisia. pp.401-402, 10.1007/978-3-642-33442-9_47. hal-01519073

HAL Id: hal-01519073

https://inria.hal.science/hal-01519073

Submitted on 5 May 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Developing Mobile Software with FLOSS

Anthony I. Wasserman

Carnegie Mellon University Silicon Valley
tonyw@sv.cmu.edu

WWW home page: http://sv.cmu.edu

**Abstract.** The goal of this workshop is to explore the challenges, issues and opportunities associated with the use of free and open source software (FLOSS) in mobile platforms and apps. As mobile phones and devices become more powerful, as cloud services and telecom infrastructure become richer, and as consumer expectations evolve, developers are faced with an array of challenges that affect how they should systematically build and deploy new applications and systems.

## 1 Introduction

Current mobile platforms and applications include both open source and closed software components. While development tools for mobile systems are largely open, the platforms and applications are largely closed. The mobile ecosystem is different from the traditional software ecosystem, since many developer decisions are affected by device manufacturers, mobile network providers, and application store requirements. Developers are, in general, more constrained the mobile environment than in traditional environments.

Beyond that, challenges to successful development of mobile applications cover a wide range of business and technical issues, including:

* Multiple hardware and software platforms

* Many development frameworks and programming languages

* Different operator restrictions and features

* Very short development cycles

* UI limitations and complexities of interaction with sensors and cameras

* Effective use of context

* Power management

* Security and privacy models and policies

* Computational and storage limitations

* Applications that depend on external services
Issues related to free and open source software (FLOSS) add some additional challenges, including:

* Rapid release cycles for FLOSS software

* Managing multiple FLOSS licenses within an app

* Complying with app store rules and restrictions related to FLOSS apps

## 2 Workshop Themes and Goals

The overall goal for the workshop is to develop an agenda for future research related to the development of mobile applications that use FLOSS. The workshop discussions will be built around several important questions and themes, including, but not limited to, the following:

* *How should developers address the increasing fragmentation of the mobile applications ecosystem, involving important decisions on how to address the plethora of devices, platforms, operators, languages and app stores?* Should a developer focus on only one combination of these, or use a toolkit or framework to mask (some of) the differences? What role can (or does) FLOSS have in helping developers create their apps?

* *How do traditional open source development practices relate to the engineering of mobile applications and systems?* Is it the same, different or a variant of conventional approaches? For example, should mobile software engineering employ the same methods and processes but with different patterns and heuristics? Which methods should be used? Are there new methods?

* *What are the distinguishing features of mobile software specification, architecture, development and testing that need special attention, skills, or innovation?* Are there specific categories of apps, such as native apps vs. mobile web apps, to address independently?

* *What new tools, if any, are needed to support the effective development of mobile apps that use FLOSS?* Is there a difference between the general needs for mobile app development tools and specific needs for FLOSS?

* *What are the needed business practices for developers to address the requirements of the mobile ecosystem?* For example, is the developer goal of “release early, release often” compatible with the inherent delay in gaining approval for the app from an app store? What are the mechanisms for releasing source code for FLOSS apps distributed from an app store?