Construindo aplicações com Windows Workflow Foundation

26
APLICAÇÕES BASEADAS EM FLUXO COM WINDOWS WORKFLOW FOUNDATION Com Fred Policarpo

description

Como e por que construir aplicações usando o Windows Workflow Foundation

Transcript of Construindo aplicações com Windows Workflow Foundation

Page 1: Construindo aplicações com Windows Workflow Foundation

APLICAÇÕES BASEADAS EM FLUXO COM WINDOWS WORKFLOW FOUNDATION

Com Fred Policarpo

Page 2: Construindo aplicações com Windows Workflow Foundation

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

Page 3: Construindo aplicações com Windows Workflow Foundation

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

Page 4: Construindo aplicações com Windows Workflow Foundation

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.

Page 5: Construindo aplicações com Windows Workflow Foundation

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 definidode regras para que possam ser realizados.

Aplicações baseadas em fluxo oferecem uma forma intuitiva de se automatizar esses processos.

Page 6: Construindo aplicações com Windows Workflow Foundation

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

Page 7: Construindo aplicações com Windows Workflow Foundation

APLICAÇÕES BASEADAS EM FLUXOEXEMPLO: SUBMISSÃO DE PROJETOS

Page 8: Construindo aplicações com Windows Workflow Foundation

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

Page 9: Construindo aplicações com Windows Workflow Foundation

APLICAÇÕES BASEADAS EM FLUXOEXEMPLO: SUBMISSÃO DE PROJETOS

Page 10: Construindo aplicações com Windows Workflow Foundation

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

Page 11: Construindo aplicações com Windows Workflow Foundation

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

Page 12: Construindo aplicações com Windows Workflow Foundation

WINDOWS WORKFLOW FOUNDATIONARQUITETURA

Page 13: Construindo aplicações com Windows Workflow Foundation

FLUXO DE SUBMISSÃO DE PROJETOS USANDO WF

Definindo os Objetos de Negócio (Linq To Sql)

Page 14: Construindo aplicações com Windows Workflow Foundation

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

Page 15: Construindo aplicações com Windows Workflow Foundation

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)

Page 16: Construindo aplicações com Windows Workflow Foundation

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

Page 17: Construindo aplicações com Windows Workflow Foundation

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ávelEmbarcar o Workflow Designer na sua

aplicação Escrever fluxos para o SharePoint 2007

Page 18: Construindo aplicações com Windows Workflow Foundation

CASOS REAIS

Projeto FPw Workflow LG Sistemas / Fibonacci – Soluções Ágeis

Page 19: Construindo aplicações com Windows Workflow Foundation

WINDOWS WORKFLOW FOUNDATIONCASE: FPW WORKFLOW

Produto da LG Sistemas Desenvolvido pela Fibonacci – Soluções Ágeis

Clientes VALE do Rio Doce Rede Globo Unibanco

Page 20: Construindo aplicações com Windows Workflow Foundation

WINDOWS WORKFLOW FOUNDATIONCASE: FPW WORKFLOW

Page 21: Construindo aplicações com Windows Workflow Foundation

WINDOWS WORKFLOW FOUNDATIONCASE: FPW WORKFLOW

Page 22: Construindo aplicações com Windows Workflow Foundation

WINDOWS WORKFLOW FOUNDATIONCASE: FPW WORKFLOW

Page 23: Construindo aplicações com Windows Workflow Foundation

WINDOWS WORKFLOW FOUNDATIONCASE: FPW WORKFLOW

Page 24: Construindo aplicações com Windows Workflow Foundation

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)

Page 25: Construindo aplicações com Windows Workflow Foundation

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

Page 26: Construindo aplicações com Windows Workflow Foundation

Dúvidas ??