In a perfect world, we tell the client we follow an agile methodology where we allow the scope to increase/decrease as the requirements change and we bill per hour for each iteration.
In reality, estimates need to be delivered before the project starts, and there is always pressure to hit that estimate number while being flexible with scope changes.
I'm wondering what sort of real-word agile practices people have applied to the de-facto waterfall based billing/estimating that we sometimes get stuck in. Can you "break-in" a client to agile mid project, after you have acquired trust, or are there any other techniques to transition a client to agile.
*side note: in my "real world" situation I run a recently founded development company that does not have the luxury of forcing clients to use our method and process. Many times we have to bend our backs to use theirs, but I see it as a burden all businesses face when starting. I'm wondering how best to deal with it.