10th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing

Research Article

A Collaboration Model for Community-Based Software Development with Social Machines

Download830 downloads
  • @INPROCEEDINGS{10.4108/icst.collaboratecom.2014.257245,
        author={Dave Murray-Rust and Ognjen Scekic and Hong-Linh Truong and Dave Robertson and Schahram Dustdar},
        title={A Collaboration Model for Community-Based Software Development with Social Machines},
        proceedings={10th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing},
        publisher={IEEE},
        proceedings_a={COLLABORATECOM},
        year={2014},
        month={11},
        keywords={social machines scu lsc crowdsourcing},
        doi={10.4108/icst.collaboratecom.2014.257245}
    }
    
  • Dave Murray-Rust
    Ognjen Scekic
    Hong-Linh Truong
    Dave Robertson
    Schahram Dustdar
    Year: 2014
    A Collaboration Model for Community-Based Software Development with Social Machines
    COLLABORATECOM
    IEEE
    DOI: 10.4108/icst.collaboratecom.2014.257245
Dave Murray-Rust1, Ognjen Scekic2,*, Hong-Linh Truong2, Dave Robertson1, Schahram Dustdar2
  • 1: Centre for Intelligent Systems and Applications, School of Informatics, University of Edinburgh, UK
  • 2: Distributed Systems Group, Vienna University of Technology, Austria
*Contact email: o.scekic@infosys.tuwien.ac.at

Abstract

Today's crowdsourcing systems are predominantly used for processing independent tasks with simplistic coordination. As such, they offer limited support for handling complex, intellectually and organizationally challenging labour types, such as software development. In order to support crowdsourcing of the software development processes, the system needs to enact coordination mechanisms which integrate human creativity with machine support. While workflows can be used to handle highly-structured and predictable labour processes, they are less suitable for software development methodologies where unpredictability is an unavoidable part the process. This is especially true in phases of requirement elicitation and feature development, when both the client and development communities change with time. In this paper we present models and techniques for coordination of human workers in crowdsourced software development environments. The techniques augment the existing Social Compute Unit (SCU) concept---a general framework for management of ad-hoc human worker teams---with versatile coordination protocols expressed in the Lightweight Social Calculus (LSC). This approach allows us to combine coordination and quality constraints with dynamic assessments of software-user's desires, while dynamically choosing appropriate software development coordination models.