cc 15(5): e6

Research Article

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

Download240 downloads
  • @ARTICLE{10.4108/eai.17-12-2015.150812,
        author={Dave Murray-Rust and Ognjen Scekic and Petros Papapanagiotou and Hong-Linh Truong and Dave Roberston and Schahram Dustdar},
        title={A Collaboration Model for Community-Based Software Development with Social Machines},
        journal={EAI Endorsed Transactions on Collaborative Computing},
        volume={1},
        number={5},
        publisher={EAI},
        journal_a={CC},
        year={2015},
        month={12},
        keywords={auxiliary information, incremental clustering, data growth, collaborative Filtering, NMF},
        doi={10.4108/eai.17-12-2015.150812}
    }
    
  • Dave Murray-Rust
    Ognjen Scekic
    Petros Papapanagiotou
    Hong-Linh Truong
    Dave Roberston
    Schahram Dustdar
    Year: 2015
    A Collaboration Model for Community-Based Software Development with Social Machines
    CC
    EAI
    DOI: 10.4108/eai.17-12-2015.150812
Dave Murray-Rust1,*, Ognjen Scekic2, Petros Papapanagiotou1, Hong-Linh Truong2, Dave Roberston1, 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: d.murray-rust@ed.ac.uk

Abstract

Crowdsourcing is generally used for tasks with minimal coordination, providing limited support for dynamic reconfiguration. Modern systems, exemplified by social ma chines, are subject to continual flux in both the client and development communities and their needs. To support crowdsourcing of open-ended development, systems must dynamically integrate human creativity with machine support. While workflows can be u sed to handle structured, predictable processes, they are less suitable for social machine development and its attendant uncertainty. We present models and techniques for coordination of human workers in crowdsourced software development environments. We combine the Social Compute Unit—a model of ad-hoc human worker teams—with versatile coordination protocols expressed in the Lightweight Social Calculus. This allows us to combine coordination and quality constraints with dynamic assessments of end-user desires, dynamically discovering and applying development protocols.