Download Foundations of Software Testing Volume One

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Collaborative decision-making software wikipedia , lookup

Trusted Computing wikipedia , lookup

Transcript
Foundations of Software Testing
http://www.cs.purdue.edu/homes/apm/foundationsBook/
Applications
Pearson Education
Fundamentals
Aditya P. Mathur
Professor, Department of Computer Science
Purdue University, West Lafayette, IN, USA
New Delhi,India
March 7, 2007
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)]
2
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?
3
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
4
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]
5
Applications
Approach
Fundamentals
Clear separation of fundamentals and applications
•
Fundamentals:

Test generation algorithms: simple to complex

Model-based testing

Test assessment principles and techniques

Test process

Empirical studies
•
Applications:

Across attributes: security, performance, usability, etc.

Across usage: WEB services, GUI, databases, etc.
6
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.
7
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
8
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.
9
Mapping to IEEE/ACM Curriculum:
Software Verification and Validation
Software verification and validation related:
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
10
Mapping to IEEE/ACM Curriculum:
[Continued]
Software testing related:
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
*
Distributed
across
chapters
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
11
Mapping to IEEE/ACM Curriculum
[continued]
Human computer user interface testing and evaluation related:
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
12
Mapping to IEEE/ACM Curriculum
[continued]
Problem analysis and reporting related:
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
13
Evolution Plan
Volume One:
•
•
•
•
Second edition in June 2008.
One new edition every two years thereafter.
Solutions manual: December 2007.
Translations: Chinese, Portugese, Spanish
Volume Two:
•
Expected manuscript completion: June 2008.
•
Likely publishing date: December 2008
14
Marketing
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
Color posters:
•
Large (16”x20”): 100 copies.
•
Small (8.5”x11”): 500 copies
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
15
Thank You!
16