However, software suffers from badly managed customization, hard-coding, due to pressure and functionality that may not be necessarily good to all users in the system - that's what I'm referring to. =)
If you can't get a good handle on the specific business requirements, or lack the power to enact necessary changes; any solution is going to be a poor approximation and potentially cause negative production value with someone.
Imo, Products are just a collection of processes that fulfill requirements. Documenting those processes and requirements is 80% of the battle, most of the issues I've run into were only issues because they weren't documented (i.e. edge-cases that are surprisingly common).
Many times, the people and processes involved don't share/get documented because they often view this implicit knowledge as job security. This often takes a really rare/gifted person with knowledge in both IT and psychology to get what you need.