TL;DR
Projects that have several teams are candidates for multiply lifecycles. Read another post from the project management series. The post is based on a remarkable book written by Johanna Rothman, Manage It!
When you work on projects with several teams or teams that are spread across different locations, then it is reasonable that each team selects their project life cycle that is best for their workflow. For example, developers could use incremental lifecycles, while testers could use iterative lifecycle. Those two teams must agree on what would be delivered at the lifecycles sync point. Testers and developers start their cycles with some requirements. Developers add and change the existing set, while testers test the initial set of requirements. At cycle sync (end of both periods), testers use for stable requirements input, requirements from the end of the developer cycle. And we repeat those cycles.
Conclusion
Big projects that have several teams could have different lifecycles in those teams. The most crucial thing is to agree on deliverables (cycle syncs) at the end of lifecycles.