We've often run across scenarios where the business will promise a client a new feature. The business will promise that the feature be implemented in a specific way. These technical details promised by the business are usually poor. Unfortunately, client is now set and want this feature to be implemented in the way described by the business.
In the end, the business just wants this feature to be completed without regard to quality and maintainability. Is there a good way to push back? How can we explain to the business that providing technical details before the requirements have been gathered is a bad idea?