I've used another variation on multiple life cycles, especially for larger projects where the project staff or project management didn't want to or know how to use an agile life cycle. This combination life cycle has two incremental pieces. The developers (the top of the picture) use staged delivery.
The testers, on the bottom of the picture, use design to schedule. This way they keep up with testing as much as the life cycle will allow, and if they are forced to finish the project early, they have “finished” all the testing to date. They don't have partial bits of tests–they know what they've done and have not yet done.