0) Being Crystal Clear About The Business Need
This isn’t only important to the developer(s), but also the business entity making the request.
Clients are notorious for piling up a list of wants and in the end that noise misses the actual needs. Repeat after me :)
“Wants are not needs.”
The Five Why’s, if you’re not already familiar, is a great tool for gaining clarity.
p.s. FWIW, even seasoned vets too often jump in before the actual and true needs are defined.