starcanada 2013 keynote: lightning strikes the keynotes

66
Lightning Strikes The Keynotes Moderated by Lee Copeland [email protected]

Upload: techwellpresentations

Post on 20-Jan-2015

104 views

Category:

Technology


1 download

DESCRIPTION

Throughout the years, Lightning Talks have been a popular part of the STAR conferences. If you’re not familiar with the concept, Lightning Talks consists of a series of five-minute talks by different speakers within one presentation period. Lightning Talks are the opportunity for speakers to deliver their single biggest bang-for-the-buck idea in a rapid-fire presentation. And now, lightning has struck the STAR keynotes. Some of the best-known experts in testing—Jon Bach, Michael Bolton, Fiona Charles, Janet Gregory, Paul Holland, Griffin Jones, Keith Klain, Gerard Meszaros, and Nate Oster—will step up to the podium and give you their best shot of lightning. Get ten keynote presentations for the price of one—and have some fun at the same time.

TRANSCRIPT

Page 1: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Lightning Strikes The Keynotes

Moderated by

Lee [email protected]

Page 2: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Featuring

Michael BoltonJon Bach Fiona Charles

Griffin Jones

Keith Klain Gerard Meszaros

Janet Gregory Paul Holland

Nate Oster

Page 3: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Michael Bolton

Page 4: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Attention,Deficit,Disorder.

Michael Bolton

http://www.developsense.com

Page 5: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

aircanada.com

Page 6: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

aircanada.com

Page 7: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Error MessageVia Rail, between Montreal and Toronto, 2007

Page 8: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

But I can’t contact my… oh, never mind.

Error MessageVia Rail, between Montreal and Toronto, 2007

Page 9: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Hyatt Regency, 2008

Page 10: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

If you can’t do math, it’s a nickel extra.

Hyatt Regency, 2008

Page 11: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Vimeo’s Web PageSpring 2010

Page 12: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Why you shouldn’t let an unsupervised algorithm choose your sponsored links (2).

Vimeo’s Web PageSpring 2010

Page 13: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Why you shouldn’t let an unsupervised algorithm choose your sponsored links (3).

Vimeo’s Web PageSpring 2010

Page 14: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Google Chrome

Page 15: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Google Calendar Update

Page 16: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

OK, fine.

Don’t Know Who This Was

Page 17: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Adobe Acrobat

Page 18: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Adobe Acrobat

Page 19: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Microsoft Outlook

Page 20: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Intuit Quicken

Page 21: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Intuit Quicken

Page 22: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Intuit Quicken

Page 23: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Here’s another err.

Intuit Quicken

Page 24: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

ibm.com

Page 25: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Windows

Page 26: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

I think I’ll shoot my own trouble for now.

Windows

Page 27: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Windows

Page 28: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

I don’t know!

Windows

Page 29: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

iTunes

Page 30: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Testing is more than checking.

Page 31: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Welcome to the new world.

“The World of Heineken”Heineken Experience, Amsterdam, 2006

Page 32: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Paul Holland

Page 33: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Functional Specification Blinders - My Experiences with Creativity

Paul Holland Test Consultant and Teacher at Testing Thoughts

Page 34: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Test Idea Creation

• A “Typical” method of developing test cases or test ideas:

1. Start by reading functional specification2. Write down test ideas (or create TCs)3. Try to think of other ways to test product4. If you think of any, write those down too5. When product is available, execute test ideas6. While testing try to think of more test ideas

April, 2013 ©2013 Testing Thoughts 34

Page 35: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

What I Do on my Teams

• Over the past five years as a test manager at Alcatel-Lucent, I would reverse two steps:

1. Think of all ways you can to test product2. Write down test ideas3. Only then you read the functional specification4. Write any new ideas down5. When product is available, execute test ideas6. While testing try to think of more test ideas

April, 2013 ©2013 Testing Thoughts 35

Page 36: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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 it2. 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 used4. Play with competitive/similar products/features5. Learn as much as you can at a high level

April, 2013 ©2013 Testing Thoughts 36

Page 37: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 38: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 39: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 40: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 41: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 42: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 43: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

April, 2013 ©2013 Testing Thoughts 43

