Review tool

Beginner

A review tool is a software application or feature that facilitates the collaborative process of examining and providing feedback on work products like source code, documents, or designs. It helps improve quality, enforce standards, and share knowledge.

First used·Late 1990s

Definitions·2

Synonyms·4

Category·Software Development

Also known as

Code Review SoftwarePeer Review ToolInspection ToolCollaboration Platform

Definitions

What it means.

  1. 01

    In Software Engineering

    In the context of software engineering, a review tool is a software application or an integrated feature within a larger platform designed to facilitate the systematic examination of source code by peers. This process is commonly known as code review or peer review.

    Key features of a modern code review tool include:

    • Diff Viewing: Presenting changes between code versions in a clear, easy-to-compare format, often side-by-side or inline.
    • Inline Commenting: Allowing reviewers to attach comments, questions, and suggestions directly to specific lines of code.
    • Workflow Management: Tracking the status of a review (e.g., pending, approved, changes requested) and managing the approval process.
    • Notifications: Automatically alerting authors and reviewers about new reviews, comments, and status changes.
    • Integration: Seamlessly connecting with version control systems (like Git), issue trackers (like Jira), and Continuous Integration/Continuous Deployment (CI/CD) pipelines.

    Examples include the Pull Request feature in GitHub, the Merge Request feature in GitLab, Gerrit, and Atlassian's Crucible. The primary goal is to improve code quality, find defects early, enforce coding standards, and promote knowledge sharing across the team.

  2. 02

    In Document and Design Collaboration

    Beyond code, a review tool can also refer to software used for the collaborative review and approval of documents, designs, and other creative assets. These tools are essential for teams in marketing, legal, design, and technical writing to streamline feedback and manage revisions.

    Common functionalities in this context include:

    • Version Comparison: Highlighting changes between different versions of a document or design.
    • Annotations and Markup: Providing tools to mark up specific areas of a document, image, or video with comments and suggestions.
    • Approval Workflows: Creating structured processes for stakeholders to provide feedback and formally approve assets.
    • Centralized Feedback: Consolidating all comments and revisions in a single place to avoid confusion from email chains or multiple file versions.

    Examples include the 'Suggesting' mode in Google Docs, commenting features in Figma and Adobe Acrobat, and specialized platforms like Filestage. These tools ensure clarity, accountability, and an organized history of all feedback.

Origin

Where it comes from.

Etymology

The term is a compound of "review" and "tool." "Review" originates from the Middle French "reveue," meaning "a viewing, inspection." "Tool" comes from the Old English "tōl," meaning "instrument" or "implement." Combined, a "review tool" is literally an instrument for inspection.

Historical context

The practice of formal code inspection predates dedicated software tools. In the 1970s, Michael Fagan at IBM introduced "Fagan inspections," a highly structured, manual, and paper-based process for finding defects in software artifacts.

With the rise of distributed version control systems (VCS) in the 1990s and early 2000s, the need for better collaboration methods grew. Early forms of tool-assisted reviews were often script-based or managed through email, where developers would send "patch files" to a mailing list for feedback.

The mid-2000s saw the emergence of dedicated, web-based review tools like Rietveld (developed by Google), Review Board, and Gerrit. These platforms provided a structured web interface for viewing diffs and leaving comments, separating the review process from email inboxes.

The modern era of code review is characterized by deep integration within development platforms. The introduction of the "Pull Request" by GitHub in 2008 (and later "Merge Requests" by GitLab) revolutionized the process. It tightly coupled code review with the branching and merging workflow of the underlying Git VCS, making it a natural and seamless part of the development lifecycle.

Usage

In context.

  • Our team uses GitHub's built-in review tool to manage pull requests and ensure code quality before merging to the main branch.

  • To streamline feedback from the legal department, we adopted a document review tool that tracks every change and comment.

  • The new peer review tool integrates directly with our IDE, allowing developers to request and perform reviews without switching context.

  • Management decided to invest in a dedicated inspection tool to meet the strict compliance requirements for our medical device software.

FAQ

Common questions.

The primary functions of a code review tool are:

  1. Displaying Diffs: Showing the differences between the old and new code in an easy-to-read format.
  2. Facilitating Comments: Allowing reviewers to leave inline comments on specific lines of code.
  3. Managing Workflow: Tracking the review's status (e.g., approved, rejected, pending) and managing approvals.
  4. Integration: Connecting with version control systems, issue trackers, and other development tools to create a seamless workflow.

Taxonomy

Filed under.

Categories

Software DevelopmentQuality AssuranceCollaboration

Tags

Code ReviewPeer ReviewSoftware QualityCollaboration ToolVersion Control