SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Landscaping
A technique to aid understanding




T Ashok
ash@stagsoftware.com
  in.linkedin.com/in/AshokSTAG
  ash_thiru
The PROBLEM

 How you understand expectations and needs?


If I do not have a deep domain knowledge, how do I
understand an application to test well?


How do I come with good questions to understand?
Is there a scientific/systematic way to questioning?



 Copyright 2011 STAG Software Private Limited. All rights reserved.   www.stagsoftware.com
Key premise

 Good questioning is key to good understanding.


It is perfectly OK to ask questions for which no clear
answers are available.

“It is more important to know what you do not know,
rather than be content with what you know”


It is therefore important to come up with good questions
rather than worry about the availability of answers.

 Copyright 2011 STAG Software Private Limited. All rights reserved.   www.stagsoftware.com
The BIG QUESTION



Given an application and whatever available
documentation (which is always less!) how do I
understand well enough to test effectively?

Does my ability to understand depend solely on my
prior experience with similar applications/domain?

What if I am not as well versed in that domain?



 Copyright 2011 STAG Software Private Limited. All rights reserved.   www.stagsoftware.com
The story of Joe the tester...


In the story “The diagnosis”, Joe faced with the problem of
understanding a new application in a domain that he is unfamilar
with, has the “Aha” moment at a doctors’s office
during the process of ‘diagnosis’.

He sees parallels in doctor’s questioning technique to diagnose the
problem and his problem of understanding of the application. He
understands that decomposing the problem into information
elements and establishing the connections between these elements
enables him to come up with good questions to understanding the
application. Voila!


 Click here for the story “The diagnosis”
 Published in “Tea time with testers” May 2011




 Copyright 2011 STAG Software Private Limited. All rights reserved.   www.stagsoftware.com
Joe figured that understanding an application is not just about
walking though the various features via the user interface
(assuming that the application has an UI).

It requires a scientific/systematic walkthrough of various
elements commencing from the customer’s needs/expectations
and then into the application’s deployment environment,
architecture, features, behaviour and structure.



                   He understood that he needed to construct a
                   “good landscape” of the system and establish
                   a clear baseline for effective testing.


Copyright 2011 STAG Software Private Limited. All rights reserved.   www.stagsoftware.com
Landscaping - A core concept in HBT
Landscaping, a core concept in HBT (Hypothesis Based Testing) enables one to
systematically come with meaningful questions to understand the end users,
application and the context.

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 of
                                                                      these SIXTEEN elements and their
                                                                      interconnections results in
                                                                      questions that aid in
                                                                      understanding.




 Copyright 2011 STAG Software Private Limited. All rights reserved.                             www.stagsoftware.com
Information needed for good understanding...

 Success factors                                                      The reason for deploying the system


 Marketplace & Customer types                                         The target for our business


 End user                                                             Who will use our system? How many?


 Requirement, Features, Attributes                                    What do they need? What are their expectations?


 Ranking of features & Usage profile                                   Which is more important? How will it be used?

 Interactions                                                         How do feature(s)/requirement(s) affect each other?


 Deployment environment                                               Where will it run?


 Structure - Architecture, Technologies                               How do the internals look like?


 Stage of development                                                 Built new or modified or status quo?


 Behavior                                                             What conditions govern the behavior of a feature?


 Copyright 2011 STAG Software Private Limited. All rights reserved.                                               www.stagsoftware.com
Information needed for good understanding...

 Success factors
                                                                      External information
 Marketplace & Customer types

 End user

 Requirement, Features, Attributes

 Ranking of features & Usage profile
                                                                          to
 Interactions

 Deployment environment

 Structure - Architecture, Technologies

 Stage of development
                                                                      Internal information
 Behavior

 Copyright 2011 STAG Software Private Limited. All rights reserved.                          www.stagsoftware.com
Landscaping – A Core Concept in HBT
A technique to rapidly understand the system by examining the various elements and the
connections between them.




 Copyright 2011 STAG Software Private Limited. All rights reserved.                      www.stagsoftware.com
Some questions generated by applying Landscaping...

Marketplace                                 What marketplace is my system addressing?
                                            Why am I building this application? What problem is attempting to solve? What are
                                            the success factors?
