Preparing a software project properly
Preparation determines the outcome more than the choice of supplier does. Five things are worth doing before the first meeting.
Describe the problem, not the solution
"We lose two hours a day retyping orders" produces better software than "we need a dashboard". The solution is the supplier's job.
Appoint a decision-maker
One person with a mandate. Nothing influences project duration more strongly.
Gather your data
Where does the current data sit, in what state, and who owns it? Almost every project stalls on data messier than expected.
Write down what must work
A list of concrete situations the software has to handle. That is your acceptance criterion, and without it "finished" is a matter of opinion.
Plan for afterwards
Who uses the software, who trains people, who maintains it. A project delivered without those three answers dies slowly.