← Back to projects

Research project · 2026

InView

A code-review interface that helps developers investigate semantic dependencies between changes introduced by different modifications.

Role: Researcher and Developer

InView interface

Overview

Code changes that appear independent can interact through data flow, assignments, and other program relationships. These interactions can be difficult to identify when reviewing changes using a traditional file-based interface.

InView integrates semantic-dependency information into the code-review process. It presents relationships between changes as an interactive graph and connects those relationships to the relevant source-code locations.

Motivation

Pull requests are commonly reviewed in isolation. However, a change may depend on decisions or modifications introduced by a previous pull request. If reviewers overlook these relationships, they may also overlook unintended effects in the combined program behavior.

InView was developed to help reviewers:

Analyses

InView currently represents two primary forms of semantic dependency:

Data flow

Data-flow relationships show how values produced or modified in one location can affect another part of the program.

Overriding assignment

Overriding-assignment relationships identify cases in which an assignment introduced by one change may overwrite or modify the effect of another assignment.

Empirical evaluation

InView was evaluated using code-review tasks and semi-structured interviews with 12 software developers from eight teams across seven companies.

The study investigated dependency detection, review efficiency, and developers’ perceptions of the interface compared with GitHub’s standard File Changes interface.