35
Abril Abril 05 05 Eugénio Eugénio Oliveira Oliveira Workflow Workflow Inter Inter- Organizações Organizações Modelação Modelação e e Verificação Verificação de de Fluxos Fluxos-de de-Trabalho Trabalho Inter Inter-Organizações Organizações Abril Abril 05 05 Eugénio Eugénio Oliveira Oliveira Workflow Workflow Inter Inter- Organizações Organizações 1-Introdução aos “Workflows” a) O que são? b) Para que servem? c) “Workflow” inter-Organizações d) Tipos de “Workflow” 2- “Workflow” e Organizações a) Modelação b) Do UML ao XML c) Perspectivas sobre “Workflow” Inter- Organizações d) Redes de Petri e) Verificação de Workflows” Inter-Organizações

Workflow Inter-Organizaçõeseol/TNE/www/WFInterOrg2ppt.pdf3 Abril 05 Eugénio Oliveira Workflow Inter-Organizacional 1. WF 1a. O que é? • WF descreve como estão estruturadas as

  • Upload
    lamlien

  • View
    224

  • Download
    0

Embed Size (px)

Citation preview

1

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

WorkflowWorkflow InterInter--OrganizaçõesOrganizações

ModelaçãoModelação e e Verificação Verificação de de FluxosFluxos--dede--TrabalhoTrabalhoInterInter--OrganizaçõesOrganizações

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

WorkflowWorkflow InterInter--OrganizaçõesOrganizações1-Introdução aos “Workflows”

a) O que são?b) Para que servem?c) “Workflow” inter-Organizaçõesd) Tipos de “Workflow”

2- “Workflow” e Organizaçõesa) Modelaçãob) Do UML ao XMLc) Perspectivas sobre “Workflow” Inter-Organizaçõesd) Redes de Petrie) Verificação de Workflows” Inter-Organizações

2

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

WorkflowWorkflow InterInter--OrganizaçõesOrganizaçõesE-Business e Interoperabilidade

n Interoperabilidade a Nível do NegócioEmpresas Virtuaiscompatibilidades Legal e Organizacional

n Interoperabilidade a Nível de Processosinteroperabilidade das actividades

n Interoperabilidade a nível do Sistemasemântica da interoperabilidade

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1a. O 1a. O queque é?é?

• Workflow = “Fluxo de Trabalho” (WF)

• WF permite especificação, modelação e controlo das operações

• Novos WFs refletindo a Inter-operabilidade em ambientes de trabalho inter-Organizações

• Negócio através do Comércio Electrónico pode ser Modelado por WF

• Negócio B2B (e Empresas Virtuais) implicam WF global

3

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1a. O 1a. O queque é?é?

• WF descreve como estão estruturadas as tarefas, quem as executa, Qual a sua ordem relativa, como se sincronizam entre si.

• O Workflow inclui o fluxo de Informação de suporte às actividades

• Workflow Management Coalition Workflow: WF automatiza um processo de negócio, onde documentos, informação ou tarefas são passadas entreos diversos participantes, de acordo com um conjunto de regras procedimentais.

• WfMS é um software que cria e gere a execução de um ou vários Fluxos de Trabalho, comunicando e invocando as ferramentas para tal.

• WFs administrativos e WFs de produção

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1b. Para 1b. Para queque serve?serve?

• Comércio Electrónico implica vários parceiros:Requerentes, Fornecedores, Distribuidores de itens

(Bens/Produtos/Serviços)

• Todos os processos podem ser modelados por WFsem diferentes Organizações

• Negócio entre diferentes entidades implica troca de mensagens incluindo descrições “normalizadas” de Objectos: (Peças, Facturas, Encomendas, Dinheiro Electrónico...)

4

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Processos locais constituem segmentos discretos do Processo Global

• Integração de toda a cadeia de processamento através da Comunicação entre o que seriam ilhas isoladas. Inter-operabilidade dos WFs

•Ex: Gestão de Cadeia de Fornecimento (“Supply Chain”):

•Actividades desde entrada de encomenda até entrega de produto final

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Participantes: Fornecedores, Grossistas, Retalhistas, Transportadores, Fabricantes, Intermediários, Banqueiros, Clientes...

