SlideShare uma empresa Scribd logo
1 de 66
Lightning Strikes
The Keynotes

Moderated by

Lee Copeland
lee@sqe.com
Featuring

Jon Bach

Michael Bolton

Janet Gregory

Keith Klain

Paul Holland

Gerard Meszaros

Fiona Charles

Griffin Jones

Nate Oster
Michael Bolton
Attention,
Deficit,
Disorder.
Michael Bolton
http://www.developsense.com
aircanada.com
aircanada.com
Error Message
Via Rail, between Montreal and Toronto, 2007
But I can’t contact my… oh, never mind.

Error Message
Via Rail, between Montreal and Toronto, 2007
Hyatt Regency, 2008
If you can’t do math, it’s a nickel extra.

Hyatt Regency, 2008
Why you shouldn’t let an unsupervised
algorithm choose your sponsored links (1).

Vimeo’s Web Page
Spring 2010
Why you shouldn’t let an unsupervised
algorithm choose your sponsored links (2).

Vimeo’s Web Page
Spring 2010
Why you shouldn’t let an unsupervised
algorithm choose your sponsored links (3).

Vimeo’s Web Page
Spring 2010
Google Chrome
Google Calendar Update
OK, fine.

Don’t Know Who This Was
Adobe Acrobat
Adobe Acrobat
Microsoft Outlook
Intuit Quicken
Intuit Quicken
Intuit Quicken
Here’s another err.

Intuit Quicken
ibm.com
Windows
I think I’ll shoot my own trouble for now.

Windows
Windows
I don’t know!

Windows
iTunes
Testing is more than checking.
Welcome to the new world.

“The World of Heineken”
Heineken Experience, Amsterdam, 2006
Paul Holland
Functional Specification Blinders
- My Experiences with Creativity
Paul Holland
Test Consultant and Teacher
at Testing Thoughts
Test Idea Creation
• A “Typical” method of developing test cases or
test ideas:
1.
2.
3.
4.
5.
6.

Start by reading functional specification
Write down test ideas (or create TCs)
Try to think of other ways to test product
If you think of any, write those down too
When product is available, execute test ideas
While testing try to think of more test ideas

April, 2013

©2013 Testing Thoughts

34
What I Do on my Teams
• Over the past five years as a test manager at
Alcatel-Lucent, I would reverse two steps:
1.
2.
3.
4.
5.
6.

Think of all ways you can to test product
Write down test ideas
Only then you read the functional specification
Write any new ideas down
When product is available, execute test ideas
While testing try to think of more test ideas

April, 2013

©2013 Testing Thoughts

35
How To Model Without FS
• Oh no! I can’t read the functional specification.
How can I possibly think of test ideas?
1. If the product is available, then play with it
2. If not, then talk to designers, architects,
marketing, customers, project managers, etc.
3. Find out why the new feature/product is being
developed and how it will be used
4. Play with competitive/similar products/features
5. Learn as much as you can at a high level
April, 2013

©2013 Testing Thoughts

36
Justification
• For years I had asked my team to think of their
own test ideas before reading the functional
specification
• I now have (statistically invalid) proof that
reading the specification first can stifle
individual creativity and limit the testing ideas
that are generated
April, 2013

©2013 Testing Thoughts

37
Experience Report
• During a modeling exercise of the Rapid
Software Testing course November, 2012:
– Students were asked to identify all the dimensions
of an object that may be relevant to testing it

April, 2013

©2013 Testing Thoughts

38
Experience Report
• Students typically start with intrinsic
dimensions:
– Height, width, material, volume, etc.

• They then progress to relative dimensions:
– Durability, dishwasher safe, contents, place of
manufacture, where it is now, where it has been,
etc.

April, 2013

©2013 Testing Thoughts

39
Experience Report
• Some students mention “conformance with
standards”
• There is an ISO specification for a specific
version of this object
– A few have found this ISO specification exists
– One student of mine found the spec and read it

April, 2013

©2013 Testing Thoughts

40
Experience Report
• He found the spec BEFORE he had tried to
think of his own dimensions
• After he read the spec, he could not think of
ANY other dimensions
• In other exercises, this student showed good
levels of creativity
• In this exercise, his creativity had been
completely stifled by putting on the
“specification blinders”
April, 2013

©2013 Testing Thoughts

41
Summary
• Try to think of your own test ideas BEFORE
reading the functional specification, previously
existing test cases, or any other rigid
documentation that may compartmentalize
your thoughts
• Do not stifle your creativity. The functional
specification will be waiting for you when you
have done some of your own thinking
April, 2013

©2013 Testing Thoughts

42
April, 2013

©2013 Testing Thoughts

43
Griffin Jones
WREST
Workshop on Regulated Software Testing

Software subject to review by
an internal or external regulatory body
Purpose and Format
• Share and generate ideas and
techniques
• Provide a forum for people
interested in the topic
• Participation is free and open to all
• LAWST-style rules of engagement
Workshop Structure
• Facilitated
• Series of experiential
presentations and group
discussions
• Atmosphere is collaborative,
supportive and constructive
• Focus on the practical and useful
More Information
• Next WREST: May 3rd 2013
Hosted by SQE at STAREAST
• Contact:
Karen N. Johnson, John
McConda, Griffin Jones
• Website: wrestworkshop.com
Gerard Meszaros
Avoiding Unmaintainable
Automated Tests

