skip to main content
10.1145/1833310.1833317acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

CASI: preventing indirect conflicts through a live visualization

Published:02 May 2010Publication History

ABSTRACT

Software development is a collaborative activity that may lead to conflicts when changes are performed in parallel by several developers. Direct conflicts arise when multiple developers make changes in the same source code entity, and indirect conflicts are produced when multiple developers make changes to source code entities that depend on each other. Previous approaches of code analysis either cannot predict all kinds of indirect conflicts, since they can be caused by syntactic or semantic changes, or they produce so much information as to make them virtually useless. Workspace awareness techniques have been proposed to enhance software configuration management systems by providing developers with information about the activity that is being performed by other developers. Most workspace awareness tools detect direct conflicts while only some of them warn about potential indirect conflicts. We propose a new approach to the problem of indirect conflicts. Our tool CASI informs developers of the changes that are taking place in a software project and the source code entities influenced by them. We visualize this influence together with directionality and severity information to help developers decide whether a concrete situation represents an indirect conflict. We introduce our approach, explain its implementation, discuss its behavior on an example, and lay out several steps that we will be taking to improve it in the future.

References

  1. Apache Subversion. http://subversion.apache.org/Google ScholarGoogle Scholar
  2. I. Almeida Da Silva, P. H. Chen, C. van der Westhuizen, R. M. Ripley, and A. van der Hoek, "Lighthouse: coordination through emerging design," Proceedings of the 2006 OOPSLA workshop on eclipse technology eXchange, 2006, p. 15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Bajracharya, J. Ossher, and C. Lopes, "Sourcerer: An internet-scale software repository," Proceedings of the 2009 ICSE Workshop on Search-Driven Development-Users, Infrastructure, Tools and Evaluation, 2009, pp. 1--4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Li-Te Cheng, S. Ross, and J. Patterson, "Jazzing up Eclipse with collaborative tools," Proceedings of the 2003 OOPSLA workshop on eclipse technology eXchange, 2003, pp. 45--49. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. CVS - Open Source Version Control. http://www.nongnu.org/cvs/Google ScholarGoogle Scholar
  6. P. Deitel and H. Deitel, Java#8482; how to program, 2006.Google ScholarGoogle Scholar
  7. Eclipse. http://www.eclipse.orgGoogle ScholarGoogle Scholar
  8. R. Hegde and P. Dewan, "Connecting programming environments to support ad-hoc collaboration," 23rd IEEE/ACM International Conference on Automated Software Engineering, 2008. ASE 2008, 2008, pp. 178--187. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Java Primitive Data Types. http://java.sun.com/docs/books/tutorial/java/nutsandbolts/datatypes.htmlGoogle ScholarGoogle Scholar
  10. B. Magnusson and U. Asklund, "Fine grained version control of configurations in COOP/Orm," Lecture Notes in Computer Science, 1996, pp. 31--48. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. A. Sarma, G. Bortis, and A. van der Hoek, "Towards supporting awareness of indirect conflicts across software configuration management workspaces," Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, 2007, pp. 94--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. T. Schümmer and J. M. Haake, "Supporting distributed software development by modes of collaboration," Proceedings of the seventh conference on European Conference on Computer Supported Cooperative Work, 2001, p. 98. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Shao, S. Khurshid, and D. E. Perry, "Evaluation of semantic interference detection in parallel changes: an exploratory experiment," Compare, vol. 4, p. 5.Google ScholarGoogle Scholar
  14. M. A. Storey, D. Čubranić, and D. M. German, "On the use of visualization to support awareness of human activities in software development: a survey and a framework," Proceedings of the 2005 ACM symposium on Software visualization, 2005, pp. 193--202. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. van der Westhuizen, P. H. Chen, and A. van der Hoek, "Emerging design: new roles and uses for abstraction," Proceedings of the 2006 international workshop on Role of abstraction in software engineering, 2006, p. 28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Weiser, "Program slicing," Proceedings of the 5th international conference on Software engineering, 1981, pp. 439--449. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. CASI: preventing indirect conflicts through a live visualization

        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
          CHASE '10: Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering
          May 2010
          127 pages
          ISBN:9781605589664
          DOI:10.1145/1833310

          Copyright © 2010 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 2 May 2010

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate47of70submissions,67%

          Upcoming Conference

          ICSE 2025

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader