Software-ECO

From OLPC
Revision as of 11:24, 29 December 2007 by Kimquirk (talk | contribs) (Software Engineering Change Order (ECO))
Jump to: navigation, search

Software Engineering Change Order (ECO)

To initiate a patch or software change to a stable release, send email to Software-eco mailing list. Here is a possible template of things the ECO should contain:

  1. Patch title; Short Description
  2. Problem Statement - what is driving this patch to released earlier than next scheduled release
  3. What the User sees - from the user perspective what happens; how bad is it; is there a recovery or work-around?
  4. What is the proposed solution
  5. What testing is needed for this solution
  6. What information does Support need to help people with this problem - additions to the FAQ? Release Notes? Webpages?
  7. How to roll out this change: Manufacturing release, Manual or automatic SW upgrade


Process Steps:

  1. ECO REQUEST: Anyone who sees a problem they believe to be serious enough can initiate the email to start this discussion. They should fill in as much of the info in the template above as they can and note in the subject line that this is an 'ECO REQUEST' (I think it would be good if this template was a wiki form or something that people can review any time... not an email. thoughts?)
  2. REVIEW: Once all the information is available, the email would then ask for 'REVIEW' of this ECO, which means the designated reviewers need to approve going forward with a build for testing. This commits both development and testing resources to get this done.
    • The Review should be approved by xxx???
  3. TEST: Once a build is ready for test, the announcement should be made and specific tests as well as the 1 hour smoke test should be conducted. The results of these tests should be part of the ECO Record.
    • Test results need to be announced before going on to a signed build
  4. APPROVAL: Appropriate people must approve of the ECO at this stage.
  5. SIGNED BUILD: A signed build is created and must go through final test
    • Final test includes upgrading to this signed build from a protected laptop, ensure that sugar comes up
  6. RELEASE: Releasing a patch includes notifying all appropriate parties with information on what they need to do
    • Manufacturing - immediate change, or standard 2 week change-over
    • Support - Recommend a manual upgrade; changes to FAQ or other instructions; or forced upgrade