Timing

30 minutes

Overview

You have inherited a spreadsheet from a coworker. The spreadsheet calculates the cost of consultants, given the following: number of contractors, hourly rate, number of hours per day, start date, and number of contract months. The spreadsheet is currently DEFECT FREE.

Preparation

You will need to download the Excel spreadsheet

Overview of the Game

A facilitator will be distributing the requirements one at a time. Once you finish making the required changes, you will be given another requirement. Please make the changes quickly so we can meet our company’s deadlines.

Round 1

Please make the requested changes on the “good” worksheet. The round is over when a) you finish all of the requirements, or b) the changes are getting too hard to make.

Round 2

Repeat this process on the “better” version worksheet. Start from the beginning with the first requirement.

Round 3

Repeat the process on the “best” version worksheet. Again, start from the beginning with the first requirement.

Learning Points

  • Why was it easier to make changes on the best or better versions? Why?
  • Which version will allow us to deliver the most business value? Why?
  • Which version did you enjoy working with the most?
  • When you modified the “best” version, did you follow the best practices of named ranges, calculation formulas, etc., or did you just start hacking away at the formula? Why?
  • Calculation cells are like “methods”
  • Names ranges are like “variables”
  • Using calculation cells and named ranges make the formula more readable and allows you to focus on one small problem at a time

Discussion and Facilitation Guidance

  • Defects are “external quality”, readability/maintainability is “internal quality”
  • Pressure is a source of low internal quality
  • Low internal quality puts our future success at risk

Link to Game

http://densom.blogspot.com/2015/01/demonstrating-software-craftsmanship-to.html