Gerard Meszaros
StarCanada2013@gerardm.com
Premise:
Automated Tests are a Self-Verifying
Behavior Specification
Because:
They Tell us What the System
Should Continue to Do
After any changes or bug fixes we apply
The Challenge:
How to Avoid Creating
Tests/Checks/Specs
that Need Frequent Maintenance ?
My Belief:
Most Automated Tests Have Too
Much Detail
Which is What Makes Them Require
Frequent Maintenance
Behavior Specification at Right Level

High

Detail

Low

Need to specify at the right detail and scope

Broad

Scope

Narrow
Behavior Specification at Right Level


High

Detail

Low



Specify broad scope at minimum detail
Specify most detailed req’ts at narrowest scope

Incomplete
Spec

MultiUse Case
Workflows

Transactions
(Use Cases)

Too
much detail
Unmaintainable
Broad

Scope

Rules &
Algorithms
Narrow
Example:

Configurable Bank TX Notifications
Configure
Notification
Rules
Suspend
Notification
Account
Holder

Resume
Notification
Process
Transaction
Transaction
Settlement
Example:

Testing Notifications - 1
Given:
User and Accounts

When:
Notification
Rule Configured
Then:
Then:
Notification Rule
Notification Rule
Configured and
Configured and Active
Active
Example:

Testing Notifications - 2

Use Case:
Process
Transactions

When: The
Transactions to
be processed

Then: Expected
Notifications

Medium Detail; Large Scope
Too much detail given the scope
Issues With This Test

• Difficult to understand which TX should notify
–

because cause (rules) and effect (notification) are far
apart

• Only verifies one simple combination of rules
–

–

We will require many more tests to test all the other
combinations
Lots of repetition of workflow & data across test cases

• Tests will take a long time to run
–

Due to need to configure first, then run transaction
processing
Changing Level of Abstraction/Detail
Too detailed for verifying workflow and
Too broadly scoped for checking the rules
Need to Reduce Detail or Reduce Scope

Incomplete
MultiSpec
Use Case
Workflows
Transactions
(Use Cases)

Re
De duce
ta
il a
L

High

ot

Detail

Low

•
•
•

e
u c bi t
d
R e th a
Bo

Too
Rules &
Re
much detail dupceea Lot! Algorithms
Sc o
Unmaintainable
Broad

Scope

Narrow
Example:

Given:
User &
The overall workflow should be defined at a very high level Thresholds

Specifying Notification Workflow

When:
Transactions
Are Processed

Broad Scope; Minimum Detail;
Irrelevant Details Omitted!

Then:
Expected
Notifications
Changing Level of Abstraction/Detail

Incomplete
MultiSpec
Use Case
Workflows
Transactions
(Use Cases)

Re
De duce
ta
il a
L

High

ot

Detail

Low

• Need the detail to specify notification rules
• Therefore, need to reduce scope

e
u c bi t
d
R e th a
Bo

Too
Rules &
R
much detailedupceea Lot! Algorithms
Sc o
Unmaintainable
Broad

Scope

Narrow
Example:

Business Rule Specs

When we ask
NotificationRequired?
with this transaction:

Threshold per Charge Type
Given these
Process Transaction

Configuration

rules

High Detail; Narrow Scope
Easy to Understand

Then: The answer
should be
Business Rules Tests Encourage:

• Encapsulation of Rules in “Rules Component”
– which can Expose a Test API
System Under Test

Configuration

Configure

User
Interface

Threshold

Notification
Rule Test
Transaction

Interface

Notification
Notification
RulesRules
Fake

Notification

Process
Transaction

Notification
Required?
Do

Notification.

• Accept Rules via “Data Injection”
– To Simplify Test Automation

Notification
Log

• Making Automation a Dev’t Responsibility
– To incent design-for-testability
In Summary:


Manage Scope vs. Detail
– to Avoid Unmaintainable Tests/Specs



Provide the Tests/Specs to Dev’t
Before System Built
– to allow Dev’t to automate the test
– to ensure Design-for-Testability

Thank You!
Gerard Meszaros
StarCanada2013@gerardm.com
http://www.xunitpatterns.com
http://ScopeVsDetail.gerardm.com

Jolt Productivity Award
winner - Technical Books
http://testingguidance.co
deplex.com/
Our Thanks To

Jon Bach

Michael Bolton

Janet Gregory

Keith Klain

Paul Holland

Gerard Meszaros

Fiona Charles

Griffin Jones

Nate Oster

Mais conteúdo relacionado

Mais procurados

How to design a form: Discussing a curriculum
How to design a form: Discussing a curriculumHow to design a form: Discussing a curriculum
How to design a form: Discussing a curriculumCaroline Jarrett
 
From a thousand learners to a thousand markers: Scaling peer feedback with Ad...
From a thousand learners to a thousand markers: Scaling peer feedback with Ad...From a thousand learners to a thousand markers: Scaling peer feedback with Ad...
From a thousand learners to a thousand markers: Scaling peer feedback with Ad...NomadWarMachine
 
Introduction to Usability Testing for Survey Research
Introduction to Usability Testing for Survey ResearchIntroduction to Usability Testing for Survey Research
Introduction to Usability Testing for Survey ResearchCaroline Jarrett
 
70 270 q & a
70 270 q & a70 270 q & a
70 270 q & aSamaja
 
