Software Testing: |Art - Practice|=?
Aditya Mathur
Purdue University
Department of Computer Science
SERC Showcase
Ball State University
Muncie, IN
November 11-12, 2009
Objective
•
Identify gaps, and their cause, in state-of-the-art and
state-of-practice in the area of software testing and
quality assurance.
•
Make recommendations on how to close the gaps
identified.
2
Benefits
Companies
Aid to strategic planning
Improvement in product quality
Determination of funding priorities
NSF
Researchers
Choice of problems
3
Current Scenario
Faculty
Companies
Proposals
Available (..but are these used?)
NSF
Accept
Tools
Techniques
Reject
Are these useful?
Are these scalable?
Does novelty really matter?
How does NSF assess the utility
of an engineering tool/technique?
4
Method: Subjects
12 companies who are willing to participate in
the study
SERC and non-SERC companies to be considered
5
Method: State of the Art
Test generation
Test quality
Test process, metrics
Others?
6
Method: State of practice
Specific techniques in
Test generation
Test quality
Test process, metrics
Test phases: unit, integration, system, regression
Debugging
Others?
7
Method: Data collection
Visit each company for 1-week
Interview testers and managers
Write summary report for each company
Write project report
Companies anonymized
Gaps
Causes
Recommendations
8
Sample Questions
What test generation techniques do you use in unit testing?
System testing?
What metrics do you use to determine the adequacy of your tests
in system testing?
Do you use finite state modeling and test generation using
advanced methods such as the Wp method?
What commercial/open source tools, e.g., UPPAAL, do you use for
testing real-time properties of your application?
Do you use timed I/O Transition Systems for modeling and test
generation for real time systems?
Do you generate tests during the requirements phase of the life
cycle?
9
Past Work
Grindal, Jeff Offutt, and Jonas Mellin, 2006
12 companies surveyed
Focus on process
Lacks specific techniques and tools
Beer and Ramler 2008
One company [Siemens]
Focus on “role of experience” in software testing
10
Budget
Duration: July 2010-June 2011
Total: $100K (Salary, indirect costs, travel)
NSF: $50K
Companies: $50K. (approx) $5K/company
11
Selected References
•
Foundations of Software Testing, A. P. Mathur, Pearson/Addison Wesley. 2008
•
On the Testing Maturity of Software Producing Organizations, Mats Grindal, Jeff
Offutt, and Jonas Mellin, TAIC PART August 31, 2006.
•
Software Testing, the State of the Practice, Gary, T.W., Proceedings of International
Test Conference, 1991.
•
The Role of Experience in Software Testing Practice, Armin Beer and Rudolf
Ramler, 34th Euromicro Conference Software Engineering and Advanced
Applications, pp 258-265, 2008.
•
Factors with Negative Influence on Software Testing Practice in Spain: A Survey,
Luis Fernández-Sanz , M. Teresa Villalba , José Ramón Hilera and
Raquel Lacuesta, Software Process Improvement, Vol 42, pp 1-12, 2009.
12