From a developmental standpoint, iteratively implies that some progress is being made in each iteration. According to one dictionary, an iteration is a procedure in which repetition of a sequence of operations yields results successively closer to a desired result. A cycle, on the other hand, is a single complete execution of a periodically repeated phenomenon or event.
I might make a lasagne iteratively, by putting down a layer of noodles, and a layer of filling, with each iteration.
If each layer of lasagna has the same filling, put down in the same order (e.g., sauce-meat-cheese), then a 5-layer lasagne could be built in five iterative cycles.
However, if it was a 3-layer lasagne, and the middle layer was different from the other two, then the lasagne would be built iteratively, in three steps, but not cyclically.
Lastly, if it was a 9-layer lasagne, comprised of three "triple layers" as described above, then the lasagne could be completed in three cycles of three iterations each, for a total of 9 iterations.
These two words have secondary meanings, and need not be used strictly in the sense I've defined them above; however, the way I've used them illustrates that iterative cycle isn't necessarily redundant.