A possible cost effective software solution is to use a technique that combines extreme programming concept and rational unified process methods. This gives the opportunity to emphasize business results already at an early beginning, before taking an incremental step in the process.
A very first step can be defined by showing something concrete to building the product with the necessary testing and revision aimed at yielding quality results and keeping track/status of project. This can be done by using iterations within each phase of the project (from pre-inception to transition). Each iteration expresses a percentage of work to be accomplished and an outcome (deliverables).
Most important, this gives the opportunity to start in a simple and agile way, building something real that works, and then try to fit it into a structure designed for further code building, rather than doing everything at once like designing an exhaustive structure at the very beginning after a thorough and time-consuming analysis (a mistake here will cost heavily).
In my opinion, this is a cost effective solution because the potential end-user/client will have visibility on the results of each step and is able to measure its satisfaction.