Hofstätter, H. (2013). A datapipe engine for smartphones based on XProc : for building (context aware) workflows [Diploma Thesis, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/159706
Einer der Erfolgsfaktoren von Smartphones ist die hohe Anzahl an mobilen Applikationen (Apps). Jedes mobile Betriebssystem besitzt seinen eigenen App-Markt mit bis zu mehreren hunderttausenden Apps. Trotz dieser enormen Anzahl kann nicht für jeden Use Case eine existieren, wobei besonders hoch personalisierte Anwendungsfälle nicht abgedeckt werden. Findet ein Benutzer keine App die seine Anforderungen erfüllt, ist er in den seltensten Fällen in der Lage eine eigene, auf Grund von (1) fehlenden Programmierkenntnissen, zu hohem Zeitaufwand und (3) Kosten für bestimmte Platformen, zu entwickeln. In dieser Arbeit wurde eine Workflow Engine für Android erstellt, die es Benutzern ohne großem technischem Wissen erlaubt, mobile Workflows zu erstellen um persönliche Use Cases abzudecken. Dafür wurde die XProc Referenzimplementierung Calabash auf Android portiert und um smartphone-spezifische Steps, wie zum Beispiel das Auslesen der aktuellen Position, Versenden von Kurzmitteilungen oder Erstellen von Benutzeroberflächen, erweitert. Zusätzlich wurde ein Trigger-Mechanismus implementiert um Workflows aufgrund von Änderungen des Benutzerkontexts, wie zum Beispiel Zeit, Ort oder das empfangen einer Kurzmitteilung, auszuführen. Eine Leistungsmessung bestätigte, dass das Ausführen eines bereits in Objektrepräsentation vorliegenden Workflows keine Geschwindigkeitseinbußen gegenüber nativ entwickelten Android Apps aufweißt. Das entwickelte System erlaubt es Benutzern Workflows platformneutral und standardisiert (XProc) zu erstellen. Kommunikationsmöglichkeiten (zum Beispiel SMS, Email oder Twitter) erlauben verteilte Workflows welche mehrere Geräte umfassen. Ein zentrales Workflow-Repository ermöglicht das Veröffentlichen von Workflows, so dass andere Benutzer diese benutzen können. Des Weiteren fungiert es als Registrierung für "Workflows as a Service" welche wiederum Benutzern erlauben "Human Services", wie zum Beispiel Restaurantempfehlungen für eine bestimmte Stadt, bereitzustellen.
One of smartphones' core factor of success is the vast amount of available apps. Every mobile operating system has its own app market serving up to hundreds of thousands of mobile applications. Despite this numerous number of apps there cannot exist one for every use case. Especially highly personal, often quite trivial use cases are not covered. If a user does not find an app fulfilling the requirements, he rarely is able to write one of its own because of (1) missing programming skills, (2) too much time effort for simple tasks and (3) expenses on particular systems. This work built a mobile workflow engine on Android to empower users without much technical knowledge to build executables coping with their use cases. Therefore the XProc reference implementation Calabash was ported to Android and extended with smartphone specific steps to fetch the current location, send short messages, build a user interface, and so on. Also a trigger mechanism was implemented to activate workflows due to changes in the user's context like time, location and reception of a short message. A performance measurement done in this work demonstrates no execution drawback in contrast to native development after a workflow is compiled to its object representation. The created system lets users build workflows in a platform neutral and standardized (XProc) way. Communication facilities (e.g. Short messages, eMail or Twitter) enable distributed workflows spanning several devices. A central workflow repository enables publishing of workflows so that others can consume them. It also acts as registry for "Workflows as a Service" which allow users to provide "human services" like restaurant recommendation for a city.