Regras de produção com jboss drools

615 palavras 3 páginas
Contexto do problema

O Poder Judiciário vem ao longo do tempo tentando aperfeiçoar os sistemas informatizados de controle processual. Grande parte dos esforços está concentrada no aperfeiçoamento de duas das principais funcionalidades desses sistemas: A distribuição e a movimentação processual. A distribuição marca o início da vida de um processo e as movimentações que vão sendo realizadas representam a evolução do mesmo.

O ciclo de vida ou tramitação de um processo pode ser representado conforme o esquema abaixo:

Figura 1 Fluxo de tramitação

Cada retângulo acima representa um status que o processo pode assumir em um dado momento durante a sua tramitação. A mudança de um status para outro é determinada pelas movimentações que vão sendo realizadas, sendo que essas movimentações sempre devem obedecer a uma sequência lógica existente para evitar estados inconsistentes, por exemplo, arquivar um processo que ainda não foi baixado.

Atualmente, a validação dessa sequencia lógica é realizada através de estruturas condicionais aninhadas, Figura 2.

Figura 2 Validação com estruturas condicionais

Existem alguns casos em que a movimentação só altera o status se o processo for de determinadas classe processual, por exemplo, a movimentação Incompetência só altera o status se o processo for do tipo Procedimento Ordinário. Para cobrir essas exceções uma nova entidade, que faz o relacionamento de um tipo de processo, uma movimentação e um status, foi criada.

Essa abordagem funciona corretamente, porém existe uma dificuldade muito grande no processo de avaliação dessas regras por parte dos especialistas (magistrados), devido ao fato das mesmas estarem hardcoded. Até mesmo os próprios programadores enfrentam dificuldades para entender e sentir confiança na alteração de uma dessas regras, tendo em vista o impacto que elas causam nos processos.

Partindo desse problema surgiu a ideia de utilizar regras de produção juntamente com uma linguagem

Relacionados

  • regras
    1961 palavras | 8 páginas
  • Sequenciamento pelo m todo Sanger
    23193 palavras | 93 páginas
  • CDI Integre as Dependencias E Contextos do Seu Codigo Java
    46039 palavras | 185 páginas
  • CDI Integre as Dependencias E Contextos do Seu Codigo Java Casa do Codigo
    47436 palavras | 190 páginas
  • Segurança
    28960 palavras | 116 páginas