Workflow is a well-established approach to visually compose large and complex applications out of components. However, existing workflow models do not provide high-level abstractions of two recurring user-interaction patterns in mobile cloud applications, namely backtracking and interactive controls. In this paper, we propose Sonata, a workflow model that provides high-level abstractions for implicit and structured backtracking, and interactive controls. We prototype a workflow engine for Android devices and another for a RESTful cloud service platform, each of which orchestrates the execution of mobile components and cloud services, respectively. Choreography between the mobile orchestrator and cloud orchestrator is implemented on top of HTTP using REST-style invocations. An example application workflow incorporating all our proposed constructs is further elaborated.
[1]
Francisco Curbera,et al.
Web Services Business Process Execution Language Version 2.0
,
2007
.
[2]
Yuan Yu,et al.
Dryad: distributed data-parallel programs from sequential building blocks
,
2007,
EuroSys '07.
[3]
Sanjay Ghemawat,et al.
MapReduce: Simplified Data Processing on Large Clusters
,
2004,
OSDI.
[4]
Bu-Sung Lee,et al.
μCloud: Towards a New Paradigm of Rich Mobile Applications
,
2011,
ANT/MobiWIS.
[5]
Jun Xiao,et al.
Face based image navigation and search
,
2009,
MM '09.
[6]
Mark von Rosing,et al.
Business Process Model and Notation - BPMN
,
2015,
The Complete Business Process Handbook, Vol. I.