Mayr-Dorn, C. and Egyed, A. (2018) Does the Propagation of Artifact Changes across Tasks reflect Work Dependencies? (preprint) In Proceedings of
the 40th International Conference on Software Engineering (ICSE ’18), May 27-June 3, 2018, Gothenburg, ACM, forthcoming
Developers commonly define tasks to help coordinate software development efforts-whether they be feature implementation, refactoring, or bug fixes. Developers establish links between tasks to express implicit dependencies that needs explicit handling-dependencies that often require the developers responsible for a given task to assess how changes in a linked task affect their own work and vice versa (i.e., change propagation). While seemingly useful, it is unknown if change propagation indeed coincides with task links.
No study has investigated to what extent change propagation actually occurs between task pairs and whether it is able to serve as a metric for characterizing the underlying task dependency. In this paper, we study the temporal relationship between developer reading and changing of source code in relationship to task links. We identify seven situations that explain the varying correlation of change propagation with linked task pairs and find six motifs describing when change propagation occurs between non-linked task pairs. Our paper demonstrates that task links are indeed useful for recommending which artifacts to monitor for changes, which developers to involve in a task, or which tasks to inspect.
Supporting Online Material: https://doi.org/10.6084/m9.fgshare.5346253.v1
This work was supported by the Austrian Science Fund (FWF): P29415-NBL funded by the Government of Upper Austria.
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].