SlideShare a Scribd company logo
Documentation Example Testing:
Value & Impact
Dallas C. Kennedy
Ab Initio Software LLC
Society for Technical Communication – New England
InterChange Conference 2017
UMass Lowell
What Is Doc Example Testing All About?
• In the context of software … although you might do similar things
elsewhere ….
• Examples are essential to users in any documentation and structured
learning beyond the most superficial.
Explain it to me … Show me … Involve me …
… in ascending order of effectiveness
• Testing your doc examples …
… keeps examples working,
… keeps examples relevant,
… tests new and updated features as they appear
… and much more!
More about the speaker
• Technical writer in the Boston area since 2000
• Currently at Ab Initio Software in Lexington* …
… Previously at MathWorks in Natick
• Wide experience in documenting complex software systems for
advanced technical and data transformation applications
• Co-author of multiple documentation sets …
… sole author of several significant product documentation suites and books
• About 15 years experience in testing documentation examples
• Previous experience in physics and astrophysics research, including
creating, testing, and using numerical programs for analysis and prediction
* Talk not sponsored or endorsed by Ab Initio
Testing Your Documentation
and Products
What are the value and impact of
example testing?
As you test and validate your doc examples, you are doing something
vital. You are:
• Keeping your examples working and relevant
• Pre-emptively removing a major source of user frustration and
support requests, saving your company money and time
• Testing new features, and upgrades to existing features, as they
emerge from development
• Developing insight into products, features, tasks, and customers
Deeper cumulative impact
Pursued consistently and long term, doc example testing
accomplishes less obvious and more profound things:
• It shapes how you choose and construct examples.
• Can your example be tested properly? If not, why? If not, maybe it
shouldn’t be a doc example, or maybe it needs to be rewritten.
• It keeps you from tolerating bad examples whose weaknesses are
obscured by fancy pictures and words.
• It checks your products for regressions – if your examples are
supposed to continue to work as new versions of software appear.
• Developers can be surprised by this, but they shouldn’t be:
Realistic examples and edge cases often test high-level, complex functioning
missed by simple tests (like unit tests).
How Doc Example Testing Works in Practice
Where do documentation examples come from?
Examples have many sources:
• Development
• Quality engineering and its test cases …
… especially more complex cases and work flows
• Technical marketing
• Training
• Customers  Lots of “street cred” when you publish examples and
applications openly co-authored with customers
Two broad approaches to testing …
• Automated – Convenient, scalable, fast
• Examples can be automatically co-tested with demos and the product itself.
• Automated testing must often meet important restrictions.
• Manual – Sometimes more appropriate for complex examples: complex
workflows often most valuable tests, most difficult to implement.
… and related in a deep way to doc usability testing – testing that checks the usability, not of
your product, but of your documentation and specifically of your examples.
• Doc usability testing is time-consuming and requires willing, live human testers
in a usability lab. Done right, it is almost always worthwhile. Tests user’s reaction
to examples and features.
Several things happening at once worth disentangling:
• The product and various discrete features
• The example
• How well the doc presents the product and feature
• How well the doc presents the example
Automated testing
• Most easily implemented with code or code-like examples.
• Most sophisticated versions of testing automatically extract and
reformat examples from the documentation and pass the example
code to a product test harness for execution and evaluation.
• Requires coordination of processes: product and feature
development and testing, and documentation authoring and build.
Doc
source
Extracted and
reformatted
examples
Product
test
harness
Example
test
results
Automated testing (continued)
• Graphical interface (GUI) testing more difficult to implement,
fewer tools to automate, although not impossible
• GUI-based examples: various approaches available
• If scriptable, entire example can be automated with quality testing
on the development side in the engineering test suite.
Some GUI-based products have scripting or similar languages behind the GUI
application. Others can provide handles to graphical objects.
• In other cases, can use automated GUI tools like AutoIt to develop a
macro- or script-like automated test, often with real system scripts.
• Can always be tested manually, at cost of consuming more time.
• Co-test with training and marketing videos and other materials.
Different levels of testing rigor
• Basic and least rigorous – Verification of procedures: Are
prerequisites met? Does example finish? Does it freeze or crash?
• Deeper rigor – Parsing of syntax, compilation of code, verification of
structure and elements of example
• Deepest rigor – Evaluation of specific results – numeric,
alphanumeric, graphical, etc. Sets of baselines.
• Baselines = Numeric and other specific test results
Baseline testing is tricky in an environment where results can change
from run to run; for example:
• Dynamic engineering and scientific simulations
• Generation of random numbers or sequences
Dependence on platform and machine state
Building Relationships
The other side of example testing
• Example testing checks products and examples.
• It also builds relationships in your organization.
• Technology work is usually divided into functional areas:
• Development = primary engineering of products and features
• Quality or Testing = verification and validation of product functionality
• Documentation = explanation to users of product
• Marketing* = showing current and potential customers what your products can
do and how they might solve customers’ problems
• Training* = educating new and current users about products and features
• Example testing touches each of these areas and requires cooperation
among all of them, especially between Documentation and Quality.
* Customer-facing
Creates and enhances flow of information
about products, features, and examples
Products
Features
Examples
Development
Quality
Documentation
Marketing
Training
Mutually reinforcing supports of each:
• Development generates products, features, in response to projected
or actual customer needs  examples
• Quality builds product test harness, generates test cases 
examples   test cases from Development, Doc, Marketing
• Documentation documents examples, tests examples and test cases
with Quality  more test cases
• Marketing studies and forecasts customers’ problems  test cases
 feedback from customers
