I agree with a lot of the "how to" suggestions here. One addition is that you need to have a small number of key non-development employees really guide the development with strong opinions on functionality. This will likely mean your strongest folks in the departments that the software will serve. I would avoid building this by committee. 1-2 of your best folks who will be the ultimate end users should have massive decision-making power in what gets developed, in what order, and for what purpose.
Also, don't underestimate maintenance in your cost assumptions. Even after you've developed the product, you will need several people full-time just to maintain, update, and bug fix, let alone add new features that got sidelined during the initial development in order to meet the MVP.
Also, don't underestimate maintenance in your cost assumptions. Even after you've developed the product, you will need several people full-time just to maintain, update, and bug fix, let alone add new features that got sidelined during the initial development in order to meet the MVP.