Content area

Abstract

Programmers spend more than half of their time comprehending code, and in particular struggle to answer questions about the rationale, intent, and history behind software artifacts. Through this dissertation, I explore how history-aware tools can help programmers understand unfamiliar software artifacts. First, I investigated how providing additional context -- historical code changes grouped by the original developer's stated subgoals and the web foraging activity of the original developer impacted the process of code reuse. I found that programmers utilized these resources to 1) make better analogies between their reuse scenario and what code was already written, and 2) anchor into the code base, but that separating history from the IDE introduced extraneous load. I then show that presenting this additional contextual information to programmers in the form of a narrative story improved their recollection of the information. Finally, I investigated how programmers actually utilized web foraging activity, historical subgoals, and narrative summaries of this information directly embedded into their IDE during various software evolution tasks. I show that programmers turn to narrative stories when answering questions about the temporal relationships between history items, prefer subgoal labels to quickly map high level intentions to code, and use web documentation to understand the rationale of the original developer.

Details

1010268
Title
Code Stories for Software Evolution
Number of pages
154
Publication year
2025
Degree date
2025
School code
0252
Source
DAI-B 87/2(E), Dissertation Abstracts International
ISBN
9798290954646
Committee member
Kelleher, Caitlin; Zacks, Jeff; Oney, Steve; Bogost, Ian
University/institution
Washington University in St. Louis
Department
Computer Science & Engineering
University location
United States -- Missouri
Degree
Ph.D.
Source type
Dissertation or Thesis
Language
English
Document type
Dissertation/Thesis
Dissertation/thesis number
32173436
ProQuest document ID
3240288143
Document URL
https://www.proquest.com/dissertations-theses/code-stories-software-evolution/docview/3240288143/se-2?accountid=208611
Copyright
Database copyright ProQuest LLC; ProQuest does not claim copyright in the individual underlying works.
Database
ProQuest One Academic