Software Testing and Analysis: Process, Principles and Techniques
You can't "test quality into" a software product, but neither can you build a quality software product without test and analysis. Software test and analysis is increasingly recognized, in research and in industrial practice, as a core challenge in software engineering and computer science. Software Testing and Analysis: Process, Principles, and Techniques is the first book to present a range of complementary software test and analysis techniques in an integrated, coherent fashion. It covers a full spectrum of topics from basic principles and underlying theory to organizational and process issues in real-world application. The emphasis throughout is on selecting a complementary set of practical techniques to achieve an acceptable level of quality at an acceptable cost.
Highlights of the book include
* Interplay among technical and non-technical issues in crafting an approach to software quality, with chapters devoted to planning and monitoring the software quality process.
* A selection of practical techniques ranging from inspection to automated program and design analyses to unit, integration, system, and regression testing, with technical material set in the context of real-world problems and constraints in software development.
* A coherent view of the state of the art and practice, with technical and organizational approaches to push the state of practice toward the state of the art.
Throughout, the text covers techniques that are suitable for near-term application, with sufficient technical background to help you know how and when to apply them. Exercises reinforce the instruction and ensure that you master each topic before proceeding.
By incorporating software testing and analysis techniques into modern practice, Software Testing and Analysis: Process, Principles, and Techniques provides both students and professionals with realistic strategies for reliable and cost-effective software development.
Mauro Pezzè, PhD, is Professor of Computer Science at the University of Milano–Bicocca. He received his PhD degree in computer science from Politecnico di Milano (Italy). Dr. Pezzè has served as technical program chair of the 2006 ACM International Symposium on Software Testing and Analysis. He has been technical lead for several multi-year international research and development projects in close collaboration with leading European information and communication companies including IBM, Phillips, Elsag, and Siemens, among others. He also has an active consulting practice.
Table of Contents
1 Software Test and Analysis in a Nutshell
2 A Framework for Test and Analysis
3 Basic Principles
4 Test and Analysis Activities Within a Software Process
II Basic Techniques
5 Finite Models
6 Dependence and Data Flow Models
7 Symbolic Execution and Proof of Properties
8 Finite State Verification
III Problems and Methods
9 Test Case Selection and Adequacy
10 Functional Testing
11 Combinatorial Testing
12 Structural Testing
13 Data Flow Testing
14 Model-Based Testing
15 Testing Object-Oriented Software
16 Fault-Based Testing
17 Test Execution
19 Program Analysis
20 Planning and Monitoring the Process
21 Integration and Component-based Software Testing
22 System, Acceptance, and Regression Testing
23 Automating Analysis and Test
24 Documenting Analysis and Test
Sign up now »
Cloud computing promises to help midmarket companies reduce cost and complexity in the IT equation – and gain the flexibility and agility they need to thrive. Yet charting a clear ...
"Suggesting that people's "purpose is to get information to flow through the ..."
Why change management doesn’t work
"Darn those pesky laws that get in the way of commercial exploitation ..."
Larry Page wants to see your medical records
"Instead of partitioning the device between corporate and personal data, another approach ..."
Dual-Persona Smartphones Not a BYOD Panacea
"Well that's a nice back-handed compliment isn't it? So now, finally, my ..."
After two-year hiatus, EFF accepts bitcoin donations again
"Actually, both Mobile App developers and CIOs should be blamed for it. ..."
CIOs struggle to deliver timely mobile business apps: survey
- AusCERT 2013: Introduction to Network Security Monitoring with Security Onion - AusCERT Presentation
- Auscert 2013: Perimeter protection has failed, encryption needs its day in the sun
- AusCERT 2013: Low-level analysis can find, map data deleted from Android phones
- Cybercrime Survey: Almost half of small business victims
- AusCERT 2013: Cloud-based scanner identifies new malware by its ancestry
- Lack of information, skills hinder finance-business partnering: Deloitte
- Rapid-growing mobile payments market is driving a financial fraud marketplace
- HP profit falls 32 per cent as PC and server sales decline
- Google launching new fund for later-stage tech investments
- Apple defends offshore decisions that result in low taxes