Architecture-Driven Modeling of Adaptive Collaboration Structures in Large-Scale Social Web Applications

Internet-based, large-scale systems provide the technical foundation for massive online collaboration forms such as social networks, crowdsourcing, content sharing, or source code generation. Such systems are typically designed to adapt at the software level to achieve availability and scalability. They, however, remain mostly unaware of the changing requirements of the various ongoing collaborations. As a consequence, cooperative efforts cannot grow and evolve as easily nor efficiently as they need to. An adaptation mechanism needs to become aware of a collaboration's structure and flexibility to consider changing collaboration requirements during system reconfiguration. To this end, this paper presents the human Architecture Description Language (hADL) for describing the envisioned collaboration dynamics. Inspired by software architecture concepts, hADL introduces human components and collaboration connectors for describing the underlying human coordination dependencies. We further outline a methodology for designing collaboration patterns based on a set of fundamental principles that facilitate runtime adaptation. An exemplary model transformation demonstrates hADL's feasibility. It produces the group permission configuration for MediaWiki in reaction to changing collaboration conditions.

[1]  Dawn G. Gregg Designing for collective intelligence , 2010, CACM.

[2]  Clarence A. Ellis Team automata for groupware systems , 1997, GROUP '97.

[3]  Kjeld Schmidt,et al.  Proceedings of the international ACM SIGGROUP conference on Supporting group work: the integration challenge , 1997 .

[4]  Tharam S. Dillon,et al.  On the Move to Meaningful Internet Systems, OTM 2010 , 2010, Lecture Notes in Computer Science.

[5]  John C. Tang,et al.  Business activity patterns: A new model for collaborative business applications , 2006, IBM Syst. J..

[6]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.

[7]  Elena Navarro,et al.  CSRML: A Goal-Oriented Approach to Model Requirements for Collaborative Systems , 2011, ER.

[8]  Richard N. Taylor,et al.  A comprehensive approach for the development of modular software architecture description languages , 2005, TSEM.

[9]  Daniel Schall,et al.  A human-centric runtime framework for mixed service-oriented systems , 2011, Distributed and Parallel Databases.

[10]  Schahram Dustdar,et al.  Caramba—A Process-Aware Collaboration System Supporting Ad hoc and Collaborative Processes in Virtual Teams , 2004, Distributed and Parallel Databases.

[11]  Richard N. Taylor,et al.  Software architecture: foundations, theory, and practice , 2009, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[12]  Stefano Ceri,et al.  Model-driven development of context-aware Web applications , 2007, TOIT.

[13]  Paolo Giorgini,et al.  Sociotechnical Trust: An Architectural Approach , 2011, ER.

[14]  Erik Wilde,et al.  Web Engineering Revisited , 2008, BCS Int. Acad. Conf..

[15]  David Garlan,et al.  Acme: an architecture description interchange language , 1997, CASCON.

[16]  John Mylopoulos,et al.  System Identification for Adaptive Software Systems: A Requirements Engineering Perspective , 2011, ER.

[17]  Lydia B. Chilton,et al.  TurKit: Tools for iterative tasks on mechanical turk , 2009, 2009 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC).

[18]  Richard Hull,et al.  Artifact-Centric Business Process Models: Brief Survey of Research Results and Challenges , 2008, OTM Conferences.

[19]  Peyman Oreizy,et al.  Runtime software adaptation: framework, approaches, and styles , 2008, ICSE Companion '08.

[20]  Richard N. Taylor,et al.  Flexible Social Workflows: Collaborations as Human Architecture , 2012, IEEE Internet Computing.

[21]  Abraham Bernstein,et al.  CrowdLang - First Steps Towards Programmable Human Computers for General Computation , 2011, Human Computation.

[22]  Wil M. P. van der Aalst,et al.  On the Suitability of BPMN for Business Process Modelling , 2006, Business Process Management.

[23]  Tok Wang Ling,et al.  Conceptual Modeling - ER 2011, 30th International Conference, ER 2011, Brussels, Belgium, October 31 - November 3, 2011. Proceedings , 2011, ER.

[24]  Richard N. Taylor,et al.  Analyzing runtime adaptability of collaboration patterns , 2012, 2012 International Conference on Collaboration Technologies and Systems (CTS).

[25]  Gustavo Rossi,et al.  A survey on web modeling approaches for ubiquitous web applications , 2008, Int. J. Web Inf. Syst..

[26]  Peyman Oreizy,et al.  Architectural styles for runtime software adaptation , 2009, 2009 Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture.