Recently I was asked to investigate a site which wasn’t performing as well as expected. The initial reaction was to look at the code – perhaps our NHibernate mappings were eagerly fetching too much data, perhaps we’re not caching enough, etc.
Then I stopped and remembered the database. I found that the table structure and indexes were sub-optimal and after a quick restructure the performance was boosted 400%. This got me wondering why my initial reaction was to dive into the code rather than consider any other options.
One of the Agile principles is Inspect and Adapt. To provide a regular team cadence this usually takes the form of a retrospective every couple of weeks. These sessions discuss the actions which came out from the previous retrospective and the previous couple of weeks work. The team establishes a few important areas of concern and these are discussed in more detail to establish a course of resolution.
Extending this line of thought I ended up wondering why do we do what we do each day? Is it the path of least resistance? Force of habit? Loyalty?
What might a Life Retrospective uncover?
- Would we discover a new route to work which we’d previously discounted for being too long? A new carriage on the train which doesn’t get as busy?
- A new variety of pasta sauce even tastier than our regular? A supermarket own brand for half the price but the same taste?
- Might we find that every day we live with the coffee table getting in the way when we walk into the lounge, but we never try a new layout?
- How much extra happiness could we gleen from running life retrospectives? Who would run it? How frequently would be useful?
Lots of questions and not many answers I’m afraid. Maybe I need a retrospective of this post.