O Observer não deveria permitir que as classes que aguardam uma mudança de estado do sujeito se incluam ou excluam da lista de observadores dele? Da forma como foi explicado, além de me parecer fora dessa estrutura, toda vez que eu precisar incluir uma nova rotina no processo, eu teria que incluí-la em todas as chamadas do método do sujeito.