As I review the successful (defined as on-time and within budget) & unsuccessful projects that I have led over the past 10 years, a common thread has been that successful projects had at least 80% complete prototype prior to start of any development work. This is spread across both Agile and waterfall methodologies.
The prototype allowed the Business Analysts to “touch” the product and better visualize & communicate what they expect of the product.
To get a project kicked off, start with a UI Developer and a Business Analyst. Refine requirements till you are 80% complete and then bring Software Architects.
This may seem contrary to several Agile approaches, but in my perspective it is a modified Agile approach that has worked for my teams. The agility is divided into 2 phases – Agile requirement gathering (with UI developer & business Analyst) and then move to Agile software development.
I have also noticed that bringing software developers into the process prior to the product vision being ready, tends to compromise the product vision and it is best to involve them in architecture & development once the vision is clear.