My work on a framwork for model-driven (i.e., hADL driven) execution of collaboration structures was accepted as a full paper at CAiSE 2016.
Mayr-Dorn C., Dustdar S. (2016) A Framework for Model-driven Execution of Collaboration Structures, In Proceedings of the 28th International Conference on Advanced Information Systems Engineering (CAiSE), June, Ljubljana, Slovenia, Springer, (forthcoming, preprint) – [Supporting Online Material]
Abstract: Human interaction-intensive process environments need collaboration support beyond traditional BPM approaches. Process primitives are ill suited to model and execute collaborations for shared artifact editing, chatting, or voting. To this end, this paper introduces a framework for specifying and executing such collaboration structures. The framework explicitly supports the required human autonomy in shaping the collaboration structure. We demonstrate the application of our framework to an exemplary collaboration-intensive hiring process.
Dorn, C., Osterweil, L.J., Dustdar, S., (2014) Specifying Flexible Human Behavior in Interaction-Intensive Process Environments, In Proceedings of the 12th International Conference on Business Process Management (BPM 2014), Sep 2014, Eindhoven, Springer LNCS
Abstract: Fast changing business environments characterized by unpredictable
variations call for flexible process-aware systems. The BPM community addressed this challenge through various approaches but little focus has been on how to specify (respectively constrain) flexible human involvement: how human pro-cess participants may collaborate on a task, how they may obtain a joint decision that drives the process, or how they may communicate out-of-band for clarifying task-vital information. Experience has shown that pure process languages are not necessarily the most appropriate technique for specifying such flexible behavior. Hence selecting appropriate modeling languages and strategies needs thorough investigation. To this end, this paper juxtaposes the capabilities of representa-tive human-centric specification languages hADL and Little-JIL and demonstrate their joint applicability for modeling interaction-intensive processes
Dorn, C., Taylor R. N., (2013) Coupling Software Architecture and Human Architecture for Collaboration-aware System Adaptation, In Proceedings of the International Conference on Software Engineering (ICSE), May 2013, San Francisco, USA, to appear.
Abstract: The emergence of socio-technical systems characterized by significant user collaboration poses a new challenge for system adaptation. People are no longer just the “users” of a system but an integral part. Traditional self-adaptation mechanisms, however, consider only the software system and remain unaware of the ramifications arising from collaboration interdependencies. By neglecting collective user behavior, an adaptation mechanism is unfit to appropriately adapt to evolution of user activities, consider side-effects on collaborations during the adaptation process, or anticipate negative consequence upon reconfiguration completion.
Inspired by existing architecture-centric system adaptation approaches, we propose linking the runtime software architecture to the human collaboration topology. We introduce a mapping mechanism and corresponding framework that enables a system adaptation manager to reason upon the effect of software-level changes on human interactions and vice versa. We outline the integration of the human architecture in the adaptation process and demonstrate the benefit of our approach in a case study.
Introducing the human Architecture Description Language (hADL) [blog].
Dorn, C., Taylor R. N., (2012) Architecture-Driven Modeling of Adaptive Collaboration Structures in Large-Scale Social Web Applications , International Confonference on Web Information System Engineering (WISE2012), November, Paphos, Cyprus, Springer Verlag
Abstract: 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.
Available also as technical report [blog].
Dorn C., Edwards G., Medvidovic N., (2012) Analyzing Design Tradeoffs in Large-scale Socio-Technical Systems through Simulation of Dynamic Collaboration Patterns, In Proceedings of the 20th International Conference on
Cooperative Information Systems (CoopIS 2012), Sep., 2012, Rome, Italy.
Supporting Online Material available on this blog.
Abstract: Emerging online collaboration platforms such as Wikipedia, Twitter, or Facebook provide the foundation for socio-technical systems where humans have become both content consumer and provider. Existing software engineering tools and techniques support the system engineer in designing and assessing the technical infrastructure. Little research, however, addresses the engineer’s need for understanding the overall socio-technical system behavior. The effect of fundamental design decisions becomes quickly unpredictable as multiple collaboration patterns become integrated into a single system.
We propose the simulation of human and software elements at the collaboration level. We aim for detecting and evaluating undesirable system behavior such as users experiencing repeated update conflicts or software components becoming overloaded. To this end, this paper contributes (i) a language and (ii) methodology for specifying and simulating large-scale collaboration structures, (iii) example individual and aggregated pattern simulations, and (iv) evaluation of the overall approach.