•Operações básicas em um Fornecedor:1. Planeamento das actividades até fornecer item2. Abastecimento (“sourcing”): encomenda de materiais, escalonamento de entregas, processamento da facturação3. Produção do produto final4. Entregas do produto ao próximo ponto de actividade na cadeia de valorização

5

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Ex. de Cenário de cumprimento de uma Encomenda:

Retalhista encomenda Fabricante escalona_entrega Transportadoraconfirma confirmaencomenda entrega

• Cada partcipante à o seu WF e o seu Motor de WF

• Motor de WF: Programa para gerir encaminhamento e Escalonamento do trabalho orientado à tarefa

• Motor de WF inicia cada trabalho instanciando processos(linha de execução das respectivas actividades)

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Motor do WF:

• activado quando é instanciado um novo workflow; • busca num repositório a descrição do WF;• activa os nós ligados a início para execução; • se nós de escolha, verifica condições e selecciona caminho;• se nó de trabalho então selecciona recursos e atribui trabalho;• vai para a fila de tarefas do recurso;• quando chega a sua vez, o Motor de Wf retira o trabalho da fila

e executa-o com os recursos;• continua o WF

6

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Motor do WF:

Controla as instâncias de processos:- criação, activação, suspensão, terminaçãao, etc.

- Navegação entre as várias actividades do processo (operações sequenciaisou paralelas, restrições de “deadlines”, etc.• Entrada e saída dos participantes• Alertas ao utilizador, e uma interface para a a sua intervenção• Manutenção dos dados relativos ao workflow, e encaminhamento destes

entre os vários participantes• Uma interface com capacidade de invocar aplicações externas• Acções de supervisão para controlo e verificação.

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• No Exemplo:•Retalhista completa a actividade de preencher Encomenda• Motor de WF decide a próxima actividade: • Envia Encomenda ao Fabricante

• Mensagem a enviar ao Motor de WF do Fabricante:• Nº Encomenda• Código do Produto• Características (p.ex. Côr)• Nome do Cliente• Endereço de entrega• Data de entrega

7

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Mas para que o Motor de WF do Fabricante inicie as suas Actividades precisa especificar:

• Escalonamento da Produção• Escalonamento da Entrega• Produção• Teste de Qualidade• Facturação

• Fabricante envia mensagens a Transportadora cujo Motorde WF inicia instância sobre agendamento de entrega.

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Dados que a WF da Transportadora necessita:

• Onde carregar; o que carregar;• Data de carregamento; tempo de carga• Valor da carga; Nome do receptor• Endereço de entrega; data de Entrega• Prazo para entrega

• Transportadora escalona a entrega e confirma a data para o motor de WF do Fabricante.• Motor de WF do Fabricante confirma data de entrega ao Retalhista que por sua vez, emite factura ao Cliente

8

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Processo Global e Interoperabilidade de processos:

RETALHISTA FABRICANTE TRANSPORTADORAPreenche EncomendaEnvia ao fabricante preenche encomenda

escalona produçãoescalona entrega agenda entrega

escalona transporteFacturação Cliente confirma entrega confirma entrega

produçãodespacha

Processa factura factura ao RetalhistaConfirma pagamentoEnvia cheque fecha processo

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

•Processos inter-organizacionais são sobretudo do tipo “Encaixados”• Processos intra-organização (implicando confiança mútua) São preferencialmente do tipo “Encadeados”

• Processos do Fabricante e Transportadora estão modeladoscomo sub-processos Encaixados pois enviam informação paraos Motores de WF que os invocam (antecessores)

• Outra classe de WFs inter-operáveis são os sub-processosEncadeados: O Motor de um WF pai inicia o Motor de um WFFilho mas depois desliga do processo.

9

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

•Quais as Informações a serem trocadas• Para cada elemento de informação do WF:

• que direito de acesso (w,r...)• restrições ao domínio (valores min/max, nº modificações...)

• Resultados do WF• Política de Verificação• Política de controlo e de alterações

• Contratos de Inter-operabilidade incluem:

• Que partes dos WFs locais são visíveis e têm interfaceuns com os outros• Quais os protocolos de interacção aceitespara cada WF local:

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Contratos de Inter-operabilidade incluem:

• Conformidade com leis vigentes• Política de Segurança

• autenticação• não repudiação• criptografia

• Protocolo para contemplar excepções

10

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

Modelo de Referência dos Sistemas de Wf proposto pelo WfMCIncluindo as Interfaces

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional1. WF 1. WF 1c. WF Inter1c. WF Inter--OrganizaçõesOrganizações

• Resumo:

•• Negócio Electrónico B2B implica Inter-operabilidade

•• Workflows diversos inter-relacionados

•• Modelos de relacionamento (encaixados, encadeados)

•• Establecimento de Contratos

11

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• Modelação de Organizações

• UML• XML

• Permitem complementar a modelação por WF

• São necessárias extensões ao UML para os aspectos Organizacionais

• Do UML com extensões (modelo visual-gráfico) transita-se para o XML (modelo computável)

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• Modelos de Organizações e Inter-Organizaçõesnecessitam de representar:

• Recursos humanos e não humanos• Colecções de recursos (departamentos, equipas,...)• Disponibilidade de recursos• Relações de herança e de delegação de “papeis” (roles)

• Falta Normalização (WfMC pretende normalizar)

12

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• Perspectivas dos Fluxos de Trabalho (WF) :• WF de processos(encaminhamento e ordenação de tarefas no processo)

• WF da organização(realidades da Organização suporte do processo)

• Tarefa: Unidade atómica de actividade do Processo• Atribuição de tarefas na Organização:

• atribuição baseada em “papeis” (entidades: empregado, chefe)• atribuição a indivíduo ou grupo(s) de indivíduos

Voltaremos a este assunto

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• Recursos são necessários para cumprir tarefasEx: Equipamentos (máquinas, computadores, vídeos)

Espaço (sala de conferências, salas de aulas, salas de reuniões)

• Elementos a incluir em um Modelo de Organização:

• Papeis• Tarefas• Utilizadores• Grupos• Espaço• Equipamento

13

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• Outros aspectos da Organização:• Relação de hierarquia (de papeis)• Relação de delegação:(“papel”-”papel”, utilizador-”papel”, “papel”-utilizador,utilizador-utilizador)

• Restrições Organizacionais:(ligação ou separação de responsabilidades, proibições...)

•Modelos formais de Organizações incluindo alguns requisitos:• UML com extensões (descrição intuitiva)• XML descrição permitindo maior inter-operabilidade• Motores de WF devem analisar descrições XML• Exemplo: XRL/Flower; WOFlan)

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

