Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When I am in ship mode I normally apply a set of criteria before I will "Ship". They do vary, however they are typically along the lines of the following:

  • Zarro Boogs (Zero active issues). This normally translates to critical bugs fixed, all other bugs marked as "won't fix" and moved to the next release.
  • All test cases executed against a single release candidate build.
  • All test failures reviewed and agreement reached that the failures are acceptable, and bugs have been raised.

I am assuimg a large, system that has taken 12 months to develop with a team of say 30-50 team members.

Are these types of criteria common? What criteria would be considered general guidelines or sample exit criteria be?

share|improve this question
up vote 4 down vote accepted

I would sum up your bullet points as this:

  1. Reported bugs are prioritized for level of severity. All bugs considered "must be fixed for release" are then fixed and verified. All other bugs are re-prioritized and scheduled for future releases.
  2. A final release candidate build is created and all test cases deemed critically necessary have been executed and verified as passed. If there are any bugs found during this process, it must be repeated to ensure a "clean" release candidate.
  3. Risk assessment is performed against all "new" bugs found during final test verification. Bugs are prioritized and evaluated based upon risk and severity and you go back up to item 1.

In an ideal world, when you get down to release time, 1 and 2 should be "clean" and you have nothing else to worry about. But this is not necessarily an ideal world so an iterative approach needs to be taken to make sure that, if something critical is found in the final run through, you have a place to go back to in order to start over and try again without having to re-do the universe.

share|improve this answer

That sound about right. Few questions though:

  • by "won't fix" did you mean "won't fix in this release" ?
  • "All test cases"- what happens if some test cases didn't run, for example due to a broken test equipment. Where I work we review the risks involved, and decide on a course of action.
  • "Single release candidate"- what happens if minor fixes are added ? do you re-run all of the test cases ? we tend to combine several releases if the changes are not major (I know... it's risky)
  • "All test failures reviewed and agreement reached that the failures are acceptable"- what happens if a failure is still being investigated ? we have bugs that stays open for weeks or months in rare cases. A known issue can be added to the release notes in this case.
share|improve this answer

The "best practice" project exit criteria - would be the one which enables business to take a subjective call on whether to ship or not.

Here is what I have experienced to be useful items on an exit criteria

--No bugs in "open" state - i.e. not triaged,not reviewed,not differed(if a candidate) or not verified(after a fix)

--Candidates for test execution identified . Reason I say candidates it is usually not possible to execute all your tests on each candidate build.Hence the team needs to get together,analyze the risk of the change/fixes(since the last run) and agree upon a list of test activties they would be performed.Once agreed publish this with the project owner (and other relevant stakeholders) to that they know and align their expectations around what is planned to be tested and what not and why ?

--Execute the above tests

-- Test results published,analyzed and triaged

-- Any resulting(from 4) fixing/retesting activties completed

-- Relevant documentation published - release notes,known issues,EULA,legal etc etc

-- Any other explicit and implcit expectations(atrefacts) that business has from the software release in question...

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.
{"cc_re__cc_re__cc_by_sa_3_0": ["                    <li><a href=\"//area51.stackexchange.com\" title=\"proposing new sites in the Stack Exchange network\">Area 51</a></li>\r\n                        <li><a href=\"//careers.stackoverflow.com\">Stack Overflow Careers</a></li>\r\n                    \r\n                </ol>\r\n            </td>\r\n    </tr>\r\n</table>\r\n                </div>\r\n            </div>\r\n            <div id=\"copyright\">\r\n                site design / logo &#169; 2016 Stack Exchange Inc; user contributions licensed under <a href=\"https://creativecommons.org/licenses/by-sa/3.0/\" rel=\"license\">cc by-sa 3.0</a> \r\n                with <a href=\"http://blog.stackoverflow.com/2009/06/attribution-required/\" rel=\"license\">attribution required</a>\r\n            </div>\r\n            <div id=\"svnrev\">\r\n                rev 2016.4.29.3525\r\n            </div>\r\n        </div>\r\n    </div>\r\n    <noscript>\r\n        <div id=\"noscript-warning\">Software Quality Assurance &amp; Testing Stack Exchange works best with JavaScript enabled<img src=\"http://pixel.quantserve.com/pixel/p-c1rF4kxgLUzNc.gif\" alt=\"\" cl"], "copyright__copyright__copyright": [" and triaged\n\n-- Any resulting(from 4) fixing/retesting activties completed\n\n-- Relevant documentation published - release notes,known issues,EULA,legal etc etc\n\n-- Any other explicit and implcit expectations(atrefacts) that business has from the software release in question...\n\nshare|improve this answer\n\nYour Answer\n\n\u00a0\ndiscard\n\nBy posting your answer, you agree to the privacy policy and terms of service.\n\nNot the answer you're looking for? Browse other questions tagged or ask your own question."]}