36
Process Mashups Toward Process Mashups: Key Ingredients and Open Research Challenges Autores: Florian Daniel, Agnes Koschmider, Tobias Nestler, Marcus Roy, Abdallah Namoun. SOA - Leonardo Azevedo Antonio Pimenta

Process Mashups

Embed Size (px)

DESCRIPTION

Apresentação da análise feita sobre artigo: "Toward Process Mashups". Disciplica de SOA 2014 do mestrado em informática da UNIRIO.

Citation preview

Page 1: Process Mashups

Process MashupsToward Process Mashups: Key Ingredients and Open Research Challenges

Autores: Florian Daniel, Agnes Koschmider, Tobias Nestler, Marcus Roy, Abdallah Namoun.

SOA - Leonardo Azevedo

Antonio Pimenta

Page 2: Process Mashups

Sumário● Aplicações Situacionais● O que Mashup● Processos de negócio● Process Mashup● Modelo Tridimensional● Tipos de mashups● Conclusão

Page 3: Process Mashups

Aplicações situacionais● O termo Mashup está contido no contexto

das aplicações denominadas “situacionais”.● Aplicações desenvolvidas por usuários finais

para resolver problemas do dia-a-dia de caráter emergencial.

● Difícil desenvolvê-las em tempo hábil utilizando os processos tradicionais.○ Planilha para gerenciar um seminário, uma

calculadora de horas extras, sistema de marcação de férias. 1

Page 4: Process Mashups

O que é mashup?● Ideologia Web 2.0, prega a interação e

colaboração entre usuários, e princípio da web como plataforma.

● Técnica que combina dados corporativos heterogêneos e apps de múltiplas fontes para criar rapidamente uma nova aplicação com experiência mais completa e integrada.

● Uma mistura de dados internos com aplicações com dados de origem externa.

2

Page 5: Process Mashups

Mashups● O desenvolvimento de mashups é mais fácil

e flexível do que os métodos tradicionais.● Utilizam modelos de desenvolvimento de

baixa maturidade e são construídos de maneira artesanal.

● Geralmente são compostos de uma única página e não permitem multiplos usuários.

3

Page 6: Process Mashups

Mashups● Ferramentas como o Yahoo! Pipes permitem

que usuários pouco experientes criem aplicações web simples compostas por partes de outras páginas da web e dados de outros serviços da web.

4

Page 7: Process Mashups

5

Page 8: Process Mashups

Processo de negócio● Um processo de negócio é um conjunto de

atividades que pode ser representado em linguagem visual.

● Um workflow é uma parte executável de um processo. Ele é composto de atividades principais e tarefas que precisam ser gerenciadas por usuários de papeis diferentes.

● Um workflow associa tarefas a usuários e os guia através das tarefas. 6

Page 9: Process Mashups

Processos de negócio com mashups● Seria interessante utilizar toda essa

simplicidade e flexibilidade para permitir que usuários da área de processos de negócio pudessem criar mashups para automatizar suas tarefas.

● Estas aplicações são os Process Mashups.● Aplicação capaz de representar um

processo de negócio como um todo ou uma parte dele.

7

Page 10: Process Mashups

Process Mashups● Porém, um simples mashup como o

mostrado não é suficiente para caracterizar um process mashup.

● Um process mashup deve permitir acesso de usuários de papeis diferentes, dar suporte a navegação entre múltiplas páginas conectadas e também dar suporte a criação de fluxos de tarefas.

8

Page 11: Process Mashups

Modelo tridimensional● Os autores criaram “modelo tridimensional”

onde classificam os tipos de mashups existentes.

● Cada eixo do modelo representa uma característica do process mashup.

● Múltiplos usuários, múltiplas páginas e suporte a workflow.

9

Page 12: Process Mashups

10

Page 13: Process Mashups

Múltiplos usuários● Em processos de negócio as tarefas são

associadas a usuários ou a papeis.● Por isso, um process mashup deve permitir

diferentes usuários operando concorrentemente uma mesma instancia.

● Isso envolve controle de acesso. Onde apenas usuários do sistema podem ter acesso ao conteúdo.

● E acesso baseado em papeis. Cada papel enxerga apenas o que precisa em cada tela.11

Page 14: Process Mashups

Múltiplas páginas● Em processos de negócio, geralmente, cada

tarefa representa uma página no sistema.● Por isso, process mashups deve ser capaz

de organizar e integrar páginas em uma hierarquia permitindo acesso via links.

● E também deve ser capaz de guardar o estado de cada página navegada.

12

Page 15: Process Mashups

Suporte a workflow● Workflows são essenciais para o

mapeamento das tarefas de um processo de negócio.

● Criação de fluxos de tarefas e o controle desses fluxos de maneira fácil.

● Definição de sequências, branchs e execução condicional.

● Deve permitir que os dados possam trafegar entre as tarefas.

13