Yana Lysa "Best practices of building good manual test suits"
Yana Lysa "Best practices of building good manual test suits"Yana Lysa "Best practices of building good manual test suits"
Yana Lysa "Best practices of building good manual test suits"Fwdays
 
The Mindset Change for the Agile Tester
The Mindset Change for the Agile TesterThe Mindset Change for the Agile Tester
The Mindset Change for the Agile TesterTechWell
 
Easy and affordable user testing - Front Trends 2017
Easy and affordable user testing - Front Trends 2017Easy and affordable user testing - Front Trends 2017
Easy and affordable user testing - Front Trends 2017Ida Aalen
 
Tech. Writing Usability Presentation
Tech. Writing Usability PresentationTech. Writing Usability Presentation
Tech. Writing Usability Presentationmhobren
 
Michael Gage SOED 2016
Michael Gage SOED 2016Michael Gage SOED 2016
Michael Gage SOED 2016Colleen Ganley
 
Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...
Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...
Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...TEST Huddle
 
NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016Vishnu Prem
 
Code Review Matters and Manners
Code Review Matters and MannersCode Review Matters and Manners
Code Review Matters and MannersTrisha Gee
 
Level Up Your Automated Tests
Level Up Your Automated TestsLevel Up Your Automated Tests
Level Up Your Automated TestsTrisha Gee
 
Kdd 2014 Tutorial - the recommender problem revisited
Kdd 2014 Tutorial -  the recommender problem revisitedKdd 2014 Tutorial -  the recommender problem revisited
Kdd 2014 Tutorial - the recommender problem revisitedXavier Amatriain
 
Writing Tests Effectively
Writing Tests EffectivelyWriting Tests Effectively
Writing Tests EffectivelyPaul Boocock
 
Cracking The Technical Interview Uw
Cracking The Technical Interview   UwCracking The Technical Interview   Uw
Cracking The Technical Interview Uwcareercup
 
Déjà Vu: The Importance of Time and Causality in Recommender Systems
Déjà Vu: The Importance of Time and Causality in Recommender SystemsDéjà Vu: The Importance of Time and Causality in Recommender Systems
Déjà Vu: The Importance of Time and Causality in Recommender SystemsJustin Basilico
 
香港六合彩
香港六合彩香港六合彩
香港六合彩iewsxc
 

Mais procurados (19)

How to design a form: Discussing a curriculum
How to design a form: Discussing a curriculumHow to design a form: Discussing a curriculum
How to design a form: Discussing a curriculum
 
From a thousand learners to a thousand markers: Scaling peer feedback with Ad...
From a thousand learners to a thousand markers: Scaling peer feedback with Ad...From a thousand learners to a thousand markers: Scaling peer feedback with Ad...
From a thousand learners to a thousand markers: Scaling peer feedback with Ad...
 
Introduction to Usability Testing for Survey Research
Introduction to Usability Testing for Survey ResearchIntroduction to Usability Testing for Survey Research
Introduction to Usability Testing for Survey Research
 
70 270 q & a
70 270 q & a70 270 q & a
70 270 q & a
 
Yana Lysa "Best practices of building good manual test suits"
Yana Lysa "Best practices of building good manual test suits"Yana Lysa "Best practices of building good manual test suits"
Yana Lysa "Best practices of building good manual test suits"
 
The Mindset Change for the Agile Tester
The Mindset Change for the Agile TesterThe Mindset Change for the Agile Tester
The Mindset Change for the Agile Tester
 
Easy and affordable user testing - Front Trends 2017
Easy and affordable user testing - Front Trends 2017Easy and affordable user testing - Front Trends 2017
Easy and affordable user testing - Front Trends 2017
 
Tech. Writing Usability Presentation
Tech. Writing Usability PresentationTech. Writing Usability Presentation
Tech. Writing Usability Presentation
 
Michael Gage SOED 2016
Michael Gage SOED 2016Michael Gage SOED 2016
Michael Gage SOED 2016
 
Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...
Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...
Ajay Balamnrugadas - Weekend Testing, Skilled Software Testing Unleashed - Eu...
 
NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016
 
Code Review Matters and Manners
Code Review Matters and MannersCode Review Matters and Manners
Code Review Matters and Manners
 
Level Up Your Automated Tests
Level Up Your Automated TestsLevel Up Your Automated Tests
Level Up Your Automated Tests
 
Kdd 2014 Tutorial - the recommender problem revisited
Kdd 2014 Tutorial -  the recommender problem revisitedKdd 2014 Tutorial -  the recommender problem revisited
Kdd 2014 Tutorial - the recommender problem revisited
 
Writing Tests Effectively
Writing Tests EffectivelyWriting Tests Effectively
Writing Tests Effectively
 
SBAC What is a CAT
SBAC What is a CATSBAC What is a CAT
SBAC What is a CAT
 
Cracking The Technical Interview Uw
Cracking The Technical Interview   UwCracking The Technical Interview   Uw
Cracking The Technical Interview Uw
 
Déjà Vu: The Importance of Time and Causality in Recommender Systems
Déjà Vu: The Importance of Time and Causality in Recommender SystemsDéjà Vu: The Importance of Time and Causality in Recommender Systems
Déjà Vu: The Importance of Time and Causality in Recommender Systems
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 

Destaque

Implementing Cloud-Based DevOps for Distributed Agile Projects
Implementing Cloud-Based DevOps for Distributed Agile ProjectsImplementing Cloud-Based DevOps for Distributed Agile Projects
Implementing Cloud-Based DevOps for Distributed Agile ProjectsTechWell
 
