Cykl życia programu – okres czasu rozpoczynający się od pomysłu a kończący się, gdy oprogramowanie nie jest już dostępne do użytku. Najważniejszą częścią cyklu jest seria kolejnych zmian programu komputerowego, w trakcie których odbywa się dodawanie nowych funkcjonalności oraz/lub usuwanie powstających w trakcie rozwoju błędów (z języka angielskiego: bugów).
Etapy rozwoju Zasadniczo cykl życia kolejnych wersji programu można podzielić na następujące etapy: wersja niestabilna (testowa) – seria wydań, podczas której dodawane są przede wszystkim nowe możliwości: wersja robocza () – dostępna zazwyczaj tylko dla twórców programu w postaci repozytorium kodu źródłowego (np. CVS, SVN, GIT), kiedy implementowany jest algorytm programu, tworzony jest interfejs i dodawane są nowe funkcje; wersja alfa (pre-beta) – autorzy doprowadzają do rzeczywistego działania programu, nawet w ograniczonym zakresie; wersja beta – kiedy program ma już pierwszych użytkowników, zwanych często beta testerami, wyłapywane są błędy związane z różnymi środowiskami i warunkami pracy programu (ang.