• Training uses and possibly generates examples  examples and test
cases for Doc and Quality  feedback from experience with users
Building most important relationship …
… with customers!
• Important to concentrate documenting and testing examples on more
complete, more realistic examples …
… not unit tests and other basic functional tests.
Basic testing important for Development and Quality, not so much for Doc,
Marketing, or Training.
• Such examples are what customers need and want.
Documenting and validating such examples – keeping them
fresh, relevant, and functional – together form an essential
source of value to your product’s users.
Some References
• Software testing:
• B. Laboon, A Friendly Introduction to Software Testing
• M. Feathers, Working Effectively with Legacy Code
• No good book sources on testing documentation examples –
Limited material available on doc usability testing
• See latest and greatest online courses from Coursera, EdX, Udacity,
MS Virtual Academy, and so on, concerning software testing and
especially writing test cases.
Email: dalet@stanfordalumni.org
Email: dkennedy@abinitio.com
LinkedIn: linkedin.com/in/dckennedy/

More Related Content

What's hot

Bart Knaack - The Truth About Model-Based Quality Improvements
Bart Knaack - The Truth About Model-Based Quality ImprovementsBart Knaack - The Truth About Model-Based Quality Improvements
Bart Knaack - The Truth About Model-Based Quality Improvements
TEST Huddle
 
Check upload1
Check upload1Check upload1
Check upload1
Nitish Bhardwaj
 
Tuhin Mitra: How I Automate My Negative Tests
Tuhin Mitra: How I Automate My Negative TestsTuhin Mitra: How I Automate My Negative Tests
Tuhin Mitra: How I Automate My Negative Tests
Anna Royzman
 
'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...
'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...
'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...
TEST Huddle
 
Lauri Pietarinen - What's Wrong With My Test Data
Lauri Pietarinen - What's Wrong With My Test DataLauri Pietarinen - What's Wrong With My Test Data
Lauri Pietarinen - What's Wrong With My Test Data
TEST Huddle
 
Swtesting
SwtestingSwtesting
Swtesting
nazeer pasha
 
IEEE 2015 Final Year Project Steps Guide
IEEE 2015 Final Year Project Steps GuideIEEE 2015 Final Year Project Steps Guide
IEEE 2015 Final Year Project Steps Guide
TTA_TNagar
 
Final year project | Guide
Final year project | GuideFinal year project | Guide
Final year project | Guide
Vestas
 
