Abstract. For solving complex problems, in many cases, software alone might not be sufficient and we need hybrid systems of software and humans in which humans not only direct the software performance but also perform computing and vice versa. Therefore, we advocate constructing “social computers” which combine software and human services. However, to date, human capabilities cannot be easily programmed into complex applications in a similar way like software capabilities. There is a lack of techniques to conceptualize and program human and software capabilities in a unified way. In this paper, we explore a new way to virtualize, provision and program human capabilities using cloud computing concepts and service delivery models. We propose novel methods for conceptualizing and modeling clouds of human-based services and combine human-based services with software-based services to establish clouds of hybrid services. In our model, we present common APIs, similar to well-developed APIs for software services, to access individual and team-based compute units in clouds of humanbased services. Based on that, we propose a framework for utilizing software-based and human-based services to solve complex problems. We present several programming primitives for hybrid services, also covering forming hybrid solutions consisting of software and humans. We illustrate our concepts via some examples of using our cloud APIs and existing cloud APIs for software.
Keywords: hybrid services, cloud computing, human-based computation, service computing.
Citation: Hong-Linh Truong, Schahram Dustdar,Kamal Bhattacharya “Conceptualizing and Programming Hybrid Services in the Cloud”, International Journal of Cooperative Information Systems, (c)World Scientific Publishing, 2013, Accepted.