Skip to main content

Posts

Cambridge Lean Coffee

This month's  Lean Coffee  was hosted by  DisplayLink . Here's some brief, aggregated comments and questions on topics covered by the group I was in. Are testers doing less and less testing? The questioner is finding that testers today are doing more "other" activities, than he was in his early days of testing. Where's the right balance between testing and other stuff? What's your definition of testing? I think that exploring ideas is testing. I fall into a "support" role for the team; I'm the "glue" in the team, often. I focus on the big picture. I am thinking about what needs to be ready for the next phase, and preparing it. I am thinking about information gathering and communication to stakeholders. Is there a contradiction: testers are a scarce resource, but they're the ones doing "non-core" activities. Perhaps it's not a contradiction? Perhaps testers are making themselves a scarce resource by d...

Developer! Developer! Developer! Tester!

Last weekend, one of the testers from my team was speaking at Developer! Developer! Developer! East Anglia , a .NET community event. Naturally, because I'm a caring and supportive manager — and also as it was in Cambridge, and free — I went down to have a look. Despite not being a developer, it wasn't hard to find something of interest in all five sessions, although it's a shame the two talks on testing were scheduled against each other. Here's thumbnails from my notes. Building a better Web API architecture using CQRS (Joseph Woodward): Command Query Responsibility Segregation is a design pattern that promotes the separation of responsibility for reading data (query) from writing data (command). A useful intro to some concepts and terminology for me, it went deeper into the code than I generally need, and in a language and libraries that I'm unfamiliar with. I found  Martin Fowler's higher-level description from 2011  more consumable. I do like listenin...

Forget It

Now where was I? Oh yes, The Organized Mind by erm ... hold on a minute ... it's on the tip of my tongue ... err ... ummm ... there you go:  The Organized Mind by Daniel Levitin , a self-subtitled guide to thinking straight in the age of information overload. And surely we all need a bit of that, eh? One of the most productive ways to get your mind organised, according to Levitin, is to stop trying to organise your mind (p. 35): The most fundamental principle of the organized mind, the one most critical to keeping us from forgetting or losing things, is to shift the burden of organizing from our brains to the external world ... This is not because of the limited capacity of our brains — rather it's because of the nature of memory storage and retrieval in our brains. Essentially, memory is unreliable. There are numerous reasons for this, including: novelty being prioritised over familiarity, successful recall being reliant on having a suitable cue, and — somewhat scaril...

Bog Standard, A Parable

There was once a young man, a handsome, moral, and brave young man, dexterous beyond compare, sharp of eye, voracious in the consumption of information and with sagacity and recall to rival that of the wisest of elephants. Oh yes, and he was also a software tester. This preternaturally blessed young man, over the course of time, had occasion to visit many conveniences, both public and private. As was his way, he declined to waste those periods of forced repose and so took the opportunity to exercise and practice the skills that served him so well elsewhere in his life while sequestered in those littlest of rooms. To this end, over repeated visits to a particular water closet he began to observe that, while the cleanliness in general could not be faulted, there was one area which was reliably hygienic to a significantly lower standard than the rest. This region, populated by dust, tiny fragments of tissue, hair, and other detritus, he noted, was along the base of the wall directl...

Quite the Reverse

Cohen and Medley, in Stop Working & Start Thinking , say: Simple tests are not experiments ... A chef will bake a cake at different temperatures and find the one that gives the best results ... [but] we should only include [this test] in classical "science" if the "normal" situation is included as a control ... Every careful observation of a puzzling or new phenomenon should be matched to similar observations of well-understood or classical material. They go on to introduce some useful terminology: variables are the things that you will aim to alter in the experiment; all other factors that could vary, but which you will aim not to vary, are parameters . And they then describe three types of experiment concerned with investigating the possibility of a causal relationship between a variable, A, and an outcome, X. Deficit : run one experiment with A and one without A. Monitor the presence of X in both cases. If X is seen with A but not without A then pe...

