| WANT TO: |
By Hung Q. Nguyen and Rob Pirozzi
Introduction This first article of this two article series (The Early Evolution of Software Testing), discussed the early phases of software testing (Software Testing 1.0 and 2.0). It highlighted how both of these phases have largely underperformed expectations and discussed the shortcomings of these early phases of software testing. Software Testing is now on the threshold of the next major evolutionary development in software testing - Software Testing 3.0. Many organizations are starting to realize the strategic importance of Software Testing 3.0, and others are starting to adopt Software Testing 3.0 principals in their Software Testing programs that are now finally delivering better software faster and meeting management expectations. This article discusses Software Testing 3.0 and how it delivers on the promise of software testing. It also discusses why senior management will find this evolutionary step strategically important. Software Testing 3.0 The foundation for Software Testing 3.0 is a strategic end-to-end framework for change based upon a strategy to drive testing activities, tool selection, and people development. Fundamental to its success is the realization that testing is its own function, and an integral part of the development process. Testing must have its own budget to build the necessary infrastructure, as well as clear leadership and ownership. It must provide executive management with visibility into the status of the software under test so that executives can make intelligent and informed decisions about projects and have confidence that they are developing and delivering a quality product that will meet customer needs. Moving from Software Testing 2.0 to Software Testing 3.0 requires a strategic commitment on the part of the organization, and elevation of software testing from a task or tactical effort to a "strategic effort". An organization must form a team or task force to address the needs of people, practice, and process (SP3T). This task force will develop a team-based methodology to drive tool selection (tools that support the methodology) as well as people development (training in the methodology, tools, and software testing techniques that support the methodology), and determination of necessary metrics to provide management with visibility into the status and quality of the software under test. This transformation of culture, methodology, beliefs, and techniques will yield a team-based software testing program that is test design focused with an emphasis on testing as a whole rather than in parts. It will address feature reliability; compatibility, usability; and interoperability; performance acceptability, availability, and scalability; security; as well as accessibility. More importantly, it will yield a software testing program that:
What Software Testing 3.0 Means for Senior Management Software Testing 3.0, treating software testing as a strategic effort, enables an organization to turn quality into a strategic advantage. To be convinced of the value of this proposition, it is important for senior management to understand the "whys" of Software Testing 3.0.
Testing performs these services by providing key metrics or data, including test cases run, testing coverage statistics, defect reports and more. This data provides visibility into the status and quality of the software under test. This data can be used by the testing group itself to further refine and enhance testing efforts. Development can use this data to gain an understanding of what parts of the product are causing problems, which may lead to new processes or development tactics to deliver better code to testing. Senior management uses this data to make critical decisions about product schedules and delivery, as well as resource allocations. With visibility comes: Conclusion Software testing has undergone an evolutionary process. The early phases emphasized tactics and tools and yielded sub-optimal results. As with any evolutionary process, it is imperative for an organization to continue to evolve, or perish. Software Testing 3.0 is the next phase in the evolutionary development of software testing. Organizations that make the transition to viewing testing as a strategic initiative - organizations that put testing on a even footing with development by making testing its own organization with its own budget, place methodology and strategy first and then move on to tool selection - will be able to turn quality into a competitive advantage.
All of this will help to improve sales and generate revenue, while reducing costs and speeding product to market. Software Testing 3.0 is an evolutionary imperative for any organization that develops software. |
|
| Back Top |
