The cycle goes through three stages - Assessing the environment, adapting to the environment, assessing and keeping the adaptations deemed useful. Each of these stages is executed different by the two systems though. Software systems however, have their environments assessed by the developers, who analyse the needs and use of the software system to determine if changes, additions, or deletions are needed by the system. In software systems, adaptations are artificially done. Developers determine what needs to be changed, and make the changes to the source code of the software system.
Natural evolution occurs by having random mutations appear in individual entities.
Useful adaptations are kept in natural evolution when parent entities reproduce. Those characteristics that prove to be useful are passed on to offspring. In software evolution though, adaptations are deemed useful through testing of the changes by developers. In software evolution, changes seem to fall into the categories of adding a feature, removing a feature, or updating a feature. Not being incredibly familiar with natural evolution, I can't say if the same categories apply to biological evolution, but they seem to be broad and general enough to be applicable.