Some people thrive on challenges, while others struggle with how to deal with them. Handled well, challenges can make us stronger in our passion, drive, and determination. Lloyd Roden describes the challenges we face today in software testing and how we can respond in a positive, constructive manner.
One of the challenges Lloyd often sees is identifying and eliminating metrics that lie. While we (hopefully) do not set out to deceive, we must endeavor to employ metrics that have significance, integrity, and operational value. Another challenge test leaders face is providing estimates that have clarity, accuracy, and meaning. Often we omit a vital ingredient when developing test estimates - the quality required in the product.
A third challenge is convincing test managers to actually test regularly to attain credibility and respect with the team they are leading. A further challenge is to see why the use of the term "best practice" can be so damaging.
Let us start by defining what a “challenge” is… there are various definitions: * call to battle (e.g. a duel) * contest that requires special skill (e.g. tennis competitions) * call into question (e.g. challenge the statement) Climbing Mount Everest: Has anyone done this? Would anyone like to do this? You need to train hard for this challenge – for most of us it would be something that is outside our reach or desire Running a Marathon Has anyone done this? Maybe for some of us it is a challenge just to…run But maybe if you have already done this you want to beat your time or perhaps run 42 marathons in 52 days like Eddie Izzard! Running a marathon would certainly be a challenge for me. I have just taken up running on a treadmill…1 mile a day, but even that is a challenge for me Cooking Dinner for 20 people Not a real problem for me as I love to cook for dinner parties. 20 people would be manageable for me but for some of you – you would prefer to climb Mount Everest Flying Not literally – that would be a challenge. But for some flying in an Airplane it would certainly be a challenge as this might be overcoming a fear that you have, This is a different sort of challenge Getting out of bed Anyone here have teenagers? Now you know what I mean! We spend the first 10 years getting them into bed and the next 10 years trying to get them out of bed
It is important for us to realise that challenges can be both “bad” and “good” Bad Challenges “ I challenge you to a game of squash” – not a problem if you are under 40 but if you are 70 and haven’t played the game before! “ I challenge you to run a marathon after this session” “ I challenge you to fight Mike Tyson I challenge you to cook a meal for 20 people all of whom are VIPs I challenge you to get out of bed before 10am each morning – result grumpy teenager Good Challenges These help improve our self or open our minds to other things I challenge myself to run a little further each day and a little faster (but not too much) I challenge myself to eat more healthily – smoothies taste really nice! I challenge myself to try anything once when it comes to culture and national food (sushi, bone, pigs ears to name but a few)
Our reactions will vary with challenges that we are faced with: “ Yes” or “No way” or “Boring” or “don’t really care” I hope the challenges I a going to share will invoke a positive reaction…
Go through the definitions of: BEST and PRACTICE Why is it that we use these terms? STOP IT! Who are we trying to impress? Vendors – STOP Saying that your product/process/methodology is best practice Managers – STOP saying you have adopted best practice What are you trying to prove? If you have best practice then it means that you cannot improve…best by definition is highest qualifier. Also are you trying to downgrade other methodologies? Ours is BEST practice – therefore yours must be inferior practice or WORST Practice
The Dreyfus Model. In the 1970s, the brothers Dreyfus (Hubert an Stuart) began their seminal research on how people can attain and master skills. The Dreyfus brothers looked at highly skilled practitioners, including commercial airline pilots and world chess masters. Their research showed quite a bit changes as you move from Novice to Expert. You just don’t “know more” or gain skill. Instead, you experience fundamental differences in how you perceive the world, how you approach problem solving and the mental models you form and use. Unlike other models or assessments that rate the whole person, the Dreyfus model is applicable per skill. In other words, it is a situational model and not a trait or talent model. You are neither “expert” nor “novice” at all things.; Rather you are at one of these stages in some particular skill domain. You might be a “novice” cook but an “expert” sky diver, or visa versa. Practices are the things we do…behaviour Let’s look at how Practices can help or hinder in the Dreyfus model… Go through the stages… Let us use the analogy of creating a test plan… (Subverts = to ruin or overturn) Novice – needs the practice/standard for test plans – they don’t know how to create one Advanced Beginner – uses the test pan procedure on a daily basis, starting to get to know how to do them Competent – knows all about test plans, so defines the procedures for other people to follow Proficient – they don’t need the procedure, they will be able to apply the test plan to different contexts. If they get stuck then they might refer to the procedure Expert – will challenge the use of test plans on every project, they might adapt and remove sections for projects since they are not relevant
So can practices ever be useful? well yes… Protecting Novices – they need practices because they don’t know what to do Helps Advanced Beginners as they will use the practices to guide them Provides work for competent people because they write the practices. These people write them with no contextual awareness BUT be warned If you continually use “best practice” and insist they are used then your proficient and expert people will leave Let’s take the concept of test scripts. Hands up who uses/ encourages the use/ writes Test Scripts within your organisation? (these are step by step sets of instructions which need to be followed) Well competent people will usually define them, novice and advanced people will use them BUT Expert and Proficient people WILL be bored and will leave! It is like baking a cake and giving the recipe to an expert chef (like Gordon Ramsay)
Welcome to the weakest link… This is the show in which we can decide, just by asking a few questions, who the weakest link is in our test team and then we can “fire them”…a fun game that can be played by all Test Managers with their staff… Let me introduce you to the testing team playing today’s weakest link… John…. Carol…. Rick…. Pam…
Read the slide… Once the answer has come up say… “ That is great John, well done. You must be pleased with that result!”
Read the slide… Once the answer has come up say… “ Well Carol that is most disappointing. I do hope you will try better on the next round!”
Read the slide… Once the answer has come up say… “ That is incredible Rick, truly amazing. You must be so pleased with that result and so must your management, excellent work”
Read the slide… Once the answer has come up say… “ Zero!! Pam what have you been doing. That result is appalling, even I could have run more than that and I don’t know anything about testing. I am sorry Pam but it is clearly obvious to everyone in this audience that YOU ARE THE WEAKEST LINK…GOODBYE!” I wonder if we sub-consciously think like this in our organisation. Or maybe our management does Now in the above scenario we have 4 different definitions of a test case and 4 definitely different answers. But I bet even if we have the same definition for the 4 contenstants we would have 4 different interpretations.
Without context on these test cases the only number that has meaning is ZERO I know that the person hasn’t run ANYTHING!!! With the others they have run SOMETHING, But we don’t know what Now let’s have a look at the same numbers …But with context… My conclusion is that the 2 test cases that were run by Carol were quite detailed and probably testing a lot of functionality. I now understand why Pam has not run anything This scenario REALLY happened during a recent consultancy assignment. Managers were judging the testers purely on the number of test cases being run….without knowing the context
Let us consider the problem…. This is a section of an on-line booking system for courses. If we were to test this…what would constitute a test case? Well reading the booking conditions…each hyperlink can be an individual test case testing each field for boundary conditions can each be a test case… Processing an entire booking can be a test case…etc etc THE ANALOGY OF A CASE IS A GOOD ONE BECAUSE We have many different size cases….and cases within cases…each having it’s own unique purpose. BUT the quality of the cases also has relevance as they wont last very long if you have poor quality cases…they break and also might damage the contents….
We have a major problem in our organisations with management focusing too much on the QUANTITY… How many have you run? What percentage of test cases are complete? I want our 1.5million test case script run tonight… Without understanding the QUALITY of what is being run.
So how can we measure quality of the tests….well with two aspects. There are only 2 reasons for us to tests systems… To Gain confidence…. and to find bugs This all leads to us providing information about the QUALITY of the system so that management/stakeholders can make informed decisions I shall leave you with one final thought…
We don’t lie intentionally but we do not spend time understanding the metrics we gather or the graphs we produce. Disraeli said there are 3 types of lies: lies, dammed lies and statistics Go through the graphs. Graph 1: number of bugs being raised (increasing) Graph 2: DMR = the rate at which we are finding them (this is coming down) Graph 3: What is wrong? scale starts with 20 – to make things look good…maybe
Pie charts Pie charts: These were created by Florence Nightingale in 1858. It is suggested that Florence Nightingale’s reputation was built on her ability to give clear and concise presentation of data. There were earlier uses Leon Lalanne used these diagrams in 1829 DDP Percentages are great but we need the actual numbers to draw any concrete conclusions. We must have SIGNIFICANT DATA – that means sufficient amount to draw conclusions. This is elementary statistics which we learnt at school. Test Cases The case against test case. The analogy of a case is a good one Show my suit case…one case….open it up and we have a laptop case…open it up ….another case….open it up…another case. Counting cases is meaningless, it is what is inside them that is important. This is why airlines weigh our cases rather than just count them! How many organisations count test cases? How many people encourage counting test cases? QUESTION – what does it actually mean? This was brought home to me recently when I taught an Exploratory Testing class and I got each group to “estimate” the number of tests they run during a 30minute ET session: Group 1: 35 Group 2: 50 Group 4: 90 Group 4: 1 Conclusion – group 4 should be fired!
Story about little Suzie…
Here are some facts about how we are increasing complexity unnecessarily.
NOTE : Testers should improve their technical skills if they want to progress. We must remember that there are some people who are quite happy to stay in the job that they are in and not progress. There are those who treat their work as a job (9-5) there are those who treat their work as a career and those who treat their work as a passion. Look at some of the excuses for Test Managers ….for not testing…
This is non-negotiable for me and managers/leads who use excuses for not testing are not worthy of the title “test manager” or “test Lead”. Too many managers it in their ivory towers looking down rather than rolling their sleeves up and getting stuck in. Identify and empathise you will go through similar experiences to the team, you will be involved with them. lead by example William Wallace lead from the front – he was not like the English gentry who lead from the back. His men were committed to their leader. testing yourself will enable you to help with testing when overtime is required improve your estimation skills When I started to test I soon realised that certain tasks took lots more time than I realised gain credibility and trust This is a by-product of being a tester. You can mentor others. Look at leading chefs, pilots, craftsmen
Good Generals will not fight every battle – they will choose the ones they think they can win This is the only piece of advice I give to parents…”choose your battles” Choose your battles…story about Hannah THANK YOU