Red Beads: A New Tool for Managing Software Projects
Red Beads: A New Tool for Managing Software ProjectsRed Beads: A New Tool for Managing Software Projects
Red Beads: A New Tool for Managing Software ProjectsTechWell
 
Seven Deadly Habits of Dysfunctional Software Managers
Seven Deadly Habits of Dysfunctional Software ManagersSeven Deadly Habits of Dysfunctional Software Managers
Seven Deadly Habits of Dysfunctional Software ManagersTechWell
 
Exploring Usability Testing
Exploring Usability TestingExploring Usability Testing
Exploring Usability TestingTechWell
 
Software Security Goes Mobile
Software Security Goes MobileSoftware Security Goes Mobile
Software Security Goes MobileTechWell
 
Scaling Your Tests: Continued Change Without Fear
Scaling Your Tests: Continued Change Without FearScaling Your Tests: Continued Change Without Fear
Scaling Your Tests: Continued Change Without FearTechWell
 
A UX Strategy for Persona Research
A UX Strategy for Persona ResearchA UX Strategy for Persona Research
A UX Strategy for Persona ResearchTechWell
 
Whiteboarding—for Testers, Developers, and Customers, Too
Whiteboarding—for Testers, Developers, and Customers, TooWhiteboarding—for Testers, Developers, and Customers, Too
Whiteboarding—for Testers, Developers, and Customers, TooTechWell
 
Enhancing Developer Productivity with Code Forensics
Enhancing Developer Productivity with Code ForensicsEnhancing Developer Productivity with Code Forensics
Enhancing Developer Productivity with Code ForensicsTechWell
 
Collaboration Techniques: Forgotten Wisdom and New Approaches
Collaboration Techniques: Forgotten Wisdom and New ApproachesCollaboration Techniques: Forgotten Wisdom and New Approaches
Collaboration Techniques: Forgotten Wisdom and New ApproachesTechWell
 
Creating Dissonance: Overcoming Organizational Bias toward Software Testing
Creating Dissonance: Overcoming Organizational Bias toward Software TestingCreating Dissonance: Overcoming Organizational Bias toward Software Testing
Creating Dissonance: Overcoming Organizational Bias toward Software TestingTechWell
 
Exploding Management Myths
Exploding Management MythsExploding Management Myths
Exploding Management MythsTechWell
 
Unlocking Innovation in Your Organization
Unlocking Innovation in Your OrganizationUnlocking Innovation in Your Organization
Unlocking Innovation in Your OrganizationTechWell
 
Group Interaction Patterns: The Keys for Highly Productive Teams
Group Interaction Patterns: The Keys for Highly Productive TeamsGroup Interaction Patterns: The Keys for Highly Productive Teams
Group Interaction Patterns: The Keys for Highly Productive TeamsTechWell
 
Mob Programming: A Whole Team Approach
Mob Programming: A Whole Team ApproachMob Programming: A Whole Team Approach
Mob Programming: A Whole Team ApproachTechWell
 
Structural Testing: When Quality Really Matters
Structural Testing: When Quality Really MattersStructural Testing: When Quality Really Matters
Structural Testing: When Quality Really MattersTechWell
 
The Evolution of Agile: Dealing with the Growing Pains
The Evolution of Agile: Dealing with the Growing PainsThe Evolution of Agile: Dealing with the Growing Pains
The Evolution of Agile: Dealing with the Growing PainsTechWell
 
Trends in Big Data Testing
Trends in Big Data TestingTrends in Big Data Testing
Trends in Big Data TestingTechWell
 

Destaque (18)

Implementing Cloud-Based DevOps for Distributed Agile Projects
Implementing Cloud-Based DevOps for Distributed Agile ProjectsImplementing Cloud-Based DevOps for Distributed Agile Projects
Implementing Cloud-Based DevOps for Distributed Agile Projects
 
Red Beads: A New Tool for Managing Software Projects
Red Beads: A New Tool for Managing Software ProjectsRed Beads: A New Tool for Managing Software Projects
Red Beads: A New Tool for Managing Software Projects
 
Seven Deadly Habits of Dysfunctional Software Managers
Seven Deadly Habits of Dysfunctional Software ManagersSeven Deadly Habits of Dysfunctional Software Managers
Seven Deadly Habits of Dysfunctional Software Managers
 
Exploring Usability Testing
Exploring Usability TestingExploring Usability Testing
Exploring Usability Testing
 
Software Security Goes Mobile
Software Security Goes MobileSoftware Security Goes Mobile
Software Security Goes Mobile
 
Scaling Your Tests: Continued Change Without Fear
Scaling Your Tests: Continued Change Without FearScaling Your Tests: Continued Change Without Fear
Scaling Your Tests: Continued Change Without Fear
 
A UX Strategy for Persona Research
A UX Strategy for Persona ResearchA UX Strategy for Persona Research
A UX Strategy for Persona Research
 
Whiteboarding—for Testers, Developers, and Customers, Too
Whiteboarding—for Testers, Developers, and Customers, TooWhiteboarding—for Testers, Developers, and Customers, Too
Whiteboarding—for Testers, Developers, and Customers, Too
 
Enhancing Developer Productivity with Code Forensics
Enhancing Developer Productivity with Code ForensicsEnhancing Developer Productivity with Code Forensics
Enhancing Developer Productivity with Code Forensics
 
