Ficou bem claro a apresentação da pattern dentro do cenário proposto (orçamento em memória). Mas, se houvesse persistencia, eu teria que armazenar em banco de dados o estado atual do objeto e instanciar a implementação da regra respectivamente a este estado. Se este fosse o cenário, utilizando design pattern, qual seria sua abordagem para "varrer" as implementações e atribuir à variável do objeto? Utilizaria um enum?