API Maquina de Estados

Amigos,

tenho uma aplicacao que manipula os documentos que sao criados pela empresa.

Existem varios perfis de usuarios e cada perfil tem uma funcao especifica no fluxo de um documento, desde a criacao ate a aprovacao. Ou seja, o documento passa por varios status de acordo com o usuario.

A solucao pensada foi de criar uma maquina de estados para o fluxo do documento. A maquina de estados na verdade eh um switch passando pelos estados e calculando o novo estado no fluxo. O sistema ja esta em producao com esta solucao mas, qualquer alteracao no fluxo do documento eh muito dificil de dar manutencao pois o fluxo eh enorme e cada obtencao de um novo estado testa muita coisa.

Resumindo, ja chegamos a conclusao que precisamos reescrever a maquina de estados. Gostaria de saber se alguem conhece alguma API que possa me ajudar.

Olá

Alguns links encontrados em: http://www.google.com.br/search?q=state+machine+java

http://sakharov.net/fsmslides.pdf e http://sakharov.net/fsm.html

http://www.cs.lth.se/Education/Exarbete/Descriptions/2001.02.lundahl/index_eng.html

http://www.objectmentor.com/resources/downloads/index

[]s
Luca

Já deu uma olhada no jBPM e assemelhados ?

O paradigma neste caso é o de diagrama de atividade, que é mais flexível que uma máquina de estados simples.