Usually I make 3 iterations
- Initial development from analysis and requirements documentation. Showing to clients. Receiving feedback.
- Updates to reports depending on first iteration feedback. Again showing to clients and getting final feedback before release.
- Final updates after second iteration feedback. Going to production environment.
- Support period.