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.
A belated post on my participation in the IOT 2017 conference’s panel on Pro2Future.
From left to right: Gabriele Anderst-Kotsis (JKU Linz), Christoph Mayr-Dorn (JKU Linz), Stefan Thalmann (TU Graz, Pro²Future), Heimo Theuretzbacher-Fritz (Pro²Future), Simon Mayer (TU Graz, Pro²Future)
Exciting news. My proposal “C4S – Coordination-centric Change and Consistency Support” with Alexander Egyed (Co-PI) has been accepted in the FWF (Austrian Science Fund) Matching Funds program.
I will carry out this project at JKU, specifically the Institute for Software Systems Engineering (ISSE), which I will join as Post-Doc and PI beginning of September. I’m very excited to work with the people at ISSE, given also the outstanding ranking of JKU within in the top 16 institutions worldwide by Microsoft Research.
The research proposal addresses change impact analysis in development efforts of complex, safety-critical software (e.g., air traffic control systems). Such software typically exhibits a long lifecycle, involves various engineers (beyond pure software developers) across the entire development lifecycle and is subject to countless changes in the scope of maintenance and evolution activities. Under such conditions proper impact analysis needs to go beyond knowing which artifacts are affected (traditional traceability). Successfully implementing a change requires awareness which engineers to involve and why, how these engineers should be coordinated and communicate, and how these engineers should correctly propagate changes. Hence, what is an efficient and effective way to support engineers in change impact analysis and consistency maintenance? Pure top-down specified processes are insufficient to provide actionable guidance. This proposed work, therefore, investigates methods and techniques for bottom-up determining the underlying communication, coordination, and joint work relations among engineers, artifacts, and tasks. Monitoring such low-level events enables a holistic bottom-up activity view that constitutes the basis for extensive change management support: (i) Dependency Awareness and Consistency Support: provides sophisticated artifact dependencies and recommendations for maintaining artifact consistency beyond core development activities. (ii) Coordination Know-how Learning: generalizes and extracts insight into which coordination structures prevailed, how much collaboration occurred, and which expertise was involved, thus enabling to deduct how these properties affect the duration, quality outcome, and resource utilization of various development activities required for change implementation; and (iii) Coordination Guidance: provides actionable recommendations for a given change management instance based on previously learned best practices. Key research questions address the challenges of dealing with incomplete, incorrect, and uncertain information in detail.