Common System and Software Testing Pitfalls


Book Description

Software and system testers repeatedly fall victim to the same pitfalls. Think of them as "anti-patterns": mistakes that make testing far less effective and efficient than it ought to be. In Common System and Software Testing Pitfalls, Donald G. Firesmith catalogs 92 of these pitfalls. Drawing on his 35 years of software and system engineering experience, Firesmith shows testers and technical managers and other stakeholders how to avoid falling into these pitfalls, recognize when they have already fallen in, and escape while minimizing their negative consequences. Firesmith writes for testing professionals and other stakeholders involved in large or medium-sized projects. His anti-patterns and solutions address both "pure software" applications and "software-reliant systems," encompassing heterogeneous subsystems, hardware, software, data, facilities, material, and personnel. For each pitfall, he identifies its applicability, characteristic symptoms, potential negative consequences and causes, and offers specific actionable recommendations for avoiding it or limiting its consequences. This guide will help you, Pinpoint testing processes that need improvement-before, during, and after the project, Improve shared understanding and collaboration among all project participants, Develop, review, and optimize future project testing programs, Make your test documentation far more useful, Identify testing risks and appropriate risk-mitigation strategies, Categorize testing problems for metrics collection, analysis, and reporting, Train new testers, QA specialists, and other project stakeholders Book jacket.




Common System and Software Testing Pitfalls


Book Description

“Don’s book is a very good addition both to the testing literature and to the literature on quality assurance and software engineering... . [It] is likely to become a standard for test training as well as a good reference for professional testers and developers. I would also recommend this book as background material for negotiating outsourced software contracts. I often work as an expert witness in litigation for software with very poor quality, and this book might well reduce or eliminate these lawsuits....” –Capers Jones, VP and CTO, Namcook Analytics LLC Software and system testers repeatedly fall victim to the same pitfalls. Think of them as “anti-patterns”: mistakes that make testing far less effective and efficient than it ought to be. In Common System and Software Testing Pitfalls, Donald G. Firesmith catalogs 92 of these pitfalls. Drawing on his 35 years of software and system engineering experience, Firesmith shows testers and technical managers and other stakeholders how to avoid falling into these pitfalls, recognize when they have already fallen in, and escape while minimizing their negative consequences. Firesmith writes for testing professionals and other stakeholders involved in large or medium-sized projects. His anti-patterns and solutions address both “pure software” applications and “software-reliant systems,” encompassing heterogeneous subsystems, hardware, software, data, facilities, material, and personnel. For each pitfall, he identifies its applicability, characteristic symptoms, potential negative consequences and causes, and offers specific actionable recommendations for avoiding it or limiting its consequences. This guide will help you Pinpoint testing processes that need improvement–before, during, and after the project Improve shared understanding and collaboration among all project participants Develop, review, and optimize future project testing programs Make your test documentation far more useful Identify testing risks and appropriate risk-mitigation strategies Categorize testing problems for metrics collection, analysis, and reporting Train new testers, QA specialists, and other project stakeholders With 92 common testing pitfalls organized into 14 categories, this taxonomy of testing pitfalls should be relatively complete. However, in spite of its comprehensiveness, it is also quite likely that additional pitfalls and even missing categories of pitfalls will be identified over time as testers read this book and compare it to their personal experiences. As an enhancement to the print edition, the author has provided the following location on the web where readers can find major additions and modifications to this taxonomy of pitfalls: http://donald.firesmith.net/home/common-testing-pitfalls Please send any recommended changes and additions to dgf (at) sei (dot) cmu (dot) edu, and the author will consider them for publication both on the website and in future editions of this book.




Software Quality: The Complexity and Challenges of Software Engineering and Software Quality in the Cloud


Book Description

This book constitutes the refereed proceedings of the 11th Software Quality Days Conference, SWQD 2019, held in Vienna, Austria, in January 2019. The Software Quality Days (SWQD) conference started in 2009 and has grown to the biggest conference on software quality in Europe with a strong community. The program of the SWQD conference is designed to encompass a stimulating mixture of practical presentations and new research topics in scientific presentations. The guiding conference topic of the SWQD 2019 is “The Complexity and Challenges of Software Engineering and Software Quality in the Cloud”. The 5 full papers and 3 short papers presented in this volume were carefully reviewed and selected from 17 submissions. The volume also contains 2 invited talks. The contributions were organized in topical sections named: multi-disciplinary systems and software engineering; software quality and process improvement; software testing; knowledge engineering and machine learning; source code analysis; and software maintenance.




Hard Problems in Software Testing


Book Description

This book summarizes the current hard problems in software testing as voiced by leading practitioners in the field. The problems were identified through a series of workshops, interviews, and surveys. Some of the problems are timeless, such as education and training, while others such as system security have recently emerged as increasingly important. The book also provides an overview of the current state of Testing as a Service (TaaS) based on an exploration of existing commercial offerings and a survey of academic research. TaaS is a relatively new development that offers software testers the elastic computing capabilities and generous storage capacity of the cloud on an as-needed basis. Some of the potential benefits of TaaS include automated provisioning of test execution environments and support for rapid feedback in agile development via continuous regression testing. The book includes a case study of a representative web application and three commercial TaaS tools to determine which hard problems in software testing are amenable to a TaaS solution. The findings suggest there remains a significant gap that must be addressed before TaaS can be fully embraced by the industry, particularly in the areas of tester education and training and a need for tools supporting more types of testing. The book includes a roadmap for enhancing TaaS to help bridge the gap between potential benefits and actual results. Table of Contents: Introduction / Hard Problems in Software Testing / Testing as a Service (TaaS) / Case Study and Gap Analysis / Summary / Appendix A: Hard Problems in Software Testing Survey / Appendix B: Google App Engine Code Examples / Appendix C: Sauce Labs Code Examples / References / Author Biographies




