If you don't mind...
Could you elaborate a bit what do you mean by saying "[...]they lack the right mindset" ? What is the "right mindset" for developer?
I think you have to think logically and be able to make cognitive jumps.
For example realising that process A must be rolled back if midway though - therefore it is essentially an atomic transaction with all that entails. Or that the user opening a bunch of spreadsheets for a specific piece of data to fill in another form, is really just a key-value pair lookup on a relatively static dataset.
Bad business analysts I've encountered fail to understand the core process they are designing around, or take the user's explanation as gospel, even when there are gaping holes in the logic. They often define processes which to a developer are a simple problem that has been solved in many situations, in a completely odd way, where they have failed to make a conceptual leap from the problem they are solving, to one solved in other parts of the same system.