Leveraging Interactive Human–AI Collaboration Methods to Enhance Key Stages of Programming Workflows

dc.contributor.authorLiu, Xuye
dc.date.accessioned2026-05-06T13:27:52Z
dc.date.available2026-05-06T13:27:52Z
dc.date.issued2026-05-06
dc.date.submitted2026-04-28
dc.description.abstractBeyond writing code, programmers routinely move through several complementary tasks as they develop, refine, and share their work. These workflows typically involve recurring stages: understanding and documenting code, checking correctness and debugging, improving efficiency and scalability, and sharing results with others. Each stage has its own challenges: documentation often becomes outdated or inconsistent with evolving code, debugging can be time-consuming and opaque, performance improvements require balancing competing goals (e.g., speed, memory, and clarity), and communicating results usually demands extra manual effort. This thesis investigates how human–AI collaboration can support programmers across four key stages of the workflow. To address these challenges, I begin by studying the needs and practices of programmers to understand where current tools fall short. Based on these insights, I design interactive systems that integrate with common tools such as computational notebooks and IDEs and operate on invariant components (code cells, execution outputs, text) so results remain compatible with common practices. Across the four stages, these systems provide context-aware code understanding across multiple cells, purpose-driven documentation from code and its execution results for different communicative purposes, presentation slides from code and results, and real-time, multi-dimensional code evaluation and optimization support during development, with authors remaining in control to inspect, edit, and refine outputs throughout. I conduct user studies and case studies to evaluate system usability and to assess how these approaches improve programmers’ productivity, confidence, and ability to share their work.
dc.identifier.urihttps://hdl.handle.net/10012/23219
dc.language.isoen
dc.pendingfalse
dc.publisherUniversity of Waterlooen
dc.subjectNatural Language Processing,
dc.subjectHuman-AI Collaboration
dc.titleLeveraging Interactive Human–AI Collaboration Methods to Enhance Key Stages of Programming Workflows
dc.typeDoctoral Thesis
uws-etd.degreeDoctor of Philosophy
uws-etd.degree.departmentDavid R. Cheriton School of Computer Science
uws-etd.degree.disciplineComputer Science
uws-etd.degree.grantorUniversity of Waterlooen
uws-etd.embargo.terms0
uws.contributor.advisorZhao, Jian
uws.contributor.affiliation1Faculty of Mathematics
uws.peerReviewStatusUnrevieweden
uws.published.cityWaterlooen
uws.published.countryCanadaen
uws.published.provinceOntarioen
uws.scholarLevelGraduateen
uws.typeOfResourceTexten

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Liu_Xuye.pdf
Size:
5.07 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
6.4 KB
Format:
Item-specific license agreed upon to submission
Description:

Collections