MSF for CMMI Process Improvement Visual Studio Team System logo

Activity:

Fix a Build

Participating Roles

Responsible:

Developer

Consult:

Build Engineer

Overview

Entry Criteria

    When:

    • If build contains compilation or code errors.

    Dependencies:

    • Build compilation errors: The build failed to compile, or has other code related issues.

    Sub-Activities

    1

    Isolate Compile Errors

    • Make sure the build scripts clean up all unwanted files in the build area prior to compilation. Compiling source code into components on a build machine may fail, even if it has been successfully built on a developer’s machine.
    • Isolate the component where the compile errors occur: if the problem is caused by missing dependent modules necessary for compilation, investigate the reasoning for the missing files and the justification for including the missing modules. Inform the developer for the component team about the problem.
    • If the problem is caused by any other errors, inform the developer responsible about the problem directly through a bug work item about the problem.

    2

    Inspect Runtime Errors Found

    • Identify any runtime errors encountered and inform the developer responsible directly and through a bug work item.
    • Determine if the components are built using improper or out-of-date internal interface references between them.

    3

    Inspect Contents

    • Compare the contents of the build and the bill of materials to see if there are any unwanted or omitted files in the build.
    • If necessary, consult component teams to verify that the contents of each component has been properly identified in the bill of materials.

    4

    Inspect Installation Scripts and Executables

    • Check installation scripts and mechanisms to see whether files are being placed in file system locations specified by the build and bill of materials.
    • Check whether component libraries and modules are properly registered in the operating configuration.

    5

    Inspect Version of Dependent Modules

    • Determine whether the proper version of dependent modules, such as third-party libraries, are used by the components. Improper versions may produce unexpected results during application run time.

    6

    Fix and Rebuild Build

    • Once the problem is identified, fix it and rebuild the build as soon as possible to minimize disruption to parties that rely on the builds.

    Exit Criteria

    A changeset is created that fixes the build problem.

    (C) 2005 Microsoft Corporation. All rights reserved.

    MSF for CMMI Process Improvement: Build 050707