question to understand (how to test an user story #1)
TRANSCRIPT
How to test an user storyQuestion to UnderstandPowered by HBT
T AshokFounder & CEOSTAG Software Private LimitedArchitect - HBT
in.linkedin.com/in/AshokSTAG Ash_Thiru
Webinar: Feb 19, 2015, 1100-1200 IST
© 2015 STAG Software Private Limited. All rights reserved. 2
An user story is seen as a modern way of communicating the end user's needs and expectationsin a sweet and simple format that can be easily modified.
This brevity/simplicity hides information leading to understanding in the small and potentially missing the big picture.
This webinar focuses on how-to-identify these "white spaces" in an user story to uncover potential gaps and understand what it is supposed to accomplish.
© 2015 STAG Software Private Limited. All rights reserved.
User story
3
User Story
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria (From www.scrumalliance.org community article)
Independent
Negotiable
Value adding
Estimable
Small
Testable
© 2015 STAG Software Private Limited. All rights reserved.
The value of good understanding
4
The focus of lean thinking is to “reduce waste”.
It is not about finding issues later by testing, rather it is about not having these in the first place.
Good questions enable clarity via: - being clear of what you know- discovering what you don’t know
Question to understand
Spec
Implement
Design
Code
Validate
Prevent issues
Detect early
Ensure detection
© 2015 STAG Software Private Limited. All rights reserved.
User story - What should we understand?
5
User Story
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
WhyIssue/benefit
What are we solving?What is the expected benefit to the user?
© 2015 STAG Software Private Limited. All rights reserved. 6
User StoryWhoUser/Persona
Who is this meant for?The background of user & usage
WhyIssue/benefit
What are we solving?What is the expected benefit to the user?
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 7
User StoryWhoUser/Persona
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
WhyIssue/benefit
What are we solving?What is the expected benefit to the user?
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 8
User StoryWhoUser/Persona
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
WhyIssue/benefit
HowBehaviour conditionsImplementation
What are we solving?What is the expected benefit to the user?
Understand business logic,& implementation details
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 9
User StoryWhoUser/Persona
WhatCollaborations
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
... with other user stories
... other systems
WhyIssue/benefit
HowBehaviour conditionsImplementation
What are we solving?What is the expected benefit to the user?
Understand business logic,& implementation details
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 10
User StoryWhoUser/Persona
WhatCollaborations
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
... with other user stories
... other systems
WhyIssue/benefit
HowBehaviour conditionsImplementation
WhereEnvironment
What are we solving?What is the expected benefit to the user?
Understand business logic,& implementation details
... user’s situation/ constraints
... deployment environment/ constraints
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 11
User StoryWhoUser/Persona
WhatCollaborations
WhenPre-conditions
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
... with other user stories
... other systemsSystem states, prerequisites
WhyIssue/benefit
HowBehaviour conditionsImplementation
WhereEnvironment
What are we solving?What is the expected benefit to the user?
Understand business logic,& implementation details
... user’s situation/ constraints
... deployment environment/ constraints
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 12
User StoryWhoUser/Persona
WhatCollaborations
WhenPre-conditions
Is it?Acceptance criteria
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
... with other user stories
... other systemsSystem states, prerequisites
... functional : conditions of satisfaction
... non-functional attributes too
WhyIssue/benefit
HowBehaviour conditionsImplementation
WhereEnvironment
What are we solving?What is the expected benefit to the user?
Understand business logic,& implementation details
... user’s situation/ constraints
... deployment environment/ constraints
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved. 13
User StoryWhoUser/Persona
WhatCollaborations
WhenPre-conditions
Is it?Acceptance criteria
How muchUsage profile
Who is this meant for?The background of user & usage
Volume, frequency concurrencyPerception of importance
... with other user stories
... other systemsSystem states, prerequisites
... functional : conditions of satisfaction
... non-functional attributes too
WhyIssue/benefit
HowBehaviour conditionsImplementation
WhereEnvironment
What are we solving?What is the expected benefit to the user?
Understand business logic,& implementation details
... user’s situation/ constraints
... deployment environment/ constraints
“As a <specific user/persona/role>” I want <desired feature/issue that needs to be solved>, so that <benefit from the feature>”+ Acceptance Criteria
User story - What should we understand?
© 2015 STAG Software Private Limited. All rights reserved.
Real life usage
14
1
4
7
2
5
8
3
6
9
OtherSystem1
Other System2
... is a collection of user stories strung together.
Ultimately we need to validate the various flows.
© 2015 STAG Software Private Limited. All rights reserved.
Understand evolution ...
15
t0 t1 t2
A
Unchanged US
B
US modified!
P1 P2 P1 P2
User Story
P1 P2 P1 P2
User Story
Modification/Extension/DropUnderstand change impact to “what can break/go-wrong-newly”
© 2015 STAG Software Private Limited. All rights reserved.
Information needed for good understanding...
16
Success factors
Marketplace & Customer types
End users
User stories, Flows, Attributes
Prioritization & Usage profile
Interactions/Collaborations
Deployment environment
Stage of development
Behaviour
Structure - Architecture, Technologies
The reason for deploying the system
The target for our business
Who will use our system? How many?
What do they need? What are their expectations?
Which is more important? How will it be used?
How do use cases work collaborate to deliver value?
Where will it run?
How do the internals look like?
Built new or modified or status quo?
What conditions govern the behaviour ?
© 2015 STAG Software Private Limited. All rights reserved.
Information needed for good understanding...
17
External information
to
Internal information
Success factors
Marketplace & Customer types
End users
User stories, Flows, Attributes
Prioritization & Usage profile
Interactions/Collaborations
Deployment environment
Stage of development
Behaviour
Structure - Architecture, Technologies
© 2015 STAG Software Private Limited. All rights reserved.
Techniques to Aid “Scientific Questioning”
18
Landscaping - A Core Concept in HBTA technique to rapidly understand a system by examining various elements and their connections between them.
Viewpoints - A Core Concept in HBTSee the system from various end users’ point of view to identify the needs & expectations to set a clear baseline.
Personal, scientific test methodology.SIX staged evaluation powered byEIGHT disciplines of thinking usingTHIRTY TWO Core Concepts.
HBT
© 2015 STAG Software Private Limited. All rights reserved. 19
It is based on the simple principle:“Good questions matter more than the answers. Even if questions do not yield answers, it is ok, as it is even more important to know what you do not know.”
Landscaping states that there are about SIXTEEN information elements that will enable good understanding of the system.
The act of seeking information on these SIXTEEN elements and their interconnections results in questions that aid in understanding.
Landscaping - A Core Concept in HBTA technique to rapidly understand the system by examining the various elements and the connections between them.
© 2015 STAG Software Private Limited. All rights reserved. 2019
Good testing requires that the tester evaluate the system from the end-use angle i.e. put oneself in the end-user’s shoes. This is easier said than done.System
Viewpoints - A Core Concept in HBTSee the system from various end users’ point of view to identify their needs & expectations to set a clear baseline.
© 2015 STAG Software Private Limited. All rights reserved.
Hypothesis Based Testing - HBT
21
System Under Test
Cleanliness Criteria
Potential Defect Types
Test CasesRequirementstraceability“what to test”
Faulttraceability“test for what”
should satisfy impeded by
Click here to know more about HBT.http://stagsoftware.com/blog?p=570
© 2015 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
HBT is the intellectual property of STAG Software Private Limited.STEMTM is the trademark of STAG Software Private Limited.
@stagsoft
blog.stagsoftware.com
Connect with us...
Thank you.
How to test an user story : Question to Understand
Powered by HBT