skip to main content
10.1145/2801040.2801055acmotherconferencesArticle/Chapter ViewAbstractPublication PagesvinciConference Proceedingsconference-collections
research-article

In-Situ Visualisation of Fractional Code Ownership over Time

Published: 24 August 2015 Publication History

Abstract

The term code ownership is used in software engineering to describe who authored a certain piece of software. Code ownership is commonly determined by investigating the data from version control systems, defining the owner as the person who contributed the most lines to a file, module, etc. Existing visualisation for ownership usually relies on per-line annotations from the version control system, thus only conveying the information who changed a line the last time, potentially adding some visual cue about how old the respective change is. This, however, can be misleading, because any change of even a single character changes ownership. In this paper, we propose a visualisation that accounts for fractional ownership changes over time on a per-character basis. Our technique incorporates visual cues to convey that typical definitions of ownership have an inherent uncertainty and provides details on the cause of this uncertainty on demand. For our definition of code ownership being a low-level one, we propose implementing the visualisation as an in-situ visualisation in the code editor of modern development environments. We will show examples of the efficacy of our approach and discuss its advantages and disadvantages compared to conventional line-based ownership.

References

[1]
M. Abi-Antoun, N. Ammar, and Z. Hailat. Extraction of ownership object graphs from object-oriented code: An experience report. In Proceedings of the International Conference on Quality of Software Architectures, pages 133--142, 2012.
[2]
T. Ball and S. Eick. Software visualization in the large. IEEE Computer, 29(4):33--43, 1996.
[3]
F. Beck, B. Dit, J. Velasco-Madden, D. Weiskopf, and D. Poshyvanyk. Rethinking user interfaces for feature location. In Proceedings of the International Conference on Program Comprehension, 2015.
[4]
C. Bird, N. Nagappan, B. Murphy, H. Gall, and P. Devanbu. Don't touch my code! Examining the effects of ownership on software quality. In Proceedings of the ACM SIGSOFT Symposium and the European Conference on Foundations of Software Engineering, pages 4--14, 2011.
[5]
S. Chacon and B. Straub. Pro Git. Apress, 2nd edition, 2014.
[6]
N. Churcher and W. Irwin. Informing the design of pipeline-based software visualisations. In Proceedings of the Asia-Pacific Symposium on Information Visualisation, pages 59--68, 2005.
[7]
C. Collberg, S. Kobourov, J. Nagra, J. Pitts, and K. Wampler. A system for graph-based visualization of the evolution of software. In Proceedings of Softvis '03, pages 77--86, 2003.
[8]
D. Čubranić, G. C. Murphy, J. Singer, and K. S. Booth. Learning from project history: A case study for software development. In Proceedings of the Conference on Computer Supported Cooperative Work, pages 82--91, 2004.
[9]
S. Diehl. Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software. Springer-Verlag, 2007.
[10]
S. G. Eick, J. L. Steffen, and J. E. E. Sumner. Seesoft --- A tool for visualizing line oriented software statistics. IEEE Transactions on Software Engineering, 18(11):957--968, 1992.
[11]
M. Foucault, J.-R. Falleri, and X. Blanc. Code ownership in open-source software. In Proceedings of the International Conference on Evaluation and Assessment in Software Engineering, pages 39:1--39:9, 2014.
[12]
D. M. Germán, A. Hindle, and N. Jordan. Visualizing the evolution of software using softChange. In Proceedings of the 16th International Conference on Software Engineering and Knowledge Engineering, pages 336--341, 2004.
[13]
T. Gîrba, A. Kuhn, M. Seeberger, and S. Ducasse. How developers drive software evolution. In Proceedings of the International Workshop on Principles of Software Evolution, pages 113--122, 2005.
[14]
P. Green-Armytage. A colour alphabet and the limits of colour coding. Journal of the International Colour Association, 5(10), 2010.
[15]
M. Harward, W. Irwin, and N. Churcher. In situ software visualisation. In Proceedings of the Australian Software Engineering Conference, pages 171--180, 2010.
[16]
M. Hertel. An O(ND) difference algorithm for C#, 2015. http://www.mathertel.de/Diff/, last accessed: 2015-04-10.
[17]
V. I. Levenshtein. Binary codes capable of correcting deletions, insertions, and reversals. Soviet Physics Doklady, 10(8):707--710, 1966.
[18]
Y. Liu and E. Stroulia. Reverse engineering the process of small novice software teams. In Proceedings of the Working Conference on Reverse Engineering, pages 102--112, 2003.
[19]
G. Lommerse, F. Nossin, L. Voinea, and A. Telea. The visual code navigator: An interactive toolset for source code investigation. In Proceedings of the Symposium on Information Visualization, pages 24--31, Oct 2005.
[20]
C. Müller, G. Reina, M. Burch, and D. Weiskopf. Subversion statistics sifter. In Proceedings of the International Conference on Advances in Visual Computing, pages 447--457, 2010.
[21]
E. Myers. An O(ND) difference algorithm and its variations. Algorithmica, 1(2):251--266, 1986.
[22]
M. Ogawa and K.-L. Ma. Stargate: A unified, interactive visualization of software projects. In Proceedings of IEEE VGTC Pacific Visualization Symposium, pages 191--198, 2008.
[23]
M. Ogawa and K.-L. Ma. Software evolution storylines. In Proceedings of the International Symposium on Software Visualization, pages 35--42, 2010.
[24]
D. L. Parnas. Software engineering or methods for the multi-person construction of multi-version programs. In Programming Methodology, 4th Informatik Symposium, pages 225--235, 1975.
[25]
C. M. Pilato, B. Collins-Sussman, and B. Fitzpatrick. Version Control with Subversion. O'Reilly Media, Inc., 2nd edition, 2008.
[26]
F. Rahman and P. Devanbu. Ownership, experience and defects: A fine-grained study of authorship. In Proceedings of the International Conference on Software Engineering, pages 491--500, May 2011.
[27]
M.-A. D. 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. In Proceedings of the Symposium on Software Visualization, pages 193--202, 2005.
[28]
L. Voinea, A. Telea, and J. J. van Wijk. CVSscan: Visualization of code evolution. In Proceedings of Softvis '05, pages 47--56, 2005.
[29]
P. Weißgerber, M. Pohl, and M. Burch. Visual data mining in software archives to detect how developers work together. In Proceedings of the International Workshop on Mining Software Repositories, pages 9--16, 2007.
[30]
T. Zimmermann, P. Weißgerber, S. Diehl, and A. Zeller. Mining version histories to guide software changes. In Proceedings of the 26th International Conference on Software Engineering, pages 563--572, 2004.