colletion/department

+ name- description

organization

concrete_collection mixed_collection typed_collection

resource_ nref

-number

resource_type

+name-description

resource

+name-address

availibility

-start_time-end_time -status-reserved_for

has

user

-first_name-last_name-department-e-mail-skill-login _id-phone

non-user

-description-contact-phone

space

-building_number-room_number-description-capacity

machine

-number-contact

role

can_inherit

can_delegaterole

machine_type

space_typespace space_type

user

can_delegate

1

can_delegate

machine machine_type

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF e 2. WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

14

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• Organização como agregação de 3 entidades:

1. Recursos com entidades sub-tipo: • utilizadores • não_utilizadores com entidades sub-tipos:

- máquinas- espaço

2. Tipos_de_recursos (entidades abstractas agrupando recursos concretos):

• papeis• tipos_de_máquinas• tipos_de_espaço

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

3. Colecção (ou departamento) permite a activação de Tarefas requerendo:

conjuntos de utilizadores, máquinas e espaços

• Colecção tem entidade sub-tipos:

• Colecção_concreta (refere recursos específicos):• por ex. Equipas de utilizadores enumerados

• Colecção_tipada (refere tipos de recurso):• Por ex. Comité de elementos com papeis diversos

• Colecção_mista (contém recursos específicos e tipados)

15

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2a. 2a. ModelaçãoModelação

• A entidade recurso_nref permite múltiplos tipos_de_recursos participarem na colecção (como comité)

• A entidade “Disponibilidade” relaciona-se com a entidadeRecurso (tempo disponível de cada recurso)

• Entidade “departamento” relaciona-se com entidade“utilizador” para descrever detalhes do departamento (nomeDirector,...)

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• Traduzir UML para o DTD de XML