Collaboration Techniques: Forgotten Wisdom and New Approaches
Collaboration Techniques: Forgotten Wisdom and New ApproachesCollaboration Techniques: Forgotten Wisdom and New Approaches
Collaboration Techniques: Forgotten Wisdom and New Approaches
 
Creating Dissonance: Overcoming Organizational Bias toward Software Testing
Creating Dissonance: Overcoming Organizational Bias toward Software TestingCreating Dissonance: Overcoming Organizational Bias toward Software Testing
Creating Dissonance: Overcoming Organizational Bias toward Software Testing
 
Exploding Management Myths
Exploding Management MythsExploding Management Myths
Exploding Management Myths
 
Unlocking Innovation in Your Organization
Unlocking Innovation in Your OrganizationUnlocking Innovation in Your Organization
Unlocking Innovation in Your Organization
 
Group Interaction Patterns: The Keys for Highly Productive Teams
Group Interaction Patterns: The Keys for Highly Productive TeamsGroup Interaction Patterns: The Keys for Highly Productive Teams
Group Interaction Patterns: The Keys for Highly Productive Teams
 
Mob Programming: A Whole Team Approach
Mob Programming: A Whole Team ApproachMob Programming: A Whole Team Approach
Mob Programming: A Whole Team Approach
 
Structural Testing: When Quality Really Matters
Structural Testing: When Quality Really MattersStructural Testing: When Quality Really Matters
Structural Testing: When Quality Really Matters
 
The Evolution of Agile: Dealing with the Growing Pains
The Evolution of Agile: Dealing with the Growing PainsThe Evolution of Agile: Dealing with the Growing Pains
The Evolution of Agile: Dealing with the Growing Pains
 
Trends in Big Data Testing
Trends in Big Data TestingTrends in Big Data Testing
Trends in Big Data Testing
 

Semelhante a STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Usability Evaluation
Usability EvaluationUsability Evaluation
Usability EvaluationSaqib Shehzad
 
11 - Evaluating Framework in Interaction Design_new.pptx
11 - Evaluating Framework in Interaction Design_new.pptx11 - Evaluating Framework in Interaction Design_new.pptx
11 - Evaluating Framework in Interaction Design_new.pptxZahirahZairul2
 
Effective Business Analysis in a Changing World
Effective Business Analysis in a Changing WorldEffective Business Analysis in a Changing World
Effective Business Analysis in a Changing WorldDevFactoTechnologies
 
Usability Testing for Qualitative Researchers - QRCA NYC Chapter event
Usability Testing for Qualitative Researchers - QRCA NYC Chapter eventUsability Testing for Qualitative Researchers - QRCA NYC Chapter event
Usability Testing for Qualitative Researchers - QRCA NYC Chapter eventKay Aubrey
 
More Than Usability
More Than UsabilityMore Than Usability
More Than UsabilityRazan Sadeq
 
How to make change happen in your organisation by talking your devs language
How to make change happen in your organisation by talking your devs languageHow to make change happen in your organisation by talking your devs language
How to make change happen in your organisation by talking your devs languageBuiltvisible
 
New Model Testing: A New Test Process and Tool
New Model Testing:  A New Test Process and ToolNew Model Testing:  A New Test Process and Tool
New Model Testing: A New Test Process and ToolTEST Huddle
 
Demise of test scripts rise of test ideas
Demise of test scripts rise of test ideasDemise of test scripts rise of test ideas
Demise of test scripts rise of test ideasRichard Robinson
 
Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Raj Indugula
 
QASymphony - How to Start, Grow & Perfect Exploratory Testing on your Team
QASymphony - How to Start, Grow & Perfect Exploratory Testing on your TeamQASymphony - How to Start, Grow & Perfect Exploratory Testing on your Team
QASymphony - How to Start, Grow & Perfect Exploratory Testing on your Teamelizabethdiazqa
 
QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...
QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...
QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...QASymphony
 
Learn Learning + Prototype Testing
Learn Learning + Prototype TestingLearn Learning + Prototype Testing
Learn Learning + Prototype TestingDave Hora
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniques2PiRTechnologies
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniquesAshutosh Garg
 
Requirements Elicitation Techniques For Data Discovery
Requirements Elicitation Techniques For Data DiscoveryRequirements Elicitation Techniques For Data Discovery
Requirements Elicitation Techniques For Data DiscoveryJoe Newbert
 
Session-Based Test Management
Session-Based Test ManagementSession-Based Test Management
Session-Based Test Managementcaltonhill
 
Using Automated Testing Tools to Empower Your User Research
Using Automated Testing Tools to Empower Your User ResearchUsing Automated Testing Tools to Empower Your User Research
Using Automated Testing Tools to Empower Your User ResearchUserZoom
 
UX and Usability Workshop Southampton Solent University
UX and Usability Workshop Southampton Solent University UX and Usability Workshop Southampton Solent University
UX and Usability Workshop Southampton Solent University Dr.Mohammed Alhusban
 

Semelhante a STARCANADA 2013 Keynote: Lightning Strikes the Keynotes (20)

Usability Evaluation
Usability EvaluationUsability Evaluation
Usability Evaluation
 
classmar2.ppt
classmar2.pptclassmar2.ppt
classmar2.ppt
 
11 - Evaluating Framework in Interaction Design_new.pptx
11 - Evaluating Framework in Interaction Design_new.pptx11 - Evaluating Framework in Interaction Design_new.pptx
11 - Evaluating Framework in Interaction Design_new.pptx
 
