SlideShare une entreprise Scribd logo
1  sur  26
Aplicações baseadas em Fluxo com Windows Workflow Foundation Com Fred Policarpo
Sobre o palestrante Fred Policarpo – Frederico Policarpo Martins Bacharel em Ciência da Computação pela UFG (08/2007) Desenvolvedor Fibonacci – Soluções Ágeis MCP   – Microsoft Certified Professional MCTS – Windows Applications MCTS – Windows Workflow Foundation Applications MCTS – Windows Presentation Foundation Applications      http://fredpolicarpo.blogspot.com      http://twitter.com/fredpolicarpo
Agenda Aplicações baseadas em fluxo O que é isso? Por que são importantes? Exemplo Windows Workflow Foundation Arquitetura Implementando o a Aplicação Exemplo Outros Usos Casos Reais WF no .NET 4.0 Conclusões
Aplicações baseadas em fluxoO que são ? São aplicações que podem ser facilmente  visualizadas como uma sequência bem definida  de atividades, e de um conjunto de regras que  direciona o fluxo entre essas atividades.
Aplicações baseadas em fluxoPor que são importantes ? Em ambientes empresariais, por exemplo, existem  uma série de processos que devem ser realizados,  como solicitação de férias e submissão de um  projeto. Esse processos seguem um conjunto bem definido de regras para que possam ser realizados.  Aplicações baseadas em fluxo oferecem uma  forma intuitiva de se automatizar esses  processos.
Aplicações baseadas em fluxoExemplo: Submissão de Projetos Uma empresa é composta por funcionários Funcionários de uma empresa fazem parte de um grupo Cada grupo é subordinado a outro grupo, seguindo a seguinte hierarquia Desenvolvimento -> Gerencia -> Direção -> Presidência Administração -> Direção -> Presidência
Aplicações baseadas em fluxoExemplo: Submissão de Projetos
Aplicações baseadas em fluxoExemplo: Submissão de Projetos Regras Apenas pessoas dos Grupos Desenvolvimento e Administração podem submeter projetos Para submeter um projeto é necessário informar o nome, o prazo, o custo e uma descrição do mesmo Quando um projeto é submetido ele fica pendente para que o superior do funcionário o aprove Caso  projeto seja aprovado ele fica pendente para aprovação da presidência Sempre que houver uma rejeição a pessoa que submeteu o projeto deve ser notificada por email, o mesmo vale para aprovações
Aplicações baseadas em fluxoExemplo: Submissão de Projetos
Windows Workflow FoundationArquitetura Por que usar o WF para construir esse tipo de aplicação ? Ele coordena o fluxo entre atividades Ele realiza a persistência do fluxo Fácil integração com serviços Ele permite uma construção do fluxo através de um designer
Windows Workflow FoundationArquitetura O WF é dividido em três principais partes Runtime: Responsável por conectar os fluxos aos serviços e responsável por disparar a execução das atividades e orquestrar o fluxo. Activities: Representam uma unidade única de execução, representam uma tarefa bem definida a ser executada por um dado fluxo. Services: São conectados ao runtime e proveem uma série de funcionalidades utilitárias para as instâncias que serão executadas Ex: Persistência Tracking Escalonamento Serviços Customizados
Windows Workflow FoundationArquitetura
Fluxo de Submissão de Projetos Usando WF Definindo os Objetos de Negócio (Linq To Sql)
Fluxo de Submissão de Projetos Usando WF Demonstrar os passos para construção do fluxo no Visual Studio 2009 Executar testes de submissão de projetos Gerente, Diretor e Presidente tentam iniciar projeto Desenvolvedor Submete Projeto 1 Diretor visualiza pendências Presidente visualiza pendências Gerente visualiza pendências Administrador Submete Projeto 2 Gerente visualiza pendências Presidente visualiza pendências Diretor visualiza pendências
Fluxo de Submissão de Projetos Usando WF Executar testes de submissão de projetos (Continuação) Desenvolvedor Submete Projeto 3 Gerente visualiza pendências (2 pendências) Gerente aprova projeto 1 Gerente visualiza pendências (1 pendência) Gerente reprova projeto 2 Gerente visualiza pendências (0 pendências) Presidente Visualiza pendências  (1 pendência) Diretor aprova Projeto 2 Diretor visualiza pendências (0 pendências)
Fluxo de Submissão de Projetos Usando WF Executar testes de submissão de projetos (Continuação) Presidente Visualiza pendências  (2 pendências) Presidente Aprova Projeto 1 Presidente Visualiza pendências (1 pendência) Presidente Aprova Projeto 3 Presidente Visualiza pendências (0 pendências) Alterar regra para apenas gerente poder submeter projeto
Windows Workflow FoundationOutros cenários de uso Fluxo de Telas para Camada de Apresentação  MVC Serviços (SOA) baseados em Workflow Integração com WCF  Aplicações com Lógica configurável Embarcar o Workflow Designer na sua aplicação Escrever fluxos para o SharePoint 2007
Casos Reais Projeto FPw Workflow LG Sistemas / Fibonacci – Soluções Ágeis
Windows Workflow FoundationCase: FPw Workflow Produtoda LG Sistemas Desenvolvidopela Fibonacci – SoluçõesÁgeis Clientes VALE do Rio Doce RedeGlobo Unibanco
Windows Workflow FoundationCase: FPw Workflow
Windows Workflow FoundationCase: FPw Workflow
Windows Workflow FoundationCase: FPw Workflow
Windows Workflow FoundationCase: FPw Workflow
Windows Workflow FoundationFuturo: .NET Framework 4.0 Novo Workflow Designer Integração facilitada com WCF Maior simplicidade para se criar atividade customizadas  (Não usar CodeActivity)
Conclusões Workflow é uma forma de modelar um problema do mundo real na forma de um conjunto de atividades gerenciada por um conjunto de regras Existe vários tipos de aplicações que podem ser implementadas na forma de Workflow WF – Fornece um framework que facilita a criação, a manutenção e atualização deste tipo de aplicação. WF 4.0 veio para facilitar ainda mais a construção deste tipo de aplicação
Dúvidas ??