Lessons Learned in Software Testing


Book Description

Softwaretests stellen eine kritische Phase in der Softwareentwicklung dar. Jetzt zeigt sich, ob das Programm die entsprechenden Anforderungen erfüllt und sich auch keine Programmierungsfehler eingeschlichen haben. Doch wie bei allen Phasen im Software-Entwicklungsprozess gibt es auch hier eine Reihe möglicher Fallstricke, die die Entdeckung von Programmfehlern vereiteln können. Deshalb brauchen Softwaretester ein Handbuch, das alle Tipps, Tricks und die häufigsten Fehlerquellen genau auflistet und erläutert, damit mögliche Testfehler von vornherein vermieden werden können. Ein solches Handbuch ersetzt gut und gerne jahr(zehnt)elange Erfahrung und erspart dem Tester frustrierende und langwierige Trial-und-Error-Prozeduren. Chem Kaner und James Bach sind zwei der international führenden Experten auf dem Gebiet des Software Testing. Sie schöpfen hier aus ihrer insgesamt 30-jährigen Erfahrung. Die einzelnen Lektionen sind nach Themenbereichen gegliedert, wie z.B. Testdesign, Test Management, Teststrategien und Fehleranalyse. Jede Lektion enthält eine Behauptung und eine Erklärung sowie ein Beispiel des entsprechenden Testproblems. "Lessons Learned in Software Testing" ist ein unverzichtbarer Begleiter für jeden Software Tester.




Surviving the Top Ten Challenges of Software Testing


Book Description

This is the digital version of hte printed book (Copyright © 1997). Software testers require technical and political skills to survive what can often be a lose-lose relationship with developers and managers. Whether testing is your specialty or your stepping stone to a career as a developer, there's no better way to survive the pressures put on testers than to meet the ten challenges described in this practical handbook. This book goes beyond the technical skills required for effective testing to address the political realities that can't be solved by technical knowledge alone. Communication and negotiation skills must be in every tester's tool kit. Authors Perry and Rice compile a "top ten" list of the challenges faced by testers and offer tactics for success. They combine their years of experience in developing testing processes, writing books and newsletters on testing, and teaching seminars on how to test. The challenges are addressed in light of the way testing fits into the context of software development and how testers can maximize their relationships with managers, developers, and customers. In fact, anyone who works with software testers should read this book for insight into the unique pressures put on this part of the software development process. "Somewhere between the agony of rushed deadlines and the luxury of all the time in the world has got to be a reasonable approach to testing."—from Chapter 8 The Top Ten People Challenges Facing Testers Challenge #10: Getting Trained in Testing Challenge #9: Building Relationships with Developers Challenge #8: Testing Without Tools Challenge #7: Explaining Testing to Managers Challenge #6: Communicating with Customers—And Users Challenge #5: Making Time for Testing Challenge #4: Testing What's Thrown Over the Wall Challenge #3: Hitting a Moving Target Challenge #2: Fighting a Lose-Lose Situation Challenge #1: Having to Say No




Advanced Testing of Systems-of-Systems, Volume 1


Book Description

As a society today, we are so dependent on systems-of-systems that any malfunction has devastating consequences, both human and financial. Their technical design, functional complexity and numerous interfaces justify a significant investment in testing in order to limit anomalies and malfunctions. Based on more than 40 years of practice in the development and testing of systems, including safety-critical systems, this book discusses development models, testing methodologies and techniques, and identifies their advantages and disadvantages. Pragmatic and clear, this book displays many examples and references that will help you improve the quality of your systemsof-systems efficiently and effectively and lead you to identify the impact of upstream decisions and their consequences. Advanced Testing of Systems-of-Systems 1 is complemented by a second volume dealing with the practical implementation and use of the techniques and methodologies proposed here.




Advanced Testing of Systems-of-Systems, Volume 2


Book Description

As a society today, we are so dependent on systems-of-systems that any malfunction has devastating consequences, both human and financial. Their technical design, functional complexity and numerous interfaces justify a significant investment in testing in order to limit anomalies and malfunctions. Based on more than 40 years of practice, this book goes beyond the simple testing of an application – already extensively covered by other authors – to focus on methodologies, techniques, continuous improvement processes, load estimates, metrics and reporting, which are illustrated by a case study. It also discusses several challenges for the near future. Pragmatic and clear, this book displays many examples and references that will help you improve the quality of your systemsof-systems efficiently and effectively and lead you to identify the impact of upstream decisions and their consequences. Advanced Testing of Systems-of-Systems 2 deals with the practical implementation and use of the techniques and methodologies proposed in the first volume.




Software Testing and Analysis


Book Description

Teaches readers how to test and analyze software to achieve an acceptable level of quality at an acceptable cost Readers will be able to minimize software failures, increase quality, and effectively manage costs Covers techniques that are suitable for near-term application, with sufficient technical background to indicate how and when to apply them Provides balanced coverage of software testing & analysis approaches By incorporating modern topics and strategies, this book will be the standard software-testing textbook




Effective Software Testing


Book Description

With the advent of agile methodologies, testing is becoming the responsibility of more and more team members. In this new book, noted testing expert Dustin imparts the best of her collected wisdom. She presents 50 specific tips for a better testing program. These 50 tips are divided into ten sections, and presented so as to mirror the chronology of a software project.