Source Code Repositories: What is a Source Code Repository?

    Josh Siegel

    Read Source Code Repositories Part One as a PDF

    Software development is a competitive business, and disputes over intellectual property can arise when software engineers move to new companies that compete with their former employers.

    Should the dispute result in litigation, a source code repository can help an expert witness determine whether a former employee copied a previous employer’s proprietary source code on the way out the door.

    When developing software for a business purpose, many software developers employ a source code control mechanism, such as a source code repository. Using a source code repository has many potential benefits for an organization, including:

    • Concurrent Development: Repositories usually allow multiple developers to make edits to different parts of the same program simultaneously. Developers can then merge their changes back into the main program.
    • Increased Transparency: Most source code repositories require a developer to check out, edit, and then check back in the part of the program he or she was editing. The repository records which developer made changes and when, resulting in a log of updates made to the program over time.
    • Version Control: When developers make enough changes to a program stored in a source code repository, they can designate the updated program as a new “version” of the software. A repository also stores previous versions of a program, a feature which allows companies to restore a previous version if, for example, an update introduces a harmful bug.

    Regardless of the nature of the dispute, evidence uncovered from a source code repository can provide a robust factual record of a program’s development history, which an expert can use to arrive at supportable and peer-reviewable opinions.

    Read the second installment: Source Code Repositories: Reviewing the Right Version of a Program
    Read the third installment: Source Code Repositories: Authenticating Production of Source Code

    Other Insights from Josh Siegel

    Post The AFC test used by a software failure expert
    This second installment in DisputeSoft's Applying the AFC Test series considers the ability of the AFC Test to reveal hidden similarities in the structure, sequence, and organization of two programs.
    DisputeSoft was engaged by Ontario Systems in this software project failure dispute involving the licensing and implementation of accounts receivable management software.
    Post software experts on security
    Read Josh Siegel’s article on several measures a company can take to assess the state of its data security practices to help prevent data breaches and security instances.

    Josh Siegel

    Director & Forensic Examiner

    Josh Siegel has substantial experience analyzing copyright, patent, and trade secret claims related software and information technology. Josh performs functional testing, analyzes defect systems and metadata, examines source code in intellectual property disputes, acquires and analyzes data in digital forensics, and finally integrates that data into written reports and testimony.