No requirements can get 100% in software development, the better Software Development Process is Agile compared to Waterfall, especially in Offshore Development Business.
This article from Martin Fowler is a good one:-
Using an Agile Software Process with Offshore Development
Documentation in Agile is much lesser compared to Waterfall, but the most important in Agile is user participation.