That’s a good question. This is the first of an article series where I explore the power of “Why?” in not only software design but also the general understanding of a domain.
Within the series I’ll be discussing my thoughts on the importance of asking this question, the role it has to play in understanding requirements (if there even are any other than vague contradictions), and how we should be more persistent in digging into a problem space and getting to the actual requirements.
Why does the system work in this way?
Because that’s the way we’ve always done it.
How often have you heard that exact answer? Probably far too many, I suspect.
This horrible answer seems all too common in the software industry. Can you think of many other industries or sectors where “That’s the way we’ve always done it.” is the answer to what feels like every other question?
If it wasn’t obvious, I find this to be a deeply frustrating answer that ultimately serves absolutely no one. In many cases, this answer actively harms the answerer.
The overall theme of this series will be: Be persistent.