We often hear that we need to ‘know our customers.’ We need to know what their needs, wants, and desires are.
What made Steve Jobs so great at what he did was that he intimately knew what his consumer base wanted… and then created the best darn product out there. He revolutionized the way we listen to music, and changed the way we interact with technology.
As developers, we often can have a tendency to want to create something that we seriously think will be helpful or useful to others. We want to make the best products and we want to add those features that… well, we would use. We hate wasting time.
Often though, this doesn’t exactly fall in line with what the real customer might want.
“But it’s new and cool, dude.”
We hear statistics around how much of the features of a product aren’t used. I mean, look at Microsoft Word or Excel. I would bet that 95% of those features aren’t used. What the heck?
In Agile/Scrum we have a Product Owner, sometimes a liaison, or representative of the customer. What would happen if we have the team show off the software to actual customers, get revisions and edits, and build what they want? I’m working with a company right now in which I suggested they do just that: Put their development team in a position to speak with customers. So far? It’s working.
Now, I wouldn’t suggest that all companies do this, but for this particular situation it works.
Deploy. Show your customers, get feedback. Inspect, adapt, refine. Improve. Oh wait… yes, that can include the whole agile team and developers too.