Effective Business Analysis in a Changing World
Effective Business Analysis in a Changing WorldEffective Business Analysis in a Changing World
Effective Business Analysis in a Changing World
 
Usability Testing for Qualitative Researchers - QRCA NYC Chapter event
Usability Testing for Qualitative Researchers - QRCA NYC Chapter eventUsability Testing for Qualitative Researchers - QRCA NYC Chapter event
Usability Testing for Qualitative Researchers - QRCA NYC Chapter event
 
More Than Usability
More Than UsabilityMore Than Usability
More Than Usability
 
How to make change happen in your organisation by talking your devs language
How to make change happen in your organisation by talking your devs languageHow to make change happen in your organisation by talking your devs language
How to make change happen in your organisation by talking your devs language
 
Notes on usability testing
Notes on usability testingNotes on usability testing
Notes on usability testing
 
New Model Testing: A New Test Process and Tool
New Model Testing:  A New Test Process and ToolNew Model Testing:  A New Test Process and Tool
New Model Testing: A New Test Process and Tool
 
Demise of test scripts rise of test ideas
Demise of test scripts rise of test ideasDemise of test scripts rise of test ideas
Demise of test scripts rise of test ideas
 
Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Dare to Explore: Discover ET!
Dare to Explore: Discover ET!
 
QASymphony - How to Start, Grow & Perfect Exploratory Testing on your Team
QASymphony - How to Start, Grow & Perfect Exploratory Testing on your TeamQASymphony - How to Start, Grow & Perfect Exploratory Testing on your Team
QASymphony - How to Start, Grow & Perfect Exploratory Testing on your Team
 
QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...
QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...
QASymphony Webinar - "How to Start, Grow & Perfect Exploratory Testing on you...
 
Learn Learning + Prototype Testing
Learn Learning + Prototype TestingLearn Learning + Prototype Testing
Learn Learning + Prototype Testing
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniques
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniques
 
Requirements Elicitation Techniques For Data Discovery
Requirements Elicitation Techniques For Data DiscoveryRequirements Elicitation Techniques For Data Discovery
Requirements Elicitation Techniques For Data Discovery
 
Session-Based Test Management
Session-Based Test ManagementSession-Based Test Management
Session-Based Test Management
 
Using Automated Testing Tools to Empower Your User Research
Using Automated Testing Tools to Empower Your User ResearchUsing Automated Testing Tools to Empower Your User Research
Using Automated Testing Tools to Empower Your User Research
 
UX and Usability Workshop Southampton Solent University
UX and Usability Workshop Southampton Solent University UX and Usability Workshop Southampton Solent University
UX and Usability Workshop Southampton Solent University
 

Mais de TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and RecoveringTechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartTechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyTechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowTechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityTechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyTechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipTechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsTechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GameTechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsTechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationTechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessTechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateTechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessTechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTechWell
 

Mais de TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Último

AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 

Último (20)

AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

  • 1. Lightning Strikes The Keynotes Moderated by Lee Copeland lee@sqe.com
  • 2. Featuring Jon Bach Michael Bolton Janet Gregory Keith Klain Paul Holland Gerard Meszaros Fiona Charles Griffin Jones Nate Oster
  • 7. Error Message Via Rail, between Montreal and Toronto, 2007
  • 8. But I can’t contact my… oh, never mind. Error Message Via Rail, between Montreal and Toronto, 2007
  • 10. If you can’t do math, it’s a nickel extra. Hyatt Regency, 2008
  • 11. Why you shouldn’t let an unsupervised algorithm choose your sponsored links (1). Vimeo’s Web Page Spring 2010
  • 12. Why you shouldn’t let an unsupervised algorithm choose your sponsored links (2). Vimeo’s Web Page Spring 2010
  • 13. Why you shouldn’t let an unsupervised algorithm choose your sponsored links (3). Vimeo’s Web Page Spring 2010
  • 16. OK, fine. Don’t Know Who This Was
  • 26. I think I’ll shoot my own trouble for now. Windows
  • 30. Testing is more than checking.
  • 31. Welcome to the new world. “The World of Heineken” Heineken Experience, Amsterdam, 2006
  • 33. Functional Specification Blinders - My Experiences with Creativity Paul Holland Test Consultant and Teacher at Testing Thoughts
  • 34. Test Idea Creation • A “Typical” method of developing test cases or test ideas: 1. 2. 3. 4. 5. 6. Start by reading functional specification Write down test ideas (or create TCs) Try to think of other ways to test product If you think of any, write those down too When product is available, execute test ideas While testing try to think of more test ideas April, 2013 ©2013 Testing Thoughts 34
  • 35. What I Do on my Teams • Over the past five years as a test manager at Alcatel-Lucent, I would reverse two steps: 1. 2. 3. 4. 5. 6. Think of all ways you can to test product Write down test ideas Only then you read the functional specification Write any new ideas down When product is available, execute test ideas While testing try to think of more test ideas April, 2013 ©2013 Testing Thoughts 35
  • 36. How To Model Without FS • Oh no! I can’t read the functional specification. How can I possibly think of test ideas? 1. If the product is available, then play with it 2. If not, then talk to designers, architects, marketing, customers, project managers, etc. 3. Find out why the new feature/product is being developed and how it will be used 4. Play with competitive/similar products/features 5. Learn as much as you can at a high level April, 2013 ©2013 Testing Thoughts 36
  • 37. Justification • For years I had asked my team to think of their own test ideas before reading the functional specification • I now have (statistically invalid) proof that reading the specification first can stifle individual creativity and limit the testing ideas that are generated April, 2013 ©2013 Testing Thoughts 37
  • 38. Experience Report • During a modeling exercise of the Rapid Software Testing course November, 2012: – Students were asked to identify all the dimensions of an object that may be relevant to testing it April, 2013 ©2013 Testing Thoughts 38
  • 39. Experience Report • Students typically start with intrinsic dimensions: – Height, width, material, volume, etc. • They then progress to relative dimensions: – Durability, dishwasher safe, contents, place of manufacture, where it is now, where it has been, etc. April, 2013 ©2013 Testing Thoughts 39
  • 40. Experience Report • Some students mention “conformance with standards” • There is an ISO specification for a specific version of this object – A few have found this ISO specification exists – One student of mine found the spec and read it April, 2013 ©2013 Testing Thoughts 40
  • 41. Experience Report • He found the spec BEFORE he had tried to think of his own dimensions • After he read the spec, he could not think of ANY other dimensions • In other exercises, this student showed good levels of creativity • In this exercise, his creativity had been completely stifled by putting on the “specification blinders” April, 2013 ©2013 Testing Thoughts 41
  • 42. Summary • Try to think of your own test ideas BEFORE reading the functional specification, previously existing test cases, or any other rigid documentation that may compartmentalize your thoughts • Do not stifle your creativity. The functional specification will be waiting for you when you have done some of your own thinking April, 2013 ©2013 Testing Thoughts 42
  • 45. WREST Workshop on Regulated Software Testing Software subject to review by an internal or external regulatory body
  • 46. Purpose and Format • Share and generate ideas and techniques • Provide a forum for people interested in the topic • Participation is free and open to all • LAWST-style rules of engagement
  • 47. Workshop Structure • Facilitated • Series of experiential presentations and group discussions • Atmosphere is collaborative, supportive and constructive • Focus on the practical and useful
  • 48. More Information • Next WREST: May 3rd 2013 Hosted by SQE at STAREAST • Contact: Karen N. Johnson, John McConda, Griffin Jones • Website: wrestworkshop.com
  • 50. Avoiding Unmaintainable Automated Tests Gerard Meszaros StarCanada2013@gerardm.com
  • 51. Premise: Automated Tests are a Self-Verifying Behavior Specification Because: They Tell us What the System Should Continue to Do After any changes or bug fixes we apply
  • 52. The Challenge: How to Avoid Creating Tests/Checks/Specs that Need Frequent Maintenance ?
  • 53. My Belief: Most Automated Tests Have Too Much Detail Which is What Makes Them Require Frequent Maintenance
  • 54. Behavior Specification at Right Level High Detail Low Need to specify at the right detail and scope Broad Scope Narrow
  • 55. Behavior Specification at Right Level  High Detail Low  Specify broad scope at minimum detail Specify most detailed req’ts at narrowest scope Incomplete Spec MultiUse Case Workflows Transactions (Use Cases) Too much detail Unmaintainable Broad Scope Rules & Algorithms Narrow
  • 56. Example: Configurable Bank TX Notifications Configure Notification Rules Suspend Notification Account Holder Resume Notification Process Transaction Transaction Settlement
  • 57. Example: Testing Notifications - 1 Given: User and Accounts When: Notification Rule Configured Then: Then: Notification Rule Notification Rule Configured and Configured and Active Active
  • 58. Example: Testing Notifications - 2 Use Case: Process Transactions When: The Transactions to be processed Then: Expected Notifications Medium Detail; Large Scope Too much detail given the scope
  • 59. Issues With This Test • Difficult to understand which TX should notify – because cause (rules) and effect (notification) are far apart • Only verifies one simple combination of rules – – We will require many more tests to test all the other combinations Lots of repetition of workflow & data across test cases • Tests will take a long time to run – Due to need to configure first, then run transaction processing
  • 60. Changing Level of Abstraction/Detail Too detailed for verifying workflow and Too broadly scoped for checking the rules Need to Reduce Detail or Reduce Scope Incomplete MultiSpec Use Case Workflows Transactions (Use Cases) Re De duce ta il a L High ot Detail Low • • • e u c bi t d R e th a Bo Too Rules & Re much detail dupceea Lot! Algorithms Sc o Unmaintainable Broad Scope Narrow
  • 61. Example: Given: User & The overall workflow should be defined at a very high level Thresholds Specifying Notification Workflow When: Transactions Are Processed Broad Scope; Minimum Detail; Irrelevant Details Omitted! Then: Expected Notifications
  • 62. Changing Level of Abstraction/Detail Incomplete MultiSpec Use Case Workflows Transactions (Use Cases) Re De duce ta il a L High ot Detail Low • Need the detail to specify notification rules • Therefore, need to reduce scope e u c bi t d R e th a Bo Too Rules & R much detailedupceea Lot! Algorithms Sc o Unmaintainable Broad Scope Narrow
  • 63. Example: Business Rule Specs When we ask NotificationRequired? with this transaction: Threshold per Charge Type Given these Process Transaction Configuration rules High Detail; Narrow Scope Easy to Understand Then: The answer should be
  • 64. Business Rules Tests Encourage: • Encapsulation of Rules in “Rules Component” – which can Expose a Test API System Under Test Configuration Configure User Interface Threshold Notification Rule Test Transaction Interface Notification Notification RulesRules Fake Notification Process Transaction Notification Required? Do Notification. • Accept Rules via “Data Injection” – To Simplify Test Automation Notification Log • Making Automation a Dev’t Responsibility – To incent design-for-testability
  • 65. In Summary:  Manage Scope vs. Detail – to Avoid Unmaintainable Tests/Specs  Provide the Tests/Specs to Dev’t Before System Built – to allow Dev’t to automate the test – to ensure Design-for-Testability Thank You! Gerard Meszaros StarCanada2013@gerardm.com http://www.xunitpatterns.com http://ScopeVsDetail.gerardm.com Jolt Productivity Award winner - Technical Books http://testingguidance.co deplex.com/
  • 66. Our Thanks To Jon Bach Michael Bolton Janet Gregory Keith Klain Paul Holland Gerard Meszaros Fiona Charles Griffin Jones Nate Oster

