skip to main content
10.1145/3180155.3180185acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article
Open Access

Does the propagation of artifact changes across tasks reflect work dependencies?

Published:27 May 2018Publication History

ABSTRACT

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.

References

  1. Fasil Bantelay, Motahareh Bahrami Zanjani, and Huzefa H. Kagdi. 2013. Comparing and Combining Evolutionary Couplings from Interactions and Commits. In 20th Working Conference on Reverse Engineering, WCRE 2013, Koblenz, Germany, October 14--17, 2013, Ralf Lämmel, Rocco Oliveto, and Romain Robbes (Eds.). IEEE Computer Society, 311--320.Google ScholarGoogle ScholarCross RefCross Ref
  2. Lionel C. Briand, Yvan Labiche, and L. O'Sullivan. 2003. Impact Analysis and Change Management of UML Models. In 19th International Conference on Software Maintenance (ICSM 2003), The Architecture of Existing Systems, 22--26 September 2003, Amsterdam, The Netherlands. IEEE Computer Society, 256--265. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Marcelo Cataldo, Patrick A. Wagstrom, James D. Herbsleb, and Kathleen M. Carley. 2006. Identification of Coordination Requirements: Implications for the Design of Collaboration and Awareness Tools. In Proceedings of the 2006 20th Anniversary Conference on Computer Supported Cooperative Work (CSCW '06). ACM, New York, NY, USA, 353--362. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Davor Cubranic, Gail C. Murphy, Janice Singer, and Kellogg S. Booth. 2005. Hipikat: A Project Memory for Software Development. IEEE Trans. Software Eng. 31, 6 (2005), 446--465. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Marco D'Ambros, Michele Lanza, and Romain Robbes. 2009. On the Relationship Between Change Coupling and Software Defects. In 16th Working Conference on Reverse Engineering, WCRE 2009, 13--16 October 2009, Lille, France, Andy Zaidman, Giuliano Antoniol, and Stéphane Ducasse (Eds.). IEEE Computer Society, 135--144. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Cleidson R. B. de Souza and David F. Redmiles. 2008. An Empirical Study of Software Developers' Management of Dependencies and Changes, See {25}, 241--250. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. C. R. B. de Souza and D. F. Redmiles. 2011. The Awareness Network, To Whom Should I Display My Actions? And, Whose Actions Should I Monitor? IEEE Transactions on Software Engineering 37, 3 (May 2011), 325--340. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Robert DeLine, Mary Czerwinski, and George G. Robertson. 2005. Easing Program Comprehension by Sharing Navigation Data. In 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2005), 21--24 September 2005, Dallas, TX, USA. IEEE Computer Society, 241--248. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Alexander Egyed. 2011. Automatically Detecting and Tracking Inconsistencies in Software Design Models. IEEE Trans. Software Eng. 37, 2 (2011), 188--204. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Alexander Egyed, Emmanuel Letier, and Anthony Finkelstein. 2008. Generating and Evaluating Choices for Fixing Inconsistencies in UML Design Models. In 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE 2008), 15--19 September 2008, L'Aquila, Italy. IEEE Computer Society, 99--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Harald C. Gall, Karin Hajek, and Mehdi Jazayeri. 1998. Detection of Logical Coupling Based on Product Release History. In 1998 International Conference on Software Maintenance, ICSM 1998, Bethesda, Maryland, USA, November 16--19, 1998. IEEE Computer Society, 190--197. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Petra Heck and Andy Zaidman. 2013. An analysis of requirements evolution in open source projects: recommendations for issue trackers. In 13th International Workshop on Principles of Software Evolution, IWPSE 2013, Proceedings, August 19--20, 2013, Saint Petersburg, Russia, Romain Robbes and Gregorio Robles (Eds.). ACM, 43--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Li Jiang, Kathleen M. Carley, and Armin Eberlein. 2012. Assessing team performance from a socio-technical congruence perspective. In 2012 International Conference on Software and System Process, ICSSP 2012, Zurich, Switzerland, June 2--3, 2012, D. Ross Jeffery, David Raffo, Ove Armbrust, and LiGuo Huang (Eds.). IEEE, 160--169. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Massila Kamalrudin, John C. Grundy, and John G. Hosking. 2010. Managing Consistency between Textual Requirements, Abstract Interactions and Essential Use Cases. In Proceedings of the 34th Annual IEEE International Computer Software and Applications Conference, COMPSAC 2010, Seoul, Korea, 19--23 July 2010, Sheikh Iqbal Ahamed, Doo-Hwan Bae, Sung Deok Cha, Carl K. Chang, Rajesh Subramanyan, Eric Wong, and Hen-I Yang (Eds.). IEEE Computer Society, 327--336. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Mik Kersten and Gail C. Murphy. 2006. Using Task Context to Improve Programmer Productivity. In Proceedings of the 14th ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE 2006, Portland, Oregon, USA, November 5--11, 2006, Michal Young and Premkumar T. Devanbu (Eds.). ACM, 1--11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Takashi Kobayashi, Nozomu Kato, and Kiyoshi Agusa. 2012. Interaction Histories Mining for Software Change Guide. In Proceedings of the Third International Workshop on Recommendation Systems for Software Engineering, RSSE 2012, Zurich, Switzerland, June 4, 2012, Walid Maalej, Martin P. Robillard, Robert J. Walker, and Thomas Zimmermann (Eds.). IEEE, 73--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Thomas W. Malone and Kevin Crowston. 1994. The Interdisciplinary Study of Coordination. ACM Comput. Surv. 26, 1 (1994), 87--119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Christoph Mayr-Dorn. 2018. Supporting Online Material for ICSE2018 submission. (Jan 2018).Google ScholarGoogle Scholar
  19. Sebastian C. Muller and Thomas Fritz. 2013. Stakeholders' Information Needs for Artifacts and Their Dependencies in a Real World Context. In 2013 IEEE International Conference on Software Maintenance, Eindhoven, The Netherlands, September 22--28, 2013. IEEE Computer Society, 290--299. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Christian Nentwich, Wolfgang Emmerich, and Anthony Finkelstein. 2003. Consistency Management with Repair Actions. In Proceedings of the 25th International Conference on Software Engineering, May 3--10, 2003, Portland, Oregon, USA, Lori A. Clarke, Laurie Dillon, and Walter F. Tichy (Eds.). IEEE Computer Society, 455--464. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Romain Robbes and Michele Lanza. 2008. SpyWare: a Cchange-Aware Development Toolset, See {25}, 847--850. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Romain Robbes, Damien Pollet, and Michele Lanza. 2010. Replaying IDE Interactions to Evaluate and Improve Change Prediction Approaches. In Proceedings of the 7th International Working Conference on Mining Software Repositories, MSR 2010 (Co-located with ICSE), Cape Town, South Africa, May 2--3, 2010, Proceedings, Jim Whitehead and Thomas Zimmermann (Eds.). IEEE Computer Society, 161--170.Google ScholarGoogle ScholarCross RefCross Ref
  23. David Röthlisberger, Oscar Nierstrasz, Stéphane Ducasse, Damien Pollet, and Romain Robbes. 2009. Supporting Task-Oriented Navigation in IDEs with Configurable HeatMaps. In The 17th IEEE International Conference on Program Comprehension, ICPC 2009, Vancouver, British Columbia, Canada, May 17--19, 2009. IEEE Computer Society, 253--257.Google ScholarGoogle Scholar
  24. Anita Sarma, Jim Herbsleb, and André Van Der Hoek. 2008. Challenges in Measuring, Understanding, and Achieving Social-Technical Congruence. In Proceedings of Socio-Technical Congruence Workshop, In Conjuction With the International Conference on Software Engineering.Google ScholarGoogle Scholar
  25. Wilhelm Schäfer, Matthew B. Dwyer, and Volker Gruhn (Eds.). 2008. 30th International Conference on Software Engineering (ICSE 2008), Leipzig, Germany, May 10--18, 2008. ACM.Google ScholarGoogle Scholar
  26. Janice Singer, Robert Elves, and Margaret-Anne D. Storey. 2005. NavTracks: Supporting Navigation in Software Maintenance. In 21st IEEE International Conference on Software Maintenance (ICSM 2005), 25--30 September 2005, Budapest, Hungary. IEEE Computer Society, 325--334. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Anselm Strauss and Juliet Corbin. 1990. Basics of Qualitative Research: Grounded Theory Procedures and Techniques. Sage Publications, Inc.Google ScholarGoogle Scholar
  28. C. Albert Thompson, Gail C. Murphy, Marc Palyart, and Marko Gasparic. 2016. How Software Developers use Work Breakdown Relationships in Issue Repositories. In Proceedings of the 13th International Conference on Mining Software Repositories, MSR 2016, Austin, TX, USA, May 14--22, 2016, Miryung Kim, Romain Robbes, and Christian Bird (Eds.). ACM, 281--285. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Giuseppe Valetto, Mary Helander, Kate Ehrlich, Sunita Chulani, Mark Wegman, and Clay Williams. 2007. Using Software Repositories to Investigate Socio-Technical Congruence in Development Projects. In Mining Software Repositories, 2007. ICSE Workshops MSR'07. Fourth International Workshop on. IEEE, 25--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Xiaoyin Wang, Lu Zhang, Tao Xie, John Anvik, and Jiasu Sun. 2008. An approach to Detecting Duplicate Bug Reports using Natural Language and Execution Information. In Software Engineering, 2008. ICSE'08. ACM/IEEE 30th International Conference on. IEEE, 461--470. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Annie T. T. Ying, Gail C. Murphy, Raymond T. Ng, and Mark Chu-Carroll. 2004. Predicting Source Code Changes by Mining Change History. IEEE Trans. Software Eng. 30, 9 (2004), 574--586. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Thomas Zimmermann, Andreas Zeller, Peter Weissgerber, and Stephan Diehl. 2005. Mining Version Histories to Guide Software Changes. IEEE Transactions on Software Engineering 31, 6 (2005), 429--445. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Lijie Zou and Michael W. Godfrey. 2006. An Industrial Case Study of Program Artifacts Viewed During Maintenance Tasks. In 13th Working Conference on Reverse Engineering (WCRE 2006), 23--27 October 2006, Benevento, Italy. IEEE Computer Society, 71--82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Lijie Zou, Michael W. Godfrey, and Ahmed E. Hassan. 2007. Detecting Interaction Coupling from Task Interaction Histories. In 15th International Conference on Program Comprehension (ICPC 2007), June 26--29, 2007, Banff, Alberta, Canada. IEEE Computer Society, 135--144. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Does the propagation of artifact changes across tasks reflect work dependencies?

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      ICSE '18: Proceedings of the 40th International Conference on Software Engineering
      May 2018
      1307 pages
      ISBN:9781450356381
      DOI:10.1145/3180155
      • Conference Chair:
      • Michel Chaudron,
      • General Chair:
      • Ivica Crnkovic,
      • Program Chairs:
      • Marsha Chechik,
      • Mark Harman

      Copyright © 2018 Owner/Author

      This work is licensed under a Creative Commons Attribution International 4.0 License.

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 27 May 2018

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate276of1,856submissions,15%

      Upcoming Conference

      ICSE 2025

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader