Summary

The commercial software industry is highly volatile. The current climate is one where getting the product to market first with the right features is often considered more important than product reliability. This market is very attractive to entrepreneurs who have been very successful using the I-feel-lucky approach to software development. Interest in reliability is growing, but it does not seem to be due to any increased accountability on the part of software makers. The demand for greater reliability seems to be a response to decreasing profit margins and tighter fiscal controls.

Many people in the industry call themselves engineers, but they do not conduct business in accordance with engineering principals or practice. These so-called engineers do not use metrics or calculations based on measurement, are not overly concerned with reproducible results, and are not made accountable for their actions. A demand for greater reliability inevitably will lead software makers to use scientific methods, because these methods and metrics yield predictable, reproducible results. If there are no methods and metrics being used, decisions will be based on the I-feel-lucky approach. The I-feel-lucky approach will not keep a software company profitable.

This is a good time for the tester who can demonstrate solid test methods and measure results, because management is paying attention. Testing must demonstrate its value, or it will not get budget.

The best approach to testing software will normally be a blend of several approaches:

  • The precision of an engineering approach and the human factors benefits of the artistic approach.

  • The depth of the test coverage achieved by testers who are specialists in specific areas and the breadth of the test coverage achieved by generalists who are competent testers across entire systems.

  • The fast but minimal test coverage achieved by top-down test coverage and the slow but more thorough bottom-up test strategies.

The tester's challenge is to achieve the correct balance between creative freedom and engineering discipline, between delightful surprise and comfortable predictability. Science and engineering methods supporting a creative process provide the efficient way to establish the correct balance. The science of engineering provides methods that are a good fit for the needs of software development and testing. However, care must be taken that these methods do not become rigid and unchangeable or they will cease to be a benefit.

Many approaches to developing software are in use today, and you must select or develop an approach to testing that is effective and efficient in the development environment producing the thing that you must test. To do this, first look at the approaches that are available, and then strike the best balance for your situation. I will go into how to do this in more detail in the next chapter, when I explain the Most Important Tests method. After that, the rest of this book is about this very simple set of fundamental testing methods that bring value to any test effort individually and can have a profound effect when applied together.



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