refatoração de aplicação em swing

Srs,

Sou iniciante em desenvolvimento e fui nomeado para dar manutenção em uma aplicação baseada em swing.
Logo no inicio do método main, já está chamando o SwingUtilities.invokeAndWait e todo o resto da aplicação
está pendurado aí.
Minha dúvida: Não seria necessário uma refatoração para melhorar isso? Alguem conhece algum artigo
que me ajude? Quais padrões poderia utilizar? Estou lendo sobre MVC fat-client, estou no caminho certo?

Grato.