Software development strategy