Master Data Management & Virtualização de Dados em SOA
Mashups e Modelagem Quantitativa Usando Padrões de Mashup com foco no Gerenciamento de Desempenho
1. Carlos Raniery P. Dos Santos
Mashups e Modelagem Quantitativa Usando
Padrões de Mashup com foco no
Gerenciamento de Desempenho
2. /24
Sumário
• Mashups
• Sistema Desenvolvido
• Mashup Patterns
• Confidencialidade
• Modelagem Quantitativa
• Modelo proposto
• Estudo de Caso
• Conclusões
• Trabalhos publicados
2
3. /24
Mashups
• Definição:
• Aplicação Web criada partir da integração de recursos
e informações disponíveis em fontes heterogêneas na
Internet
• Exemplo: HousingMaps
• Distinção entre Mashups e tecnologias de
composição tradicional (e.g., BPEL):
• Foco no usuário leigo como criador das composições
• Composição de recursos distintos de fontes
heterogêneas
• Reuso como forma de cooperação
3
5. /24
Mashups
• Seguem uma metodologia baseada em três etapas
principais:
• Recuperação
• Transformação
• Apresentação
• Apesar dos mashups poderem ser construídos de forma
ad-hoc, o uso de sistemas de mashup provê vantagens
significativas
• Abstração de detalhes técnicos
• Alta usabilidade
5
10. /24
Mashups – Sistema Desenvolvido
• Operadores de Interação:
• Visual: criação de elementos visuais para expor os
resultados das composições, como mapas e tabelas
• Controle: executar comandos básicos de lógica de
programação, laços e condicionais
• Operação: realizar operações sobre informação. Ex:
operações aritméticas, concatenação de string
• Adaptação: representam os recursos externos, são
criados com base nas metainformações dos wrappers
• Reuso: representam mashups já existentes, que
podem ser reutilizados para criar composições mais
sofisticadas
10
11. /24
• Com o uso de operadores, um desenvolvedor
pode criar mashups para vários cenários. Uma
vez que estes cenários podem compartilhar uma
estrutura semelhante, é conveniente considerar
o uso de Padrões de Mashup
• Permitem o desenvolvimento mais rápido dos
mashups
• Fornecem uma camada adicional de confiabilidade
11
Mashup Patterns
12. /2412
Mashup Patterns
Housing Maps Chicago Crimes
Retrieve data
(houses)
Retrieve data
(crimes)
Display on
Google maps
Display on
Google maps
13. /24
• Alguns exemplos de padrões de mashups:
• Alerter: usuários precisam ser notificados de eventos
ocorridos no ambiente gerenciado
• Importer: clientes e provedores de serviço costumam
manter suas próprias bases de dados, que precisam
estar consistentes
• Transform: ao interagir com diferentes sistemas, é
normal encontrar casos onde os dados precisam ser
processados antes de serem transferidos de um
sistema para outro
• Displayer: para tomar melhores decisões, humanos
usam informações de multiplos sistemas, a qual
normalmente é memorizada ou gravada para uso
futuro
13
Mashup Patterns
14. /24
• Em sistemas de mashup, os dados são protegidos
através de mecanismos de controle de acesso
tradicionais
• Perdido quando os dados são transformados ou compostos
• Information Flow Control (IFC) voltou a ter interesse da
academia
• Foca no controle da propagação de dados sensíveis
• Aplica “labels” nos dados
• Fornece regras de como dados com “labels” podem transitar em
um determinado sistema
• Especificamente, nós modificamos a etapa de
“transformação” para capturar o fluxo de dados
sensíveis
14
Mashups - Confidencialidade
15. /2415
• Nossa solução se concentra em três conceitos:
• Principals: entidades interessadas em segurança
• Tags: mecanismo usado pelos principals para categorizar as
informações
• Labels: conjuntos de tags usados para controlar o fluxo da
informação
• Confidencialidade é representada através do Secrecy
Label (LS)
• Quando os dados fluem de um módulo A para um
módulo B, ela deve satisfazer a regra:
A.LS ⊂ B.LS
Mashups - Confidencialidade
16. /2416
Adaptation Adaptation
Add Tag
{A}
Add Tag
{B}
Merge
(merge)
Remove Tag
{A, B}
Visual
(Maps)
Authority
Database
Data: A
Label:
Data: B
Label:
Data_: A
Label: A
Data: B
Label: B
Data: A, B
Label: A,B
Data: A, B
Label:
Mashups - Confidencialidade
18. /24
Modelagem Quantitativa
• Em ITSM, uma grande parte do trabalho é
realizada por humanos ao invés de máquinas
• Estes humanos apresentam-se como gargalos
no processo devido a natureza imprevisível do
seu comportamento
• Podem trabalhar de formas diferentes a cada vez
• Podem executar processos diferentes
• Podem ser interrompidos por fatores externos
• Problemas no fluxo de trabalho acarretam um
aumento nos custos e diminuição na qualidade
dos serviços oferecidos
18
19. /24
• Focamos em produtividade e assumimos que
problemas no fluxo de trabalho são caracterizados
por partes de um processo que geram uma
produtividade abaixo do ideal
• Tais ineficiências podem surgir fundamentalmente
em diferentes níveis de análise
• Alto nível: devido a complexidade do processo
• Por exemplo, em um processo com muitos pontos de decisão, o
operador precisa gastar tempo tomando a escolha correta
• Baixo nível: devido a interação com as ferramentas
• Por exemplo, uma aplicação Web criada com baixa usabilidade
pode acarretar em tempo gasto pelo operador devido a cliques
no mouse adicionais
19
Modelagem Quantitativa
20. /24
Modelagem Quantitativa
• Podem ser evitadas usando uma nova geração
de ferramentas centradas nos usuários e
capazes de diminuir as ações e a complexidade
encontradas na execução das tarefas
20
Mashups!
21. /24
• Um processo de ITSM foi analiado com o
objetivo de encontrar um conjunto inicial de
ineficiências
• Basic: context-switching, locating data, entering data
• Information management: copy/paste, consistency checks,
information lookups
• Skill-dependent: retaining information, combining information,
data transformation
• Synchronization: contacting a person, becoming aware
• Nós combinamos modelos existentes para
analisar processos:
• Keystroke-Level Model
• Complexity Model
21
Modelagem Quantitativa
22. /24
• Keystroke-Level Model
• Foi proposto para prever o tempo gasto por usuários
experientes em executar uma determinada tarefa dada
uma ferramenta de software
22
Modelagem Quantitativa
Gesture Time
K Keying 0.2 sec
B Holding/Releasing key 0.1 sec
P Pointing 1.1 sec
H Homing 0.4 sec
M Mentally Preparing 1.35 sec
23. /24
• Modelo de Complexidade
• Diversas métricas são propostas para avaliar aspectos
tais como:
• Execução, memória e decisão
• A relação entre tempo e métricas de complexidade é
dada por uma regressão linear múltipla
23
Modelagem Quantitativa
25. /24
• Dispatch Process for Service Management
• Este processo envolve muitas ferramentas, informações e
decisões tomadas por dispatchers com o objetivo de atribuir
tickets para administradores
• Não há uma receita comum para os dispatchers realizarem suas
funções. A forma como cada um opera pode mudar por razões
tais como:
• Requisitos dos clientes;
• Conhecimentos do time;
• Experiência do dispatcher;
25
Modelagem Quantitativa
27. /2427
Modelagem Quantitativa
• Todos os padrões apresentados podem ser
utilizados para criar um mashup voltado para o
cenário apresentado e assim, aumentar o
desempenho na distribuição dos tickets através
da:
• Automação de algumas tarefas
• Implementação do conceito “single pane of glass”
31. /24
Conclusões
31
• A combinação de modelos existentes possibilita
a análise quantitativa de diferentes níveis de
ineficiências com uma ótima precisão na
previsão
• Como solução para estas ineficiências
empregou-se o conceito de mashup patterns
• Os ganhos em produtividade, usabilidade e
agilidade obtidos com o uso de mashups
demonstra sua viabilidade como solução para
aprimorar não só processos de ITSM, mas
gerenciamento de redes e outras áreas
32. /24
Trabalhos Publicados
• BEZERRA, R. S. ; SANTOS, Carlos Raniery Paula dos ; Leandro Márcio Bertholdo ;
Lisandro Zambenedetti Granville ; Liane Margarida Rockenbach Tarouco . Um
Sistema de Gerenciamento de Redes Baseado em Mashups. In: Simpósio
Brasileiro de Redes de Computadores e Sistemas Distribuídos, 2009, Recife.
• BEZERRA, R. S. ; SANTOS, Carlos Raniery Paula dos ; Leandro Márcio Bertholdo ;
Lisandro Zambenedetti Granville ; Liane Margarida Rockenbach Tarouco . Um
Sistema de Gerenciamento de Redes Baseado em Mashups. Revista Brasileira de
Redes de Computadores e Sistemas Distribuídos (RESD), v. 2, p. 1-15, 2009.
• BEZERRA, R. S. ; SANTOS, Carlos Raniery Paula dos ; Lisandro Zambenedetti
Granville ; Liane Margarida Rockenbach Tarouco . On the Feasibility of Web 2.0
Technologies for Network Management: A Mashup-Based Approach. In: 12th
IEEE/IFIP Network Operations & Management Symposium (NOMS), 19-23 April 2010,
Osaka, Japan, ISBN: 978-1-4244-5366-5, pp. 487-494
• Carlos Raniery Paula dos Santos, Rafael Santos Bezerra, João Marcelo Ceron,
Lisandro Zambenedetti Granville, Liane Margarida Rockenbach Tarouco. Botnet
Master Detection Using a Mashup-based Approach. In: 6th IEEE International
Conference on Network and Service Management (CNSM), 25-29 October 2010,
Niagara Falls, Canada
32
33. /24
Trabalhos Publicados
• Carlos Raniery Paula dos Santos, Rafael Santos Bezerra, João Marcelo Ceron,
Lisandro Zambenedetti Granville, Liane Margarida Rockenbach Tarouco. On Using
Mashups for Composing Network Management Applications. IEEE
Communications Magazine, Vol. 48, Issue 12, December 2010, ISSN: 0163-6804, pp.
112-122
• Carlos Raniery Paula dos Santos, Winnie Cheng, Rafael Santos Bezerra, Lisandro
Zambenedetti Granville, Nikos Anerousis. A Data Confidentiality Architecture for
Developing Management Mashups. In: 12th IFIP/IEEE International Symposium on
Integrated Network Management, 23-27 May 2011, Dublin, Ireland
• Carlos Raniery Paula dos Santos, Winnie Cheng, Lisandro Zambenedetti Granville,
Nikos Anerousis, Larisa Shwartz. Performance Management and Quantitative
Modeling of IT Service Processes Using Mashup Patterns. CNSM 2011
• Carlos Raniery Paula dos Santos, Rafael Santos Bezerra, João Marcelo Ceron,
Lisandro Zambenedetti Granville, Liane Margarida Rockenbach Tarouco. Identifying
Botnet Communications Using a Mashup-based Approach. LANOMS 2011
33