How do you test ideas?
Sounds like a hard question... What does it even mean?
To test ideas, you need to break out of a traditional mindset of thinking that testing purely relates to the boundaries of making sure that software meets the expectations of how it is supposed to work. We need to think more about the unknowns... The unexpected things relating to software. Only then can we transpire those ideas of unknowns to our initial thinking about the software solution before we even attempt to write a line of code or an artefact to try and describe the expectations.
All software starts with an idea - an idea for a solution to a problem, or an idea to make money, or an idea to delight people. Testing the idea of the software solution is a hugely important part of continuous testing.
This testing, at the earliest point in time within the SDLC, actually helps prevent problems and bugs. It helps uncover unknowns. Unknowns related to risks and unknowns that cause assumptions and ambiguities within the design and development of the software. And this testing requires a whole host of psychology and sociology skills.
In this talk, Dan will share his ideas, experiences, success stories and pain points, strategies, tips & tricks and more, regarding why and how to test your ideas.
3. 1. What it really means to “test ideas” in the context of agile
2. Why it’s important
3. How to approach conflict regarding opposing ideas
4. How to unlock the meeting rooms to be able to test ideas
Key takeaways:
12. IdeaTesting
BDD
Communication 3
Amigos
Collaboration
User Stories
Epics
ACs
BPDs
Risk Maps
Data Flows
Feature
Files
Mind
Maps
Development
Activities
Design
Activities
Testing
Activities
Requirement
Specs
Automation
ActivitiesOps
Activities
Support
Activities
Those artefacts containing more info can then be used to stem other activities…
Testing
BDD
Communication 3
Amigos
Collaboration
13. IdeaTesting
BDD
Communication 3
Amigos
Collaboration
User Stories
Epics
ACs
BPDs
Risk Maps
Data Flows
Feature
Files
Mind
Maps
Development
Activities
Design
Activities
Testing
Activities
Requirement
Specs
Automation
ActivitiesOps
Activities
Support
Activities
Software Code
Technical Debt
Environments
Production
Monitoring
Test Reports
Testing Notes
Test Cases &
Test Charters
Wireframes
CSS
Customer
feedback
Automation Code
Automation
Results
CI / CD
Code Review
Notes
Those activities create the
project outputs & allow
us to measure
success and feed
back into new
ideas
16. Knowledge is a big subject. Ignorance is bigger. And it is more
interesting.
Perhaps this sounds strange because we all seek knowledge
and hope to avoid ignorance. We want to know how to do this,
and get that, and succeed in various endeavours.
So what does come after knowledge?
You might not think of it in this order, but I would say that
ignorance follows knowledge, not the other way around.
- Stuart Firestein
(from his book: “IGNORANCE: HOW IT DRIVES SCIENCE”)
18. Ideas
Artefacts
UX/UI designs
Architecture & code design
Code
Operational software
Test environment
Release pipelines
Software in production
…
Continuous testing within the SDLC
19. Ideas
Artefacts
UX/UI designs
Architecture & code design
Code
Operational software
Test environment
Release pipelines
Software in production
…
Feedback loops from continuous testing within the SDLC
20. Ideas
Artefacts
UX/UI designs
Architecture & code design
Code
Operational software
Test environment
Release pipelines
Software in production
…
Proactive quality -vs- reactive quality
21. Proactive quality -vs- reactive quality
Investigating ideas and designs to
uncover risks, variables and
unknowns to feed design and
prevent problems proactively
Investigating risks and unknowns
in the software to uncover
problems and info to be able to
respond and fix reactively
40. “The Scale of influence” – by Julie Starr (from her book: “Brilliant Coaching”)
Instruction Advice Opinion Observation Summary Ask them Silence
“Invite me to
the meeting
please.”
“You should
have a tester
in this
meeting.”
“I think you’d
benefit from
having a
tester in this
discussion.”
“I noticed
that you
haven’t
invited a
tester to this
meeting yet.”
“Here’s why
you need a
tester in the
meeting...”
“Can I join
this meeting
to test the
ideas?”
…
(this could
be akin to
letting it fail
to prove a
point).
Directive Non-Directive
Communicate Effectively