Business can t make these decisions in a vacuum. Development needs to make the technical decisions that provide the raw material for the business decisions. There are strategic business decisions that should be made only when informed about the technical consequences. Choice of a database is a good example. Business might rather work with a huge company than a startup, but a factor of 2 in productivity may make the extra risk or discomfort worth it.
Development needs to explain the consequences.
The team needs to fit the culture in which it will operate, but you should write software well rather than preserve the irrationality of an enclosing culture. The programmers need the freedom to schedule the riskiest segments of development first, to reduce the overall risk of the project. Within that constraint, they still tend to move business priorities earlier in the process, reducing the chance that important stories will have to be dropped toward the end of the development of a release. Every release should be as small as possible, containing the most valuable business requirements. It is far better to plan a month or two at a time than six months or a year at a time.