Tangential comments about Software Development

Thursday, July 29, 2010

A Big Leap

I had an interesting example of a Responsive Design Leap this week.
My application had a set of global data dictionaries. I decided to make them members of a Universe class, so that I could compare different data sets. I moved one, simple dictionary, fixed the broken tests, went on to the next. As the dictionaries became more significant to the application, the tests were becoming harder to fix. Some of them only broke under certain circumstances, my least favourite thing.

The leap was to choose to complete moving the dictionaries across, without fixing the tests. I did this because I suspected that some of the bizarre behaviours were down to the mixed state, with some global and some local dictionaries.

And so it turned out. Once the full set of dictionaries were in the Universe class, my tests passed. Rare and counter-intuitive, and therefore interesting.