It’s a common misconception that developers write software for users. Developers write software with users. You “must be present” to win. You must share what you need, attend demos, and provide effective feedback—see CritiqueDontReact to the development team. You are a part of the team.
✓ Critical ❑ Helpful ❑ Experimental
First steps to create this habit:
The basic software development work flow is deceptively simple. It looks like
You tell the developer what you want to make your work easier or better. After a while (the two || on the Developer to User arrow means “delay”) you get what you want. Or not.
The problem occurs when someone else tells the user what you want. Historically, software development has many people who are happy to talk with you and then tell the developers what they think you want.
Thirty years ago we had systems analysts, business analysts and others translating user needs into requirement documents. Developers would read these documents, make assumptions about what the analysts meant and create the necessary screens/code/databases to fulfill their understanding. Testers would then read the documents, run the system and try to resolve the differences between their understanding and the developers’ understanding. Eventually (often a year or more) the user finally sees the system, and wonders what happened.
This leads to a game of “telephone.”1 What you want gets garbled as it passes through multiple people. Not maliciously, but none the less, you don’t get what you want or need.
In more modern times, we have Product Owners telling teams what you want. Teams aim for continuous delivery. Teams schedule demos to show the features (not systems) they’ve finished and tested. And without you talking directly to the developers and attending the TeamSync and demos, you’re still playing a “telephone” game.
This is one more reason to RemoveProxiestoPeople.
Feedback determines the rate of software development. Quick feedback loops lead to quicker delivery of WTFs.
See https://en.wikipedia.org/wiki/Telephone_(game) ↩