Send the link below via email or IMCopy
Present to your audienceStart remote presentation
- Invited audience members will follow you as you navigate and present
- People invited to a presentation do not need a Prezi account
- This link expires 10 minutes after you close the presentation
- A maximum of 30 users can follow your presentation
- Learn more about this feature in our knowledge base article
Shools of Testing
Transcript of Shools of Testing
Before we start..
between testing experts.
James Bach, Cem Kaner
and Bret Pettichord
formulated a concept of
Made up of:
Hierarchies of values,
Clarify why experts disagree
Create common frame of reference
Provide background for further discussion
Software is a logical artifact
Testing is branch of CS/Math
Techniques must have logical mathematical form
Testing is technical
Which tecnhiques should we use?
a.k.a. "Structural" testing
numerous code-coverage metrics
objective "measure" of testing
Precise and detailed specs
Testers verify if software conforms to the specs
High-reliability industries (e.g. Telecom)
Safety critical industries
What metrics should we use?
Software development is a project
Testing must be managed (i.e. predictable, repeatable, planned)
Testing must be cost-effective
Testing is a measure of progress
Testing is following rules
make sure that every requirement has been tested
Clear boundaries between testing and other activities
Resists changing plans
Accepts management assumptions about testing
Encourages industry testing standards, best practices, certification
Software quality requires discipline
Testing checks if dev.processes are followed
Testers may need to police dev-s to follow the rules
Testers have to protect users from bad software
Are we following good process?
The gate keeper
The software isn't ready until QA says it's ready
Prefer "Quality Assurance" over testing
Testing is a stepping stone to process improvement
May alienate developers
Organizations under stress
sees testing as rigorous and technical
with many proponents in academia
sees testing as a way to measure progress
with emphasis on cost and repeatable standards
emphasizes process, policing developers
and acting as the gatpekeeper
doesn't accept best practices and chooses
testing strategy based on the context
uses testing to prove that development is
complete; emphasizes automated testing
IEEE Standard Boards
Americal society for Quality
Software Engineering Institute (CMMI)
Software is created by people, who set the context
Testing finds bugs (=anything that could bug a stakeholder)
Testing provides information to the project
Testing is a skilled, mental activity
Testing is multidisciplinary
What tests would be most valuable right now?
Concurrent test design and test execution
Expect changes. Adapt testing plans based on test results
Unchallenged assumptions are dangerous.
Effectiveness of test strategies can only be determined with field research
Focus on skill over practice
Commercial, Market-driven software
LAWST Workshops & Spin-offs
Software is an ongoing conversation
Testing tells us that a development
story is complete
Tests must be automated
Is the story done?
Used for test-driven development
Developers must provide automation frameworks
Slow to appreciate value of exploratory testing
so what is testing?
- A branch of development?
- A branch of software quality assurance?
- A branch of computer science and math?
- A managed process?
- One of the customer's roles?
what is your approach?
Think which of the described
approaches were partially or fully
applied at your past projects?
Which approach do you personally
[guess which school does each opinion belongs to]
- Your variant? :)
[you can always think up your own school! :)]
+ Schools debates role play
Based on Bret Pettichord presentation: