51
Introdução Conceitos Contribuições Conclusão Uma abordagem transacional para o tratamento de exceções em processos de negócio Pedro Paulo de Souza Bento da Silva Orientador: Prof. Dr. João Eduardo Ferreira Co-orientadora: Prof a . Dr a . Kelly Rosa Braghetto Instituto de Matemática e Estatística da Universidade de São Paulo São Paulo, 12 de Junho de 2013 1 / 51

Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Uma abordagem transacional para o tratamento deexceções em processos de negócio

Pedro Paulo de Souza Bento da SilvaOrientador: Prof. Dr. João Eduardo Ferreira

Co-orientadora: Profa. Dra. Kelly Rosa Braghetto

Instituto de Matemática e Estatística da Universidade de São Paulo

São Paulo, 12 de Junho de 2013

1 / 51

Page 2: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Sumário

1 IntroduçãoProcessos de NegócioExceçõesMotivação

2 ConceitosTransaçõesTransações LongasProcessos de negócio transacionaisWED-flow

3 ContribuiçõesTratamento de exceçõesWED-tool

4 Conclusão

2 / 51

Page 3: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Objetivos

Aprimorar os mecanismos de tratamento de exceções daabordagem de gestão de processos de negócio WED-flow;

Desenvolver o gerenciador de recuperação da ferramentaWED-tool, uma implementação da abordagem WED-flow.

3 / 51

Page 4: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Contribuições

Aprimoramento dos mecanismos de tratamento de exceções daabordagem WED-flow;

Expansão da ferramenta WED-tool através do desenvolvimentode seu gerenciador de recuperação;

Artigo resumido “Uma abordagem ad hoc para o tratamento deexceções em processos transacionais” (SBBD 2012);

Artigo “WED-tool: uma ferramenta para o controle de execuçãode processos de negócio transacionais” (Seção de Demos SBBD2012).

4 / 51

Page 5: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Sumário

1 IntroduçãoProcessos de NegócioExceçõesMotivação

2 ConceitosTransaçõesTransações LongasProcessos de negócio transacionaisWED-flow

3 ContribuiçõesTratamento de exceçõesWED-tool

4 Conclusão

5 / 51

Page 6: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

IntroduçãoProcessos de negócio

Processo de negócio: conjunto de atividades interligadas quecoletivamente realizam um objetivo em particular.

São usualmente de longa duração;Não se resumem à área de administração, economia, etc.

6 / 51

Page 7: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

IntroduçãoProcessos de negócio

Inicializar reserva

Escolher carro

Enviar documentos

Solicitar verificaçãodo gerente

Registrar retiradado carro

Registrar devoluçãoe vistoriar

Computar multas

Registrar pagamento

Tem avarias

Cancelar reserva

Reserva aprovada

7 / 51

Page 8: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

IntroduçãoProcessos de negócio

Sistemas de gestão de processos de negócio (SGPNs) sãoreponsáveis pela modelagem, instanciação, controle de execução,tratamento de exceções e análise de processos de negócio.

8 / 51

Page 9: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

IntroduçãoExceções

Exceção: Situação não modelada ou um desvio entre o que foimodelado e o que ocorre de fato;

Exceções esperadas: definidas no modelo do processo denegócio (Ex: detectar divisão por zero);Exceções não esperadas: não são definidas no modelo doprocesso de negócio.

Tratamento de exceções: Processo de identificação de umasituação de exceção e a escolha e posterior execução de umaação pertinente a ela.

9 / 51

Page 10: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

IntroduçãoMotivação: Efeitos colaterais de exceções não tratadas

Aborto da execução de uma instância (possível propagação asistemas subjacentes);

Custo do reinício de uma execução que poderia estar sendoexecutada por dias;

Apesar disso, muitos SGPNs não implementam nenhuma formade tratamento de exceções ou o fazem de maneira deficiente.

10 / 51

Page 11: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

IntroduçãoMotivação: Deficiências comuns em mecanismos de tratamento de exceções

Não tratam exceções não esperadas;

Não permitem tratamento específico a uma determinadainstância;

Não permitem alteração de modelos de processos de negócio.

11 / 51

Page 12: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Sumário

1 IntroduçãoProcessos de NegócioExceçõesMotivação

2 ConceitosTransaçõesTransações LongasProcessos de negócio transacionaisWED-flow

3 ContribuiçõesTratamento de exceçõesWED-tool

4 Conclusão

12 / 51

Page 13: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Transações

Transação, no modelo transacional de banco de dados, é umafunção que leva o banco de dados de um estado consistentepara outro estado consistente.

Para garantir essa consistência, existem as propriedades ACID(Atomicidade, Consistência, Isolamento e Durabilidade).

13 / 51

Page 14: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Transações Longas

Transações longas são transações que demoram minutos,horas, dias, etc., para serem executadas;

Na prática sua utilização tem alguns efeitos colaterais:

Bloqueio de recursos;Bloqueio de transações (por causa dos recursos bloqueados);Alto custo do aborto/reexecução de uma transação longa.

As propriedades ACID acabam por inviabilizar a utilização detransações longas.

14 / 51

Page 15: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Transações longasModelos Transacionais Avançados

Uma alternativa para viabilizar a utilização de transações longassem abrir mão da consistência transacional é a flexibilizaçãodas propriedades ACID;

Existe uma série de trabalhos chamados de ModelosTransacionais Avançados (MTA) que tem esse fim;

Um dos mais importantes MTAs é o modelo SAGA, que tem porobjetivo flexibilizar as propriedades de atomicidade e deisolamento.

15 / 51

Page 16: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Transações longasModelo SAGA

SAGAS flexibilizam as propriedades de atomicidade e isolamento.

s1 s2 s3 s4

T1 T2 T3

T−11 T−1

2 T−13

T1,T2,T3: passos SAGAT−1

1 ,T−12 ,T−1

3 : compensações

16 / 51

Page 17: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Processos de negócio transacionais

Processos de negócio transacionais: processos de negócioque, embasados pelo Modelo Transacional de Banco de Dados epor Modelos Transacionais Avançados, visam garantir correção econsistência transacional às suas execuções.

17 / 51

Page 18: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flow

A WED-flow (Work, Event processing, Data-flow) é umaabordagem transacional de modelagem, instanciação e controlede execução de processos de negócio;

Ela utiliza uma linguagem de modelagem baseada em regras,bastante semelhante ao ECA.

Modelos que utilizam linguagens de modelagem baseadas emregras tendem a ser mais flexíveis do que os modelos definidosatravés de linguagens de modelagem baseadas em grafos.

18 / 51

Page 19: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowLinhas gerais

WED-state: Estado de dados de uma instância de WED-flow;

WED-attributes: Atributos de interesse da aplicação;

WED-condition: Condição avaliada sobre WED-state;

WED-transition: Atividade responsável por alterar umWED-state;

WED-trigger: Par (WED-condition,WED-transition) / detectaalterações no WED-state;

WED-flow: Conjunto de WED-triggers + condições de início efim;

Histórico de execuções: Histórico detalhado referente aexecução de WED-transitions e geração de WED-states nocontexto de uma instância.

19 / 51

Page 20: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowLinhas gerais

Reservarequisitada

Inicializar reserva

Reservainiciada

Escolhercarro

Enviar documentos

Carro escolhido

Documentosrecebidos

ANDSolicitar

verificaçãodo gerente

Reservarejeitada

Reservaconfirmada

Registrarretirada

Carroretirado

Registrardevoluçãoe vistoriar

Carrovistoriado

Carro comavarias

Computarmultas

Registrarpagamento

Reservapaga

Disparo de WED-transition

Geração de novo WED-state

Diferentes possibilidades de geração de WED-state

Conjunção de atributos do WED-state que dispara uma WED-transition

Legenda:

WED-state (apenas WED-attributes responsáveis pelo disparo de WED-transition)

WED-transition

20 / 51

Page 21: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowLinhas gerais

id. dousuário

Statusreserva

Statuscarro

Placacarro

WED-state 0 xyz confirmada null null

WED-state 1 xyz confirmada retirado ABC-1234

WED-state 2 xyz confirmada vistoriado ABC-1234

t1: Registrar retirada

t2: Registrardevoluçãoe vistoriar

ti : WED-transition i

21 / 51

Page 22: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowLinhas gerais

s0 s1 s2

t1 t2

ti : WED-transition isi : WED-state i

22 / 51

Page 23: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowTratamento de exceções

Exceções esperadas:Tratamento automatizado.

Exceções não esperadas:Interrupção da instância problemática;Mecanismos de recuperação acionados por um especialista;Reinício da instância paralisada.

23 / 51

Page 24: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowTratamento de exceções

Application-Wide Integrity Constraints (AWIC) são condições queexpressam regras da aplicação. Um WED-state éAWIC-consistent se ele satisfaz todas as AWICs de umaaplicação.

Um WED-state é Transaction-consistent se ele satisfaz aWED-condition de ao menos um WED-trigger ou se ele nãosatisfaz nenhuma WED-condition, mas não é o último WED-stateda instância.

Um WED-state é inconsistente se ele não é nemAWIC-consistent e nem Transaction-consistent.

24 / 51

Page 25: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-flowTratamento de exceções

Chamamos de WED-state atual da interrupção o últimoWED-state gerado na instância.

WED-states atuais da interrupção podem ser consistentes ouinconsistentes. Dependendo do caso, diferentes mecanismos detratamento de exceções são disponibilizados ao especialista.

25 / 51

Page 26: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Sumário

1 IntroduçãoProcessos de NegócioExceçõesMotivação

2 ConceitosTransaçõesTransações LongasProcessos de negócio transacionaisWED-flow

3 ContribuiçõesTratamento de exceçõesWED-tool

4 Conclusão

26 / 51

Page 27: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Objetivos

Aprimorar os mecanismos de tratamento de exceções daabordagem WED-flow de forma a sanar ou contornar asdeficiências de tratamento de exceções discutidas anteriormente;

Implementar o gerenciador de recuperação da ferramentaWED-tool.

27 / 51

Page 28: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Equivalência de WED-states

Definição

Dois WED-states pertencentes a uma instância de um WED-flow wfsão ditos equivalentes quando eles satisfazem as mesmasWED-conditions associadas a wf, disparando, assim, as mesmasWED-transitions.

28 / 51

Page 29: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-compensation

Definição

Uma WED-compensation desfaz semanticamente os resultados desua WED-transition associada. Um WED-state gerado por umaWED-compensation wc deve ser equivalente ao WED-state sobre oqual a WED-transition associada a wc fez alterações.

Seja t uma WED-transition, c sua WED-compensation associada e s1,s2 e sc WED-states. Se t(s1) = s2 e c(s2) = sc então,obrigatoriamente s1 ≡ sc

29 / 51

Page 30: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-compensation

Doc OKe carro

escolhido

Reservaconfirmada

Carroretirado

Exceção

t4 t5

t6

ti : WED-transition i

30 / 51

Page 31: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-compensation

Doc OKe carro

escolhido

Reservaconfirmada

|||

Reservaconfirmada

Carroretirado

t4 t5

c5

ti : WED-transition ici : WED-compensation i associada a WED-transition i

31 / 51

Page 32: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Encadeamento de compensações

Doc OKe carro

escolhido

|||

Doc OKe carro

escolhido

Reservaconfirmada

|||

Reservaconfirmada

Carroretirado

t4 t5

c5

c4

ti : WED-transition ici : WED-compensation i associada a WED-transition i

32 / 51

Page 33: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Execução paralela

Reservarequisitada

Reservainiciada

Carroescolhido

Documentosrecebidos

Reservaconfirmada

...

t1

t2

t3t4

t5

ti : WED-transition i

33 / 51

Page 34: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Execução paralelaOferecimento adaptativo

Reservarequisitada

Reservainiciada

Carroescolhido

Documentosrecebidos

Reservaconfirmada

Exceção!

t1

t2

t3t4

t5

ti : WED-transition i

34 / 51

Page 35: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Execução paralelaOferecimento adaptativo

Reservarequisitada

Reservainiciada

Carroescolhido

|||

Carroescolhido

Documentosrecebidos

|||

Documentosrecebidos

Reservaconfirmada

t1

t2

t3t4

t5c4

c3

ti : WED-transition i

35 / 51

Page 36: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Oferecimento adaptativo

Reservarequisitada

Reservainiciada

|||

Reservainiciada

Carroescolhido

|||

Carroescolhido

Documentosrecebidos

|||

Documentosrecebidos

Reservaconfirmada

...

t1

t2

t3t4

c4

c3c2

t3t2

ti : WED-transition i 36 / 51

Page 37: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Oferecimento adaptativoTentativa de reinício (retry )

Reservarequisitada

Reservainiciada

Carroescolhido

