【正文】
vides a way to train developers ? Lowers the cost of resolving defects ? Makes assumptions explicit ? Increases the maintainability of the code ? Enforces development practices and standards Daily Build Building the product in an executable form on a daily basis A public daily build is ? A strong indicator that a team is functional ? A way to make the product and its progress visible ? The heartbeat of the development process Benefits of the Daily Build ? Exposes unanticipated design defects ? Makes diagnosing defects easier ? Synchronizes team efforts ? Minimizes integration risks ? Increases quality ? Supports the monitoring of progress ? Improves team and customer morale Lesson 3:Testing Overview A highlevel look at the testing process during the developing phase Testing Ensuring that the right things are done right at the right time ? Uncovers issues so they can be addressed ? Validates that the team is doing the right things ? Verifies that the team is doing them right ? Supports business decisions and tradeoffs ? Watches the process, not just the product Ongoing Process of Testing Project Plan Approved Scope Complete Release Internal Release 1 Internal Release 2 Internal Release ... Test Plan Test Specification Complete/Alpha Betas Release Candidates Golden Release Release Internal Release n ZeroBug Release Categories of Tests ? Coverage testing ? Attempts to thoroughly test every feature of the product ? Attempts to thoroughly test the code base of the product ? Is used primarily during the developing phase ? Usage testing ? Attempts to successfully plete usage scenarios ? Attempts to test the product in its expected environment ? Is used primarily during the stabilizing phase Types of Coverage Testing ? Unit tests ? Functional tests ? Checkin tests ? Build verification tests ? Regression tests Types of Usage Testing ? Configuration tests ? Compatibility tests ? Stress tests ? Performance tests ? Documentation and help file tests ? Alpha and beta tests Lesson 4:Bug Management A look at bugs and how they can be managed to improve quality Successful Bug Management ? Requires a formalized bug tracking process ? Requires some form of classification to determine priorities ? Requires more than just fixing them ? Empowers decisionmaking through analyzing bug metrics Bug Tracking Process Resolve Developers Close Tester Prioritize and Assign Development Lead Report Tester Bug Retired Bug Classification ? It is not enough to report bugs。 they must be classified to bee actionable ? There are two standard ways to classify bugs ? By severity, which measures the impact the bug will have on the product ? By priority, which measures how important it is that the bug gets fixed ? The quality bar for any release is described in terms of bug classifications Bug Resolutions ? Resolving a bug simply means addressing it in some way ? Typical ways to resolve bugs include ? Fixed ? Duplicated ? Postponed ? By design ? Can’t reproduce ? Won’t fix ? Resolution is an interim step toward bug closure Agenda ? Overview ? Team Model ? Risk Management ? Process ? Vision approved milestone ? Project plan approved milestone ? Scope plete milestone ? Release milestone Lesson 1:Stabilizing Phase Achieving the release milestone Release Milestone Vision Approved Project Plan Approved Scope Complete Release Signals agreement on ? Product stability and resolution of all known bugs ? Customer acceptance of the product ? Transfer of ownership for longterm management and support ? Change in team focus to the next release Team Focus During Release Product management Program management Development User education Testing Logistics management Role Focus Beta sites coordination。 munications plan execution。 launch planning Beta process management。 continued project tracking。 bug tracking Bug finding and reporting。 bug resolution。 code optimization Bug finding and reporting。 bug closing。 configuration testing Beta site setup, deployment, and support。 product deployment planning。 operations and help desk training Stabilization of user performance support materials。 beta training。 release training Suggested Interim Milestones Release Bug Convergence ZeroBug Release Release Candidates Golden Release Entering the stabilizing phase marks the transition from a scheduledriven focus to a shipdriven focus Focus on Shipping Beta Bug Convergence ZeroBug Release Release Candidate Golden Release Release 0 Active Bugs Time Bug Triaging Evaluating and prioritizing bugs to determine their appropriate resolution ? Uses a review mittee to prioritize and assign bugs ? Determines what new bug fixing, if any, will be done ? Balances stability against customer needs ? Can result in loss of features for the sake of stability Triage Considerations ? With respect to the bug ? Severity ? Significance ? Customer expectations ? Visibility ? With respect to the fix ? Risk of destabilization ? Impact on team ? Resources for validation Deliverable Purpose Constitutes the final release of the product Documents release information and late changes Constitutes the final release of the support elements Captures the bug database and test materials for future reference Archives the product for future reference and development Archives project artifacts for future reference Deliverables for Release Golden release Release notes User performance support elements Testing results and testing tools Source code and executables Proj