Son aplicados principalmente herramienta de software en las que se comprende bien el conjunto de requisitos, pero no se tiene, pero los detalles del producto o extensiones del sistema, aún están por definir. Es difícil al momento de desarrollar software trazar una trayectoria directa hacia el producto final, ya que en el transcurso del desarrollo los requisitos pueden cambiar por múltiples razones, incluso se pueden encontrar elementos que han sido identificados que pueden generar modificaciones en el sistema, por tal motivo se dice que el software evoluciona.