Joep Schuurkes (Posts about models)https://smallsheds.garden/categories/models.atom2023-11-26T10:50:51ZJoep SchuurkesNikolaVIPT - how to teach software testinghttps://smallsheds.garden/blog/2012/vipt-how-to-teach-software-testing/2012-07-29T16:24:51+02:002012-07-29T16:24:51+02:00Joep Schuurkes<div><p>In this final post on VIPT (Value-Information-Processes-Tools) it's time to take a look at teaching software testing. My previous posts on VIPT can be found <a href="https://smallsheds.garden/blog/2012/yet-another-testing-model-value-information-processes-value/">here</a>, <a href="https://smallsheds.garden/blog/2012/vipt-intermezzo-models-and-the-unix-philosophy/">here</a> and <a href="https://smallsheds.garden/blog/2012/vipt-bottom-up-or-top-down/">here</a>.</p>
<h3>A typical software testing course</h3>
<p>A typical traditional software testing course (at least in the way I have taught them) has three elements: theory, stories and exercises.</p>
<p>The first element is all about definitions (testing, test cases, defects, etc.), process descriptions and testing techniques (mostly test design). So basically what happens is that students get a brief introduction about testing in general and then we move on to the main part: teaching a specifc testing method.</p>
<p>The second element of the course are the stories. These are mostly stories aobut how testing in the real world does not work as described in the theory. At best they are stories containing all four elements of VIPT. Most of the time, however, they are just real-world examples of a certain definition or technique.</p>
<p>Finally, there are exercises. As with the techniques, these are mostly about test design. Unfortunately they are also very linear. There is only one correct answer and often only one correct way to get to that answer. So the main gist seems to be: "I taught you a trick, now show me you can perform the trick." But shouldn't learning about testing be more than learning to jump through a hoop on command?</p>
<p><a href="https://smallsheds.garden/blog/2012/vipt-how-to-teach-software-testing/">Read more…</a> (4 min remaining to read)</p></div>VIPT - bottom-up or top-downhttps://smallsheds.garden/blog/2012/vipt-bottom-up-or-top-down/2012-07-17T20:02:42+02:002012-07-17T20:02:42+02:00Joep Schuurkes<div><p>In this second post on VIPT I want to talk about bottom-up vs. top-down. The original plan for this post was to talk about the distance between tools and value, but in the past few days I figured out that bottom-up vs. top-down is a better approach.
If you don't know what VIPT is, please read <a href="https://smallsheds.garden/blog/2012/yet-another-testing-model-value-information-processes-value/">this previous post</a>. Don't worry, I'll wait.</p>
<h3>VIPT is a top-down model</h3>
<p>For me as a context-driven tester the VIPT model is very much a top-down thing. You analyze the context, find out what value you should/can deliver and then you proceed to information, processes and tools. Of course, that's easier said than done. Going through this for everything you do, requires a lot of time and effort. So most of the time you do quick analysis of the context, decide that it sufficiently resembles a context you encountered earlier and you use the same tools you used then. Most of the time that's ok - as long as you stay alert to any signs that you misread the context.<sup id="fnref:1"><a class="footnote-ref" href="https://smallsheds.garden/blog/2012/vipt-bottom-up-or-top-down/#fn:1">1</a></sup></p>
<p><a href="https://smallsheds.garden/blog/2012/vipt-bottom-up-or-top-down/">Read more…</a> (4 min remaining to read)</p></div>VIPT Intermezzo - Models and the Unix philosophyhttps://smallsheds.garden/blog/2012/vipt-intermezzo-models-and-the-unix-philosophy/2012-07-15T20:25:03+02:002012-07-15T20:25:03+02:00Joep Schuurkes<div><p>Thanks to <a href="https://testingcurve.wordpress.com/2012/07/09/yet-another-testing-model-value-information-processes-value/#comments">Neil Thompson's comments</a> on my previous post, I started thinking about what I want to do with the VIPT model. Do I want to expand and refine it to a grand unified theory of testing? And if not, then what?</p>
<h3>The Unix philosophy</h3>
<p>After some thinking I realized that with regard to models, I adhere to the <a href="http://www.faqs.org/docs/artu/ch01s06.html">Unix philosophy</a>.</p>
<h4>Do one thing and do it well</h4>
<p>Particularly I am thinking about the following quote from Doug McIlroy:</p>
<blockquote>
<p>"This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface."</p>
</blockquote>
<p><a href="https://smallsheds.garden/blog/2012/vipt-intermezzo-models-and-the-unix-philosophy/">Read more…</a> (2 min remaining to read)</p></div>Yet Another Testing Model: Value - Information - Processes - Toolshttps://smallsheds.garden/blog/2012/yet-another-testing-model-value-information-processes-value/2012-07-09T20:21:44+02:002012-07-09T20:21:44+02:00Joep Schuurkes<div><p>During Let's Test 2012 some ideas clicked in my mind with the result of yet another testing model:
Value - Information - Processes - Tools.</p>
<p>For me this model really is a culmination of being part of the context-driven testing community. If you have been reading about context-driven testing, I'm sure you'll be able to spot plenty ideas I stole from others. ;-) So thank you so much to all of you!<br>
Secondly, I have trouble believing I am the first one to come up with this simple model - although a google search didn't turn up anything.<sup id="fnref:1"><a class="footnote-ref" href="https://smallsheds.garden/blog/2012/yet-another-testing-model-value-information-processes-value/#fn:1">1</a></sup> So if any of you know of similar models, please leave a comment!</p>
<p>And now to the actual model. Since you can't have a model without a drawing, here's a not so spectacular one:</p>
<p><a href="https://smallsheds.garden/blog/2012/yet-another-testing-model-value-information-processes-value/">Read more…</a> (3 min remaining to read)</p></div>