Candra, M. Z. C. (2016). Hybrid human-machine computing systems : provisioning, monitoring, and reliability analysis [Dissertation, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2016.36706
Modern advances of computing systems allow humans to participate not only as service consumers but also as service providers, yielding the so-called human-based computation. In this paradigm, some computational steps to solve a problem can be outsourced to humans. Such an interweaving of humans and machines as compute units can be observed in various computing systems, such as collective intelligence systems, Process-Aware Information Systems (PAISs) with human tasks, and Cyber-Physical-Social Systems (CPSSs). Even with the multitude realizations of such systems - herein we refer to as Hybrid Human-Machine Computing System (HCS) - yet we still lack important building blocks to develop an HCS, where humans are machines are both considered as first class problem solvers from the ground up. These building blocks should tackle issues arise from different phases of an HCS- lifecycle, i.e., pre-runtime, runtime, and post-runtime. Each phase introduces unique challenges, mainly due to the diversity of the involved compute units, which bring in different characteristics and behaviors that need to be taken into consideration. This thesis contributes to some important building blocks in managing HCSs- lifecycle: the provisioning of compute units, the monitoring of the running system, and the reliability analysis of the task executions. Our first contribution deals with the quality-aware provisioning of a group of compute units, a so-called compute units collective, by discovering and composing compute units obtained from various sources either on-premise or in the Cloud. We propose a novel solution model for tackling the problem in the quality-aware provisioning of compute units collectives, and employ some heuristic techniques to solve the problem. Our approach allows service consumers to specify quality requirements, which contain constraints and optimization objectives with respect to functional capabilities and non-functional properties. In our second contribution, we develop a monitoring framework for capturing and analyzing runtime metrics occurring on various facets of HCSs. This framework is developed based on metric models, which deals with diverse compute units. Our approach also utilizes Quality of Data (QoD) to enable elastic monitoring catering different monitoring needs. While the reliability analysis for machine-based compute units has been widely developed, the reliability analysis for HCSs has not been extensively studied. In our final contribution, we present models and a framework for analyzing the reliability of compute units collectives.