SOA - Leonardo Azevedo 
Process Mashups 
Toward Process Mashups: Key Ingredients and 
Open Research Challenges 
Autores: Florian Daniel, Agnes Koschmider, Tobias Nestler, Marcus Roy, Abdallah Namoun. 
Antonio Pimenta
Sumário 
● Aplicações Situacionais 
● O que Mashup 
● Processos de negócio 
● Process Mashup 
● Modelo Tridimensional 
● Tipos de mashups 
● Conclusão
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
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
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
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
5
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
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
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
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
10
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
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
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
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
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
Simple Mashups 
● Yahoo! Pipes e MashArt Editor. 
16
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
Multi Page Mashups 
● FAST, editor visual que permite a conexão 
de gadgets que tem dados de entrada e 
saída. 
18
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
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 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 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
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
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
Shared Space Mashup 
● O IBM Mashup Center uma ferramenta que 
mostra rapidamente informações 
consolidadas em uma única visão. 
25
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
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
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
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
Eclipse BPEL 
30
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
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
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
Obrigado. 
?

Process Mashups

  • 1.
    SOA - LeonardoAzevedo Process Mashups Toward Process Mashups: Key Ingredients and Open Research Challenges Autores: Florian Daniel, Agnes Koschmider, Tobias Nestler, Marcus Roy, Abdallah Namoun. Antonio Pimenta
  • 2.
    Sumário ● AplicaçõesSituacionais ● O que Mashup ● Processos de negócio ● Process Mashup ● Modelo Tridimensional ● Tipos de mashups ● Conclusão
  • 3.
    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
  • 4.
    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
  • 5.
    Mashups ● Odesenvolvimento 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
  • 6.
    Mashups ● Ferramentascomo 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
  • 7.
  • 8.
    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
  • 9.
    Processos de negóciocom 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
  • 10.
    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
  • 11.
    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
  • 12.
  • 13.
    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
  • 14.
    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
  • 15.
    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
  • 16.
    Os tipos demashup ● 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
  • 17.
    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
  • 18.
    Simple Mashups ●Yahoo! Pipes e MashArt Editor. 16
  • 19.
    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
  • 20.
    Multi Page Mashups ● FAST, editor visual que permite a conexão de gadgets que tem dados de entrada e saída. 18
  • 21.
    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
  • 22.
    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
  • 23.
    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
  • 24.
    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
  • 25.
    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
  • 26.
    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
  • 27.
    Shared Space Mashup ● O IBM Mashup Center uma ferramenta que mostra rapidamente informações consolidadas em uma única visão. 25
  • 28.
    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
  • 29.
    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
  • 30.
    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
  • 31.
    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
  • 32.
  • 33.
    Conclusões ● Oponto 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
  • 34.
    Conclusões ● Porémuma 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
  • 35.
    Conclusões ● Osautores 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
  • 36.