Customer type                               Are there different categories of customers in each marketplace?
                                            How do I classify them? How are their needs different/unique?
End user (Actor)                            Who are the various types of end users (actors) in each type of customer?
                                            What is the typical/max. number of end-users for each type?
                                            Note: An end user is not necessarily a physical end user, a better word is ‘actor’
Requirement                                 What does each end user want? What are the business use cases for each type of
(Use case)                                  end user?
                                            How important is this to an end user - what is the ranking of a requirement/
                                            feature?
Attributes                                  What attributes are key for a feature/requirement to be successful (for an end
                                            user of each type of customer)?
                                            How can I quantify the attribute i.e. make it testable?
Feature                                     What are the (technical) features that make up a requirement (use-case)?
                                            What is the ranking of these?
                                            What attributes are key for a successful feature implementation?
                                            How may a feature/requirement affect other feature(s)/requirement(s)?



 Copyright 2011 STAG Software Private Limited. All rights reserved.                                                   www.stagsoftware.com
Some questions generated by applying Landscaping...


 Deployment                                     What does the deployment environment/architecture look like?
 environment                                    What are the various HW/SW that make up the environment?
                                                Is my application co-located with other applications?
                                                What other softwares does my application connect/inter-operate with?
                                                What information do I have to migrate from existing system(s)? Volume, Types etc.
 Technology                                     What technologies may/are used in my applications?
                                                Languages, components, services...
 Architecture                                   How does the application structure look like?
                                                What is the application architecture?
 Usage profile                                   Who uses what?
                                                How many times does a end user use per unit time? i.e. #/time
                                                At what rate do they use a feature/requirement?
                                                Are there different modes of usage (end of day, end of month) and what is the
                                                profile of usage in each of these modes?
                                                What is the volume of data that the application should support?
 Behavior conditions What are the conditions that govern the behavior of each requirement/feature?
                                                How is each condition met - what data (& value)drives each condition?




 Copyright 2011 STAG Software Private Limited. All rights reserved.                                                     www.stagsoftware.com
Summarizing...


                                                                      Landscaping is a core concept in
                                                                      HBT (Hypothesis Based Testing)
                                                                      that identifies the various
                                                                      information elements, and the
                                                                      process of understanding the
                                                                      details of each element and their
                                                                      connections enables questions to
                                                                      arise.

                                                                      These questions when answered
                                                                      allow one to understand the
                                                                      application(system), customer and
                                                                      the context, and establish a clear
                                                                      baseline for subsequent stages of
                                                                      testing.




 Copyright 2011 STAG Software Private Limited. All rights reserved.                         www.stagsoftware.com
We have also seen that when applying this,
                                                                     we uncover the missing parts of the puzzle
                                                                     and this has helped us to improve/fix the
                                                                     requirements.

                                                                     Good questions aid in early defect
                                                                     detection/prevention and we have used this
                                                                     to test requirements and not only code.




        Thank you!

        Follow us                                 @stagsoft

Copyright 2011 STAG Software Private Limited. All rights reserved.                                   www.stagsoftware.com

Contenu connexe

Plus de STAG Software Private Limited