Documentosrecebidos

Reservaconfirmada

Registrarretirada

...

t1

t2

t3t4

t5

t6

ti : WED-transition i

37 / 51

Page 38: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Pulos

Pulo: Modelo Transacional Avançado que tem por objetivo fazeralterações a uma instância específica de processo de negócio.

Pulo Forward - “Avança” a execução;Pulo Backward - “Volta” a algum ponto da execução.

No contexto da abordagem WED-flow, eles são importantes poissão utilizados principalmente em situações em que o WED-stateatual da interrupção é inconsistente.

38 / 51

Page 39: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-S−1

Pulo Backward

Reservarequisitada

Reservainiciada

Carroescolhido

Documentorecebido

Reservaconfirmada

Carroretirado

t1

t2

t3

t4

t5

39 / 51

Page 40: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-S−1

Pulo Backward

Reservarequisitada

Reservainiciada

|||

Reservainiciada

Carroescolhido

Documentorecebido

Reservaconfirmada

Carroretirado

Documentorecebido

Carroescolhido

t1

t2

t3

t4

t5WED-S−1

40 / 51

Page 41: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-S+a

Pulo Forward

Reservarequisitada

Reservainiciada

Carroescolhido

Documentorecebido

Reservaconfirmada

Carroretirado

Avariaindefinida

t1

t2

t3

t4

t5

t6

41 / 51

Page 42: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-S+a

Pulo Forward

Reservarequisitada

Reservainiciada

Carroescolhido

Documentorecebido

Reservaconfirmada

Carroretirado

Avariaindefinida

Carro comavarias

Carrovistoriado

Reservapaga

t1

t2

t3

t4

t5

t6WED-S+a

t9

42 / 51

Page 43: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Alteração da definição de um WED-flow

É sempre possível alterar a definição de um WED-flow em qualquermomento de seu ciclo de vida.

43 / 51

Page 44: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-tool

A WED-tool é um protótipo de sistema de gestão de processo denegócio que implementa a abordagem WED-flow. A atual versão játem as seguintes funcionalidades:

A ferramenta é capaz de ler e interpretar modelos de processosde negócio;

Uma vez que os modelos de processos de negócio foram lidos einterpretados, a WED-tool é capaz de instânciá-los e controlar aexecução de suas instâncias;

A ferramenta possui um gerenciador de recuperação com afunção de realizar o tratamento de exceções.

44 / 51

Page 45: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Informações técnicas

Ferramenta open source;

Desenvolvida em Ruby;

Entre outras gems, utiliza o Active Record;

Utiliza o SGBD PostgreSQL.

45 / 51

Page 46: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-tool

Projetista

Controle deExecução

Tratamento de

ExceçõesInstanciação

Ruby XML

Modelagem

Banco deDados

Configuração

Usuário

Ruby

Administradordo sistema

46 / 51

Page 47: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

WED-toolDemo

Demo.

47 / 51

Page 48: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Sumário

1 IntroduçãoProcessos de NegócioExceçõesMotivação

2 ConceitosTransaçõesTransações LongasProcessos de negócio transacionaisWED-flow

3 ContribuiçõesTratamento de exceçõesWED-tool

4 Conclusão

48 / 51

Page 49: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Sumário

Características da abordagem WED-flow facilitaram a concepçãode mecanismos flexíveis de tratamento de exceções.

Linguagem de modelagem baseada em regras;Detecção de exceções não esperadas;Possibilidade de intervenção de especialista.

Indicação de viabilidade prática pelo desenvolvimento dogerenciador de recuperação da abordagem WED-flow.

49 / 51

Page 50: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Trabalhos Futuros

Desenvolvimento de mecanismos de verificação do modelo;

Integração com serviços Web;

Aprimoramento da ferramenta WED-tool;

Comparação qualitativa entre WED-tool e outras ferramentas;

Desenvolvimento e metodologia de modelagem.

50 / 51

Page 51: Uma abordagem transacional para o tratamento de exceções ...pedro/slides_defesa_pedro.pdf · A ferramenta é capaz de ler e interpretar modelos de processos de negócio; Uma vez

Introdução Conceitos Contribuições Conclusão

Obrigado!

[email protected]://www.ime.usp.br/~pedro

Mais detalhes sobre o WED-flow estão disponíveis emhttp://data.ime.usp.br/wedflow

51 / 51