introdução à modelagem e execução de workflows...

227
Introdução à Modelagem e Execução de Workflows Científicos Introdução à Modelagem e Execução de Workflows Científicos Kelly R. Braghetto e Daniel Cordeiro Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo Jornadas de Atualização em Informática – julho de 2014

Upload: others

Post on 19-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

  • Introdução à Modelagem e Execução de Workflows Científicos

    Introdução à Modelagem e Execução deWorkflows Científicos

    Kelly R. Braghetto e Daniel CordeiroDepartamento de Ciência da ComputaçãoInstituto de Matemática e Estatística

    Universidade de São Paulo

    Jornadas de Atualização em Informática – julho de 2014

  • Introdução à Modelagem e Execução de Workflows Científicos

    Olá! :)

    Kelly Rosa Braghettoé professora do Departamento de Ciência da Computação doIME-USP desde 2012. Possui mestrado (2006) e doutorado (2011)em Ciência da Computação pela Universidade de São Paulo. Desde2003 desenvolve pesquisas na área e Modelagem de Dados eProcessos, atuando principalmente nos seguintes temas:gerenciamento de workflows científicos e processos de negócio,modelagem formal de processos, avaliação de desempenho deprocessos via modelagem analítica e modelagem de bancos dedados.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 2 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Olá! :)

    Daniel Cordeiroé doutor em Mathématiques et en Informatique pela Université deGrenoble, França, e Mestre em Ciências e Bacharel em Ciência daComputação pela Universidade de São Paulo. Atualmente fazpós-doutorado em Ciência da Computação no IME-USP comfinanciamento da FAPESP. Há dez anos trabalha com pesquisa edesenvolvimento de aplicações computacionais de alto desempenho,utilizando técnicas variadas como análise de escalabilidade deservidores baseados em eventos, teoria do escalonamento, análisecombinatória e teoria dos jogos.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 2 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Introdução

    Introdução

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 3 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Introdução

    Paradigmas da ciência

    Os paradigmas da ciência

    James Nicholas “Jim” Gray1 dizia estarmos presenciando o começode um novo paradigma da ciência.

    Há milhares de anos a ciência era empíricaHá alguns séculos a ciência passou a ser também teórica(modelos, generalizações, etc.)Nas últimas décadas, cientistas passaram a validar seusmodelos teóricos com o uso de simulações

    1Jim Gray ganhou o Prêmio Turing em 2008 e foi diretor do MicrosoftResearch’s eScience Group.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 4 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Introdução

    Paradigmas da ciência

    Os paradigmas da ciência

    James Nicholas “Jim” Gray1 dizia estarmos presenciando o começode um novo paradigma da ciência.

    Há milhares de anos a ciência era empíricaHá alguns séculos a ciência passou a ser também teórica(modelos, generalizações, etc.)Nas últimas décadas, cientistas passaram a validar seusmodelos teóricos com o uso de simulações

    1Jim Gray ganhou o Prêmio Turing em 2008 e foi diretor do MicrosoftResearch’s eScience Group.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 4 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Introdução

    Paradigmas da ciência

    Os paradigmas da ciência

    James Nicholas “Jim” Gray1 dizia estarmos presenciando o começode um novo paradigma da ciência.

    Há milhares de anos a ciência era empíricaHá alguns séculos a ciência passou a ser também teórica(modelos, generalizações, etc.)Nas últimas décadas, cientistas passaram a validar seusmodelos teóricos com o uso de simulações

    1Jim Gray ganhou o Prêmio Turing em 2008 e foi diretor do MicrosoftResearch’s eScience Group.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 4 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Introdução

    Paradigmas da ciência

    Os paradigmas da ciência

    James Nicholas “Jim” Gray1 dizia estarmos presenciando o começode um novo paradigma da ciência.

    Há milhares de anos a ciência era empíricaHá alguns séculos a ciência passou a ser também teórica(modelos, generalizações, etc.)Nas últimas décadas, cientistas passaram a validar seusmodelos teóricos com o uso de simulações

    1Jim Gray ganhou o Prêmio Turing em 2008 e foi diretor do MicrosoftResearch’s eScience Group.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 4 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de se fazer ciência

    O quarto paradigma seria a exploração de dados:

    Unifica teoria, experimentação e simulação“Toda ciência é ciência da computação”2

    Resultados de experimentos são expressos em

    2George Johnson. “The World: In Silica Fertilization; All Science IsComputer Science”. Em: The New York Times (25 de mar. de 2001). URL:http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 5 / 190

    http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.htmlhttp://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de se fazer ciência

    O quarto paradigma seria a exploração de dados:

    Unifica teoria, experimentação e simulação“Toda ciência é ciência da computação”2

    Resultados de experimentos são expressos em

    2George Johnson. “The World: In Silica Fertilization; All Science IsComputer Science”. Em: The New York Times (25 de mar. de 2001). URL:http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 5 / 190

    http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.htmlhttp://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de se fazer ciência

    O quarto paradigma seria a exploração de dados:

    Unifica teoria, experimentação e simulação“Toda ciência é ciência da computação”2

    Resultados de experimentos são expressos em

    2George Johnson. “The World: In Silica Fertilization; All Science IsComputer Science”. Em: The New York Times (25 de mar. de 2001). URL:http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 5 / 190

    http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.htmlhttp://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de se fazer ciência

    O quarto paradigma seria a exploração de dados:

    Unifica teoria, experimentação e simulação“Toda ciência é ciência da computação”2

    Resultados de experimentos são expressos em bytes

    2George Johnson. “The World: In Silica Fertilization; All Science IsComputer Science”. Em: The New York Times (25 de mar. de 2001). URL:http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 5 / 190

    http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.htmlhttp://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de se fazer ciência

    O quarto paradigma seria a exploração de dados:

    Unifica teoria, experimentação e simulação“Toda ciência é ciência da computação”2

    Resultados de experimentos são expressos em muitos bytes

    2George Johnson. “The World: In Silica Fertilization; All Science IsComputer Science”. Em: The New York Times (25 de mar. de 2001). URL:http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 5 / 190

    http://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.htmlhttp://www.nytimes.com/2001/03/25/weekinreview/the-world-in-silica-fertilization-all-science-is-computer-science.html

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:

    formulação de hipótese : experimentação : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese

    : experimentação : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese : experimentação

    : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese : experimentação : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese : experimentação : análise de resultados

    Agora: “data-driven hypothesis”

    formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese : experimentação : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese

    : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese : experimentação : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Um novo modo de pensamento científico

    A exploração de dados promove uma mudança importante noprocesso de pensamento científico.

    Antes:formulação de hipótese : experimentação : análise de resultados

    Agora: “data-driven hypothesis”formulação de hipótese : busca da confirmação no banco de dados

    Trata-se realmente de uma nova metodologiaque permite a criação de novos “tipos” de pesquisa em diversasáreas do conhecimento (notadamente nas ciências naturais).

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 6 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    O 4o paradigma: exploração dos dados1 Os dados são capturados por instrumentos ou gerados por

    simulações2 Processados por sistemas de software complexos3 A informação (ou conhecimento) resultante é armazenada no

    computador4 Só então os cientistas analisam os dados, no final do processo!

    (usando ferramentas de gerenciamento de dados e deestatística)

    ExemploHoje podemos dizer que astrônomos não olham mais através deseus telescópios. Ao invés disso, eles “olham” através deinstrumentos complexos que estão conectados a centrais deprocessamento de dados e, só então, utilizam seus computadorespara visualizar as informações coletadas.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 7 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    O 4o paradigma: exploração dos dados1 Os dados são capturados por instrumentos ou gerados por

    simulações2 Processados por sistemas de software complexos3 A informação (ou conhecimento) resultante é armazenada no

    computador4 Só então os cientistas analisam os dados, no final do processo!

    (usando ferramentas de gerenciamento de dados e deestatística)

    ExemploHoje podemos dizer que astrônomos não olham mais através deseus telescópios. Ao invés disso, eles “olham” através deinstrumentos complexos que estão conectados a centrais deprocessamento de dados e, só então, utilizam seus computadorespara visualizar as informações coletadas.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 7 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    O 4o paradigma: exploração dos dados1 Os dados são capturados por instrumentos ou gerados por

    simulações2 Processados por sistemas de software complexos3 A informação (ou conhecimento) resultante é armazenada no

    computador4 Só então os cientistas analisam os dados, no final do processo!

    (usando ferramentas de gerenciamento de dados e deestatística)

    ExemploHoje podemos dizer que astrônomos não olham mais através deseus telescópios. Ao invés disso, eles “olham” através deinstrumentos complexos que estão conectados a centrais deprocessamento de dados e, só então, utilizam seus computadorespara visualizar as informações coletadas.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 7 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    O 4o paradigma: exploração dos dados1 Os dados são capturados por instrumentos ou gerados por

    simulações2 Processados por sistemas de software complexos3 A informação (ou conhecimento) resultante é armazenada no

    computador4 Só então os cientistas analisam os dados, no final do processo!

    (usando ferramentas de gerenciamento de dados e deestatística)

    ExemploHoje podemos dizer que astrônomos não olham mais através deseus telescópios. Ao invés disso, eles “olham” através deinstrumentos complexos que estão conectados a centrais deprocessamento de dados e, só então, utilizam seus computadorespara visualizar as informações coletadas.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 7 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    O 4o paradigma: exploração dos dados1 Os dados são capturados por instrumentos ou gerados por

    simulações2 Processados por sistemas de software complexos3 A informação (ou conhecimento) resultante é armazenada no

    computador4 Só então os cientistas analisam os dados, no final do processo!

    (usando ferramentas de gerenciamento de dados e deestatística)

    ExemploHoje podemos dizer que astrônomos não olham mais através deseus telescópios. Ao invés disso, eles “olham” através deinstrumentos complexos que estão conectados a centrais deprocessamento de dados e, só então, utilizam seus computadorespara visualizar as informações coletadas.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 7 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Problemas da ordem de petabytes!

    1 PB = 1.000.000.000.000.000 B

    = 1.0005 B

    = 1015 B= 1 milhão de gigabytes= 1 mil terabytes

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    1 PB = 1.000.000.000.000.000 B

    = 1.0005 B

    = 1015 B= 1 milhão de gigabytes= 1 mil terabytes

    Large Hadron Collider (LHC)Produz cerca de 25 petabytes/ano, processa cerca de umpetabyte de dados todos os dias (o equivalente a cerca de210.000 DVDs) e já possui mais de 100 petabytes armazenadosdesde o início do projeto (∼= 700 anos de filmes armazenados comqualidade full HD)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Outros exemplos comerciais

    O Google processa cerca de 20 petabytes de dados por dia(2008)O Wayback Machine tem cerca de 3 petabytes + 100terabytes/dia (mar/2009)O Facebook tem cerca de 2,5 petabytes de dados deusuários + 15 terabytes/dia (abr/2009)O site eBay tem cerca de 6,5 petabytes de dados dosusuários + 50 terabytes/dia (mai/2009)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Outros exemplos comerciais

    O Google processa cerca de 20 petabytes de dados por dia(2008)O Wayback Machine tem cerca de 3 petabytes + 100terabytes/dia (mar/2009)O Facebook tem cerca de 2,5 petabytes de dados deusuários + 15 terabytes/dia (abr/2009)O site eBay tem cerca de 6,5 petabytes de dados dosusuários + 50 terabytes/dia (mai/2009)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Outros exemplos comerciais

    O Google processa cerca de 20 petabytes de dados por dia(2008)O Wayback Machine tem cerca de 3 petabytes + 100terabytes/dia (mar/2009)O Facebook tem cerca de 2,5 petabytes de dados deusuários + 15 terabytes/dia (abr/2009)O site eBay tem cerca de 6,5 petabytes de dados dosusuários + 50 terabytes/dia (mai/2009)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    De qual volume de dados estamos falando?

    Outros exemplos comerciais

    O Google processa cerca de 20 petabytes de dados por dia(2008)O Wayback Machine tem cerca de 3 petabytes + 100terabytes/dia (mar/2009)O Facebook tem cerca de 2,5 petabytes de dados deusuários + 15 terabytes/dia (abr/2009)O site eBay tem cerca de 6,5 petabytes de dados dosusuários + 50 terabytes/dia (mai/2009)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 8 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Grandes data centers

    Pergunta:Quão grandes são os data centers que fazem funcionar os sistemasque afetam a vida de quase todo mundo que se conecta à Internet(como os do Google, Facebook, etc.)?

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 9 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Grandes data centers

    Fonte: http://www.google.com/intl/pt-BR/about/datacenters/

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 10 / 190

    http://www.google.com/intl/pt-BR/about/datacenters/

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Grandes data centers

    Fonte: http://www.google.com/intl/pt-BR/about/datacenters/

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 10 / 190

    http://www.google.com/intl/pt-BR/about/datacenters/

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Grandes data centers

    Fonte: http://www.google.com/intl/pt-BR/about/datacenters/

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 10 / 190

    http://www.google.com/intl/pt-BR/about/datacenters/

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Grandes data centers

    Fonte: http://www.google.com/intl/pt-BR/about/datacenters/

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 10 / 190

    http://www.google.com/intl/pt-BR/about/datacenters/

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Dificilmente alguém consegue processar tudo isso sozinho

    Nem todos podem comprar supercomputadoresNem todos podem arcar com os custos de manter um datacenter grande e potente o suficiente (custos de operação,manutenção, etc.)O uso de Grades Computacionais (a solução mais usada até omomento) também depende de acesso a aglomerados decomputação e a supercomputadores (mesmo que elespertençam a outros) e requer que os participantes estejam emcomum acordo

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 11 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Dilúvio de dados

    Dificilmente alguém consegue processar tudo isso sozinhoE ainda que tenhamos tudo isso à disposição

    A grande pergunta é:Como modelar programas e experimentos que possam usar todoesse poder computacional de forma simples, barata e eficiente?

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 12 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    Workflows Científicos

    Definição“Redes de processos tipicamente utilizadas como ‘pipelines deanálises de dados’ ou ainda para comparar dados observados ouprevistos, e que podem incluir uma vasta gama de componentes,e.g. para consultar bancos de dados, para transformar ou minerardados, para executar simulações em computadores de altodesempenho, etc.”3

    3Bertram Ludäscher et al. “Scientific workflow management and the Keplersystem”. Em: Concurrency and Computation: Practice and Experience 18.10(2006), pp. 1039–1065.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 13 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    Workflows Científicos

    São automações de experimentos ou de processos científicos,expressas em termos das atividades a serem executadas e,principalmente, das dependências dos dados manipulados;Tendem a ser computacionalmente intensivos;São fortemente voltados à manipulação de grandes volumes dedados complexos.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 14 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    Exemplos famosos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 15 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    Exemplos famosos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 16 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    Ciclo de vida dos workflows científicos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 17 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    O projeto de workflows científicos

    Consiste na construção de um modelo para o workflowPode ser feito por meio de diferentes linguagens ou modelos derepresentaçãoPode se embasar em outros workflows já existentesÉ conveniente de se representar em formatos digitais earmazenar em repositórios:

    reuso, compartilhamento com outros pesquisadores, etc.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 18 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    A instanciação de workflows científicos

    Corresponde à preparação necessária para uma execuçãoparticular do workflow:

    Cada nova execução requer dados de entrada e parâmetros deconfiguração definidos pelos cientistas

    Pode envolver a seleção e alocação dos recursoscomputacionais para a execuçãoCuida da transferência dos dados de entrada para oscomputadores onde a execução será realizada

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 19 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    A execução de workflows científicos

    Ocorre nos recursos computacionais disponíveis:Para cada atividade atribui-se um recursoAtividades processam dados de entrada e produzem novosdados, que podem ser usados por outras atividades

    Pode registrar dados intermediários gerados na instância e suasinformações de proveniência

    Dados de entrada e os parâmetros de configuraçãoRegistro das atividades já executadas, seus tempos de início etérmino, os recursos usados, etc.Referências para os dados de entrada e saída de cada atividade

    Intenções: avaliação dos resultados; recuperação em caso defalhas; reprodutibilidade dos experimentos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 20 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    O quarto paradigma

    Workflows científicos

    A análise pós-execução de workflows científicos

    Corresponde à inspeção e interpretação dos resultados obtidosPode conduzir a uma revisão da hipótese ou do objetivoexperimental inicial, ou ainda à identificação de ineficiênciasda execução

    Reprojeto do workflow ⇒ nova iteração do seu ciclo de vida

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 21 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Modelagem de WorkflowsCientíficos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 22 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Terminologia básica sobre representação de workflows

    Modelo define as atividades a serem realizadas no workflowpara que um objetivo científico seja alcançado

    Atividade é uma unidade atômica (= indivisível) de trabalho emum modelo de workflow

    Conector é usado para definir alguma relação de precedência oualgum tipo de transferência de dados entre atividades

    Instância é uma execução particular (= instanciação) de ummodelo de workflow

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 23 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Modelo de workflow

    Define as atividades a serem realizadas no workflow para que umobjetivo científico seja alcançado

    Estabelece a ordem (ainda que parcial) na qual as atividadesdo workflow devem ser executadasÉ comumente representado por meio de um arcabouço formalou de uma linguagem de especificação de workflows

    arcabouços formais possibilitam a análise de propriedades dosworkflows que neles são modeladoslinguagens específicas de domínio permitem a especificação demodelos em um nível de detalhamento mais próximo aorequerido para a execução dos workflows

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 24 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Atividade

    Unidade atômica (= indivisível) de trabalho em um modelo deworkflow

    Possui vários sinônimos: tarefa, processo, ação, transiçãoPode ser classificada como:Atividade manual quando é realizada por pessoasAtividade automática quando é realizada completamente por

    computadores ou outros tipos de máquinas, semintervenção humana

    Atividade semiautomática quando depende tanto de pessoasquanto de máquinas para ser realizada

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 25 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Conector

    Define alguma relação de precedência ou algum tipo detransferência de dados entre atividades

    Cada linguagem de modelagem de workflows possui o seupróprio conjunto de conectoresOs conectores definem a expressividade da linguagem, ou seja,a variedade e quantidade de modelos de workflows que alinguagem é capaz de representar

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 26 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Instância de workflow

    Execução particular (= instanciação) de um modelo de workflow

    Duas instâncias de um mesmo workflow não necessariamenteexecutam a mesma sequência de atividades

    Um workflow pode ter em seu modelo ramos de execuçãoalternativos ou atividades que só serão executadas casodeterminados tipos de dados estejam disponíveis

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 27 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Workflows de Negócio

    São usados em grande escala desde os anos 90Automatizam processos industriais e gerenciais (= processosde negócio)Desenvolvimento apoiado por comunidades e coalizões,envolvendo indústria e academiaResultados:

    Muitos documentos, modelos de referência e padrõesrelacionados à gestão desse tipo de workflowsMuitas técnicas e ferramentas computacionais desenvolvidaspara apoiar o ciclo de vida desses workflows

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 28 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Workflows Científicos

    Sua popularização começou nos anos 2000Possuem muitas semelhanças com os workflows de negócioA comunidade científica não adotou os padrões desenvolvidospara os workflows de negócios

    O domínio científico possui particularidades que justificam acriação de técnicas e ferramentas específicas para ogerenciamento de seus workflows

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 29 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Padronização e InteroperabilidadeWorkflows de negócio

    Processos de negócio envolvem processos inter-organizacionaisDemandam interoperabilidade de ferramentas e padronizaçãodas linguagens de modelagem

    Exemplos: o modelo de referência da Workflow ManagementCoalition e a Business Process Model and Notation (BPMN)

    Workflows científicos

    Não existem padrões: cada sistema de gerenciamento possui asua linguagem de modelagemPouca interoperabilidade entre diferentes ferramentas

    Motivo: poucos domínios científicos (como a Bioinformática)fazem uso sistematizado de ferramentas de workflows

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 30 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Padronização e Interoperabilidade

    Workflows de negócio são projetados e desenvolvidos porespecialistas em TI

    Atividades são componentes padronizados e portáveis (comoos serviços Web)Existe facilidade no reúso e na construção dos processosinter-organizacionais

    Workflows científicos são projetados por cientistasAtividades muitas vezes são scripts para softwaresmatemáticos ou estatísticosOutras vezes, o próprio workflow é implementado como umscript que coordena as chamadas a outros scripts

    A proposição de padrões para a gestão de workflows no domíniocientífico é uma tarefa desafiadora!

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 31 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Natureza das atividades

    Workflows de negócio comumente possuem atividadesautomáticas e manuais

    Exemplo: um workflow para o tratamento de reclamações declientes de uma empresa de TV a cabo

    Workflows científicos não costumam envolver atividadesmanuais pois suas ferramentas de apoio não oferecem suportea esse tipo de funcionalidade

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 32 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Integridade na execução de instâncias

    Workflows de negócio

    Integridade na execução é uma preocupação crucialPodem implementar transações comerciais que envolvemcontratos financeiros e prestação de serviçosGeralmente, são workflows transacionais

    Em caso de falhas durante sua execução, é preciso havermaneiras de se desfazer as atividades já realizadas (mesmo queseja de maneira lógica)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 33 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Workflows de Negócio × Workflows Científicos

    Integridade na execução de instâncias

    Workflows científicos

    Quando têm como alvo o processamento e a análise de dados,geralmente não demandam tratamento transacionalNo caso de falhas durante a execução, remove-se os resultadosintermediários produzidos e então reinicia-se a execução doworkflow a partir do ponto onde ela foi interrompida ou do seuinício

    A reexecução pode ter um custo alto em termos de tempo e derecursos computacionais consumidos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 34 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Perspectivas para a modelagem de workflows

    Fluxo de controle descreve a ordem de execução, definindo atransferência de controle entre atividades conectadase habilitando uma atividade para execução quando asatividades que a precedem são concluídas

    Fluxo de dados descreve as transferências de dados entre asatividades, estabelecendo as dependências dasatividades com relação aos dados que elas manipulam

    Organizacional atrela ao workflow uma estrutura organizacional,por meio da definição de papéis (desempenhados porpessoas ou equipamentos) responsáveis pela execuçãodas atividades

    Tratamento de exceções lida com as causas das exceções e asações que precisam ser tomadas nos seus tratamentos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 35 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Perspectivas para a modelagem de workflows

    Fluxos de dados

    Em workflows científicos, a predominância é da modelagem defluxos de dados

    Aplicações científicas são intensivas em dadosCientistas rotineiramente já descrevem seus experimentoscientíficos em termos de fluxos de dados

    coleta de dados brutos → filtragem → transformação →análise → obtenção de dados derivados que sustentamhipóteses científicas

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 36 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Perspectivas para a modelagem de workflows

    Modelagem híbrida

    As diferentes perspectivas de modelagem não são excludentesMuitos SGWC possuem linguagens de modelagem híbridas,para a descrição de fluxos tanto de dados quanto de controleFerramentas de gestão de workflows de negócio costumamcombinar as perspectivas de fluxo de controle e de tratamentode exceções

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 37 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de controleConstruções essenciais:

    SequênciaParalelismo (Divisão-E)Sincronização (Junção-E)Escolha Exclusiva (Divisão-OU-Exclusivo)Junção (Junção-OU-Exclusivo)Ciclo (ou Iteração)

    Outras construções

    A Workflow Patterns Initiative identificou as construções maisfrequentes nas ferramentas de modelagem:

    há 43 padrões diferentes para fluxo de controle

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 38 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de controle

    Exemplo de workflow modelado usando as construções básicas defluxo de controle

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 39 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de dados

    Construções básicas:

    Processamento: é realizado por uma atividade sobre dadosde entrada para produzir dados de saídaPipeline: combina um ou mais processamentossequencialmente, de forma que cada atividade processe osdados produzidos pela atividade que a precedeu e que a suasaída seja usada como entrada para a próxima atividade

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 40 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de dados

    Processamento

    PipelineKelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 41 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de dados

    Construções básicas:

    Distribuição de dados: é feita por uma atividade que produzdois ou mais conjuntos de dados de saída que são recebidoscomo entrada por duas ou mais atividades

    Pode ser feita para dois propósitos distintos:produzir novos conjuntos de dados para serem consumidos pormúltiplas atividades; ouparticionar um grande conjunto de dados recebido comoentrada em subconjuntos menores, para que esses possam serprocessados (paralelamente) por outras atividades no workflow

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 42 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de dados

    Construções básicas:

    Agregação de dados: é feita por uma atividade que agrega eprocessa dados de saída de duas ou mais atividades, gerandouma combinação dos dados como saída

    Pode resultar em sincronização de linhas de execução paralelasRedistribuição de dados: é feita por uma atividade quecombina a função de agregação de dados à função dedistribuição dos dados

    a atividade pode tanto sincronizar linhas de execução paralelasjá existentes quanto criar novas linhas de execução paralelas

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 43 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Estruturas para representação de fluxos de dados

    Distribuiçãode dados

    Agregaçãode dados

    Redistribuiçãode dados

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 44 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Fluxo de dadosno workflowMontage

    http://montage.ipac.caltech.edu/

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 45 / 190

    http://montage.ipac.caltech.edu/http://montage.ipac.caltech.edu/

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    Workflow Montage(sem a visualizaçãodos itens de dados)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 46 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    As linguagens de modelagem “na prática”

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 47 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    As linguagens de modelagem “na prática”Composicionalidade: construção de modelos de workflow a partir demodelos de subworkflows

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 48 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Fluxo de Controle × Fluxo de Dados

    As linguagens de modelagem “na prática”

    Representação textual do modelo

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 49 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Modelagem formal de workflows

    Por que usá-la?

    Geralmente, a semântica operacional dos conectores e outrosconstrutores presentes nas linguagens de modelagem deworkflows não é definida formalmente

    Isso impossibilita a verificação e a validação dos modelosA partir de modelos formais, é possível fazer análises preditivasqualitativas e quantitativas dos workflows

    Classes de formalismos mais usados na modelagem de workflows:

    Redes de Petri (RdPs)Álgebras de Processos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 50 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Breve introdução às Redes de Petri (RdPs)

    A teoria das Redes de Petri é um dos exemplos maisconhecidos de teoria de ordem parcial para modelagem eanálise de sistemas concorrentesO conceito foi introduzido por Carl Adam Petri, em sua tesede doutorado em 1962, na Faculdade de Matemática e Físicada Universidade de Darmstadt, AlemanhaSão muito utilizadas devido à sua representação gráfica defácil compreensão e ao seu potencial matemático para aanálise de modelos

    Essas análises incluem verificações de propriedades inerentesaos sistemas concorrentes, como relações de precedência entreeventos, sincronização e existência ou não de impasses

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 51 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Elementos de uma RdP

    As RdPs são formadas basicamente por dois tipos de componentes

    Transições representando ações do sistemaLugares representando variáveis de estado do sistema

    Uma RdP com marcação é formalmente definida pela tuplaRdP = {L, T,A, P,m0}, em que:

    L = {l1, l2, ..., lL} é um conjunto de lugares;T = {t1, t2, ..., tT } é um conjunto de transições;A ⊆ (L× T ) ∪ (T × L) é o conjunto de arcos;P : A→ N é a função peso dos arcos;m0 = {m01,m02, ...,m0L} é a marcação inicial da rede.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 52 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo de RdP: Processos Produtor-Consumidor

    produção

    produzir

    envio

    repositóriode itens

    preencher remover

    recebimento

    consumir

    consumoespaçoslivres

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 53 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Elementos de uma RdP

    Os conceitos associados a cada um dos itens de uma RdP são:

    Lugar (representado graficamente por um círculo)Modela uma condição que deve ser satisfeita para que odisparo da transição seja realizado

    Transição (representada graficamente por um quadrado,retângulo ou barra)

    Pode ser compreendida como uma ação ou eventoArco orientado

    Liga um lugar a uma transição ou vice-versa, encadeandocondições e eventos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 54 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Elementos de uma RdP

    Os conceitos associados a cada um dos itens de uma RdP são:

    Marca ou Ficha – representa um recurso disponívelO posicionamento dessas fichas nos lugares do grafo constituia marcação da RdPCada lugar possui 0 ou mais fichasA evolução da marcação permite modelar o comportamentodinâmico do sistema

    Peso – cada arco possui um peso associado a eleO peso indica quantas fichas uma transição consome de umlugar de entrada ou quantas fichas uma transição acrescentaem um lugar de saídaQuando um arco não possui um peso explicitamente indicadono grafo, considera-se que o seu peso é 1

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 55 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Marcação de uma RdP

    Uma marcação é uma atribuição de fichas a lugaresPode ser representada por um vetor cujo tamanho é o númerode lugares na rede: o iésimo componente do vetor representa onúmero de fichas contidas no lugar liDenotamos por m(l) o número de fichas em um lugar l ∈ L

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 56 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Evolução da marcação de uma RdP

    A evolução dinâmica da marcação de uma RdP é governadapela ocorrência (disparos) de transições que consomem eproduzem fichasRegras de habilitação e disparo estão associadas às transições

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 57 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Habilitação de uma transição em uma RdP

    HabilitaçãoUm transição t está habilitada na marcação m se e somente se:

    ∀l ∈ •t, m(l) ≥ P (〈l, t〉)

    onde •t = {u | 〈u, t〉 ∈ A}.Em outras palavras, •t é o conjunto de todos os lugares deentrada de t.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 58 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Disparo de uma transição em uma RdP

    DisparoO disparo de uma transição t, habilitada na marcação m,produz um marcação m′ tal que

    m′ = m+O(t)− I(t) ,

    em queI(t) = (P (〈l1, t〉), P (〈l2, t〉), . . . , P (〈lL, t〉)) eO(t) = (P (〈t, l1〉), P (〈t, l2〉), . . . , P (〈t, lL〉))

    Essa declaração é normalmente indicada de forma compactacomo m[t〉m′ e podemos dizer que m′ é diretamentealcançável a partir de m

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 59 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo de RdP: Processos Produtor-Consumidor

    produção

    produzir

    envio

    repositóriode itens

    preencher remover

    recebimento

    consumir

    consumoespaçoslivres

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 60 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo de RdP: Processos Produtor-Consumidor

    O produtor só produz um item por vez, ao passo que oconsumidor só consome um item por vezO produtor só pode enviar um item produzido a umconsumidor quando há espaço para armazená-lo, ou seja,quando há ao menos uma ficha em l4O consumidor só pode consumir um item após a sua remoçãodo repositório (transição tc). Essa remoção só pode ocorrerquando há itens produzidos e ainda não consumidos, ou seja,quando há ao menos uma ficha em l3Sendo assim, uma ficha que sai de l4 com o disparo de tb entraem l3Do mesmo modo, uma ficha que sai de l3 com o disparo de tcentra em l4

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 61 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Marcações alcançáveis da rede do exemplo1 0 0 2 0 1 1 0 0 2 1 0

    0 1 0 2 0 1

    1 0 1 1 0 1

    0 1 0 2 1 0

    0 1 1 1 0 1

    1 0 1 1 1 0

    1 0 2 0 0 1

    0 1 1 1 1 0

    1 0 2 0 1 0

    0 1 2 0 0 1 0 1 2 0 1 0

    tc

    tc

    tc

    tc

    td

    td

    td

    td

    td

    td

    ta

    tb

    ta

    tb

    ta

    ta

    tb

    ta

    tb

    ta

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 62 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Sobre as marcações de uma RdP

    Cada uma das marcações possíveis da rede representa umpossível estado do sistema modeladoA partir dos estados e da estrutura da rede, é possível verificarpropriedades do sistema. Exemplos:

    Se existe uma transição que não é habilitada por nenhumamarcação da rede, então essa transição é morta (ou seja, elanunca será disparada) ⇒ isso pode indicar um erro no projetodo sistemaPode-se querer saber se o sistema pode atingir umdeterminado estado indesejado. Para isso, identifica-se qual éa marcação da RdP que representa esse estado e caso essamarcação esteja entre as alcançáveis da rede, então estaráconfirmado que o estado indesejado pode ocorrer no sistema

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 63 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Sequência ou PipelineQuando duas atividade devem ser executadas sequencialmente, ouquando uma produz dados que são usados pela outra, então háuma interdependência entre elas

    Em RdPs, isso pode ser modelado conectando as duasatividades (transições) por meio de um lugar

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 64 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Paralelismo ou distribuição de dados

    Modelado por uma atividade (transição) que, quandodisparada, inclui uma ficha em cada um dos lugares de entradadas transições que representam as atividades que serãoexecutadas paralelamente ou que processarão os dadosdistribuídos

    Sincronização ou agregação de dados

    É modelada por uma atividade que tem como lugar de entradaos lugares de saída que indicam quando as atividades a seremsincronizadas já foram concluídas ou quando os dados a seremagregados já estão disponíveis para processamento

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 65 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Paralelismo e sincronização / Distribuição e agregação de dados

    Atividade deParalelização /

    Distribuição

    Atividade deSincronização /

    Agregação

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 66 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Escolha exclusiva

    Pode ser representada como um conjunto de atividades(transições) compartilhando um único lugar de entradaHá variações possíveis nessa representação

    Exemplo: a escolha pode depender de uma regra que pode sermodelada como uma atividade “gerencial”, que quandodisparada coloca uma ficha no lugar de entrada da atividadeescolhida para execução

    Junção simples

    É modelada por um conjunto de atividades (transições)alimentando um mesmo lugar de saída

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 67 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPsEscolha exclusiva e junção simples

    Escolhaexclusiva

    Junçãosimples

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 68 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Escolha exclusiva baseada em regras e junção simples

    Escolha exclusiva

    Atividades gerenciaisJunção simples

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 69 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Ciclos

    Geralmente são modelados com o auxílio de escolhasexclusivas e junções simples

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 70 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    O workflow científico SIPHT modelado em RdP

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 71 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Brevíssima introdução às Álgebras de Processos

    Nas álgebras de processos (APs) os processos sãorepresentados algebricamente, na forma de termosUma AP é composta por um conjunto de símbolos de ações,um conjunto de operadores e um conjunto de axiomasdescrevendo as propriedades dos operadoresO conjunto de axiomas (= leis equacionais) pode tambémespecificar quando dois processos são consideradosequivalentesEsse arcabouço algébrico possibilita o raciocínio formal sobrepropriedades estruturais e comportamentais de ummodelo de sistema concorrente

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 72 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    APs – Origens

    As bases das álgebras de processos foram desenvolvidas,independentemente, por Milner e Hoare (no anos 70)As APs são parcialmente enraizadas nas Redes de Petri, naTeoria de Autômatos e nas linguagens formaisMilner desenvolveu a álgebra de processos Calculus ofCommunicating Systems (CCS), enquanto Hoare definiu aCommunicating Sequential Processes(CSP)Outras álgebras de processos bem difundidas são a Languageof Temporal Ordering Specification (LOTOS), a Algebraof Communicating Processes (ACP) e a π-Calculus

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 73 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Assinatura de uma AP básica

    Geralmente consiste em:

    um conjunto finito e não vazio A de ações atômicas,representando comportamentos indivisíveisum operador binário “+”, chamado de composiçãoalternativaSe os termos fechados t1 e t2 representam os processos p1 ep2, respectivamente, então o termo fechado t1 + t2 representao processo que executa p1 ou p2um operador binário “.”, chamado de composição sequencialSe os termos fechados t1 e t2 representam os processos p1 ep2, respectivamente, então o termo fechado t1.t2 representa oprocesso que executa primeiro p1 e depois p2

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 74 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Outros operadores das APs

    Para modelar cenários que envolvem paralelismo,comunicação e iterações, as álgebras de processosgeralmente possuem, além dos operadores básicos,mecanismos para expressar comportamentos mais avançadosPor exemplo, na Algebra of Communicating Processes (ACP)existe:

    o operador binário “||”, chamado de entrelaçamento, paraexpressar paralelismoequações recursivas, para representação de ciclos finitos ouinfinitos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 75 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo: Workflow para o atendimento de reclamações(modelado com rede de Petri e ACP)

    avaliação

    P = registra . (contata_cliente || contata_depto) . coleta_dados .((avaliacao_positiva . reembolsa) +(avaliacao_negativa . envia_msg)) . arquiva

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 76 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Modelos formais de workflows

    Podem ser analisados sob duas perspectivas: qualitativa equantitativa

    Análise qualitativaPrincipais representantes: a validação e a verificação

    A validação avalia se o sistema se comporta como o esperadoA verificação avalia se o sistema respeita alguns critériosestruturaisÉ possível, por exemplo, verificar se dois modelos de workflowssão equivalentes, ou ainda se um dado workflow possui pontosde impasse (deadlocks)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 77 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Modelos formais de workflows

    Podem ser analisados sob duas perspectivas: qualitativa equantitativa

    Análise quantitativaPrincipal representante: a análise de desempenho

    Feita a partir de modelos estocásticos (como os baseados emcadeias de Markov)Prediz tempo de resposta do sistemaObtém a probabilidade de execução de uma dada sequência deatividades do workflowIdentifica gargalos na execução do workflow

    Tanto as Álgebras de Processos quanto as RdPs possuem extensõesestocásticas, usadas para análises quantitativas.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 78 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Modelagem formal de workflows

    Por que usá-la?

    Geralmente, a semântica operacional dos conectores e outrosconstrutores presentes nas linguagens de modelagem deworkflows não é definida formalmente

    Isso impossibilita a verificação e a validação dos modelosA partir de modelos formais, é possível fazer análises preditivasqualitativas e quantitativas dos workflows

    Classes de formalismos mais usados na modelagem de workflows:

    Redes de Petri (RdPs)Álgebras de Processos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 79 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Breve introdução às Redes de Petri (RdPs)

    A teoria das Redes de Petri é um dos exemplos maisconhecidos de teoria de ordem parcial para modelagem eanálise de sistemas concorrentesO conceito foi introduzido por Carl Adam Petri, em sua tesede doutorado em 1962, na Faculdade de Matemática e Físicada Universidade de Darmstadt, AlemanhaSão muito utilizadas devido à sua representação gráfica defácil compreensão e ao seu potencial matemático para aanálise de modelos

    Essas análises incluem verificações de propriedades inerentesaos sistemas concorrentes, como relações de precedência entreeventos, sincronização e existência ou não de impasses

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 80 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Elementos de uma RdP

    As RdPs são formadas basicamente por dois tipos de componentes

    Transições representando ações do sistemaLugares representando variáveis de estado do sistema

    Uma RdP com marcação é formalmente definida pela tuplaRdP = {L, T,A, P,m0}, em que:

    L = {l1, l2, ..., lL} é um conjunto de lugares;T = {t1, t2, ..., tT } é um conjunto de transições;A ⊆ (L× T ) ∪ (T × L) é o conjunto de arcos;P : A→ N é a função peso dos arcos;m0 = {m01,m02, ...,m0L} é a marcação inicial da rede.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 81 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo de RdP: Processos Produtor-Consumidor

    produção

    produzir

    envio

    repositóriode itens

    preencher remover

    recebimento

    consumir

    consumoespaçoslivres

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 82 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Elementos de uma RdP

    Os conceitos associados a cada um dos itens de uma RdP são:

    Lugar (representado graficamente por um círculo)Modela uma condição que deve ser satisfeita para que odisparo da transição seja realizado

    Transição (representada graficamente por um quadrado,retângulo ou barra)

    Pode ser compreendida como uma ação ou eventoArco orientado

    Liga um lugar a uma transição ou vice-versa, encadeandocondições e eventos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 83 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Elementos de uma RdP

    Os conceitos associados a cada um dos itens de uma RdP são:

    Marca ou Ficha – representa um recurso disponívelO posicionamento dessas fichas nos lugares do grafo constituia marcação da RdPCada lugar possui 0 ou mais fichasA evolução da marcação permite modelar o comportamentodinâmico do sistema

    Peso – cada arco possui um peso associado a eleO peso indica quantas fichas uma transição consome de umlugar de entrada ou quantas fichas uma transição acrescentaem um lugar de saídaQuando um arco não possui um peso explicitamente indicadono grafo, considera-se que o seu peso é 1

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 84 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Marcação de uma RdP

    Uma marcação é uma atribuição de fichas a lugaresPode ser representada por um vetor cujo tamanho é o númerode lugares na rede: o iésimo componente do vetor representa onúmero de fichas contidas no lugar liDenotamos por m(l) o número de fichas em um lugar l ∈ L

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 85 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Evolução da marcação de uma RdP

    A evolução dinâmica da marcação de uma RdP é governadapela ocorrência (disparos) de transições que consomem eproduzem fichasRegras de habilitação e disparo estão associadas às transições

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 86 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Habilitação de uma transição em uma RdP

    HabilitaçãoUm transição t está habilitada na marcação m se e somente se:

    ∀l ∈ •t, m(l) ≥ P (〈l, t〉)

    onde •t = {u | 〈u, t〉 ∈ A}.Em outras palavras, •t é o conjunto de todos os lugares deentrada de t.

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 87 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Disparo de uma transição em uma RdP

    DisparoO disparo de uma transição t, habilitada na marcação m,produz um marcação m′ tal que

    m′ = m+O(t)− I(t) ,

    em queI(t) = (P (〈l1, t〉), P (〈l2, t〉), . . . , P (〈lL, t〉)) eO(t) = (P (〈t, l1〉), P (〈t, l2〉), . . . , P (〈t, lL〉))

    Essa declaração é normalmente indicada de forma compactacomo m[t〉m′ e podemos dizer que m′ é diretamentealcançável a partir de m

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 88 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo de RdP: Processos Produtor-Consumidor

    produção

    produzir

    envio

    repositóriode itens

    preencher remover

    recebimento

    consumir

    consumoespaçoslivres

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 89 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo de RdP: Processos Produtor-Consumidor

    O produtor só produz um item por vez, ao passo que oconsumidor só consome um item por vezO produtor só pode enviar um item produzido a umconsumidor quando há espaço para armazená-lo, ou seja,quando há ao menos uma ficha em l4O consumidor só pode consumir um item após a sua remoçãodo repositório (transição tc). Essa remoção só pode ocorrerquando há itens produzidos e ainda não consumidos, ou seja,quando há ao menos uma ficha em l3Sendo assim, uma ficha que sai de l4 com o disparo de tb entraem l3Do mesmo modo, uma ficha que sai de l3 com o disparo de tcentra em l4

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 90 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Marcações alcançáveis da rede do exemplo1 0 0 2 0 1 1 0 0 2 1 0

    0 1 0 2 0 1

    1 0 1 1 0 1

    0 1 0 2 1 0

    0 1 1 1 0 1

    1 0 1 1 1 0

    1 0 2 0 0 1

    0 1 1 1 1 0

    1 0 2 0 1 0

    0 1 2 0 0 1 0 1 2 0 1 0

    tc

    tc

    tc

    tc

    td

    td

    td

    td

    td

    td

    ta

    tb

    ta

    tb

    ta

    ta

    tb

    ta

    tb

    ta

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 91 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Sobre as marcações de uma RdP

    Cada uma das marcações possíveis da rede representa umpossível estado do sistema modeladoA partir dos estados e da estrutura da rede, é possível verificarpropriedades do sistema. Exemplos:

    Se existe uma transição que não é habilitada por nenhumamarcação da rede, então essa transição é morta (ou seja, elanunca será disparada) ⇒ isso pode indicar um erro no projetodo sistemaPode-se querer saber se o sistema pode atingir umdeterminado estado indesejado. Para isso, identifica-se qual éa marcação da RdP que representa esse estado e caso essamarcação esteja entre as alcançáveis da rede, então estaráconfirmado que o estado indesejado pode ocorrer no sistema

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 92 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Sequência ou PipelineQuando duas atividade devem ser executadas sequencialmente, ouquando uma produz dados que são usados pela outra, então háuma interdependência entre elas

    Em RdPs, isso pode ser modelado conectando as duasatividades (transições) por meio de um lugar

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 93 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Paralelismo ou distribuição de dados

    Modelado por uma atividade (transição) que, quandodisparada, inclui uma ficha em cada um dos lugares de entradadas transições que representam as atividades que serãoexecutadas paralelamente ou que processarão os dadosdistribuídos

    Sincronização ou agregação de dados

    É modelada por uma atividade que tem como lugar de entradaos lugares de saída que indicam quando as atividades a seremsincronizadas já foram concluídas ou quando os dados a seremagregados já estão disponíveis para processamento

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 94 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Paralelismo e sincronização / Distribuição e agregação de dados

    Atividade deParalelização /

    Distribuição

    Atividade deSincronização /

    Agregação

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 95 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Escolha exclusiva

    Pode ser representada como um conjunto de atividades(transições) compartilhando um único lugar de entradaHá variações possíveis nessa representação

    Exemplo: a escolha pode depender de uma regra que pode sermodelada como uma atividade “gerencial”, que quandodisparada coloca uma ficha no lugar de entrada da atividadeescolhida para execução

    Junção simples

    É modelada por um conjunto de atividades (transições)alimentando um mesmo lugar de saída

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 96 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPsEscolha exclusiva e junção simples

    Escolhaexclusiva

    Junçãosimples

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 97 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Escolha exclusiva baseada em regras e junção simples

    Escolha exclusiva

    Atividades gerenciaisJunção simples

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 98 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Mapeamento das estruturas básicas de workflows para RdPs

    Ciclos

    Geralmente são modelados com o auxílio de escolhasexclusivas e junções simples

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 99 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    O workflow científico SIPHT modelado em RdP

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 100 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Brevíssima introdução às Álgebras de Processos

    Nas álgebras de processos (APs) os processos sãorepresentados algebricamente, na forma de termosUma AP é composta por um conjunto de símbolos de ações,um conjunto de operadores e um conjunto de axiomasdescrevendo as propriedades dos operadoresO conjunto de axiomas (= leis equacionais) pode tambémespecificar quando dois processos são consideradosequivalentesEsse arcabouço algébrico possibilita o raciocínio formal sobrepropriedades estruturais e comportamentais de ummodelo de sistema concorrente

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 101 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    APs – Origens

    As bases das álgebras de processos foram desenvolvidas,independentemente, por Milner e Hoare (no anos 70)As APs são parcialmente enraizadas nas Redes de Petri, naTeoria de Autômatos e nas linguagens formaisMilner desenvolveu a álgebra de processos Calculus ofCommunicating Systems (CCS), enquanto Hoare definiu aCommunicating Sequential Processes(CSP)Outras álgebras de processos bem difundidas são a Languageof Temporal Ordering Specification (LOTOS), a Algebraof Communicating Processes (ACP) e a π-Calculus

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 102 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Assinatura de uma AP básica

    Geralmente consiste em:

    um conjunto finito e não vazio A de ações atômicas,representando comportamentos indivisíveisum operador binário “+”, chamado de composiçãoalternativaSe os termos fechados t1 e t2 representam os processos p1 ep2, respectivamente, então o termo fechado t1 + t2 representao processo que executa p1 ou p2um operador binário “.”, chamado de composição sequencialSe os termos fechados t1 e t2 representam os processos p1 ep2, respectivamente, então o termo fechado t1.t2 representa oprocesso que executa primeiro p1 e depois p2

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 103 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Outros operadores das APs

    Para modelar cenários que envolvem paralelismo,comunicação e iterações, as álgebras de processosgeralmente possuem, além dos operadores básicos,mecanismos para expressar comportamentos mais avançadosPor exemplo, na Algebra of Communicating Processes (ACP)existe:

    o operador binário “||”, chamado de entrelaçamento, paraexpressar paralelismoequações recursivas, para representação de ciclos finitos ouinfinitos

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 104 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Exemplo: Workflow para o atendimento de reclamações(modelado com rede de Petri e ACP)

    avaliação

    P = registra . (contata_cliente || contata_depto) . coleta_dados .((avaliacao_positiva . reembolsa) +(avaliacao_negativa . envia_msg)) . arquiva

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 105 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Modelos formais de workflows

    Podem ser analisados sob duas perspectivas: qualitativa equantitativa

    Análise qualitativaPrincipais representantes: a validação e a verificação

    A validação avalia se o sistema se comporta como o esperadoA verificação avalia se o sistema respeita alguns critériosestruturaisÉ possível, por exemplo, verificar se dois modelos de workflowssão equivalentes, ou ainda se um dado workflow possui pontosde impasse (deadlocks)

    Kelly R. Braghetto e Daniel Cordeiro Jornadas de Atualização em Informática 2014 106 / 190

  • Introdução à Modelagem e Execução de Workflows Científicos

    Modelagem de Workflows Científicos

    Arcabouços formais de modelagem

    Modelos formais de workflows

    Podem ser analisados sob duas perspectivas: qualitativa equantitativa

    Análise quantitativaPrincipal representante: a análise de desempenho

    Feita a partir de modelos estocásticos (como os baseados emcadeias de Markov)Prediz tempo de resposta do sistemaObtém a probabilidade de execução de uma dada sequência