Cited By

View all
  • (2024)Examining ownership models in software teamsEmpirical Software Engineering10.1007/s10664-024-10538-529:6Online publication date: 27-Sep-2024
  • (2020)The Evolving Nature of Developers' Contributions in Open Source ProjectsProceedings of the 14th Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3425269.3425284(131-140)Online publication date: 19-Oct-2020
  • (2016)Advantages and Disadvantages of using Shared code from the Developers PerspectiveProceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement10.1145/2961111.2962624(1-6)Online publication date: 8-Sep-2016
  1. In-Situ Visualisation of Fractional Code Ownership over Time

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    VINCI '15: Proceedings of the 8th International Symposium on Visual Information Communication and Interaction
    August 2015
    185 pages
    ISBN:9781450334822
    DOI:10.1145/2801040
    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 the author(s) 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: 24 August 2015

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Code Ownership
    2. Software Engineering
    3. Software Visualisation
    4. Version Control System

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Conference

    VINCI '15

    Acceptance Rates

    VINCI '15 Paper Acceptance Rate 12 of 32 submissions, 38%;
    Overall Acceptance Rate 71 of 193 submissions, 37%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 05 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Examining ownership models in software teamsEmpirical Software Engineering10.1007/s10664-024-10538-529:6Online publication date: 27-Sep-2024
    • (2020)The Evolving Nature of Developers' Contributions in Open Source ProjectsProceedings of the 14th Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3425269.3425284(131-140)Online publication date: 19-Oct-2020
    • (2016)Advantages and Disadvantages of using Shared code from the Developers PerspectiveProceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement10.1145/2961111.2962624(1-6)Online publication date: 8-Sep-2016

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media