Otto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement PotentialOtto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement Potential
TEST Huddle
 
Johan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the ProjectJohan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the Project
TEST Huddle
 
TestPRO Profile v4.1
TestPRO Profile v4.1TestPRO Profile v4.1
TestPRO Profile v4.1
Samer Desouky
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
Jimi Patel
 
Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...
Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...
Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...
TEST Huddle
 
Thirtha_Prasad_4+yrs_tester
Thirtha_Prasad_4+yrs_testerThirtha_Prasad_4+yrs_tester
Thirtha_Prasad_4+yrs_tester
Thirtha Prasad T
 
'Customer Testing & Quality In Outsourced Development - A Story From An Insur...
'Customer Testing & Quality In Outsourced Development - A Story From An Insur...'Customer Testing & Quality In Outsourced Development - A Story From An Insur...
'Customer Testing & Quality In Outsourced Development - A Story From An Insur...
TEST Huddle
 
Derk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both WorldsDerk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both Worlds
TEST Huddle
 
Usability testing 2013.12.20.
Usability testing 2013.12.20.Usability testing 2013.12.20.
Usability testing 2013.12.20.
Visual Cognition and Modeling Lab
 
Functional testing
Functional testingFunctional testing
Functional testing
Srikanth Kumar
 
Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success
TEST Huddle
 

What's hot (19)

Bart Knaack - The Truth About Model-Based Quality Improvements
Bart Knaack - The Truth About Model-Based Quality ImprovementsBart Knaack - The Truth About Model-Based Quality Improvements
Bart Knaack - The Truth About Model-Based Quality Improvements
 
Check upload1
Check upload1Check upload1
Check upload1
 
Tuhin Mitra: How I Automate My Negative Tests
Tuhin Mitra: How I Automate My Negative TestsTuhin Mitra: How I Automate My Negative Tests
Tuhin Mitra: How I Automate My Negative Tests
 
'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...
'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...
'Continuous Quality Improvements – A Journey Through The Largest Scrum Projec...
 
Lauri Pietarinen - What's Wrong With My Test Data
Lauri Pietarinen - What's Wrong With My Test DataLauri Pietarinen - What's Wrong With My Test Data
Lauri Pietarinen - What's Wrong With My Test Data
 
Swtesting
SwtestingSwtesting
Swtesting
 
IEEE 2015 Final Year Project Steps Guide
IEEE 2015 Final Year Project Steps GuideIEEE 2015 Final Year Project Steps Guide
IEEE 2015 Final Year Project Steps Guide
 
Final year project | Guide
Final year project | GuideFinal year project | Guide
Final year project | Guide
 
Otto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement PotentialOtto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement Potential
 
Johan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the ProjectJohan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the Project
 
TestPRO Profile v4.1
TestPRO Profile v4.1TestPRO Profile v4.1
TestPRO Profile v4.1
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
 
Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...
Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...
Clive Bates - A Pragmatic Approach to Improving Your Testing Process - EuroST...
 
Thirtha_Prasad_4+yrs_tester
Thirtha_Prasad_4+yrs_testerThirtha_Prasad_4+yrs_tester
Thirtha_Prasad_4+yrs_tester
 
'Customer Testing & Quality In Outsourced Development - A Story From An Insur...
'Customer Testing & Quality In Outsourced Development - A Story From An Insur...'Customer Testing & Quality In Outsourced Development - A Story From An Insur...
'Customer Testing & Quality In Outsourced Development - A Story From An Insur...
 
Derk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both WorldsDerk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both Worlds
 
Usability testing 2013.12.20.
Usability testing 2013.12.20.Usability testing 2013.12.20.
Usability testing 2013.12.20.
 
Functional testing
Functional testingFunctional testing
Functional testing
 
Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success Michael Snyman - Software Test Automation Success
Michael Snyman - Software Test Automation Success
 

Similar to Documentation Example Testing: Value & Impact

