390 likes | 849 Views
A Hitchhiker’s Guide to the Software Testing Galaxy. Graham Thomas Independent Software Testing Consultant Next Generation Testing Conference 5 th November 2009 Kensington Close Hotel London. Abstract.
E N D
A Hitchhiker’s Guide to theSoftware Testing Galaxy Graham Thomas Independent Software Testing Consultant Next Generation Testing Conference 5th November 2009 Kensington Close Hotel London
Abstract As Douglas Adams wrote in his book The Hitch-Hikers Guide to the Galaxy, “Space is big. Really big. You just won’t believe how mind-bogglingly big it is.” Well, the galaxy of software testing isn’t quite that big, but it is large, getting larger, and can be very confusing to begin with. So how do we navigate safely through the software testing galaxy and keep up with its expansion? This presentation will; Learn some of the lessons from the Hitchhikers Guide Take a look at the Software Testing Galaxy, in the style of the Hitch Hikers Guide Propose a real life Hitchhikers Guide to Software Testing
The History The book was written from the original radio series in the late 1970’s, became a television series, and recently a Hollywood “blockbuster” movie (which we won’t discuss). The plot was interspersed, in a funny way, with Douglas Adams’s experiences of Computing and Management Methodology of the time. He was quite visionary, in that the Guide was a brilliant prediction of how useful internet search engines and mobile computing would become, and with the new range of lightweight and powerful mobile devices, combined with Google and Wikipedia we are fast approaching his vision. These insights have never been more relevant, current, and useful than in today’s fast changing world.
The Characters & Story • The Guide • The Guide serves as the narrator to the series and expands on some of the finer aspects of Galactic society, culture and history • Zaphod BeebleBrox • President of the Known Galaxy. Has two heads and three arms. Suave, smooth talking, but completely narcissistic and self-obsessed • Arthur Dent • Arthur is a six foot tall, carbon-based, bipedal life form descended from an ape. • Trillian • Trillian has a degree in mathematics and a doctorate in astrophysics, so when she met Zaphod at a party in Islington, she jumped at the chance to see the galaxy • Ford Prefect • Ford is not descended from an ape. He is in fact from a small planet somewhere in the vicinity of Betelgeuse • Marvin • Marvin is a 'personality prototype' from the Sirius Cybernetic Corporation's new line of robots and regards life, the universe and everyone in it with utter contempt.
Agenda • The Guide in use • People & Skills • Method & Process • Some Quotes • A Look Through the Eyes of the Guide • A Few Thoughts • Summary • Thanks
The Guide in Use The Guide serves as the narrator to the series and expands on some of the finer aspects of Galactic society, culture and history. Many of the most memorable sequences in the series are entries from the Guide. By its own admission The Guide contains much information that is apocryphal, or at least wildly inaccurate, but what it does have is a cheap price, the words DON'T PANICin large friendly letters on the front and a voice that speaks its entries in a calm and level tone.
People and Skills Across the five books Douglas Adams has made many references to people, their behaviour, their skills and their aptitude We will take a look some of the key highlights and draw analogies to software testing And why can’t a Trilogy be in Five Parts? A Trilogy in Five Parts
Don’t Panic Lets take a look at why the Hitchhikers Guide has the words DON'T PANICwritten in friendly letters on the front cover. Remember Arthur has just had his house demolished, his planet demolished, been beamed aboard an alien spaceship, encountered an alien species, and realised his friend of 10 years is also an alien. He is to put it mildly, having a bad day, and needs all the help he can get. And then he is handed the Hitchhiker’s Guide to the Galaxy
Babel Fish The first thing that happens when sci-fi writers head out into space is they have to work out how to solve the language barrier Hitchhikers Guide does this with the Babel Fish How important is it in software testing to be able to speak the same language as; the business, the developers, the project managers, other testers, etc. etc. The Guide also has some cautionary words to say about what happens when you can communicate with everybody!
Marvinthe Paranoid Android Marvin is an Android from the Sirius Cybernetics Corporation. “Your Plastic Pal whose fun to be with” He has a brain the size of a planet, and a Genuine People Personality! Some quotes from Marvin; “Life! Don't talk to me about life.” “It's funny how just when you think life just can't possibly get any worse it suddenly does.” “Life, loathe it or ignore it, you can't like it.” Have you ever met someone like Marvin? Have you ever thought that the rest of the project might view the Testing Team like Marvin???
Method & Process • It is said: “The History of every major Galactic Civilization tends to pass through three distinct and recognizable phases, those of Survival, Inquiry and Sophistication, otherwise known as the How, Why and Where phases” • For instance, the first phase is characterized by the question How do we eat? the second by the question Why do we eat? and the third by the question Where shall we eat? • I think this is brilliant for software testerswhen we are detecting aberrant behaviour: Survival When we spot unusual behaviour - How is it doing that? Inquiry When we diagnose behaviour - Why is it doing that? Sophistication When we want to fix the error - Where is it doing that?
Situational Awareness The books consistently use Zaphod Beeblebrox, President of the Known Galaxy, to demonstrate; management ineffectiveness, inability to lead, slavish devotion to technology, cowardice, etc. etc. Joo Janta 200 Super-Chromatic Peril Sensitive Sunglasses
Some Douglas Adams Quotations We are stuck with technology when what we really want is just stuff that works.” “[The World Wide Web] is the only thing I know of whose shortened form — www — takes three times longer to say than what it's short for.” “I love deadlines. I like the whooshing sound they make as they fly by.” (This quote was used by Scott Adams in a Dilbert comic strip) “I refuse to answer that question on the grounds that I don't know the answer.” “Technology is a word that describes something that doesn't work yet.” “Let's think the unthinkable, let's do the undoable, let's prepare to grapple with the ineffable itself, and see if we may not eff it after all.”
Through the Eyes of the Guide • So lets take a look at the world of Software Testing through the eyes of The Hitch Hikers Guide • For this example I am going to look at Risk Based Testing • I am going to try and use the same approach as The Guide but there are some exceptions • I don’t have the voice of Peter Jones • I don’t have the graphical skills of the H2G2 animators • I don’t know what apocryphal means! Software Testing
Don’t Panic Prioritisation by Risk It is quite common that as test execution nears the end of the testing window, it becomes apparent that not all of the testing will be completed in time, so the outstanding workload (Requirements) is assessed by Risk The outstanding workload is then tackled in highest priority Risk order first, leading to a Prioritisation by Risk Because we we run out of time we don’t cover (or test) all of the requirements Some lower risk requirements have already been tested, whilst some higher risk ones are not tested This is not Risk Based Testing Requirements Catalogue Risk # Requirement H 1 XXxxxx Xxxx XXx L 2 XXxxxx Xxxx XXx L 3 XXxxxx Xxxx XXx M 4 XXxxxx Xxxx XXx L 5 XXxxxx Xxxx XXx H 6 XXxxxx Xxxx XXx M n XXxxxx Xxxx XXx
Don’t Panic Risk Based Testing The business, operational and functional risks to the delivered solution are assessed and weighted by Impact and Likelihood The areas which carry the highest risk are tested first Low risk areas may not be targeted by testing Some risks may be mitigated by means other than testing This is Risk Based Testing Risk Profile 35 H 4 17 M Impact 33 29 3 L 14 14 13 L M H Likelihood Risk Mitigation View Web Architecture Functionality Security Performance Legacy Integration New Business Date
Don’t Panic Taking Risks with Testing ! LOW Where we would ideally like all of our testing to be Medium When we begin to take some risks High Where a lot of testing generally takes place Extreme Where we sometimes end up Macho The kind of testing that we should at all costs avoid! Low Medium High Extreme Macho 0 Testing RISK Dial
The Bigger Question • So in preparing this presentation it was inevitable that I was going to ask the bigger question “Why don’t we have a Hitch Hikers Guide to the Software Testing Galaxy?” • And to answer that you also have to answer these questions as well: • So what could it actually look like? • Who would use it? • What would it take to put together? • How would it be maintained? • What value would it really add? • Would it be worth the effort?
Just Imagine If . . . test condition test data Don’t Panic test case design technique Definition A set of inputs, execution preconditions, and expected outcomes developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement. After [IEEE,dob] test case coverage test case Example www.findonehere.com test result test specification Usage . . . . . Variants . . . . . test basis test plan Opinion . . . . . If we take the 3D Mind Map and bring that together through the eyes of The Guide
Lets try the Questions • So what could it actually look like? • A domain based, 3d Mind-Map visualization, with click through links • Including HHG like detail, description & definitions plus colour • Who would use it? • Everyone, the Testing community, Developers, Project Managers, Sponsors, Stakeholders, Customers, Suppliers, and all. • What would it take to put together? • It could start small, but build big • How would it be maintained? • By the (Testing) community – implies ownership • Anyone who wants to, without agenda, not for profit • But would want to avoid the wiki scenario of endless edits • What value would it really add? • Massive, if it could provide access to information, descriptions, definitions, relationships, variants, opinions, colour and flavour • Would it be worth the effort? • Can we afford not to do it? Why doesn’t the whole of IT do this?
So What Next? • Discuss the possibilities further and wider in the testing community – Presentations like this one • Influence others into thinking along the same lines • Networking, discussions, bog posts etc. • Workshop some Testing Guide entries at the Nov. Testing Retreat • Think about community based development • to avoid the endless edits scenario • How ownership works • Get a view form solution providers like; Google, Microsoft and others • Capture my passion • I have decided in future to only do voluntary testing community work if the output is freely available to all
Summary • Learnt some relevant lessons from the Hitchhikers Guide • Taken a look at Software Testing through the eyes, and voice, of the Hitchhikers Guide • Received some wisdom from Douglas Adams • Asked the question “Why?”“Why don’t we have a Hitchhikers Guide to Software Testing?” • Proposed an exciting solution to providing information for testing that you may wish to get involved in • Hope I have left you with an appetite for more Hitchhikers Guide • Had some fun
My Thanks GoTo • Douglas Adams 11 March 1952 – 11 May 2001 • The cast of The Hitchhikers Guide to the Galaxy • HTC Magic, Google & Wikipedia • NASA Image of the Day • European Southern Observatory (Trifid Nebula) • Wikiquote • www.testingstandards.co.uk • Paul Gerrard, Isabel Evans & Geoff Thompson forbouncing the ideas around • Bill Gates, Microsoft and countless Project Managers, Analysts and Developers who make Software Testing such fun Paul Isabel Geoff
Contact Details Graham Thomas Independent Software Testing Consultant graham@badgerscroft.com +44 7973 387 853 www.badgerscroft.com