Categories

A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

Trying to optimize on the number of test cases needed for a patch – Part 1

During the course of a product release, there are a large number of test cases that are written dealing with the functionality that is there in the product. Typically, when dealing with a product for which a new version has been released, there will be a lot of functionality that has been carried through from previous releases, and there will be some new functionality that has been added in the current release (and there may be some modification to existing functionality because of some minor changes or bug fixes – consider the case where the feedback from the user base defined that there needed to be some minor change in the functionality of some features and this change was made, but these changes would only be classified as minor changes for which there would be some modification of the test cases).
So, in the product release, there never is enough time to execute all the test cases in full detail; typically some optimization of the test cases related to functionality introduced in previous releases is done to ensure that all these cases are not run again – there may never be enough time to do all that amount of testing, especially when you are talking about something that has not got modified in this version of the product.
Now consider that you are doing a small patch or a dot release – you had made a major release of the software and after a few weeks, found that there were some minor modifications that you needed to make in the software. So you plan for a dot release or a patch that you expect a sizable portion of the user base to adopt; the first important realization in such cases is that the effort and time involved to make this release will be significantly less than that required during the development cycle for the full version. So you cannot hope to run all the test cases that you ran when releasing the full version of the software, and aiming for running all those cases would be overkill in most cases. So what do you do ? There is always the worry that you would not have enough quality in the release of the patch or the dot and this would impact the reputation of the product (it is very easy to lose reputation and takes a lot of effort and time to win back any lost reputation).
So you start with optimization of the test cases to ensure that you have a good balance between the effort involved in the patch release as well as ensuring that quality of the release is as good as your customers have come to expect, and this can be a difficult discussion. It is important that all the experts who contribute to such a discussion have the information required to contribute, and that their inputs are valued when making the final decision.

Part 2 of this topic will in the next post.

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>