Finding the right authoring tool - STC Carolina Event 2018
Finding the right authoring tool - STC Carolina Event 2018Finding the right authoring tool - STC Carolina Event 2018
Finding the right authoring tool - STC Carolina Event 2018
Carolina Chapter of STC
 
Software testing
Software testingSoftware testing
Software testing
Nico Heidtke
 
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
Kay Aubrey
 
Final year projects - Step By step Guide
Final year projects - Step By step  Guide Final year projects - Step By step  Guide
Final year projects - Step By step Guide
Vestas
 
Can testing be Agile
Can testing be Agile Can testing be Agile
Can testing be Agile
Samuel Adesoga
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
Naveen Kumar Singh
 
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
ZahirahZairul2
 
Nature vs. Nurture: Building Great Test Teams
Nature vs. Nurture: Building Great Test TeamsNature vs. Nurture: Building Great Test Teams
Nature vs. Nurture: Building Great Test Teams
Josiah Renaudin
 
! Testing for agile teams
! Testing for agile teams! Testing for agile teams
! Testing for agile teams
Dennis Popov
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
karanmca
 
Software testing
Software testingSoftware testing
Software testing
sajedah abukhdeir
 
Prototyping and Usability Testing your designs
Prototyping and Usability Testing your designsPrototyping and Usability Testing your designs
Prototyping and Usability Testing your designs
Elizabeth Snowdon
 
Improve Product Design with High Quality Requirements
Improve Product Design with High Quality RequirementsImprove Product Design with High Quality Requirements
Improve Product Design with High Quality Requirements
Elizabeth Steiner
 
Tune Agile Test Strategies to Project and Product Maturity
Tune Agile Test Strategies to Project and Product MaturityTune Agile Test Strategies to Project and Product Maturity
Tune Agile Test Strategies to Project and Product Maturity
TechWell
 
體驗劇場_1050524_W14_易用性測試_楊政達
體驗劇場_1050524_W14_易用性測試_楊政達體驗劇場_1050524_W14_易用性測試_楊政達
體驗劇場_1050524_W14_易用性測試_楊政達
Visual Cognition and Modeling Lab
 
Software Testing
Software Testing Software Testing
Software Testing
sajedah abukhdeir
 
What_is_Software_Testing.pdf
What_is_Software_Testing.pdfWhat_is_Software_Testing.pdf
What_is_Software_Testing.pdf
VuongPhm
 
PA2557_SQM_Lecture2 - Quality Basics.pdf
PA2557_SQM_Lecture2 - Quality Basics.pdfPA2557_SQM_Lecture2 - Quality Basics.pdf
PA2557_SQM_Lecture2 - Quality Basics.pdf
hulk smash
 
Specification by example
Specification by exampleSpecification by example
Specification by example
Asier Barrenetxea
 
Good PracticesFor RequirementEngineering.pptx
Good PracticesFor RequirementEngineering.pptxGood PracticesFor RequirementEngineering.pptx
Good PracticesFor RequirementEngineering.pptx
zimalfayzankhan
 

Similar to Documentation Example Testing: Value & Impact (20)

Finding the right authoring tool - STC Carolina Event 2018
Finding the right authoring tool - STC Carolina Event 2018Finding the right authoring tool - STC Carolina Event 2018
Finding the right authoring tool - STC Carolina Event 2018
 
Software testing
Software testingSoftware testing
Software testing
 
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
 
Final year projects - Step By step Guide
Final year projects - Step By step  Guide Final year projects - Step By step  Guide
Final year projects - Step By step Guide
 
Can testing be Agile
Can testing be Agile Can testing be Agile
Can testing be Agile
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
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
 
Nature vs. Nurture: Building Great Test Teams
Nature vs. Nurture: Building Great Test TeamsNature vs. Nurture: Building Great Test Teams
Nature vs. Nurture: Building Great Test Teams
 
! Testing for agile teams
! Testing for agile teams! Testing for agile teams
! Testing for agile teams
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
 
Software testing
Software testingSoftware testing
Software testing
 