Notas do Editor

  1. Good afternoon. My name is Gerard Meszaros and I’m speaking on how to avoid unmaintainable automated tests.
  2. The challenge, as I see it, is to avoid creating tests or specs that need frequent maintenance.
  3. My belief is that most automated tests have too much detail and that is what makes them unmaintainable.
  4. So, How Can we use this to avoid unmaintainable tests? We need to specify each part of the functionality at the right level of detail and scope. Tests with very broad scope (such as the end-to-end process) should be specified with a minimum of detail for each step. Tests that specify a great deal of detail should be kept very narrow in scope. Such as a specific business rule or algorithm. Specifying broad scope in high detail results in tests that are very long and too verbose to understand. This results in a lot of duplicated and unmaintainable detail. Specifying with too little detail for narrow scope results in too many specs that say very little. But this is rarely the problem. The goal is to make our examples and tests each to understand and easy to write. This requires using the right language in each spec.
  5. Tests with very broad scope (such as the end-to-end process) should be specified with a minimum of detail for each step. Tests that specify a great deal of detail should be kept very narrow in scope. Such as a specific business rule or algorithm. Specifying broad scope in high detail results in tests that are very long and too verbose to understand. This results in a lot of duplicated and unmaintainable detail. Specifying with too little detail for narrow scope results in too many specs that say very little. But this is rarely the problem. The goal is to make our examples and tests each to understand and easy to write. This requires using the right language in each spec.
  6. Suppose we are specifying how our bank will notify us of transactions on our accounts. The bank provides us with a user interface to configure the notification rules it will use while processing transactions.
  7. Here’s a first crack at writing a test that specifies how our application should work. First, a user signs in and configures a notification rule on one account. All transactions of any type over $10,000 on their chequing account should result in an e-mail to them. They can verify that the rule was accepted by reviewing the list of accounts and the active notifications. All of this effort just to set up the Given for the test conditions. Next we need to create some transactions against these accounts.
  8. So we process a bunch of transactions in various amounts above and below the threshold for various accounts and transaction types. These constitute the When’s of the test conditions. The final table lists the expected notifications; the Then’s of the test conditions.
  9. It’s getting a bit difficult to follow along because the cause & effect are not close to each other. And this test only verifies one particular combination of notification rule. We’ll need to create other test cases for each of various combinations of rules we could have. That will result in a lot of repetition across the test cases. And these test cases will take a long time to run if we hook them up to the user interface of our application.
  10. These tests are too detailed for verifying the overall workflow and too broadly scoped for checking the notification rules. We need to either reduce the level of detail in the workflow test or Reduce the scope to just the business rules if we want to keep the details. So let’s look at how we can reduce the detail.
  11. The overall workflow should be defined at a very high level. Only the essential details should be specified here because we’ll need to touch on many of the transactions and providing too much detail would make these specs too hard to understand. So we start by identifying our user and the thresholds in effect. The transactions we process become the when’s of our test. And the list of notifications we expect specify the Then’s. This test is still broad in scope (several use cases) but with only the bare minimum details required to explain the functionality.
  12. Now that we understand the overall workflow, we can move on to specifying the details of the notification rules. This requires a lot of detail so we must reduce the scope to just the NotificationRequired component.
  13. First we must specify the notification thresholds we want to use (on the left side of the slide.) Then we want to invoke the NotificationRequired component once for each row in the table on the right. The first 3 columns specify the inputs to the notification decision and the last column is the expected result. This format makes it easy to read the test conditions directly from these tests. (Given these thresholds, when we ask IsNotificationRequired? With Account 100372 with Travel charge for 999.99, the answer should be No.)
  14. A very desirable side-effect of specifying our requirements this way is that it makes our testability requirements explicit: These tests encourage us to encapsulate the notification rules in a Rules Component which can be accessed directly by the test via an API. This allows our tests to focus on what they want the NotificationReq’d component to do and not how to interact with it via the Process Transaction components. It also encourages us to structure the code so that it is easy to “inject” a set of rules directly into the component thereby avoiding use of the rules configuration logic. This simplifies test automation significantly. We can further incent dev’t to structure the code this way by making the automation of these tests/specs part of their job.
  15. So in Summary, my key points are: It’s important to: * manage the scope and level of detail of tests to avoid unmaintainable tests. * Provide the tests to the developers before they build the system to allow them to automate the test which then ensures the system is designed for testability.