Scheduled software release process

From OLPC
Revision as of 20:03, 30 June 2008 by Mstone (talk | contribs)
Jump to: navigation, search

We make changes to our software for many reasons; however, we make scheduled (major) releases in order to deliver significant changes to our downstream clients. Major releases may include interface-breaking changes. They are different from unscheduled (minor) releases in that they contain larger and more thoroughly planned changes.

Process Overview

  1. OBJECTIVES: Choose a target month. Solicit goals and priorities for the release. Propose ends and means.
  2. DEVELOPMENT: Generate changes which may help to meet the new goals.
  3. INTEGRATION: Generate and execute a release contract for each desired change.
  4. RELEASE: Execute the Software ECO process to deliver the release.

Process Step Details

OBJECTIVES

Write an Objectives page, similar to 8.2.0, recording:

  • the target month.
  • development goals and priorities.
  • lead customers.
  • feasibility of proposed changes.

DEVELOPMENT

Create potentially releasable changes.

INTEGRATION

  • Create release contracts for each desired change. See previous examples.
  • Combine potentially releasable changes and fix any resulting bugs.

RELEASE

Execute the Software ECO process to deliver the release.