mashups e modelagem quantitativa usando padrões de mashup com foco no gerenciamento de desempenho
TRANSCRIPT
Carlos Raniery P. Dos Santos
Mashups e Modelagem Quantitativa Usando Padrões de Mashup com foco no Gerenciamento de Desempenho
/242
Sumário• Mashups
• Sistema Desenvolvido• Mashup Patterns• Confidencialidade
• Modelagem Quantitativa• Modelo proposto• Estudo de Caso
• Conclusões• Trabalhos publicados
/243
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
/245
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
/246
MashupsBrowser
Browser
asdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdadsasdasdadsasda
asdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdadsasdasdadsasdaSistema
de Mashups
Desenvolvedor
Usuário final Provedores de Conteúdo
/247
MashupRepository
External Resources
Component Tier
Composer
Composition Runner
PublisherComposition Tier
Presentation Tier
Composition Planner
Wrapper Wrapper Wrapper
Runtime Environment
WrapperRepository
AdministratorDeveloper
DevelopmentEnvironment
Mashups – Sistema Desenvolvido
/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 sofisticadas10
/2411
• 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
Mashup Patterns
/2412
Mashup Patterns
Housing Maps Chicago CrimesRetrieve
data (houses)
Retrieve data
(crimes)
Display on Google maps
Display on Google maps
/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
/2414
• 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
Mashups - Confidencialidade
/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
/2416
Adaptation Adaptation
Add Tag{A}
Add Tag{B}
Merge(merge)
Remove Tag
{A, B}
Visual(Maps)
AuthorityDatabase
Data: ALabel:
Data: BLabel:
Data_: ALabel: A
Data: BLabel: B
Data: A, BLabel: A,B
Data: A, BLabel:
Mashups - Confidencialidade
/2418
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
/2419
• 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
Modelagem Quantitativa
/2420
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
Mashups!
/2421
• 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
Modelagem Quantitativa
/2422
• Keystroke-Level Model• Foi proposto para prever o tempo gasto por
usuários experientes em executar uma determinada tarefa dada uma ferramenta de software
Modelagem Quantitativa
Gesture TimeK Keying 0.2 secB Holding/Releasing key 0.1 secP Pointing 1.1 secH Homing 0.4 secM Mentally Preparing 1.35 sec
/2423
• 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
Modelagem Quantitativa
/2425
• 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;
Modelagem Quantitativa
/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”
/2430
Modelagem Quantitativa• Através do modelo proposto, foi possível
prever os tempos presentes no gráfico a seguir
/2431
Conclusões• 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
/2432
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
/2433
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