DAS – 5316 Sistemas Colaborativos & Workflow FERRAMENTAS Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SISTEMAS COLABORATIVOS SISTEMAS COLABORATIVOS: -Sistemas/Softwares feitos para ajudar pessoas envolvidas em uma tarefa comum, para se atingir um determinado objetivo. - É a base para o CSCW (Computer-Supported Collaborative Work). - Modelos ASP-Like vs Modelos On-Site. - No modelo ASP-Like, as aplicações ficam em um servidor, disponibilizadas via HTTP. Isso facilita na hora de updates de software. - Soluções ASP-Like normalmente mais baratas! * DESVANTAGENS: - Necessidade de uma máquina de grande porte. - Alta dependência da rede (não é possível fazer coisas offline). Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SISTEMAS COLABORATIVOS TRÊS NÍVEIS DE COLABORAÇÃO NO CSCW: 1) Ferramentas de Comunicação Eletrônica: Email, IM, VoiceMail, Pager, Fax, etc... 2) Ferramentas de Conferência Eletrônica: Vídeo conferência, data conference/reuniões eletrônicas (whiteboard, compartilhamento de aplicações e de arquivos para edição, etc.). Ex: Groove Virtual Office, MS LiveMeeting Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SISTEMAS COLABORATIVOS 3) Ferramentas Colaborativas de Gerenciamento: - Sistemas de Groupware (agenda/tarefas/calendários eletrônicos) Ex.: PHPGroupware, EGroupware. - Sistemas de Gerência de Projetos. Ex.: dotProject, PHPCollab. - Sistemas de Gerência de Conteúdo e Conhecimento. Ex.: Blogs, Forum, Wikis, etc. - Sistemas de Controle de Versão. Ex.: CVS, Subversion - Sistemas e Engines de WORKFLOW. Ex.: Shark (open source), Skelta, BizFlow, Quask, etc... Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SISTEMAS COLABORATIVOS WIKIS: - mídia colaborativa, software que permite aos usuários adicionar, remover, editar e gerenciar informações/conteúdo em um Website. -esta facilidade e agilidade de operação e interação torna o wiki uma ferramenta efetiva de colaboração -Exemplos: Wikipedia, tWiki, Social Text. Consultoria Gartner Group diz que o Wiki irá se a ferramenta de colaboração predominante em 50% das organizações até 2009. Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SISTEMAS COLABORATIVOS BLOGS (WEBLOGS): - um tipo de diário online de uma pessoa em particular, que fica aberto a comentários de outros usuários. - como ferramenta colaborativa, pode ser visto como um gerenciador de conteúdo/conhecimento Exemplo: Blogger (Google) e Wordpress.com FLOGS (FOTOLOGS): - compartilhamento de fotos (tipo de exposição), permite catalogar e organizar fotos em grupos/tags. Exemplo: Flickr (Yahoo), PicasaWeb (Google) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SISTEMAS COLABORATIVOS Sistemas de Controle de Versão - Controla os códigos-fonte que podem ser editados simultaneamente por diferentes analistas/desenvolvedores (team-programming) - Ambientes de desenvolvimento possuem ferramentas de controles de versão - Exemplo: CVS e Subversion Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC DEFINIÇÕES WorkFlow (Fluxo de Trabalho): Representação do processo de negócio, que especifica as atividades individuais, a ordem e as condições que as atividades devem ser executadas, as ferramentas a serem utilizadas em cada atividade, etc Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC FERRAMENTA JaWE: MODELAGEM Ferramenta de Definição (Modelagem): JaWE (Java Workflow Editor) - primeiro editor de Workflow Open Source - segue as especificações da WfMC - arquivos são gerados em XPDL (XML Processing Description Language) - executado em qualquer sistema operacional (que tenha a JVM instalada!) Definição de Processo: Está contido no arquivo XPDL gerado pelo JaWe (e será interpretado pela máquina [engine] workflow) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC JaWE (Java Workflow Editor) Exemplo de Processo de Negócio no JaWE Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC FERRAMENTA SHARK: EXECUÇÃO DO WF Execução e Controle: Enhydra Shark Workflow Engine (Open Source) - Totalmente baseado nos padrões da WfMC e OMG; - gerenciamento dos processos do Workflow; -escalonamento e gerência de atividades (worklists). -Utiliza padrão XPDL Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC JaWE MODELAGEM COMPLETA DE UM WORKFLOW UTILIZANDO O JaWE Exemplo Utilizado: “Saque de Conta” (pedido saque é avaliado pelo sist. do banco e é “aceito” ou “negado”) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PACOTE 1.a) Criação de um Pacote (JaWE: Menu File / New): Local onde se encontra(m) o(s) modelo(s) de processo(s) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PACOTE 1.b) ‘Tab’ Package: Criação dos participantes ( Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ) ELEMENTOS DO WORKFLOW: PACOTE 1.c) Criação de Participante, ou variáveis: (JaWE: Clique em e depois em New) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PACOTE 1.d) ‘Tab’ Toolbox: Adicionar novos processos ao pacote Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PROCESSO 2.a) Edição do Processo. JaWE: Na ‘Tab’ Edit, opção Edit (Processos:Conj. de atividades p/ atingir objetivo) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PROCESSO 2.b) Criação de Workflow Relevant Data, ou variáveis: (JaWE: Clique em e depois em New) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PROCESSO 2.c) Seleção de Participantes. JaWE: Na ‘Tab’ Process, opção Participant, escolher quais os participantes participarão do processo (SHOW) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: PROCESSO 2.d) Alocação de Atividades. JaWE: Na ‘Tab’ Toolbox, opções: Start, End e Generic Activity Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW: ATIVIDADES 3.a) Após inserção de atividades (tarefas) e transições: Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW : ATIVIDADES 3.b) Edição de Atividades. JaWE: ‘Tab’ Edit, Properties: (editar propriedade da atividade “checa crédito”) Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW : ATIVIDADES 3.c) A variável STATUS precisa ser atualizada na atividade ‘Checa Crédito’, para S ou N. Para isso crie um “Extended Attribute” com o Name (obrigatóriamente): VariableToProcess_UPDATE e seu value será o nome da variável: STATUS Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC ELEMENTOS DO WORKFLOW : ATIVIDADES 3.d) Atividade ‘Checa Crédito’ irá tomar apenas uma direção, dependendo da variável STATUS. Se ela tiver o valor N, isto é: STATUS = = “N” ela irá para a atividade “Negado” (target activity). Se o valor for S, i.e.: STATUS = = “S” vai para “Aceito”. Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC SITES INTERESSANTES Groupware: - PHPGroupware – http://www.phpgroupware.org - eGroupware – http://www.egroupware.org Gerência de Projetos: - dotProject – http://www.dotproject.net - PHPCollab - http://www.php-collab.org - OpenTeams – http://www.openteams.com Workflow: - Shark Workflow Engine: http://shark.enhydra.org/ - Java Workflow Editor: http://jawe.enhydra.org/ Softwares necessários p/ os softwares de Groupware e Ger. De Projetos (p/ Windows ou Linux): - Apache Web Server: http://httpd.apache.org/ - MySQL (ou PostgreSQL) Database: http://www.mysql.com - PHP: http://www.php.net Sistemas Colaborativos & Workflow / DAS 5316 Ricardo J. Rabelo 2007 © UFSC