I have written this book for four specific audiences, who have much in common:
- new test engineers, who want to learn more about the framework of tasks performed as part of a good testing process
- newly assigned test managers and team leaders, who are not experienced testers (but may have come from a development, quality assurance, or systems engineering background) and who need to learn more about testing quickly
- more experienced test engineers, who are looking for ways to improve their testing process
- process improvement leaders, such as members of software engineering process groups and quality assurance staff
All of these folks realize that testing is necessary to verify the quality of the delivered product(s). They should also be aware that a coordinated program of peer reviews and testing can support a good software development process, but if the developers fall short of building a quality product, it’s not possible to “test quality in.”
Organizations that are pursuing Level 3 of the Capability Maturity Model for Software (for additional detail on the Capability Maturity Model from the Software Engineering Institute at Carnegie Mellon University, see Appendix A and Website www.sei.cmu.edu) will also find this book valuable, since testing is a significant component of the Software Product Engineering key process area for CMM Level 3. The newer Capability Maturity Model Integration (CMMI), with components of Systems Engineering, Software Engineering, Integrated Product and Process Development, and Supplier Sourcing, has process areas for Verification and for Validation, both of which involve aspects of testing. This book will assist them in documenting their testing process, which will support them in the Level 3 key process area Organization Process Definition.
There’s actually a fifth audience as well, those software development team leads, supervisors, and managers who are interested in learning more about what test engineers and the testing group are doing, and why.