Contenu connexe

Dernier

Dernier (9)

Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 

En vedette

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

En vedette (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

Construindo aplicações com Windows Workflow Foundation

  • 1. Aplicações baseadas em Fluxo com Windows Workflow Foundation Com Fred Policarpo
  • 2. Sobre o palestrante Fred Policarpo – Frederico Policarpo Martins Bacharel em Ciência da Computação pela UFG (08/2007) Desenvolvedor Fibonacci – Soluções Ágeis MCP – Microsoft Certified Professional MCTS – Windows Applications MCTS – Windows Workflow Foundation Applications MCTS – Windows Presentation Foundation Applications http://fredpolicarpo.blogspot.com http://twitter.com/fredpolicarpo
  • 3. Agenda Aplicações baseadas em fluxo O que é isso? Por que são importantes? Exemplo Windows Workflow Foundation Arquitetura Implementando o a Aplicação Exemplo Outros Usos Casos Reais WF no .NET 4.0 Conclusões
  • 4. Aplicações baseadas em fluxoO que são ? São aplicações que podem ser facilmente visualizadas como uma sequência bem definida de atividades, e de um conjunto de regras que direciona o fluxo entre essas atividades.
  • 5. Aplicações baseadas em fluxoPor que são importantes ? Em ambientes empresariais, por exemplo, existem uma série de processos que devem ser realizados, como solicitação de férias e submissão de um projeto. Esse processos seguem um conjunto bem definido de regras para que possam ser realizados. Aplicações baseadas em fluxo oferecem uma forma intuitiva de se automatizar esses processos.
  • 6. Aplicações baseadas em fluxoExemplo: Submissão de Projetos Uma empresa é composta por funcionários Funcionários de uma empresa fazem parte de um grupo Cada grupo é subordinado a outro grupo, seguindo a seguinte hierarquia Desenvolvimento -> Gerencia -> Direção -> Presidência Administração -> Direção -> Presidência
  • 7. Aplicações baseadas em fluxoExemplo: Submissão de Projetos
  • 8. Aplicações baseadas em fluxoExemplo: Submissão de Projetos Regras Apenas pessoas dos Grupos Desenvolvimento e Administração podem submeter projetos Para submeter um projeto é necessário informar o nome, o prazo, o custo e uma descrição do mesmo Quando um projeto é submetido ele fica pendente para que o superior do funcionário o aprove Caso  projeto seja aprovado ele fica pendente para aprovação da presidência Sempre que houver uma rejeição a pessoa que submeteu o projeto deve ser notificada por email, o mesmo vale para aprovações
  • 9. Aplicações baseadas em fluxoExemplo: Submissão de Projetos
  • 10. Windows Workflow FoundationArquitetura Por que usar o WF para construir esse tipo de aplicação ? Ele coordena o fluxo entre atividades Ele realiza a persistência do fluxo Fácil integração com serviços Ele permite uma construção do fluxo através de um designer
  • 11. Windows Workflow FoundationArquitetura O WF é dividido em três principais partes Runtime: Responsável por conectar os fluxos aos serviços e responsável por disparar a execução das atividades e orquestrar o fluxo. Activities: Representam uma unidade única de execução, representam uma tarefa bem definida a ser executada por um dado fluxo. Services: São conectados ao runtime e proveem uma série de funcionalidades utilitárias para as instâncias que serão executadas Ex: Persistência Tracking Escalonamento Serviços Customizados
  • 13. Fluxo de Submissão de Projetos Usando WF Definindo os Objetos de Negócio (Linq To Sql)
  • 14. Fluxo de Submissão de Projetos Usando WF Demonstrar os passos para construção do fluxo no Visual Studio 2009 Executar testes de submissão de projetos Gerente, Diretor e Presidente tentam iniciar projeto Desenvolvedor Submete Projeto 1 Diretor visualiza pendências Presidente visualiza pendências Gerente visualiza pendências Administrador Submete Projeto 2 Gerente visualiza pendências Presidente visualiza pendências Diretor visualiza pendências
  • 15. Fluxo de Submissão de Projetos Usando WF Executar testes de submissão de projetos (Continuação) Desenvolvedor Submete Projeto 3 Gerente visualiza pendências (2 pendências) Gerente aprova projeto 1 Gerente visualiza pendências (1 pendência) Gerente reprova projeto 2 Gerente visualiza pendências (0 pendências) Presidente Visualiza pendências (1 pendência) Diretor aprova Projeto 2 Diretor visualiza pendências (0 pendências)
  • 16. Fluxo de Submissão de Projetos Usando WF Executar testes de submissão de projetos (Continuação) Presidente Visualiza pendências (2 pendências) Presidente Aprova Projeto 1 Presidente Visualiza pendências (1 pendência) Presidente Aprova Projeto 3 Presidente Visualiza pendências (0 pendências) Alterar regra para apenas gerente poder submeter projeto
  • 17. Windows Workflow FoundationOutros cenários de uso Fluxo de Telas para Camada de Apresentação MVC Serviços (SOA) baseados em Workflow Integração com WCF Aplicações com Lógica configurável Embarcar o Workflow Designer na sua aplicação Escrever fluxos para o SharePoint 2007
  • 18. Casos Reais Projeto FPw Workflow LG Sistemas / Fibonacci – Soluções Ágeis
  • 19. Windows Workflow FoundationCase: FPw Workflow Produtoda LG Sistemas Desenvolvidopela Fibonacci – SoluçõesÁgeis Clientes VALE do Rio Doce RedeGlobo Unibanco
  • 24. Windows Workflow FoundationFuturo: .NET Framework 4.0 Novo Workflow Designer Integração facilitada com WCF Maior simplicidade para se criar atividade customizadas (Não usar CodeActivity)
  • 25. Conclusões Workflow é uma forma de modelar um problema do mundo real na forma de um conjunto de atividades gerenciada por um conjunto de regras Existe vários tipos de aplicações que podem ser implementadas na forma de Workflow WF – Fornece um framework que facilita a criação, a manutenção e atualização deste tipo de aplicação. WF 4.0 veio para facilitar ainda mais a construção deste tipo de aplicação