Welcome to the new testerthoughts.com!

This weekend has seen a frenzy of activity as my wife and I moved the Tester Thoughts blog to it’s new home on a self-hosted WordPress server. There are several benefits to doing this:

  • I have more control over security and performance tuning, so hopefully you should see a speed increase.
  • I added the capability to embed code with syntax highlighting which should hopefully make the subsequent posts more readable as we dive into some Ruby code
  • each post has modern accoutrements – there are links to share posts on various social networks and stars to allow you to provide feedback without the overhead of adding a comment
  • New blogger! My wife is joining the blog as a co-author. From time to time, she’ll be posting about things. She generally takes a more business-focused approach to me, both to testing and to business analysis. She’s off to a great start with her post on technical debt, and I’m looking forward to seeing what else she has to write about.

    Thanks for reading!

    Facebook Twitter Linkedin Digg Reddit Stumbleupon Tumblr Posterous Email
Posted in Uncategorized | Tagged | 2 Comments

How development debt becomes a Hydra

Hydra

Hydra (by Eva the Weaver @ Flickr)

When we talk about “technical debt” it seems to convey the idea that you are creating an obligation to fix things later that will behave nicely and predictably, like an open balance on your credit card. You know what you over-spent, it will grow over time due to a pre-specified interest rate, and possibly late fees. It may, in extreme circumstances, get an increase in interest, but the good government generally limits how badly they can hit you. At the heart of things, though, the original amount stays at what it was and doesn’t create interaction effects with other credit card debts. The more I consider technical debt, particularly across the activities of the development team, the more I confess to some concern about this assumption of constrained, predictable behavior. Do we actually have more of a Hydra with many heads that sprout more as we cut them off, spewing poison to our other efforts in the process?

First off, the team as a whole may incur debt that is more than “technical”, even when they are scrupulous about intentionally deferring development efforts. I ran across Mary Gorman and Ellen Gottesdiener’s article about Analysis Debt this week that got me thinking not only about the different types of debt we can get in to trouble with, but also about the potential for interaction effects among them. Another article by Johanna Rothman added fuel to that fire as she considered the causes of technical debt and their impact on your choices for climbing out of debt.

We accept that a mistake in the requirements phase will be far more expensive to fix if we discover it late in the game. It seems to me that debt that is incurred by putting off requirements analysis would reasonably have a similar impact. When we are uncertain about scope, content, goals or other aspects of requirements, we either have to build in potentially excessive flexibility to handle the range of outcomes gracefully later or risk some unknown refactoring cost. Let’s face it, if the requirements issue we are wrestling with was simple or easy to resolve, we wouldn’t be considering putting off that analysis, now, would we? (Yes, this is an exaggeration, but we generally do avoid the messy stuff for just that reason.)

Once we have even a few messy analysis decisions deferred, and team staffing commitments put off due to other brush fires, such as testers having to do regression testing on the current release of some other product, we now are struggling to feel comfortable with whether we are done with what we have and we aren’t terribly sure what success will look like for the next bits that are in the queue. The interest compounds not just due to elapsed time for the analysis that we put off, it is now generating more debt in other areas of the team.

What do you think?

Facebook Twitter Linkedin Digg Reddit Stumbleupon Tumblr Posterous Email
Posted in Business Analysis, Development, Testing | Tagged , , , | Leave a comment

Test Automation Architecture intro

As promised, I’m working on a series of posts digging deeper into the architecture I started describing at the Selenium Conference a couple of weeks ago. I had hoped that the videos of the talk would be up before I started on the series. I know that people are working on making them available, so hopefully they’ll be posted to the SeleniumConf YouTube channel soon. In the meantime, the slides from my talk are available on Slideshare.

I’ve started to plan out the ground that I want to cover in these posts. This mind map shows my current thinking. Each leaf is probably a separate post.


One issue that I’m running into though is the lack of a good site to use as a test platform. I can’t use the website from my day job as I can’t share the test code directly for that, and there aren’t public instances available anyhow. I considered extending the code I pulled together for the SeConf Twitter challenge, and may yet do that, but Twitter had enough spam prevention measures that I ran into during that effort that it’s possible that someone trying to run the code will run into problems. I also likely wouldn’t generally use Selenium to drive Twitter unless I was specifically testing the site and creating a few GUI focused tests. (Otherwise, I’d use Twitter’s API). I’m going to look around a little more and check out some suggestions I’ve gotten, but if anyone has a suggestion for a good demo site that has at least a few pages and multiple user actions, but doesn’t get too complex or go off into non-HTML, CSS, and JavaScript land (I don’t really want to deal with Flash or Silverlight or video right now, for example), please leave a comment with your suggestion!

I’m also curious to know what other topics you might want to read about beyond what’s in the mind map above. Is there anything in the slides above or anything that follows off the topics that are already in the mind map that y you’d like to know about? Leave a comment about that too, and I’ll see what I can do!

Facebook Twitter Linkedin Digg Reddit Stumbleupon Tumblr Posterous Email
Posted in Automated Testing | Tagged , , | Leave a comment

Mind mapping the Selenium Conference 2011

In a tweet she made from the Selenium Conference, Marlena Compton stated that I had mind mapped all my notes from the conference. She asked for a picture at the time, which I gave by taking a screen shot on my iPad. I didn’t have the full map shown, so she only got a portion of it. I subsequently realized that the very awesome iThoughtsHD app can export the entire map into the photo library which let’s me post them from here.

These maps haven’t been altered from the conference. They reflect places where my attention wavered, and things that grabbed my attention. The times when it wavered often weren’t the fault of the presenter – there was so much information flying around that there was no way to absorb it all at once. Several of the talks were intense enough that I knew I’d have to come back and watch the videos to really get what the presenter was trying to say.

Without further ado, here are the two maps, covering the full three days:

Edit: I’m quickly running into some limitations of using a wordpress.com blog, it seems. Might need to move this over to a host somewhere at some point. Anyhow, clicking on the images above takes you to Flickr where the images are stored. Even going to the original size, the text is hard to read. Steve Hebert asked if I’d consider sharing the original iThoughts files as well. So, here they are:

Day 1/2: iThoughts | PDF
Day 3: iThoughts | PDF

Facebook Twitter Linkedin Digg Reddit Stumbleupon Tumblr Posterous Email
Posted in Automated Testing, Conference Reports | Tagged , | 1 Comment