Prototyping and Usability Testing your designs
Prototyping and Usability Testing your designsPrototyping and Usability Testing your designs
Prototyping and Usability Testing your designs
 
Improve Product Design with High Quality Requirements
Improve Product Design with High Quality RequirementsImprove Product Design with High Quality Requirements
Improve Product Design with High Quality Requirements
 
Tune Agile Test Strategies to Project and Product Maturity
Tune Agile Test Strategies to Project and Product MaturityTune Agile Test Strategies to Project and Product Maturity
Tune Agile Test Strategies to Project and Product Maturity
 
體驗劇場_1050524_W14_易用性測試_楊政達
體驗劇場_1050524_W14_易用性測試_楊政達體驗劇場_1050524_W14_易用性測試_楊政達
體驗劇場_1050524_W14_易用性測試_楊政達
 
Software Testing
Software Testing Software Testing
Software Testing
 
What_is_Software_Testing.pdf
What_is_Software_Testing.pdfWhat_is_Software_Testing.pdf
What_is_Software_Testing.pdf
 
PA2557_SQM_Lecture2 - Quality Basics.pdf
PA2557_SQM_Lecture2 - Quality Basics.pdfPA2557_SQM_Lecture2 - Quality Basics.pdf
PA2557_SQM_Lecture2 - Quality Basics.pdf
 
Specification by example
Specification by exampleSpecification by example
Specification by example
 
Good PracticesFor RequirementEngineering.pptx
Good PracticesFor RequirementEngineering.pptxGood PracticesFor RequirementEngineering.pptx
Good PracticesFor RequirementEngineering.pptx
 

Recently uploaded

WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 

Recently uploaded (20)

WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 