Setting a clear baseline (How to test an user story #2)
Setting a clear baseline (How to test an user story #2)Setting a clear baseline (How to test an user story #2)
Setting a clear baseline (How to test an user story #2)STAG Software Private Limited
 
Question to Understand (How to test an User Story #1)
Question to Understand (How to test an User Story #1)Question to Understand (How to test an User Story #1)
Question to Understand (How to test an User Story #1)STAG Software Private Limited
 
Deliver Superior Outcomes Using HBT Visualization Tool
Deliver Superior Outcomes Using HBT Visualization ToolDeliver Superior Outcomes Using HBT Visualization Tool
Deliver Superior Outcomes Using HBT Visualization ToolSTAG Software Private Limited
 
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...STAG Software Private Limited
 
Think better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” ApproachThink better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” ApproachSTAG Software Private Limited
 
Test Process Transformation Protects Product Development Investment
Test Process Transformation Protects Product Development InvestmentTest Process Transformation Protects Product Development Investment
Test Process Transformation Protects Product Development InvestmentSTAG Software Private Limited
 
Agile Sutra "Do more by doing less, Prevent rather than detect"
Agile Sutra "Do more by doing less, Prevent rather than detect"Agile Sutra "Do more by doing less, Prevent rather than detect"
Agile Sutra "Do more by doing less, Prevent rather than detect"STAG Software Private Limited
 
Enhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product MaturityEnhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product MaturitySTAG Software Private Limited
 

Plus de STAG Software Private Limited (20)

Is regression hindering your progression?
Is regression hindering your progression?Is regression hindering your progression?
Is regression hindering your progression?
 
The Power of Checklist
The Power of ChecklistThe Power of Checklist
The Power of Checklist
 
The power of checklist
The power of checklist The power of checklist
The power of checklist
 
Webinar - 'Test Case Immunity’- Optimize testing
Webinar - 'Test Case Immunity’- Optimize testing Webinar - 'Test Case Immunity’- Optimize testing
Webinar - 'Test Case Immunity’- Optimize testing
 
Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)Design Scientifically (How to test a user story)
Design Scientifically (How to test a user story)
 
Setting a clear baseline (How to test an user story #2)
Setting a clear baseline (How to test an user story #2)Setting a clear baseline (How to test an user story #2)
Setting a clear baseline (How to test an user story #2)
 
Question to Understand (How to test an User Story #1)
Question to Understand (How to test an User Story #1)Question to Understand (How to test an User Story #1)
Question to Understand (How to test an User Story #1)
 
Language shapes the way you think
Language shapes the way you thinkLanguage shapes the way you think
Language shapes the way you think
 
Deliver Superior Outcomes Using HBT Visualization Tool
Deliver Superior Outcomes Using HBT Visualization ToolDeliver Superior Outcomes Using HBT Visualization Tool
Deliver Superior Outcomes Using HBT Visualization Tool
 
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
Hypothesis Based Testing – Application and Adaptation for testing Enterprise ...
 
Are Your Test Cases Fit For Automation?
Are Your Test Cases Fit For Automation?Are Your Test Cases Fit For Automation?
Are Your Test Cases Fit For Automation?
 
Think better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” ApproachThink better using “Descriptive-Prescriptive” Approach
Think better using “Descriptive-Prescriptive” Approach
 
Improving Defect Yield - a three step approach
Improving Defect Yield - a three step approachImproving Defect Yield - a three step approach
Improving Defect Yield - a three step approach
 
Regression Suite Optimization
Regression Suite OptimizationRegression Suite Optimization
Regression Suite Optimization
 
Reflect and Change
Reflect and ChangeReflect and Change
Reflect and Change
 
Test Process Transformation Protects Product Development Investment
Test Process Transformation Protects Product Development InvestmentTest Process Transformation Protects Product Development Investment
Test Process Transformation Protects Product Development Investment
 
Agile Sutra "Do more by doing less, Prevent rather than detect"
Agile Sutra "Do more by doing less, Prevent rather than detect"Agile Sutra "Do more by doing less, Prevent rather than detect"
Agile Sutra "Do more by doing less, Prevent rather than detect"
 
Intelligent Automation and Smart Tooling
Intelligent Automation and Smart ToolingIntelligent Automation and Smart Tooling
Intelligent Automation and Smart Tooling
 
Enhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product MaturityEnhanced Delivery Confidence Improved Product Maturity
Enhanced Delivery Confidence Improved Product Maturity
 
Too Many Conditions!
Too Many Conditions!Too Many Conditions!
Too Many Conditions!
 

Dernier

Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 

Dernier (20)

Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 

Landscaping - A Technique to Aid Understanding

  • 1. Landscaping A technique to aid understanding T Ashok ash@stagsoftware.com in.linkedin.com/in/AshokSTAG ash_thiru
  • 2. The PROBLEM How you understand expectations and needs? If I do not have a deep domain knowledge, how do I understand an application to test well? How do I come with good questions to understand? Is there a scientific/systematic way to questioning? Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 3. Key premise Good questioning is key to good understanding. It is perfectly OK to ask questions for which no clear answers are available. “It is more important to know what you do not know, rather than be content with what you know” It is therefore important to come up with good questions rather than worry about the availability of answers. Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 4. The BIG QUESTION Given an application and whatever available documentation (which is always less!) how do I understand well enough to test effectively? Does my ability to understand depend solely on my prior experience with similar applications/domain? What if I am not as well versed in that domain? Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 5. The story of Joe the tester... In the story “The diagnosis”, Joe faced with the problem of understanding a new application in a domain that he is unfamilar with, has the “Aha” moment at a doctors’s office during the process of ‘diagnosis’. He sees parallels in doctor’s questioning technique to diagnose the problem and his problem of understanding of the application. He understands that decomposing the problem into information elements and establishing the connections between these elements enables him to come up with good questions to understanding the application. Voila! Click here for the story “The diagnosis” Published in “Tea time with testers” May 2011 Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 6. Joe figured that understanding an application is not just about walking though the various features via the user interface (assuming that the application has an UI). It requires a scientific/systematic walkthrough of various elements commencing from the customer’s needs/expectations and then into the application’s deployment environment, architecture, features, behaviour and structure. He understood that he needed to construct a “good landscape” of the system and establish a clear baseline for effective testing. Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 7. Landscaping - A core concept in HBT Landscaping, a core concept in HBT (Hypothesis Based Testing) enables one to systematically come with meaningful questions to understand the end users, application and the context. 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 of these SIXTEEN elements and their interconnections results in questions that aid in understanding. Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 8. Information needed for good understanding... Success factors The reason for deploying the system Marketplace & Customer types The target for our business End user Who will use our system? How many? Requirement, Features, Attributes What do they need? What are their expectations? Ranking of features & Usage profile Which is more important? How will it be used? Interactions How do feature(s)/requirement(s) affect each other? Deployment environment Where will it run? Structure - Architecture, Technologies How do the internals look like? Stage of development Built new or modified or status quo? Behavior What conditions govern the behavior of a feature? Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 9. Information needed for good understanding... Success factors External information Marketplace & Customer types End user Requirement, Features, Attributes Ranking of features & Usage profile to Interactions Deployment environment Structure - Architecture, Technologies Stage of development Internal information Behavior Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 10. Landscaping – A Core Concept in HBT A technique to rapidly understand the system by examining the various elements and the connections between them. Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 11. Some questions generated by applying Landscaping... Marketplace What marketplace is my system addressing? Why am I building this application? What problem is attempting to solve? What are the success factors? Customer type Are there different categories of customers in each marketplace? How do I classify them? How are their needs different/unique? End user (Actor) Who are the various types of end users (actors) in each type of customer? What is the typical/max. number of end-users for each type? Note: An end user is not necessarily a physical end user, a better word is ‘actor’ Requirement What does each end user want? What are the business use cases for each type of (Use case) end user? How important is this to an end user - what is the ranking of a requirement/ feature? Attributes What attributes are key for a feature/requirement to be successful (for an end user of each type of customer)? How can I quantify the attribute i.e. make it testable? Feature What are the (technical) features that make up a requirement (use-case)? What is the ranking of these? What attributes are key for a successful feature implementation? How may a feature/requirement affect other feature(s)/requirement(s)? Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 12. Some questions generated by applying Landscaping... Deployment What does the deployment environment/architecture look like? environment What are the various HW/SW that make up the environment? Is my application co-located with other applications? What other softwares does my application connect/inter-operate with? What information do I have to migrate from existing system(s)? Volume, Types etc. Technology What technologies may/are used in my applications? Languages, components, services... Architecture How does the application structure look like? What is the application architecture? Usage profile Who uses what? How many times does a end user use per unit time? i.e. #/time At what rate do they use a feature/requirement? Are there different modes of usage (end of day, end of month) and what is the profile of usage in each of these modes? What is the volume of data that the application should support? Behavior conditions What are the conditions that govern the behavior of each requirement/feature? How is each condition met - what data (& value)drives each condition? Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 13. Summarizing... Landscaping is a core concept in HBT (Hypothesis Based Testing) that identifies the various information elements, and the process of understanding the details of each element and their connections enables questions to arise. These questions when answered allow one to understand the application(system), customer and the context, and establish a clear baseline for subsequent stages of testing. Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com
  • 14. We have also seen that when applying this, we uncover the missing parts of the puzzle and this has helped us to improve/fix the requirements. Good questions aid in early defect detection/prevention and we have used this to test requirements and not only code. Thank you! Follow us @stagsoft Copyright 2011 STAG Software Private Limited. All rights reserved. www.stagsoftware.com