Entidade UML ßà Elemento XML

• Usa-se o Elemento “relação” filho de “organização”descrevendo mapeamentos (por ex. de Utilizador para papel à user_role_mapping)

• Herança de papeis (can_inherit)

• Delegação (can_delegate)são também especificadas pelo Elemento relação

16

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• DTD Organizacional implica que o DTD dos processos inclua:

(Task tem dois sub-elementos: event* , resource_binding*)

<ELEMENT task (event*, resource_binding*)<ATTLIST task...function CDATA # IMPLIED...><! ELEMENT resource_binding( ( user_ref|machine_ref|space_ref|role_nref|machine_type_nref|space_type_nref|named_collection_ref|concrete_collection|Typed_collection|mixed_collection)*)>

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• event*conjº de eventos a gerar quando a tarefa se completa

• resource_binding*representa 1 ou mais recursos necessários para completar a tarefa. Cada Tarefa pode ter vários “resource_binding”

• Cada resource_binding refere um conjunto concreto de(resources, resource_types, named_collections, concrete/typed/Mixed collections)

• Recursos (utilizadores, máquinas, espaços),• tipos_de_recursos (papeis,tipos_de_máquinas, tipos_de_espaço),• colecções (equipas pré-definidas),• colecções concretas/tipadas/mistas

(colecções de recursos tipados e/ou não tipados).

17

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• DTD Organizacional

• Elemento raíz: Organização (organization)com 4 sub-elementos:

• recursos (resources)• tipos_de_recursos (resource_types )• colecções (collections)• relações (relations)

• Exemplos para:• Recursos (resources )

• (sub-elementos: utilizadores, máquinas, espaços)• tipos_de_recurso (resource_types)

• (sub-elementos: papeis, tipos_máquina, tipos_espaço)

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

<organization> <resources><user name=“u.m_antónia” first_name=“Maria”

last_name= “Antónia” department=“d.finanças”/><user name=“u.b_gonçalves” first_name=“Branca”

last_name=“Gonçalves” department=“d.marketing”/><user name=“u.e_oliveira” first_name=“Eugénio”/>

last_name=“Oliveira” department=“d.ensino”/><user name=“u.b_boss” first_name=“Big”/>

last_name=“Boss” department=“d.marketing”/><machine name=“m.pc_1” description=“PC_portátil”/><machine name=“m.projector” description=“Projector_1”/><space name=“s.room_010” room_number=“B010” capacity= “40”/><space name=“s.room_020” room_number=“B020” capacity= “80”/>

</resources> <resources_types>... ... ... (próximo quadro)

18

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

</resources> <resources_types><role name=“r.professor_c” description=“Professor Catedrático”/><role name=“r.professor_a” description=“Professor Associado”/><role name=“r.professor_ax” description=“Professor Auxiliar”/><role name=“r.sd_finanças” description=“Sub-director finanças”/><role name=“r.sd_marketing” description=“Sub-director marketing”/><role name=“r.dir_ensino” description=“Director Ensino”/><machine_type name=“mt.pc” description=“Computador pessoal”/><machine_type name=“mt.projector” description=“Projector para PC”/><space_type name=“st.conf_room” description=“Sala de Conferências”/>

</resources_types> </organization>

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• Criação de uma ligação a recursos (elemento resource_binding)que desempenha um papel chave ligando uma tarefa aos recursos requeridos

• Exemplo: Tarefa de admissão pode ser feita por: Catedrático mais Professor Associado OU2 Prof. Associados mais Prof. Aux. OUBig Boss

19

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

<task.name=“admissão”> <resource_binding> <typed_collection><role_nref.name=“r.professor_c”/><role_nref.name=“r.professor_a”/>

</typed_collection></resource_binding> <resource_binding><typed_collection>

<role_nref.name=“r.professor_a”.number=2/><role_nref.name=“r.professor_ax”/>

</typed_collection> </resource_binding> <resource_binding><concrete_collection>

<user_ref.name=“u.b_boss”/></concrete_collection> </resource_binding>

</task>

• porque uma ligação pode requerer múltiplos itens de múltiplos recursosusa-se role_nref, machine_type_nref, space_type_nref em colecções!

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• Modelação de Departamentos e Grupos:

• Modelos como colecções de elementos constituidos por sub-elementos de named_collection• named_collection tem 3 sub-elementos:

- concrete_collection- typed_collection- mixed_collection

20

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• Definição de Grupo Executivo

<named_collection name=“g.executivo” descrição=“Grupo executivo”> <typed_collection><role_nref name=“r.sd_finanças”/><role_nref name=“r.sd_marketing”/><role_nref name=“r.sd_ensino”/>

</typed_collection> </named_collection>

• Agora para ligar recursos (usando resource_binding)já pode usar o Grupo Executivo

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• Agora para ligar recursos (usando resource_binding)já pode usar o Grupo Executivo

<task name=“admitir_executivo”> <resource_binding><named_collection_ref name=“g.executivo”/><machine_type_nref name=“mt.pc”/><machine_type_nref name=“mt.projector”/><space_type_nref name=“st.conf_rooms ”/>

</resource_binding></task>

21

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional22. WF e . WF e OrganizaçõesOrganizações 2b. Do UML 2b. Do UML aoao XMLXML

• Definição de um DTD Organizacional

... ... ...

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

• Fluxos de Trabalho para modelar Sistemas Inter-Organizações

• Fluxos de Trabalho distribuídos por várias Organizações participantes que comunicam entre si.

• Exemplos de domínios de aplicação:• Comércio Electrónico• Empresas Virtuais• Redes de Empresas

• WfMC : Standards para WFs inter-organizações

22

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

• Modelação e Análise de WFs inter-Organizações inclui:

• Partilha de Capacidades: tarefas executáveis por recursos externos mas sob controlo de um gestor de WF

• Execução Encadeada: processo dividido em fases sequênciais; cada parceiro se responsabiliza por uma (ou mais) fases

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

• Modelação e Análise de WFs inter-Organizações inclui:• Sub-contratação:

Um sub-processo é executado por outra organização

• Transferência-de-casos: cada parceiro usa o mesmo processo de WF e casos são transferidos de um para o outro

• Acoplamento Fraco: cada parceiro responsável por uma parte do processo mas comunicando por vezes

23

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

• WF de Pocessos com Acoplamento fraco

• WFs de processos com acoplamento fraco são quase independentes mas sincronizados em certos pontos paraassegurar a execução correcta do processo de negócio

• Verificação da Validade e Consistência de um WF IO• Perspectivas sobre:

Modelos de Execução de Fluxo-de-Trabalho:

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

1- Fluxo de Controlo (processos)2- Recursos (ou Organizações)3- Dados (ou informações)4- Tarefas (ou funções)5- Operações (ou aplicações)

• Perspectiva do Fluxo de Controlo:WF dos processos que especificam quais Tarefas são executadas e por qual ordem

• tarefa: Unidade atómica de trabalho• Casos específicos são instâncias dos WFs

24

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

• Exemplos de casos (pedidos de indeminização de seguros,declaração de impostos, encomenda de produtos,...)

• Na perspectiva Organizacional descrevem-se relações entrepapeis (classes de recursos baseadas em aspectos funcioanis)e Grupos (recursos baseados em aspectos organizacionais)

• Questões Organizacionais: responsabilidades, disponibilidade, autorização,...

• recursos (humanos, máquinas,...) são alocados a papeis e a grupos

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22c) Perspectivas sobre WF Inter-Organizações

• Na perspectiva dos Dados, envolve Dados para controlo(variáveis de encaminhamento,...) e produção (tabelas...)

• Perspectiva das Tarefas descreve as operações realizadaspelos recursos

• Perspectiva Operacional descreve as operações elementares

• Modelação e Verificação dos WFs na perspectiva do Fluxode Controlo para casos isolados

• O sistema de gestão do WF lança aplicações ou seleccionapessoas e monitora resultados. Não controla a execução real

25

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Customer Producer Supplier_1 Supplier_2

start

send_order_a

receive_notification

order_a

receive_order_a

order_b

send_order_b

notification

receive_del_a

receive_ invoice

pay

end

payment

invoice

delivery_a

receive_ del_b

send_order_c

notify

receive_ del_c

delivery_b

send_del_a

send_invoice

receive_payment

receive_order_b

order_ c

produce_b

