User task-based development of multi-device service-oriented applications