software development lifestyles cycle