NOK_b NOK _c

check_b

OK_b OK_c

delivery_c

send_ del_b send_del_c

check_c

produce_c

receive_order_c

Exemplo de WF inter-Organizaçõesexpresso por Redes Petri

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Redes de Petri

• O que é uma Rede de Petri?

• Diagrama em rede composta por quadrados e círculos- Quadrados = Transições- Círculos = Lugares (“places”)

• Transições correspondem a tarefas a serem executadas

• Lugares representam estados do WF (dependências causais; entradas e saídas das Transições)• Setas entre Transições e Lugares especificam relações causais

26

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Redes de Petri

• A qualquer instante um Lugar contém 0 ou mais “tokens”(pontos pretos)

• A distribuição dos “tokens” pelos Lugares reflectem o Estado da rede.

• O número de “tokens” pode mudar durante a execução

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Redes de Petri

• Transições mudam de estado de acordo com as Regras:

• Regra 1: Transição T1 está desinibida sse todos os seusLugares de entrada p contém pelo menos 1 “token”

• Regra 2: Uma Transição desinibida pode ser activada. Se T ficar Activa, então T consome 1 “token” de cada lugar de entrada e produz 1 “token” para cada Lugar p de saída de T

• Assim se conhece o estado interno de um WF

27

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Redes de Petri

• Consideremos um processo Inter-Organizaçõesincluindo Cliente, Produtor, Fornecedor_1, Fornecedor_2

• Diagrama de Sequência de Mensagens (MSC):C P F1 F2

encomenda_a

encomenda_bencomenda_c

notificaçãoentrega_b

entrega_c

entrega_a

facturação

pagamento

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Redes de Petri

• Estruturas no Diagrama de Fluxo de Trabalho (WF):

AND-SPLIT (E-separação) Transição com 2 ou mais Lugares de Saída

AND-JOIN (E-Junção)Transição com 2 ou mais Lugares de Entrada

OR-SPLIT (Ou-Separação)Lugares com múltiplos arcos de Saída

OR-JOIN (Ou-Junção)Lugares com múltiplos arcos de Entrada

• permitem o encaminhamento em:sequência, condicional, paralelo e iterativo

28

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Redes de Petri

• Lugares correspondem a condições (pré ou pós) Tarefas

• Uma Rede de WF (WF-NET) é uma Rede de Petri modelandoos processos de um Fluxo de Trabalho• Tem sempre um lugar “fonte” (e um lugar “poço”) sem arcos

de entrada (saída)• Todos os nós estão em um caminho entre a “fonte” e o “poço”

• Um WF Inter-Organizações é é um conjunto de WFs deprocessos fracamente acoplados

• Com N parceiros, haverá N WFs locais e 1 global consistindonos N locais mais a estrutura de interacção por mensagens

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• Verifica-se se:1. WF Inter-Organizações é Correcto (por ex. sem “deadlocks”)2. WF Inter-Organizações é Consistente (com o MSC)

• O MSC especifica o protocolo das mensagens trocadas sendoos eventos ordenados de acordo com o eixo temporal (vertical)

• Podem especificar-se “Co-regiões” (linhas a tracejado) ondeos eventos não estão ordenados no tempo.

29

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• VERIFICAÇÃO de um WF com 4 alterações no original:

1. Se resultado de teste (check) em F2 fôr Não, EntãoTarefa “entrega_c” (send_del_b) é saltada

2. tarefa Nok_b do F1 tem mais 1 Lugar de Entrada

3. Tarefas “entrega_b” (receive_del_b) e “entrega_c” (send_del_c) do Produtor são executadas em sequênciaem vez de em paralelo

4. Tarefas send_del_a e send_invoice do Produtor sãoexecutadas em paralelo

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Customer Producer Supplier_1 Supplier_2

start_C

send_order_a

receive_notification

order_a

receive_order_a

order_b

send_order_b

notification

receive_del_a

receive_ invoice

pay

end_C

payment

invoice

delivery_a

receive_del_b

send_order_c

notify

delivery_b

receive_del_c

send_invoice

receive_payment

receive_order_b

order_c

produce_b

N O K_b

NOK _c

check_b

OK_b OK_ c

delivery_c

send_del_b send_ del_c

