EuroSTAR Conferences, with the support of ISA Software Skillnet, Irish Software Innovation Network and SoftTest, were delighted to bring you a half-day software testing masterclass with Michael Bolton In this session, Michael Bolton (who has extensive experience as a tester, as a programmer, and as a project manager) explained the role of skilled software testers, and why you might not want to think of testing as "quality assurance". He present ideas about the relationship between management and testers, and about the service that testers really provide: making quality assurance possible by lighting the way of the project. For those of you who who attended this event, we really hope it was of use to you in your testing careers. www.eurostarconferences.com
Text of How to get what you really want from Testing' with Michael Bolton
Copyright 2014, Michael Bolton / DevelopSense 1 Im Michael Bolton Not the singer. Not the guy No relation. in Office Space. How to Get What You Really Want from Testing Michael Bolton James Bach DevelopSense Satisfice http://www.de velopsense.com http://www.satisfice.com @michaelbolton @jamesmarcusbach email@example.com firstname.lastname@example.org m
Paul Gerrard Conference Chair 2014 www.eurostarconferenc es.com @esconf s #esconfs Venue: The Convention Centre Dublin Date: 24 27th November 2014 We hope you can make it
Copyright 2014, Michael Bolton / DevelopSense 2 THANK YOU! To all of the sponsors and especially to the EuroSTAR crew! Updates This presentation is ALWAYS under construction. I probably will skip over some slides. Slides for this presentation are available on request. All material comes with lifetime free technical support.
Copyright 2014, Michael Bolton / DevelopSense 3 aircanada.com aircanada.com
Copyright 2014, Michael Bolton / DevelopSense Via Rail, between Montreal and Toronto, 2007 Via Rail, between Montreal and Toronto, 2007 4 But I cant contact my oh, never mind. Error Message Error Message
Copyright 2014, Michael Bolton / DevelopSense 5 If you cant do math, its a nickel extra. Hyatt Regency, 2008 Hyatt Regency, 2008
Copyright 2014, Michael Bolton / DevelopSense Spring 2010 Spring 2010 6 Why you shouldnt let an unsupervised algorithm choose your sponsored links (2). Vimeos Web Page Why you shouldnt let an unsupervised algorithm choose your sponsored links (1). Vimeos Web Page
Copyright 2014, Michael Bolton / DevelopSense Spring 2010 7 Google Chrome Why you shouldnt let an unsupervised algorithm choose your sponsored links (3). Vimeos Web Page
Copyright 2014, Michael Bolton / DevelopSense 8 OK, fine. Dont Know Who This Was Google Calendar Update
Copyright 2014, Michael Bolton / DevelopSense 9 Microsoft Outlook Adobe Acrobat
Copyright 2014, Michael Bolton / DevelopSense 1 Hmm I suppose thats possible. ibm.com I Already See an Err! Intuit Quicken
I think Ill shoot my own trouble for now. Windows Copyright 2014, Michael Bolton / DevelopSense 1 Well, were they detected or not? Windows
Copyright 2014, Michael Bolton / DevelopSense 1 Go home, iTunes. Youre drunk. iTunes Windows
Copyright 2014, Michael Bolton / DevelopSense 1 Im Biased Towards Rapid Testing Rapid testing is a mindset and a skillset of testing focused on how to do testing more quickly, less expensivel y, with excell ent result s. A Clarification How To Get What You Really Want From Testing is a potentially misleading title. As a member of the ContextDriven School of Software Testing, I maintain there are no universally best results available from testing, just as there are no best practices and, of course, Im not a mind reader. In this presentation, Ill try to help introduce ideas intended to help you choose or assign or develop testing missions that line up with what managers and other testing clients typically need to know, in my experience. Only you can really decide whats best for you.
Copyright 2014, Michael Bolton / DevelopSense 1 A House A set of building materials, arranged in the A Computer Program A set of instructions for a computer. See the Association for Software Testings Black Box Software Testing Foundations course, Cem Kaner & James Bach
Copyright 2014, Michael Bolton / DevelopSense 1 Kaners Definition of a Computer Program A computer program is a communication among several people and computers separated over distance and time that contains instructions that can be run on a computer. The purpose of a computer program is to provide value to people A House Something for people to live in.
Copyright 2014, Michael Bolton / DevelopSense 1 How to Test Write test cases? Play with the product? Use the allpairs test technique? Use equivalence class partitioning? Use record and playback automation? Read the spec? Report bugs? Help design the product? Write code for the product? Play ping pong in the break room? Implications of Kaners Definition A computer program is far more than its code A software product is far more than the instructions for the device Quality is far more than the absence of errors in the code. Testing is far more than writing some code to confirm that other code returns a correct result. Quality is value to some person(s). Jerry Weinb erg Software testing is the investigation of systems consisting of people and their work, computers, programs, and the relationships between them.
by a machine Copyright 2014, Michael Bolton / DevelopSense 1 A Check Has Three Elements 1. An observation linked to 2. A decision rule such that 3. both observation and decision rule can be applied algorithmically. A check can be performed by a human who has been that cant think instructed not to think See http://www.satisfice.com/blog/archives/856 Call this Checking not Testing operating a product to check specific facts about it means Interact with the Apply algorithmic Report any product in specific decision rules to failed checks. ways to collect those observations. specific observations.
Maintaining Personal Health and Test Tooling and Motivation Artifact Managing Testing Playing Recruiting Development Logistics Programmer Helpers Learning and Quasi Functional Creating Archival Teaching Testing Documentation Playing with the Product Sympathetic Testing Bug Commitment Galumphing Advocacy Management Designing & Triage (inc. estimation)Checks and Tests Studying Relationship Results Project Building Configuring Test Framing Post Mortem Product & Tools Discovery of Study Prospective Testing Tacit Consistency Curios, Issues & Customer Test Procedures Oracles Risks Feedback Guiding Helpers Copyright 2014, Michael Bolton / DevelopSense Testi ngCultivate Credibility Conditi ons 1 Creating the Test Lab Testing a Simulat ion w/Simulated M a n a g i n g R e c o r d s Studying Specs Testing is Acquiring the competence, motivation, and credibility for creating the conditions necessary for evaluating a product by learning about it through experimentation, which includes to some degree: questioning, study, modeling, observation and inference, including operating a product to check specific facts about it so that you help your clients to make informed decisions about risk.
Copyright 2014, Michael Bolton / DevelopSense 1 Why is context such a big deal? What Is Testing? Excellent testing is not merely a branch of computer science testing includes computer science, mathematics, technical domains BUT focus only on programs and functions, and you leave out questions of value and other relationships that include people To me, excellent testing is more like anthropology interdisciplinary, systemsfocused, investigative, storytelling Biology Archaeology Language Culture
Copyright 2014, Michael Bolton / DevelopSense Theres your have a great 2 Behaviour the physical counterpart of an action. (The other part of action is intention) behaviours are observable and describable without reference to context. Examples: a blink, a scratch, a clap See Harry Collins, The Shape of Actions and Tacit and Explicit Knowledge Why Is Context A Big Deal? Because increasingly, software mediates not only mimeomorphic actions, but also polimorphic actions. Thanks, and answer! day!!
Copyright 2014, Michael Bolton / DevelopSense HDeya,mba nbteh eslivee aroaullnedr ghieesr!e? 2 Polimorphic Action An action where the behaviour must be changed according to context in order to carry out the action. (e.g. a greeting, a love letter) note that sometimes the same behaviour can instantiate different actions according to context. WOeklalya, mrebaudsyh. tHhaengdu maredstha et ntineleesto cnoipgeh.t. Mimeomorphic Action an action that can always be carried out by repeating the behaviour, irrespective of context can therefore be mimicked by machines which do not need to understand the context
Copyright 2014, Michael Bolton / DevelopSense 2 Harry Collins on Software Testing Contemporary computers cannot do just the same thing as humans because they do not fit into society as humans do, so the surrounding society must compensate for the way the computer fails to reproduce what it replaces. This means that a complex judgment is needed to test whether software fits well enough for the surrounding humans to happily repair the differences between humans and machines. This is much more than a matter of