Page 16: Process Mashups

Os tipos de mashup● Para caracterizar cada tipo de mashup

básico, os autores utilizam como exemplo uma aplicação para marcação de férias.

● Além disso, eles apresentam as ferramentas existentes capazes de criar mashups de cada tipo.

14

Page 17: Process Mashups

Simple Mashups

● É o caso mais comum e mais estudado.● Seguindo o exemplo, com ele é possível

criar uma página que mostre uma visão integrada de todas as solicitações de férias dos empregados da empresa.

15

Page 18: Process Mashups

Simple Mashups● Yahoo! Pipes e MashArt Editor.

16

Page 19: Process Mashups

Multi Page Mashups

● Multiplas páginas que trocam dados.● Poderia mostrar uma lista com todas as

solicitações de férias em uma página e ao clicar em uma das linha uma nova página é aberta detalhando a solicitação. 17

Page 20: Process Mashups

Multi Page Mashups● FAST, editor visual que permite a conexão

de gadgets que tem dados de entrada e saída.

18

Page 21: Process Mashups

Guided Mashups

● É capaz de guiar o usuário através de suas tarefas. Depois de uma entrada do usuário, o mashup oferece a próxima tarefa.

19

Page 22: Process Mashups

Guided Mashups● O empregado digita o nome.● O sistema verifica se ele tem direito a férias.● Em caso positivo o empregado pode

selecionar o tipo de férias que quer tirar.● Depois disso o empregado pode selecionar

em um calendário o período das férias.● Se não existir conflito com o período de

nenhum outro empregado o botão “Marcar férias” aparece.

20

Page 23: Process Mashups

Page Flow Mashups

● As aplicações são desenhadas como um conjunto de páginas conectadas através de um fluxo de navegação que simula o fluxo entre as tarefas do processo de negócio.

21

Page 24: Process Mashups

Page Flow Mashups● Provê uma página onde o gerente consegue

ver uma lista de todas as solicitações de férias dos funcionários.

● Também é oferecida uma outra página que detalha as solicitações de férias do departamento do funcionário, para ajuda-lo a tomar a decisão.

● ServFace Builder, permite que não-programadores criem as páginas e o fluxo entre elas. 22

Page 25: Process Mashups

Shared Page Mashup

● Vários usuários interagindo em uma mesma página.

● Uma página de venda de algum produto onde os usuários podem trocar informações através de um chat. 23

Page 26: Process Mashups

Shared Space Mashup

● Permite que os usuários compartilhem um mesmo espaço de trabalho.

● O empregado pode criar a requisição de férias, enviar para o gestor, que pode aprovar ou ajustar o período e devolver para o empregador. 24

Page 27: Process Mashups

Shared Space Mashup● O IBM Mashup Center uma ferramenta que

mostra rapidamente informações consolidadas em uma única visão.

25

Page 28: Process Mashups

Cooperative Mashups

● Os empregados podem acessar ao mesmo tempo a lista de solicitações de férias e resolver, caso exista, conflitos com as férias de outro funcionário do mesmo departamento.

26

Page 29: Process Mashups

Cooperative Mashups● O Gravity é um editor visual que permite a

criação de fluxos do processo de negócio com suporte a multiplos usuários.

27

Page 30: Process Mashups

Process Mashups

● Um mashup com uma mistura de páginas que permitam ao funcionário pesquisar o dia que tem o voo mais barato, o hotel disponível e sem conflito com outro funcionário.

● Essa combinação gera uma requisição para o gerente aprovar ou não. 28

Page 31: Process Mashups

Process Mashups● MarcoFlow é uma plataforma baseada no

conceito de orquestração distribuída de interfaces que se aproxima do que é necessário para produzir Process Mashups.

● Na mesma plataforma está disponível a ferramenta de design, implantação e execução.

29

Page 32: Process Mashups

Eclipse BPEL

30

Page 33: Process Mashups

Conclusões● O ponto chave do desenvolvimento de

mashups é encontrar a plataforma mais adequada.

● Uma plataforma mashup é um ambiente de composição e de execução de aplicações que deve abranger todas as três camadas de um software (dados, lógica e interface).

● Deve ser fácil de usar e focada nos usuários finais (sem habilidades de programação).

31

Page 34: Process Mashups

Conclusões● Porém uma ferramenta ideal não existe.● Porque é difícil encontrar o equilíbrio entre o

número de funcionalidades que a plataforma oferece e a facilidade de ser usada por não-programadores.

● Saber escolher a que mais se enquadra nas necessidades.

32

Page 35: Process Mashups

Conclusões● Os autores acreditam que os process

mashups não vão substituir os sistemas gerenciadores de processos.

● Pelo contrário, eles vão incrementar suas capacidades e criar novas oportunidades pelo adoção dos mashups no ambiente empresarial.

33

Page 36: Process Mashups

Obrigado.

?