The Risk Analysis Process in Brief

I normally use MITs risk analysis for different purposes during different phases of the test effort. At the beginning of a project, I use risk analysis on the initial inventory to prioritize the items on the inventory. The process helps build consensus on test needs and focuses the test planning effort on the most important items. This helps me size the test effort and prepare my cost and time line estimates. I usually prepare an initial test schedule at this time to coincide with the order of the deliverables. This helps me plan my resource needs for the test system and testers over the course of the test phase.

In my case, this estimate, covered in Chapter 10, "Applied Risk Analysis," forms the basis of my contract or agreement to test. For a more traditional test role, it would form the basis of the test plan. In my case, this inventory, complete with risk ranking, will be presented to management for review and approval. In addition to using risk analysis to propose the appropriate test coverage, I may also use risk analysis on my test results in order to show management the value of the test effort, as in the case study later in the chapter, Case Study: The 401(k) Web Project.

In the next stage, path and data analysis, I will use risk analysis to select which tests to run and estimate the resource needs of the optimal test effort. In a heavyweight project, I will perform these first steps during the planning stage. I will use the MITs risk ranking and the number of tests identified to determine how many of the total number of tests identified for the item will be run. This is the percent test coverage that I will propose as optimal for the effort. I will repeat this process for each inventory item. Once I have identified the tests and calculated the number of tests required by the MITs risk rankings, I can complete a detailed test estimate. This process is discussed in detail as we proceed through Chapters 10 through 13.

In MITs, we use the risk index to determine how much we will test an item. Each item on the test inventory is ranked based on "how critical" a failure would be if it occurred in the item. The criticality of a failure in the test item is arrived at by applying a set of ranking criteria to the hypothetical failure.

The more critical a failure would be, the higher the MITs rank (the smaller the number) will be for the test and the more extensive the test coverage will be. For example, a rank of 1 results in 100 percent test coverage. A rank of 4 results in a 25 percent test coverage. This topic is covered in detail in Chapter 10, "Applied Risk Analysis."

If I am dealing with a lightweight project, I will probably do my path and data analysis on the fly when I get the first version of the application or system. Once I have identified tests for an item through my analysis, I record this number of tests for the item in the inventory. Then I calculate the actual percent test coverage achieved during the effort.

I use this number after the product has been shipped to calculate the performance of the test effort. This is a good metric to use when attempting to demonstrate the value added to the product by the test effort.

I mention this whole process here because I have seen too many testers balk at performing risk analysis, perceiving it as an unnecessary extra step. It is not extra, only the formalization is new-writing it down. If the tools used in this book are used, this step is not a hard one. But if testers don't understand that risk analysis has many uses, and that it will be reused throughout the test effort, they tend to ignore it. Risk analysis is a powerful technique that is useful throughout the test effort and beyond, into operations.



Software Testing Fundamentals
Software Testing Fundamentals: Methods and Metrics
ISBN: 047143020X
EAN: 2147483647
Year: 2005
Pages: 132

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net