Month: March 2017

The British House of Lords as a Testing Organisation

Lords.  A British institution involved in Tests.

The British system of government is highly anachronistic, and nearly unique.  This post will cover a brief summary of the system, what’s unusual, and the surprising benefit that it gives.

How does the British Parliament[1] work to produce legislation?

There are two houses, the House of Commons (HOC) and the House of Lords (HL).

The UK has no “constitution” per se.  It has a body of laws and on top of that various parliamentary conventions (for example HL doesn’t usually get involved in budgetary legislation).

HOC creates all legislation.  If the legislation is passed (majority vote) within HOC,  it is then submitted to HL.  HL reviews the legislation and either passes it or kicks it back to HOC – typically with details of what they don’t like and why and suggestions for ways to make it better next time.

Two other side-notes on the process.

  • HOC isn’t required to make all (or any) of the changes that are suggested, and HL can keep rejecting legislation with markups, so in theory HOC/HL can end up at loggerheads.  However by convention HL pass any legislation third time round and in practice the loggerheads never happens[2].
  • Once passed by HL, the legislation is then submitted to the reigning monarch who can also veto anything.  Again to my knowledge this has never actually happened.

So, who makes up HOC and HL?

HOC consists of 650 MPs, who are voted for in general elections every 5 years.  It’s your normal, standard “vote for someone to represent your area” style democracy.

HL consists of around 825 people, who are a slightly odd crew, but mainly composed of people thought (or thought in the past) to be good at working out what’s good for the country.  The vast majority of them are “Life Peers” (700 or so out of 825) – they’re people from all over who’ve been added to HL for life as people with something useful to contribute.

So, we’ve got HOC trying to build stuff to their best interpretation of what the customers (the population) say they want, and HL, a separate organisation trying to pick apart the new stuff, spot the holes, find the unintended consequences, and where the interpretation of what the customer wants probably isn’t what the customer actually wants or needs.  And then passing back a bunch of bug reports and suggestions for making things better.  And steps have been taken to make sure that (a) the HL team can’t be directly pressured by HOC (separate chambers) or the customer (no re-election) and (b) they provide information as a service to the HOC team, rather than owning the release schedule or having control over what exact product is shipped and when.  That sounds like an organisation with a strong independent test team.  Huh.

So a final random political thought here at the end.  There’s some debate in the UK about how to reform or abolish HL.  I’ll not weigh in on that debate, but as I see it, the key benefit we get from the HL is their role as an independent test organisation – which is enabled by having a bunch of people who by their decisions cannot affect their re-election – thus freeing them to make decisions for the long term benefit of the country as they see it[3].  The interesting thing to my mind is how you go about carefully choosing people to join that group and how exactly the interactions work between the expert testers and the dev team to ensure that the customer ends up with a good product that they’re hapy with short and long term!





[1] I’ve used the horrible Americanism “British” to label the process of lawmaking in Westminster.  In doing so, I’ve glossed over the various national assemblies, the excitement and confusion involved with Britain, The United Kingdom, Wales, etc.  For a fun diversion into the start of just how complicated this gets, check here for an explanation of the various countries that make up the UK.

[2] There are a couple of other conventions about what HL does and does not comment on and when they step out of the way.  I’m not going to cover details here as it’s complicated and I’m sure I don’t know all of them – and it doesn’t really affect the point I’m trying to make in this post.

[3] An example of what happens if you don’t have that independence:  The US houses of Senate and Congress (modelled on the original British system but made more democratic – more voting is good, right?) manages to add all the complication of an additional house while wrecking the main benefit from the British system by requiring re-election of their testers every few years).

Testing thoughts from the back of a Yoga class

The closest I could find to a picture of me doing Yoga

I do yoga, as an enthusiastic amateur.  The main weekly class that I go to can best be described as “the basics, really well”.  Think of it as the equivalent of a concert pianist practicing their scales – basic stuff for them but the foundation of a good technique. Just doing scales and arpeggios isn’t going to make you a concert pianist, but in order to be one, you’d better be prepared to understand and be really good at your scales and arpeggios.  So the yoga class is an open class with a mix of newbies and people who are very very good, but with a focus on doing the basics right.  The teacher, Nadia Narain, is excellent, especially for a geek like me; for the asana practice (the physical poses part of yoga) she puts a lot of effort into explaining exactly what’s going on with your body in each pose and what the core point of a pose is, rather than just telling the class what position to put their arms and legs in (effectively talking about the requirements behind the pose, not the specification).

It took me a couple of years to realise that a lot of the adjustments that Nadia and her assistants are actually doing on the good people in the class are actually pulling people out of deep poses – to stop them from enthusiastically (almost competitively) doing what they think the pose is about, not what it’s actually about.

A simple example – Janusirsasana (Head to Knee Pose) is a twist and stretch pose, tightening various core muscles, aligning and tilting your pelvis, stretching your hamstring and creating space in your back. If you’ve been doing a lot of yoga, for a long time, you might end up with your head in the vicinity of your knee – hence the name.  Or once you’ve done a bit of flexibility work, you can curl around like a letter “d”on it’s side and whack your head on your knee, stretching your hamstring, but missing the core points of the pose and stretching and wrecking your upper back into the bargain, while performing a literal head-to-knee pose.

And the thing I eventually realised here is that these aren’t people who are bad at yoga, or have bad teachers – these are good students (most of them far above where I’ll ever be) who are trying to do good work.  Instead, it’s a weekly reminder of some everyday truisms that apply all over, that we often forget, and that are especially important to remember when testing:

  • What everyone sees and talks about isn’t necessarily the interesting thing that’s going on.
  • What appears to be the obvious point or rationale of something isn’t necessarily what’s going on.
  • Everyone (customers, users, developers, testers, whoever) will all enthusiastically do what they think they’re meant to be doing without asking.

So next time you’re deep into some testing, don’t forget to occasionally back out of the pose a little and ask yourself what you’re actually trying to achieve.