foundations of software testing
Post on 12-Jan-2016
87 Views
Preview:
DESCRIPTION
TRANSCRIPT
Foundations of Software Testing
Pearson Education
Aditya P. MathurProfessor, Department of Computer SciencePurdue University, West Lafayette, IN, USA
New Delhi,IndiaMarch 7, 2007
Fundamentals
App
licat
ions
http://www.cs.purdue.edu/homes/apm/foundationsBook/
2
Education in Software Testing
• Mostly commercially offered short courses.
• None of the top 25 Computer Science Departments offers a course
in Software Testing in a degree program (except at Purdue where
the first offering was in 2005)
• Demand for high quality software has shot up
• Most companies hire students who have none to little formal
education in software testing
• Companies have started treating/hiring testers as Test and
Development Engineers. [Microsoft position: Software Development
Engineer in Test (SDET)]
3
What exists for use at universities
• Over 30 books on software testing.
• Classics such as by Glenford Meyers et al. [2nd Ed. 2004, Wiley] and Boris
Beizer [2nd Ed. 1990, Van Nostrand]
Why then write yet another book on
the same topic?
4
Why another book?
Because none of the existing books…
• Is an “appropriate” text for a university course
• Focuses on test generation and assessment algorithms and
techniques
• Is comprehensive
• Is written specifically for undergraduate and graduate students
• Employs a formal approach to introduce the subject
5
Foundations book as a textbook
• Clear and in-depth exposition
• Delineated examples [252]
• A gradient of exercises [199] from simple to highly challenging
• Comprehensive bibliography [551 entries]
• Frequently updated instructor material [Slides on the web site]
• Detailed subject index [4124 entries]
• Courtesy author citations [670 entries]
• Student cash awards [$400 already distributed]
6
Approach
• Fundamentals:
Test generation algorithms: simple to complex
Model-based testing
Test assessment principles and techniques
Test process
Empirical studies
Clear separation of fundamentals and applications
• Applications:
Across attributes: security, performance, usability, etc.
Across usage: WEB services, GUI, databases, etc.
Fundamentals
App
licat
ions
7
Software Engineering Programs
• Undergraduate: At least 25 [in US]
• Graduate: At least 70 in US and over 100 [All over the world]
http://www.gradschools.com/listings/out/software_engineering_out.html
http://www.all-computer-schools.com/featured/software-engineering-program
• Almost every program has a course related to software quality. Most topics covered in
Volume 1 of the Foundations book are invariably covered in such courses.
• Numerous short courses in testing and quality assurance offered by commercial outfits.
8
Software Engineering Programs: International
• China: By the end of 2001, 51 universities were offering MS in Software Engineering
http://www.china.org.cn/english/2002/Jun/33834.htm
• Australia: By the end of 2004, 9 universities were offering BEng in Software Engineering
http://www.china.org.cn/english/2002/Jun/33834.htm
9
Mapping to IEEE/ACM Undergraduate Curriculum: Software Verification and Validation
http://sites.computer.org/ccse/SE2004Volume.pdf
IEEE/ACM Course: SE221 Software Testing
In-depth course on all aspects of testing, as well as other aspects of verification and validation, including specifying testable requirements, reviews, and product assurance.
10
Mapping to IEEE/ACM Curriculum:Software Verification and Validation
Topic Volume
V&V Terminology and foundations 1/Ch 1
Objectives and constraints of V&V 1/Ch 1
Planning the V&V effort 2/Process
Documenting V&V strategy 2/Process
V&V involvement at different points in lifecycle 1/Ch 1, 2/Process
Reviews 2/Process
Desk checking 2/Process
Software verification and validation related:
11
Mapping to IEEE/ACM Curriculum: [Continued]
Topic Volume
Unit testing 1/Ch 2
Exception handling *
Coverage analysis: structure based 1/Ch 6
Black box functional testing 1/Ch 2, 3, 4
Developing test cases based on user stories
2
Operational profile based testing 2
Testing across quality attributes 2
Regression testing 1/Ch 5
Testing tools *
Deployment process 2
Distributed across chapters
*Software testing related:
12
Mapping to IEEE/ACM Curriculum [continued]
Topic Volume
Human computer interface testing and evaluation
2/Application: GUI testing
Usefulness and usability X
Heuristic evaluation X
Cognitive walkthroughs 2/Process
User testing 2/
Web usability X
Formal experiments 2/Empirical studies
Human computer user interface testing and evaluation related:
13
Mapping to IEEE/ACM Curriculum [continued]
Topic Volume
Formal experiments 2/Empirical studies
Analyzing failure reports 2/Fault models and classification
Debugging 2/Static analysis and applications
Defect analysis 2/ 2/Fault models and classification
Problem tracking 2/Fault models and classification 2
Problem analysis and reporting related:
14
Evolution Plan
Volume Two: • Expected manuscript completion: June 2008.• Likely publishing date: December 2008
Volume One: • Second edition in June 2008.• One new edition every two years thereafter.• Solutions manual: December 2007.• Translations: Chinese, Portugese, Spanish
15
Marketing
Color posters: • Large (16”x20”): 100 copies.• Small (8.5”x11”): 500 copies
Conferences:• COMPSAC 2006: Chicago, USA• COMPSAC 2007: July 24-27,Beijing, PRC.• ISSRE 2007: 5-9th of November, Trollhätan, Sweden.• QSIC 2007: October 11-12, Portland, Oregon
Short courses:Feb 6-7, Advanced course in software testing and reliability, Sao Carlos, Brazil
Complementary copies:International: ~100
Australia, Brazil, Canada, China, Hong Kong, Singapore, US.SAARC: ~25
16
Thank You!
top related