Documentation Example Testing: Value & Impact

  • 1. Documentation Example Testing: Value & Impact Dallas C. Kennedy Ab Initio Software LLC Society for Technical Communication – New England InterChange Conference 2017 UMass Lowell
  • 2. What Is Doc Example Testing All About? • In the context of software … although you might do similar things elsewhere …. • Examples are essential to users in any documentation and structured learning beyond the most superficial. Explain it to me … Show me … Involve me … … in ascending order of effectiveness • Testing your doc examples … … keeps examples working, … keeps examples relevant, … tests new and updated features as they appear … and much more!
  • 3. More about the speaker • Technical writer in the Boston area since 2000 • Currently at Ab Initio Software in Lexington* … … Previously at MathWorks in Natick • Wide experience in documenting complex software systems for advanced technical and data transformation applications • Co-author of multiple documentation sets … … sole author of several significant product documentation suites and books • About 15 years experience in testing documentation examples • Previous experience in physics and astrophysics research, including creating, testing, and using numerical programs for analysis and prediction * Talk not sponsored or endorsed by Ab Initio
  • 5. What are the value and impact of example testing? As you test and validate your doc examples, you are doing something vital. You are: • Keeping your examples working and relevant • Pre-emptively removing a major source of user frustration and support requests, saving your company money and time • Testing new features, and upgrades to existing features, as they emerge from development • Developing insight into products, features, tasks, and customers
  • 6. Deeper cumulative impact Pursued consistently and long term, doc example testing accomplishes less obvious and more profound things: • It shapes how you choose and construct examples. • Can your example be tested properly? If not, why? If not, maybe it shouldn’t be a doc example, or maybe it needs to be rewritten. • It keeps you from tolerating bad examples whose weaknesses are obscured by fancy pictures and words. • It checks your products for regressions – if your examples are supposed to continue to work as new versions of software appear. • Developers can be surprised by this, but they shouldn’t be: Realistic examples and edge cases often test high-level, complex functioning missed by simple tests (like unit tests).
  • 7. How Doc Example Testing Works in Practice
  • 8. Where do documentation examples come from? Examples have many sources: • Development • Quality engineering and its test cases … … especially more complex cases and work flows • Technical marketing • Training • Customers  Lots of “street cred” when you publish examples and applications openly co-authored with customers
  • 9. Two broad approaches to testing … • Automated – Convenient, scalable, fast • Examples can be automatically co-tested with demos and the product itself. • Automated testing must often meet important restrictions. • Manual – Sometimes more appropriate for complex examples: complex workflows often most valuable tests, most difficult to implement. … and related in a deep way to doc usability testing – testing that checks the usability, not of your product, but of your documentation and specifically of your examples. • Doc usability testing is time-consuming and requires willing, live human testers in a usability lab. Done right, it is almost always worthwhile. Tests user’s reaction to examples and features. Several things happening at once worth disentangling: • The product and various discrete features • The example • How well the doc presents the product and feature • How well the doc presents the example
  • 10. Automated testing • Most easily implemented with code or code-like examples. • Most sophisticated versions of testing automatically extract and reformat examples from the documentation and pass the example code to a product test harness for execution and evaluation. • Requires coordination of processes: product and feature development and testing, and documentation authoring and build. Doc source Extracted and reformatted examples Product test harness Example test results
  • 11. Automated testing (continued) • Graphical interface (GUI) testing more difficult to implement, fewer tools to automate, although not impossible • GUI-based examples: various approaches available • If scriptable, entire example can be automated with quality testing on the development side in the engineering test suite. Some GUI-based products have scripting or similar languages behind the GUI application. Others can provide handles to graphical objects. • In other cases, can use automated GUI tools like AutoIt to develop a macro- or script-like automated test, often with real system scripts. • Can always be tested manually, at cost of consuming more time. • Co-test with training and marketing videos and other materials.
  • 12. Different levels of testing rigor • Basic and least rigorous – Verification of procedures: Are prerequisites met? Does example finish? Does it freeze or crash? • Deeper rigor – Parsing of syntax, compilation of code, verification of structure and elements of example • Deepest rigor – Evaluation of specific results – numeric, alphanumeric, graphical, etc. Sets of baselines. • Baselines = Numeric and other specific test results Baseline testing is tricky in an environment where results can change from run to run; for example: • Dynamic engineering and scientific simulations • Generation of random numbers or sequences Dependence on platform and machine state
  • 14. The other side of example testing • Example testing checks products and examples. • It also builds relationships in your organization. • Technology work is usually divided into functional areas: • Development = primary engineering of products and features • Quality or Testing = verification and validation of product functionality • Documentation = explanation to users of product • Marketing* = showing current and potential customers what your products can do and how they might solve customers’ problems • Training* = educating new and current users about products and features • Example testing touches each of these areas and requires cooperation among all of them, especially between Documentation and Quality. * Customer-facing
  • 15. Creates and enhances flow of information about products, features, and examples Products Features Examples Development Quality Documentation Marketing Training
  • 16. Mutually reinforcing supports of each: • Development generates products, features, in response to projected or actual customer needs  examples • Quality builds product test harness, generates test cases  examples   test cases from Development, Doc, Marketing • Documentation documents examples, tests examples and test cases with Quality  more test cases • Marketing studies and forecasts customers’ problems  test cases  feedback from customers • Training uses and possibly generates examples  examples and test cases for Doc and Quality  feedback from experience with users
  • 17. Building most important relationship … … with customers! • Important to concentrate documenting and testing examples on more complete, more realistic examples … … not unit tests and other basic functional tests. Basic testing important for Development and Quality, not so much for Doc, Marketing, or Training. • Such examples are what customers need and want. Documenting and validating such examples – keeping them fresh, relevant, and functional – together form an essential source of value to your product’s users.
  • 18. Some References • Software testing: • B. Laboon, A Friendly Introduction to Software Testing • M. Feathers, Working Effectively with Legacy Code • No good book sources on testing documentation examples – Limited material available on doc usability testing • See latest and greatest online courses from Coursera, EdX, Udacity, MS Virtual Academy, and so on, concerning software testing and especially writing test cases. Email: dalet@stanfordalumni.org Email: dkennedy@abinitio.com LinkedIn: linkedin.com/in/dckennedy/