A Different Class

In Stop Working & Start Thinking (which I also mentioned the other day )  Jack Cohen and Graham Medley want scientists to consider what science is and how they do it, as well as just getting on with it. To help explain this, they partition scientific answer-seeking like so: observation measurement investigation experiment And that's interesting in and of itself.  But the authors have been round the block and so recognise that this categorisation is not absolute, and that sometimes it might not be clear where a particular activity sits, and that some activities probably sit in multiple categories at different times and even at the same time. In science — and thinking, so this applies to you too, testers — generalisations are useful because they help us to frame hypotheses at relevant granularities. We’re all made up of atoms but a description of social deprivation in inner cities at an atomic level would unhelpfully obscure, for example, that higher-level conc...

See You Triangulater

Perhaps it's true that there's nothing new under the sun , but that doesn't mean that what's already known is necessarily uninteresting. Here's a quick example: I was recently reflecting on how talking to multiple people about their perspectives, finding data from several independent sources, or asking the same question in different ways felt analogous to a technique from surveying, triangulation . Triangulation is an ancient but still widespread method of mapping a landscape in which a network of points are plotted in relationship to one another, with each point always connected to two others, making triangles. Building one triangle against the next, and the next, and the next allows the whole space under consideration to be covered. I'm nowhere near the first here, though, as a quick search established : In the social sciences , triangle is often used to indicate that two (or more) methods are used in a study in order to check the results of one an...

On Mapping Non-testable Papers

The Test team book club at Linguamatics read On Testing Non-testable Programs  by Elaine Weyuker this week. As usual, the discussion was interesting and, as usual, the reading material was only the starting point and, as usual, we found ourselves exploring our own context and sharing our own experiences and ideas. I find this kind of interaction invigorating and energising. It remains fascinating to me that we each bring common and unique perspectives to these meetings and I thrive on hearing others on my team talk about how they see the topic, I covet the time I spend thinking about how I do, and then I enjoy immensely contrasting the two. I had wondered, while reading the paper, whether I could extract some kind of ontology of oracles from it. Informally, it seemed that Weyuker had structured her analysis in this way: programs are testable or not; these are characteristics of non-testable programs; non-testable programs are of three types; these approaches to oracles ...

An Idea Please, Bob

Conceptual Blockbusting by James L. Adams is subtitled A Guide to Better Ideas. It tackles the problem of lack of creativity by suggesting and categorising blockers and then proposing ways around them. I reviewed the book recently , and was left with bunch of quotes I enjoyed but didn't have space for. Here they are: If the problem is not properly isolated it will not be properly solved. (p. 23) In [ Stream Analysis , Jerry Porras] claims that people, especially people in organizations, tend to work on getting rid of symptoms, rather than solving the real problems ... Not surprising, since core problems are more difficult to solve and their solution often creates greater controversy. But perhaps not what we would like to think. (p. 24) The fear of making a mistake is,  of course, rooted in insecurity, which most people suffer from to some extent. Such insecurities are also responsible for [an] emotional block, the "Inability to tolerate ambiguity; overriding d...

Ignorance, Recognised

Stop Working & Start Thinking  is intended to help postgraduate students make profitable use of an essential piece of scientific equipment: their mind. I'm only a short way in, and finding it a bit dense at times, but there's already a few passages I'm loving. Here's one (page 15): Science asks questions, and it has a small variety of ways to look for answers. They are observation , measurement , investigation and experiment . Different kinds of problem need different approaches for their solution and one of the ways the experienced scientist knows which to use is that she or he has got it wrong many times in the past! This cannot be said too often or emphasised too much. Ignorance , recognised, is the most valuable starting place; all scientists should have many stories about where they were sure, and wrong; where they were ignorant but did not know it. Image: Goodreads Edit: I based two more posts on this book later: A Different Class and Quite the Rever...