Page 44: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Griffin Jones

Page 45: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

WRESTWorkshop on Regulated Software Testing

Software subject to review by an internal or external regulatory body

Page 46: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 47: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Workshop Structure• Facilitated • Series of experiential

presentations and group discussions

• Atmosphere is collaborative, supportive and constructive

• Focus on the practical and useful

Page 48: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

More Information• Next WREST: May 3rd 2013

Hosted by SQE at STAREAST

• Contact:Karen N. Johnson, John McConda, Griffin Jones

• Website: wrestworkshop.com

Page 49: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Gerard Meszaros

Page 50: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Avoiding Unmaintainable Automated Tests

Gerard Meszaros

[email protected]

Page 51: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 52: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

The Challenge:

How to Avoid Creating

Tests/Checks/Specs

that Need Frequent Maintenance ?

Page 53: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

My Belief:

Most Automated Tests Have Too Much Detail

Which is What Makes Them Require Frequent Maintenance

Page 54: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Need to specify at the right detail and scope

Behavior Specification at Right Level

Broad Narrow

Detail

Hig

h

Lo

w

Scope

Page 55: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Behavior Specification at Right Level

Rules &Algorithms

Multi-Use CaseWorkflows

Transactions(Use Cases)

IncompleteSpec

Too much detailUnmaintainable

Broad Narrow

Detail

Hig

h

Lo

w

Scope

Page 56: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Configurable Bank TX NotificationsExample:

Configure Notification

Rules

Suspend Notification

Resume Notification

AccountHolder

Process Transaction

TransactionSettlement

Page 57: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Testing Notifications - 1

Given: User and Accounts

Example:

When: Notification

Rule Configured

Then:Notification Rule

Configured and Active

Then:Notification Rule Configured and

Active

Page 58: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Testing Notifications - 2

Then: ExpectedNotifications

Medium Detail; Large ScopeToo much detail given the scope

Example:

When: The Transactions to be processed

Use Case: Process

Transactions

Page 59: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Page 60: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

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

Rules &Algorithms

Multi-Use CaseWorkflows

Transactions(Use Cases)

Too much detail

Unmaintainable

IncompleteSpec

Broad Narrow

Detail

Hig

h

L

ow

Scope

Reduce

Scope a Lot!Reduce

Both a bitRed

uce

Det

ail a

Lot

Page 61: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Specifying Notification WorkflowExample:

Broad Scope; Minimum Detail; Irrelevant Details Omitted!

Given: User &

Thresholds

When: Transactions

Are Processed

Then: Expected

Notifications

The overall workflow should be defined at a very high level

Page 62: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Changing Level of Abstraction/Detail• Need the detail to specify notification rules• Therefore, need to reduce scope

Rules &Algorithms

Multi-Use CaseWorkflows

Transactions(Use Cases)

IncompleteSpec

Too much detail

UnmaintainableBroad Narrow

Detail

Hig

h

Lo

w

Scope

Reduce

Scope a Lot!

Red

uce

Det

ail a

Lot

Reduce

Both a bit

Page 63: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Business Rule Specs

Configuration

Process Transaction

Threshold per Charge Type

High Detail; Narrow ScopeEasy to Understand

Example:

Given these rules

When we ask NotificationRequired

? with this transaction:

Then: The answer should be

Page 64: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

NotificationLog

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

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

• Making Automation a Dev’t Responsibility– To incent design-for-testability

System Under Test

Business Rules Tests Encourage:

NotificationRequired?

Do

Notification.

ProcessTransaction

ConfigureNotification

ThresholdNotification

Rules

Transaction

Interface

ConfigurationUser

Interface

NotificationRule Test

NotificationRules Fake

Page 65: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Gerard [email protected]

http://www.xunitpatterns.comhttp://ScopeVsDetail.gerardm.com

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!Jolt Productivity Award

winner - Technical Books

http://testingguidance.codeple

x.com/

Page 66: STARCANADA 2013 Keynote: Lightning Strikes the Keynotes

Our Thanks To

Michael BoltonJon Bach Fiona Charles

Griffin Jones

Keith Klain Gerard Meszaros

Janet Gregory Paul Holland

Nate Oster