We're looking into agile increasingly at my company but I think it works better for some projects than others.
We have one product that is all ours and we control the roadmap. This is obviously perfect for agile.
However, a lot of our work involves putting in a proposal or bid against other vendors for custom development. Clients typically expect documentation on what they can expect and they want to know the budget up front. Is this really a good fit for an agile process? Contract negotiations and documentation are on the wrong side of the agile manifesto but they are also part and parcel of trying to win new business.
Of course you and I know that the specs can never accurately refelct what the users really want. At best it will be 80% right and then there will be requests for change at the end. We also know that the estimates will be difficult to get right but when you're dealing with big corps they always want a fix cost and for the small vendor to take the risk if it goes over budget. Of course in the end they have to pay for changes so it's not really a fixed budget but how do you convince a client of this when other vendors are promising they can deliver?
So on the one hand an agile process would give a better end product but on the other if you don't produce documentation and a fixed budget it's going to be difficult to win the business.
Are there examples of agile working in this environment?