Sunday, 15 November 2015

Car Analogies . .

Whenever a group of technical people gather to discuss IT concepts with people who may not have been dyed-in-the-wool computer geeks from birth, it is mandatory that at least one of the group will attempt to explain some concept or justify a position using a 'car analogy'.

Some of these come up numerous times - I've listed a few here - please feel free to add more:

Mutually Exclusive Options and 'I want the best one':

Often there are a number of options when implementing/configuring a system. People usually say 'OK, give me all of them' or 'Whatever is best!'

Request:

'If I'm buying a car, I want metallic paint, a CD player and a Radio and an IPhone kit. I want it fully loaded so I'm not restricted - why can't you do that? Stop asking me to make a decision now'

Response:

'OK, do you want Petrol or Diesel? Do you want Manual (Stick) or Automatic transmission? 3 or 5 doors?'

Requirements Gathering and 'Just tell me what you want'

In 'traditional' projects, there is a requirements-gathering phase. Users are asked to specify the system  down to the last detail before design and development can be started. This will happen even if they are not familiar with the subject area.

The car analogy is the 'show-rooming' of requirements. A car dealer does not ask you for a huge list of things your car must have - they ask a couple of questions and then take you to the showroom.

'This Fiesta?' 'Not big enough'
'OK, this Focus is bigger' 'Can I get my dog in the back?'
'How about this Estate?' 'How comfortable are the seats?'
'Why don't you get in an try them out?'

Effectively there are a number of pre-built options the user can look at to shape their thinking. This is part of the aim of RAD, Prototyping/Blueprinting, Agile etc

Even if you can't build a prototype, borrow someone else's:
'Do you want the search to lookup options as you type like Google?'
'Do you want to sort results by different criteria like Expedia does with price, distance from location etc?'
'Do you want 'Undo' like Word and Excel?'

Maintenance, Operations and Support

This one should be obvious - if you don't maintain your car, it will break down. Software on the other hand doesn't need maintenance - code doesn't 'wear out'. Or does it?
  • Security vulnerability - needs to be patched
  • Bugs found - needs to be fixed
  • System grows and needs performance tuning and housekeeping as the original configuration is no longer suitable as the user/data load is now much bigger than it was originally configured for.
  • Release goes out of support - this is the 'can't get parts for that any more' analogy.

Training, especially for new releases:

Request:

"The software should be easy to use - cars are easy to drive"
"I learnt to drive in a Fiesta. I can drive a Mondeo without learning to drive again"

Response:

"How long did it take you to get your license? Did you pass 1st time?"
"Can you drive a car and a motorbike/HGV (truck) / PSV (bus)? Did you take another course?"
"Can you drive a car with the wheel on the 'other' side, in a foreign country, where you're not sure what the road signs mean without a conversion course? It's easy - all the locals manage fine!"
"Can you work the SatNav (GPS)?"
"Can you pair your phone with the Bluetooth?"
"Quick - which side is the fuel (gas) filler cap on - without getting out of the car? **"

**Handy hint; Look at the petrol (gas) gauge on the dashboard and the picture of the pump. The fuel filler is on the same side as the hose in the picture - try it!



No comments:

Post a Comment