7 | | Além dos módulos básicos, citados anteriormente, o Expresso Livre conta com um módulo de workflow, cuja função principal é prover mecanismos para o desenvolvimento, controle e execução de fluxos de trabalho, conhecidos mais comumente como processos de workflow. Para alcançar este objetivo, o módulo de workflow conta com três interfaces: usuários, administração e monitoramento. Por trás destas interfaces existe um '''motor''', que foi incorporado ao módulo, vindo de um projeto externo, no caso o projeto [http://tikiwiki.org Tikiwiki]. O motor de workflow, batizado de '''[http://workflow.tikiwiki.org/tiki-index.php?page=HomePage Galaxia]''', na verdade, é o núcleo operacional do módulo, e as interfaces são apenas camadas, sobre este motor, para facilitar o acesso às suas funções. |
| 8 | O módulo de Workflow é um ambiente para o desenvolvimento, administração, monitoramento e execução de fluxos de trabalho, mais conhecidos como processos de workflow. Um processo é formado por atividades que devem ser executadas em um ordem pré-definida para alcançar um objetivo. Assim, pode-se ter um processo de 'solicitação de serviços', outro de 'autorização de despesas', e por aí vai, dependendo do que se quer programar no Workflow. |
| 10 | == Quais são os componentes do Workflow? == |
| 11 | |
| 12 | O principal componente do módulo é o 'motor de workflow', que é o núcleo operacional do módulo. O motor controla tudo a respeitos dos processos, como por exemplo: |
| 13 | |
| 14 | * Registra a estrutura (atividades, transições, perfis); |
| 15 | * Controla o acesso às atividades; |
| 16 | * Mantém os dados dos processos; |
| 17 | |
| 18 | Esse motor de workflow foi incorporado ao módulo, vindo do projeto [http://tikiwiki.org Tikiwiki]. O motor é tão importante que possui um nome só para ele: '''[http://workflow.tikiwiki.org/tiki-index.php?page=HomePage Galaxia]'''. |
| 19 | |
| 20 | Por cima do motor existem camadas para facilitar o acesso às suas funcionalidades. As camadas são três: administração, monitoramento e interface dos usuários. A seguir algumas funcionalidades de cada interface: |
| 21 | |
| 22 | === Interface de Administração === |
| 23 | |
| 24 | * Criar processos e versões de processos |
| 25 | * Renomear e deletar atividades |
| 26 | * Definir as atividades dos processos |
| 27 | * Ver um gráfico das atividades do processo |
| 28 | * Checar se o processo é válido |
| 29 | * Ativar/desativar processos |
| 30 | * Editar o código fonte das atividades (php) e templates (atividades interativas) |
| 31 | * Definir perfis e definir quais perfis tem permissão para executar quais atividades |
| 32 | * Mapear perfis a usuários |
| 33 | * Salvar processos (processos são salvos usando XML) |
| 34 | * Carregar processos a partir de arquivos XML |
| 35 | |
| 36 | === Interface de Monitoramento === |
| 37 | |
| 38 | * Listar instâncias ativas e completadas |
| 39 | * Percorrer a lista de instâncias e modificar suas propriedades |
| 40 | * Enviar uma instância para alguma atividade |
| 41 | * Atribuir uma instância para um usuário |
| 42 | * Abortar instâncias |
| 43 | * Ver estatísticas sobre as instâncias |
| 44 | |
| 45 | === Interface do Usuário === |
| 46 | |
| 47 | * Lista os processos e atividades que o usuário pode executar |
| 48 | * Lista as tarefas pendentes que estão atribuidas para o usuário |
| 49 | * Possibilita acompanhar as instâncias iniciadas pelo usuário |
| 50 | * Mostra informações sobre o organograma da organização |
| 51 | ---- |
| 52 | Para que esta introdução fique completa é interessante ler o documento sobre [wiki:WF/IntroducaoaoGalaxia conceitos básicos]. |