check_c

produce_ c

receive_ order_c

start_P start_S2

send_del_a

end_P

Alteration 3

Alteration 4

start_S1

Alteration 2

end_S1 end_S2

Alteration 1

alteração4

alteração2

alteração3

alteração1

• WF-NETcomalterações

30

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• Prova da CORRECÇÃO do WF-NET (“soundnesse”):

• Uma Rede de Fluxo de Trabalho é correcta sse:- Para qualquer caso, quando o processo terminahá um “token” no Lugar de Saída e todos os outros Lugares estão vazios

• Uma rede de Fluxo de Trabalho Inter-Organizações éLocalmente correcto sse todos os seus WF-NET locais o são

- Por Exemplo WF-NET de F1 não é correcto poisNok_b está morta- Todos os outros WF-Nets são correctos

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• Dado um WF-Net IO, é possível formar uma Rede Estendida juntando uma nova Fonte e um novo Poço

• A Fonte coloca 1 token em cada uma das transições ligadasa cada um dos Lugares de Entrada dos WF-Net locais

• O Poço é ligado a uma transição que consuma 1 token decada lugar de Saída dos WF-Nets locais

• Um WF-Net é globalmente Correcto se a respectiva rede estendida o fôr

• No exemplo, a alteração2 invalida a correcção global

31

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• WF-Net de F2 é localmente Correcta mas a alteração1também invalida a correcção global:

Se Nok_c dipara, há “deadlock” no Produtor

• Alterações 3 e 4 não afectal a Correcção global

• Um WF IO deve ser global e localmente correcto

• Há ferramentas de “Software” para verificação Automática da correcção (WOFLAN)

http://www.win.tue.nl/~woflan/

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• Verificação da CONSISTÊNCIA:

• O WF-NET deve ser consistente com o MSC (Diagrama deSequência de Mensagens) para estar de acordo com asespecificações

• Um WF IO é consistente relativamente a um MSC ssetodas as possíveis sequências no WF-Net satisfazem a ordenação de eventos do MSC.

• Há consistência nos exemplos dados

32

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• Outra técnica de verificação da consistência:Em vez de testar todas as hipóteses, usa-se a noção deLugares implícitos

• Todos os Lugares implícitos (redundantes) contém sempre“tokens” suficientes para permitir o disparo da Transição aque estão ligados.

• Transições são associadas a eventos• MSC especifica ordenação parcial dos eventos• MSC especifica indirectamente ordenação parcial das Transições• Ordenação parcial é expressa em termos de Lugaresligando transições

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 22d) Verificação de WF IO

• Lugares adicionais são implícitos sse o WF IO fôrconsistente com o MSC

• O resultado permite verificar a consitência em tempopolinomial

33

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 2e2e) Exemplo de Motor de Wf

Características do IBMWebSphere MQ Workflow (V3.5)

• Suporte a processos de negócio de longa duração• integração de processos e interacção com utilizadores• conectividade, com interfaces para XML, J2EE, Web Services• integração com o WebSphere Business Integration Modeler and Monitor, Para análise, simulação e monitorização dos processos.

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 2e2e) Exemplo de Motor de Wf

Arquitectura Cliente – Servidor com duas Bases de Dados diferentes(no servidor optimizada para transacções longa duração, BD em te mpo de Execução optimizada para pequenas e frequentes transações)

34

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 2e2e) Exemplo de Motor de Wf

Arquitectura Cliente – Servidor : componentes do servidor

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 2e2e) Exemplo de Motor de Wf

Arquitectura Cliente – Servidor : componentes do lado Cliente

35

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

Workflow InterWorkflow Inter--OrganizacionalOrganizacional2. WF2. WF 2f2f) Bibliografia

Workflow Management Coalition:http://www.wfmc.org/

IBM RedBooks:(http://www.redbooks.ibm.com/)

MQSeries Workflow for Windows NT for Beginners(http://www.redbooks.ibm.com/abstracts/sg245848.html?Open)

Image and Workflow Library: MQSeries WorkflowConcepts, Installation and Administration(http://www.redbooks.ibm.com/abstracts/sg245375.html?Open)

AbrilAbril 0505 EugénioEugénio OliveiraOliveira

FIMFIM