<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>thoughts from the test eye &#187; Skills</title>
	<atom:link href="http://thetesteye.com/blog/category/skills/feed/" rel="self" type="application/rss+xml" />
	<link>http://thetesteye.com/blog</link>
	<description>by rikard edgren, henrik emilsson and martin jansson - with torbjörn ryber and henrik andersson</description>
	<lastBuildDate>Mon, 30 Jan 2012 21:03:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Status Reporting Questions</title>
		<link>http://thetesteye.com/blog/2011/12/status-reporting-questions/</link>
		<comments>http://thetesteye.com/blog/2011/12/status-reporting-questions/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 13:02:59 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[status reports]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2372</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>Status reporting of testing activities is extremely project-dependent. The needs of when and how and what will differ every time. Maybe that&#8217;s why there&#8217;s so little good writing about status communication; you have to make it up every time. Templates are out of the question, and I believe examples will mislead you as well. You&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>Status reporting of testing activities is extremely project-dependent. The needs of when and how and what will differ every time. Maybe that&#8217;s why there&#8217;s so little good writing about status communication; you have to make it up every time.</p>
<p>Templates are out of the question, and I believe examples will mislead you as well.<br />
You&#8217;re better off by thinking around these questions (inspired by final section in Lessons Learned)</p>
<p><strong>Why are you reporting?</strong><em></em></p>
<p>Are you giving quality assessments, trying to prove why testing is taking place?<br />
Is focus on the product story or the testing story?<br />
What kind of information can change decisions that are based on your report?</p>
<p><strong>What is most important?</strong><em></em></p>
<p>The everlasting and most difficult question for all testing efforts.<br />
This is what you should start your report with.</p>
<p><strong>To whom are you reporting?</strong><em></em></p>
<p>What kind of information is the audience interested in?<br />
Are developers the only ones reading bug reports?<br />
Do you have a grounded quality model?</p>
<p><strong>Are you adjusting the language for the audience?</strong><em></em></p>
<p>Communication includes making sure it is understood.</p>
<p><strong>In which ways are you reporting?</strong><em></em></p>
<p>Just one way is rarely enough; use talking, writing, long, short, formal, informal.</p>
<p><strong>Are there certain times when things need to be communicated?</strong><em></em></p>
<p>Project milestones and meetings might need your information.<br />
Some things must be communicated continuously and timely; bringing up bad news on the last day is a very bad idea (but sometimes inevitable.)</p>
<p><strong>Are you using status reporting as a means for new test ideas?</strong><em></em></p>
<p>I often start writing an important report early, to identify things that needs more testing.<br />
You should start thinking about the reporting before the testing starts.</p>
<p><strong>Are you reporting just because you are supposed to?</strong><em></em></p>
<p>Then you should read these questions again&#8230;</p>
<p>&nbsp;</p>
<p>If status reporting is difficult, there might be something wrong with your testing.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F12%2Fstatus-reporting-questions%2F&amp;title=Status%20Reporting%20Questions" id="wpa2a_2"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/12/status-reporting-questions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Common Sense Partitioning</title>
		<link>http://thetesteye.com/blog/2011/11/common-sense-partitioning/</link>
		<comments>http://thetesteye.com/blog/2011/11/common-sense-partitioning/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 15:51:03 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[common sense]]></category>
		<category><![CDATA[equivalence partitioning]]></category>
		<category><![CDATA[test design techniques]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2353</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>- I saw you tested &#8220;42&#8243;. How come you didn&#8217;t try &#8220;43&#8243;? - That&#8217;s obvious. It would be the same. No need to test something that would give the same result. - OK, so I guess you are familiar with equivalence partitioning? - Beg your pardon? It is quite often said that testers don&#8217;t know [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><blockquote><p>- I saw you tested &#8220;42&#8243;. How come you didn&#8217;t try &#8220;43&#8243;?<br />
- That&#8217;s obvious. It would be the same. No need to test something that would give the same result.<br />
- OK, so I guess you are familiar with equivalence partitioning?<br />
- Beg your pardon?</p></blockquote>
<p>It is quite often said that testers don&#8217;t know the basic test design techniques.<br />
This is both true and false.<br />
&#8220;All&#8221; testers know how to use basic equivalence partitioning, it is common sense: you put things in groups, so you don&#8217;t have to test similar things that would yield the same information.<br />
But they don&#8217;t know the name, and they don&#8217;t know the theory behind partitioning many types of groups.<br />
But if they are testing all important partitions, is it a problem?</p>
<p>Might be, but probably not. I think a tester with knowledge about the product and its usage will make a common sense selection of the partitions that are needed to be tested for that particular situation.<br />
For cases where you need to be very thorough this will include inputs, outputs, combinations; and extensions to examples like these:</p>
<p>Numericals: normal, inside/outside boundaries, min/max data type, different data types, decimals, precision<br />
Strings: A-Z, ÅÄÖ, Unicode, empty, many, extremely many, control chars, leading/trailing spaces, things that mean other things (*, SQL, links, special values)</p>
<blockquote><p>- You know you can&#8217;t be called a real tester if you don&#8217;t know how to do equivalence partitioning.<br />
- Be so it. I just test what is important in my project.</p></blockquote>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F11%2Fcommon-sense-partitioning%2F&amp;title=Common%20Sense%20Partitioning" id="wpa2a_4"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/11/common-sense-partitioning/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Software Testing Storytelling</title>
		<link>http://thetesteye.com/blog/2011/10/software-testing-storytelling/</link>
		<comments>http://thetesteye.com/blog/2011/10/software-testing-storytelling/#comments</comments>
		<pubDate>Mon, 10 Oct 2011 14:29:50 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[status reports]]></category>
		<category><![CDATA[storytelling]]></category>
		<category><![CDATA[terminology]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2274</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>Storytelling has been rising for quite some years and it will soon boom for software testing. The reason is simple: people like stories. And if it is used as status reporting instead of lame numbers, it is a step in the right direction, to say the least. But when testing this idea theoretically, I find [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>Storytelling has been rising for quite some years and it will soon boom for software testing.<br />
The reason is simple: people like stories.<br />
And if it is used as status reporting instead of lame numbers, it is a step in the right direction, to say the least.<br />
But when testing this idea theoretically, I find some fears:<br />
* they will take long time to tell<br />
* they will be too entertaining, less informative</p>
<p>And when comparing with my experiences, I find success stories when remembering conversations where I fast communicated the essence.</p>
<p>We already have a core tester skill in writing effective bug titles.<br />
We should learn how to do this for whole test efforts, we should always have an executive summary up our sleeve.<br />
We shouldn&#8217;t tell stories, it should be more like a librarian&#8217;s summary.</p>
<p>To accomplish this we need a lot of training, but I doubt it will be enough.<br />
We also need <strong>more words</strong>.<br />
They don&#8217;t have to be unanimously defined, and they can be reconstructed at each company, as long as they are useful.<br />
Do a daily exercise of explaining the state of the product in thirty seconds, and try out your own terminology.</p>
<p>We need more words to effectively communicate the essence of our findings.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F10%2Fsoftware-testing-storytelling%2F&amp;title=Software%20Testing%20Storytelling" id="wpa2a_6"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/10/software-testing-storytelling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HICCUPPS F.C.</title>
		<link>http://thetesteye.com/blog/2011/09/hiccupps-f-c/</link>
		<comments>http://thetesteye.com/blog/2011/09/hiccupps-f-c/#comments</comments>
		<pubDate>Fri, 23 Sep 2011 11:30:16 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[conversations]]></category>
		<category><![CDATA[heuristic]]></category>
		<category><![CDATA[oracles]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2222</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>James Bach and Michael Bolton has a classic collection of consistency oracles; HICCUPPS(F): History, Image, Comparable Products, Claims, User Expectations, Product, Purpose, Standards and Statutes, Familiarity It is a very good collection; not only helping you find out if something is a problem or not, but also the other way round: serving as testing inspiration. [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>James Bach and Michael Bolton has a classic collection of consistency oracles; <a href="http://www.satisfice.com/rst.pdf">HICCUPPS(F)</a>: History, Image, Comparable Products, Claims, User Expectations, Product, Purpose, Standards and Statutes, Familiarity</p>
<p>It is a very good collection; not only helping you find out if something is a problem or not, but also the other way round: serving as testing inspiration.<br />
At EuroSTAR 2009 tutorial Exploratory Testing Masterclass, Michael said that anyone coming up with additions would become famous.<br />
As a tester this was of course an interesting challenge!<br />
So over time, I now and then have thought of additions, but they haven&#8217;t been solid.<br />
For example; V as in Violation of Quality Characteristics, could be seen as an inverted Familiar Problems or User Expectations.<br />
You, as in the tester&#8217;s subjectivity can also be part of F and U.</p>
<p>But finally I found the important oracle missing from their list.<br />
C as in <strong>Conversations</strong>.<br />
You talk to a developer or other stakeholder, and collaborate to reach a decision.<br />
Yes, during the discussion you might use HICCUPPS(F) oracles, but not necessarily. And it might not be the whole story, and not your oracle.<br />
It might not be a 100% consistency heuristic, but is important enough to not leave out.<br />
C as in Consistent with Conclusions from Collaborative Communication.</p>
<p>Outside the list we have the important No Oracle, where judgment is suspended, and noteworthy information is communicated, without deciding if it&#8217;s a problem or not.<br />
But that doesn&#8217;t make for a nice soccer-sounding mnemonic, and is better left as a side-note to HICCUPPS F.C. heuristic.</p>
<p>(When double-checking, I noticed that they recently have added another one in the RST slides: Explainability &#8211; The system is consistent with my ability to explain it.<br />
For now, I&#8217;ll put that one as a sub-part of Conversations; in dialogue, we weren&#8217;t able to explain the behaviour.)</p>
<p><strong>History </strong>- the product should be consistent with previous versions<br />
<strong>Image </strong>- consistency with the looks and behavior expected of the product<br />
<strong>Comparable Products </strong>- consistency with competitors, references or other solutions to similar problems<br />
<strong>Claims </strong>- consistent with written or oral statements about the product<br />
<strong>User Expectations </strong>- consistent with what a reasonable user would expect<br />
<strong>Product </strong>- consistent within itself<br />
<strong>Purpose </strong>- consistent with the reasons for making/using the product<br />
<strong>Standards and Statutes</strong> &#8211; consistent with standards or other authorities<br />
<strong>Familiarity </strong>- inconsistent with problems seen before<br />
<strong>Conversations </strong>- consistent with conclusions from dialogue</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F09%2Fhiccupps-f-c%2F&amp;title=HICCUPPS%20F.C." id="wpa2a_8"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/09/hiccupps-f-c/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>The Little Black Book on Test Design</title>
		<link>http://thetesteye.com/blog/2011/09/the-little-black-book-on-test-design/</link>
		<comments>http://thetesteye.com/blog/2011/09/the-little-black-book-on-test-design/#comments</comments>
		<pubDate>Tue, 06 Sep 2011 11:02:00 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[exploratory testing]]></category>
		<category><![CDATA[heuristic]]></category>
		<category><![CDATA[little black book]]></category>
		<category><![CDATA[paper]]></category>
		<category><![CDATA[test design]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2224</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>During my first paternity leave I learned sourdough baking. During the second I couldn&#8217;t help writing an ambitious paper, or a small book, about people-oriented test design, about things beyond test design techniques, close to the exploratory testing tradition. It can be downloaded here. It contains collections of knowledge, and generalizations of my ten years [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p><a href="http://www.thetesteye.com/papers/TheLittleBlackBookOnTestDesign.pdf"><img src="http://thetesteye.com/blog/wp-content/uploads/LittleBlackBookOnTestDesign1.jpg" alt="The Little Black Book on Test Design" title="LittleBlackBookOnTestDesign" width="265" height="375" class="alignright size-full wp-image-2236" /></a><br />
During my first paternity leave I learned sourdough baking. During the second I couldn&#8217;t help writing an ambitious paper, or a small book, about people-oriented test design, about things beyond test design techniques, close to the exploratory testing tradition.</p>
<p>It can be downloaded <a href="http://www.thetesteye.com/papers/TheLittleBlackBookOnTestDesign.pdf">here</a>.</p>
<p>It contains collections of knowledge, and generalizations of my ten years of testing the same product suite. I think it can be useful for ambitious testers that want to find any problems that might be important.</p>
<p>It probably is too much, theoretical, irrelevant or condense for many of you, but if you want to give it a shot I recommend the following:</p>
<p>* Download <a href="http://www.thetesteye.com/papers/TheLittleBlackBookOnTestDesign.pdf">The Little Black Book on Test Design</a><br />
* Print as double-sided A5 Booklet<br />
* Find a quiet, comfortable place<br />
* Read and relate to your test reality</p>
<p>Comments are welcome, especially additions to the collection of one hundred and three test design heuristics.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F09%2Fthe-little-black-book-on-test-design%2F&amp;title=The%20Little%20Black%20Book%20on%20Test%20Design" id="wpa2a_10"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/09/the-little-black-book-on-test-design/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>What is important?</title>
		<link>http://thetesteye.com/blog/2011/08/what-is-important/</link>
		<comments>http://thetesteye.com/blog/2011/08/what-is-important/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 18:43:47 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[importance]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2204</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>How do you find out what is important, in your specific situation? I think it is the essential problem for all activities with complexity. I think it is impossible to do really good software testing without the ability to dismiss things as not important, and dig deeper for matters that are important (I believe it&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>How do you find out what is important, in your specific situation?</p>
<p>I think it is the essential problem for all activities with complexity.<br />
I think it is impossible to do really good software testing without the ability to dismiss things as not important, and dig deeper for matters that are important (I believe it&#8217;s the same for cooking a meal, or raising a child.)<br />
I don&#8217;t think you can sample appropriately unless you know a lot more than the requirements.<br />
I think we need better understanding and models for this, if we are to persuade those that want to govern by number; they aren&#8217;t hitting the crucial things.</p>
<p>It doesn&#8217;t seem like pointing to intuition and subjectivity is enough, but I haven&#8217;t reached further than this:</p>
<blockquote><p>Either you know what is important (when you see it), or you don&#8217;t.<br />
So the more knowledge you have about things that matter, the better suited are you to find important quality-related information; some as planned, some by serendipity.<br />
So the key is to learn a lot, from a variety of sources.
</p></blockquote>
<p>I obviously need help on this one&#8230;</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F08%2Fwhat-is-important%2F&amp;title=What%20is%20important%3F" id="wpa2a_12"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/08/what-is-important/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Bug Magnets are thinking as criminals</title>
		<link>http://thetesteye.com/blog/2011/08/bug-magnets-are-thinking-as-criminals/</link>
		<comments>http://thetesteye.com/blog/2011/08/bug-magnets-are-thinking-as-criminals/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 04:17:15 +0000</pubDate>
		<dc:creator>Henrik Emilsson</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Skills]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[context-driven]]></category>
		<category><![CDATA[social science]]></category>
		<category><![CDATA[testing explained]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2183</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/ideas.png" width="48" height="48" alt="" title="Ideas" /><img src="http://thetesteye.com/blog/wp-content/uploads/people.png" width="48" height="48" alt="" title="People" /><img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>I know of some testers who are pointed out by others to be Bug Magnets; people recognized for their ability to somehow draw bugs to them. Bug Magnets can be found in many workplaces and I bet that you know of someone that falls under this description. I have been appointed a Bug Magnet by [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/ideas.png" width="48" height="48" alt="" title="Ideas" /><img src="http://thetesteye.com/blog/wp-content/uploads/people.png" width="48" height="48" alt="" title="People" /><img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>I know of some testers who are pointed out by others to be Bug Magnets; people recognized for their ability to somehow draw bugs to them. Bug Magnets can be found in many workplaces and I bet that you know of someone that falls under this description. I have been appointed a Bug Magnet by some and it have made me thinking on what this phenomena boils down to.<br />
Is it luck? Is it faith? Is it an ability that some are born with and some aren&#8217;t? Can you learn this ability? Can you improve it?<br />
I have wondered about this for some time.</p>
<p>However, this summer I had a revelation when I watched an episode of the marvelous TV series &#8220;Homicide: Life on the Streets&#8221;:</p>
<blockquote><p>Homicide: Life on the streets<br />
Season 1 Episode 9 &#8220;Night of the dead living&#8221;<br />
Det. Frank Pembleton and Det. Tim Bayliss</p>
<p>Bayliss [sits pensively. To Frank]: What are you looking at?</p>
<p>Pembleton is playing cat&#8217;s cradle.</p>
<p>Bayliss: You have something that you wanna say to me?</p>
<p>Pembleton: Adena Watson. So many unanswered questions.</p>
<p>Bayliss: And you&#8217;re saying that I&#8217;m not asking them.</p>
<p>Pembleton: I&#8217;m saying that you&#8217;re not answering them. [He peers at Tim through the cat's cradle.]</p>
<p>Bayliss [sighs]: What questions aren&#8217;t I answering, huh?</p>
<p>Pembleton [gets up and flips through a notebook, draws a picture]: Okay, these sixteen row houses on the north side of Kirk Avenue. Adena&#8217;s body was found outside the kitchen door in the red yard at 718 Kirk. Now the killer could have dropped her anywhere. Why not the common alley? Why not the yards at either end of the block? These three row houses are empty. One, two, three. The killer would have stood much less of a chance of being seen if he&#8217;d dumped her body in any one of these yards. Why would he risk bringing a little girl&#8217;s body inside a closed fence of an occupied house?<br />
Maybe he wanted her body to be found immediately. Maybe he wanted to cast suspicion on the people in 718. Maybe he had some &#8230; perverse sense of remorse, some impulse to leave her body inside an enclosed yard to protect her from stray dogs.</p>
<p>Bayliss: These are *exactly* [taps the notebook] the questions that I have been trying to answer.</p>
<p>Pembleton: Well, you can try, but you never will.</p>
<p>Bayliss: Why?</p>
<p>Pembleton: You don&#8217;t think like a criminal. You don&#8217;t have a criminal&#8217;s mind.</p>
<p>Frank walks away. Tim grimaces in disbelief.</p></blockquote>
<p>Bang! Suddenly it struck me. &#8220;You don&#8217;t think like a criminal. You don&#8217;t have a criminal&#8217;s mind&#8221;.<br />
In order for a police to think of possible outcomes of a crime they have to be able to think as criminals, and put themselves in a criminal&#8217;s way of thinking.<br />
If you don&#8217;t do this, you are trying to understand and explain the crime based on <em>your</em> logic.<br />
Similarly, in order to &#8220;attract&#8221; bugs you have to wanna see problems; you have to identify problems that might bug several kinds of stakeholders; you have to put all your knowledge about the project in to consideration; and you have to be able to see the problems that matter. You are not trying to understand and explain the system by using your own logic, instead you are using several input sources to do this: logic, subjective thoughts, people&#8217;s skill levels, complexity of system, technology, etc.</p>
<p>So let me present my take on a definition of &#8220;Bug Magnet&#8221;:</p>
<p><em>Being a Bug Magnet = Able to foresee possible problems (or able to spot opportunities for things to go wrong), in context.</em></p>
<p>The most important thing here is the last two words &#8220;in context&#8221;. That is, even if you have all the bug taxonomies and oracles in the world to support you, you have to be able to understand what matters in this project.<br />
Knowledge about &#8220;all common problems in .NET applications&#8221; can help you sometimes. Knowledge about &#8220;all common problems in .NET applications <em>that developer X often produce&#8221;,</em> is however much more useful.<br />
Understanding what bugs<em> our users</em> is more helpful than knowing about what bugs <em>users in general</em>.<br />
Knowing about problems with focus in Windows applications is one thing, finding these problems during testing is to be able to spot opportunities when they are presented to you in <em>your context</em> (see <a title="Windows Focus" href="http://thetesteye.com/blog/2010/11/windows-focus/" target="_blank">http://thetesteye.com/blog/2010/11/windows-focus/</a> ).</p>
<p>Now, back to the questions in the beginning of the post.</p>
<ul>
<li>Is it luck?<br />
&#8211; No, even if luck sometimes help. For others it is more of welcoming serendipity.</li>
<li>Is it faith?<br />
&#8211; I don&#8217;t believe in faith.</li>
<li>Is it an ability that some are born with and some aren&#8217;t?<br />
&#8211; Maybe. Some people might have a more developed talent, but I think that most people have this talent. Some are born with variations of narcissistic personality disorders and might have difficulties with this.</li>
<li>Can you learn this ability?<br />
&#8211; I believe so.</li>
<li>Can you improve it?<br />
&#8211; Yes. However, you might need to consider one or several dimensions to improve: Empathy, reasoning, attention for detail and seeing the whole, recognizing patterns of your own and other peoples mistakes, subjectivity,  general systems theory, context-driven testing, and more.<br />
Notice that these dimensions are not technical but rather comes from social sciences.</li>
</ul>
<div>Closing note:<br />
This is my response to one part of what I and Rikard have discussed during the last year: What constitutes skilled software testing?<br />
More to come!</div>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F08%2Fbug-magnets-are-thinking-as-criminals%2F&amp;title=Bug%20Magnets%20are%20thinking%20as%20criminals" id="wpa2a_14"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/08/bug-magnets-are-thinking-as-criminals/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Lightweight Compatibility Testing</title>
		<link>http://thetesteye.com/blog/2011/06/lightweight-compatibility-testing/</link>
		<comments>http://thetesteye.com/blog/2011/06/lightweight-compatibility-testing/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 06:03:49 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[compatibility]]></category>
		<category><![CDATA[lightweight]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2090</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>In testing text books you can read that compatibility testing should be performed after the functionality testing and bug fixing is completed. I guess the reason is that you don’t want to mix these categories, but hey, what a waste of resources. My suggestion is to perform the compatibility testing at the same time as [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>In testing text books you can read that compatibility testing should be performed after the functionality testing and bug fixing is completed. I guess the reason is that you don’t want to mix these categories, but hey, what a waste of resources.<br />
My suggestion is to perform the compatibility testing at the same time as you are doing your other testing; when problems arise, trust that you will deal with them.<br />
In my classification, compatibility testing involves hardware, operating system, application, configuration, backward/forward compatibility, sustainability and standards conformance.<br />
Here follows some lightweight methods to tackle these areas.</p>
<h2>Basic Configuration Matrix</h2>
<p><a href="http://thetesteye.com/blog/2008/05/bcm-basic-configuration-matrix/">Basic Configuration Matrix</a> is a short list of platform configurations that will spot most of the platform bugs that could exist in your currently supported configuration matrix.<br />
The simplest example is to use one configuration with the oldest supported operating system, oldest browser etc; and one configuration with the newest of all related software. A more advanced example could use several configurations that use different languages, Application Servers, authentication methods et.al.<br />
Often it will take quite some time to run most tests on BCM; so alternate between the configurations while testing your product. Do variations on configurations when appropriate.</p>
<h2>Error-prone Machine</h2>
<p>Another trick is to setup machines so they have a high chance of stumbling on compatibility issues. You can vary this on your BCM, your personal machine or whatever is suitable. The idea is to get some compatibility testing almost for free.<br />
<a href="http://thetesteye.com/blog/2008/04/an-error-prone-windows-machine/">Examples on Windows</a> include: run as Restricted User, use Large DPI setting, use German Regional Settings, install support for all of the worlds characters, non-English language in Internet Browsers, move system and user Temp folder, activate IE ‘display a notification about every script error’, move Task Bar to the left side of the screen, Windows Classic Theme &amp; Color Scheme, use User Access Control, use an HTTP proxy, use Data Execution Prevention, install new versions as they come, e.g. latest hotfixes, MDAC etc, never install software on default location, run with 2 screens, on a 64-bit system, use different browsers, turn off virtual memory swapping, , install Google/Yahoo toolbar, run Energy Save Program, pull out the network cord every time you leave the computer; and put it back in when you return, turn on the sound!</p>
<h2>Technology Knowledge</h2>
<p>If you know a lot about the environment the software operates in, you know which things will happen in reality, which settings that usually are altered, and how it is commonly operated.<br />
The lightweight method is to use this knowledge and make sure you test the most important things.</p>
<h2>Letting Others Do the Testing</h2>
<p>Many compatibility problems happen on basic usage, which indicates that you can let others do a big part of the compatibility testing: developers can use different machines and graphics cards, Beta testing can be done in customers’ production-like environment. If the product is free of charge, you might even get away with addressing problems after your users encounter them (but make sure you have an easy and compelling way for them to do this reporting.)<br />
Crowd-testing could be a way, but so far the payment models from the testers’ perspective are not ethically defensible, to me.</p>
<h2>Reference Environments</h2>
<p>To quickly investigate if you are experiencing a compatibility issue, it is handy to have reference environments available. It could be someone else’s, a virtual machine, a quickly cloned image, your own machine etc.<br />
Personally I prefer having a physical machine that is running similar things, but on a different OS, different language and/or earlier version. The last years I have had three machines and three monitors, and by switching, I get a lot of compatibility testing done at the same time as testing new features. When I check things on an older version, I can save documents and use them for next tests.</p>
<h2>Backward/Forward Compatibility</h2>
<p>Backward compatibility is easiest done if you can use real customers most complicated files/data/documents. Use these as you test any functionality (Background Complexity Heuristic).<br />
Occasionally communicate between different versions.<br />
Forward compatibility should be designed in the architecture, as a tester you can point this out.</p>
<h2>Sustainability</h2>
<p>Have conversations around the question: Is the product compatible with the environment? Have we considered energy efficiency, switch-offs, power-saving modes, support work from home and the likes?</p>
<h2>Standards</h2>
<p>A lightweight method for standards conformance is to identify which ones are applicable, and ask the experts if they understand it, and successfully have managed to adapt it to the new context.<br />
Let’s finish with a non-lightweight method: you can become the standards expert.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F06%2Flightweight-compatibility-testing%2F&amp;title=Lightweight%20Compatibility%20Testing" id="wpa2a_16"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/06/lightweight-compatibility-testing/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>No Flourishes and New Connections Heuristics</title>
		<link>http://thetesteye.com/blog/2011/06/no-flourishes-and-new-connections-heuristics/</link>
		<comments>http://thetesteye.com/blog/2011/06/no-flourishes-and-new-connections-heuristics/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 10:33:39 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[heuristic]]></category>
		<category><![CDATA[test design]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=2074</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>I used to be a bit skeptic towards the word &#8220;heuristic&#8221;. It seemed needlessly advanced, and things are possible to explain in other words. But when I read Gigerenzer&#8217;s Gut Feelings about how to catch a flying ball, it all came together. For software testing, which can&#8217;t be complete, is dependent on many factors, with [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>I used to be a bit skeptic towards the word &#8220;heuristic&#8221;. It seemed needlessly advanced, and things are possible to explain in other words.<br />
But when I read Gigerenzer&#8217;s Gut Feelings about how to catch a flying ball, it all came together.<br />
For software testing, which can&#8217;t be complete, is dependent on many factors, with a product to be used with different needs and feelings; techniques are not appropriate. It is about skill, and human skill is very good to describe with a variety of heuristics.</p>
<p>When blogging about some heuristics I think are un-published and worth knowing about, I&#8217;ll try to do two at a time; more bang for the bucks.<br />
With English as second language it is difficult to give them good names, so feel free to suggest better names! (and content&#8230;)<br />
And remember, heuristics are not rules; they are more like rules of thumb, that might be useful, in specific situations.</p>
<h2>No Flourishes Heuristic</h2>
<p>At many times you can design and execute straightforward tests, without garnish, fancy tools, and incomprehensible details.<br />
Try this when you have the chance!<br />
See if perceived performance, manually clocked, can give good information.<br />
Use common options instead of combinatorial.<br />
Look at the GUI instead of automating tests.<br />
Try to do something valuable instead of covering all paths in last years use case.<br />
Write your basic test strategies in plain English, so everyone can review them.<br />
Use what you have, and look for what&#8217;s important.</p>
<h2>New Connections Heuristic</h2>
<p>How do you &#8220;discover&#8221; what is important?<br />
I think it often is about combining different knowledge in new ways.<br />
So you need to know a lot about the product and its context, and look for connections between the wide diversity of knowledge you have.<br />
When reading, talking, thinking, you sometimes instantly think &#8220;but <strong>this</strong> could have big impact if one is trying to do <strong>that</strong>!&#8221;<br />
Or during test execution, when you suddenly get an impulse that you have to add some other things to the stew.<br />
This might seem unstructured, and dependant on chance, but that is OK. If software testing is a sampling problem, we need different ways of discovering what is important.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F06%2Fno-flourishes-and-new-connections-heuristics%2F&amp;title=No%20Flourishes%20and%20New%20Connections%20Heuristics" id="wpa2a_18"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/06/no-flourishes-and-new-connections-heuristics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trilogy of a Skilled Eye</title>
		<link>http://thetesteye.com/blog/2011/05/trilogy-of-a-skilled-eye/</link>
		<comments>http://thetesteye.com/blog/2011/05/trilogy-of-a-skilled-eye/#comments</comments>
		<pubDate>Thu, 05 May 2011 16:35:07 +0000</pubDate>
		<dc:creator>Rikard Edgren</dc:creator>
				<category><![CDATA[Skills]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[skilled testers]]></category>
		<category><![CDATA[the test eye]]></category>

		<guid isPermaLink="false">http://thetesteye.com/blog/?p=1893</guid>
		<description><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/>I have completed a trilogy on the theme The Eye of a Skilled Software Tester edition 1: Lightning Talk, Danish Alliance, EuroSTAR 2010 edition 2: Article, The Testing Planet, March 2011 &#8211; Issue 4 edition 3: Presentation, Scandinavian Developer Conference, april 2011 Some things have changed over time; in the first two I didn&#8217;t focus [...]]]></description>
			<content:encoded><![CDATA[<img src="http://thetesteye.com/blog/wp-content/uploads/skills.png" width="48" height="48" alt="" title="Skills" /><br/><p>I have completed a trilogy on the theme <strong>The Eye of a Skilled Software Tester</strong></p>
<p>edition 1: <a href="http://www.youtube.com/watch?v=9OrTyI-FOGg">Lightning Talk</a>, Danish Alliance, EuroSTAR 2010</p>
<p>edition 2: Article, <a href="http://www.thetestingplanet.com/2011/04/march-2011-issue-4/">The Testing Planet</a>, March 2011 &#8211; Issue 4</p>
<p>edition 3: <a href="http://www.thetesteye.com/presentations/REdgren_TheEyeOfASkilledSoftwareTester.pptx">Presentation</a>, Scandinavian Developer Conference, april 2011</p>
<p>Some things have changed over time; in the first two I didn&#8217;t focus on the most important &#8220;look at many places&#8221;, besides specifications we need to know about business usage, technology, environments, taxonomies, problem history, standards, test analysis heuristics, quality characteristics, and more&#8230;</p>
<p>I also did the necessary switch from errors/bugs to problems; because it is broader, and better pinpointing the psychological paradox: &#8220;<em>want to see problems</em>&#8220;, things that make Done further away.</p>
<p>While at it, I uploaded a presentation from SAST Öresund yesterday.<br />
<a href="http://www.thetesteye.com/presentations/REdgren_77TestIdeaTriggers.pdf">77 Test Idea Triggers</a>, a presentation I&#8217;d be happy to give again!</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fthetesteye.com%2Fblog%2F2011%2F05%2Ftrilogy-of-a-skilled-eye%2F&amp;title=Trilogy%20of%20a%20Skilled%20Eye" id="wpa2a_20"><img src="http://thetesteye.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://thetesteye.com/blog/2011/05/trilogy-of-a-skilled-eye/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

