Andrew's Digital Garden

Identifying root problems and requirements

In general, users are good at finding problems but bad at offering solutions. They lack the context and behind the scenes knowledge creators has, which leads to an incomplete solution.

Don't just take a users solution at face value. Instead figure out what the root problem is and figure out a solution for that. Use their problem finding (and solution suggestions) as a starting ground to dig into the deeper issue.

Pragmatic Programmer refers to this as the 'requirements pit' - where requirements are hidden under assumptions, misconceptions, and more. Part of our job as programmers is to help people figure out what they want.

Finding out requirements is a process. Iterate and provide feedback loops, and hone in on the real requirements as time goes on. Show the client the pros, cons, and consequences, and work with their feedback to refine the requirements.

[[customers]] [[product]]

Identifying root problems and requirements