apresentação tcc
Embed Size (px)
DESCRIPTION
Apresentação final do meu trabalho de conclusão de curso.TRANSCRIPT

VARIABILIDADE EM ABORDAGENS DE LINHAS DE PRODUTOS ORIENTADAS A SERVIÇOS
THIAGO J S OLIVEIRA
UNIVERSIDADE FEDERAL DA PARAÍBA
CENTRO DE CIÊNCIAS APLICADAS E EDUCAÇÃO
CAMPUS IV – LITORAL NORTEBACHARELADO EM SISTEMAS DE
INFORMAÇÃO

VARIABILIDADE EM ABORDAGENS DE LINHAS DE PRODUTOS ORIENTADAS A SERVIÇOS
Orientador: M.Sc José Jorge Lima Dias Jr
Banca Avaliadora:M.Sc Rodrigo RebouçasM.Sc Raoni Kulesza

Agenda
Motivação
Objetivos
Questões de Pesquisa
Referencial Teórico
◦SOA, SPL e SOPL

Agenda
Representações de Variabilidade;
Tipos de Variabilidade em SOPL;
Abordagens SOPL que tratam de
variabilidade;
Considerações finais;

MotivaçãoSOA não provê suporte à customização e
reuso sistemático (Medeiros et al, 2009). Por outro lado, SPL é um paradigma emergente para software customizáveis (Almeida, 2010);
SOPL surge como união entre SPL e SOA obtendo ganho de produtividade, aplicações customizadas, flexibilidade, entre outros (Cohen & Krut, 2010);
Systematic Mapping Study (Kitchenham, 2007) e classificação dos artigos;

MetodologiaEscolha dos artigos feita a partir
de um Systematic Mapping Study (Kitchenham, 2007) feito por Jorge Dias, orientador deste trabalho.
Dos 43 artigos iniciais, 38 artigos foram analisados, 23 selecionados e 15 descartados de acordo com os critérios de inclusão e exclusão definidos na pesquisa.

Objetivo Geral
Investigar como variabilidade vem sendo abordada em Linhas de Produtos Orientadas a Serviços (SOPL) através da análise de evidências encontradas na literatura.

Objetivos Específicos
Identificar como variabilidade vem sendo representada por abordagens SOPL;
Analisar como abordagens SOPL vêm tratando variabilidade no desenvolvimento de novos produtos;

Questões de Pesquisa
QP01. Como variabilidade vem sendo representada em abordagens SOPL?
QP02. Quais os tipos de variabilidade existentes nas abordagens SOPL?
QP03. Como variabilidade tem sido resolvida na derivação de produtos em SOPL?

Arquitetura Orientada a Serviços
Estabelece um modelo arquitetural que permite aumentar a eficiência, agilidade e produtividade de um negócio a partir da utilização de serviços (Erl, 2012);
Por que adotar SOA?◦Reusabilidade;◦Integração e Interoperabilidade;

Características
Sistemas Distribuídos. Integração entre sistemas desenvolvidos em diferentes plataformas e linguagens (Medeiros, 2010);
Diversos fornecedores. Diferentes partes do sistema podem pertencer a vários fornecedores (Josuttis, 2007);
Heterogeneidade. Sistemas compostos por mainframes, BDs, Aplicações Java, etc (Medeiros, 2010);

Linhas de Produto de SoftwareUm conjunto de sistemas que
compartilham um conjunto comum e gerenciado de features para satisfazer necessidades específicas de um segmento particular de mercado (Clements & Northrop, 2002);
Possui três fases:◦Engenharia de Domínio, Engenharia de
Aplicação e Gerenciamento;

ObjetivosRedução de custos de desenvolvimento.
Componentes não são desenvolvidos do zero;
Aumento da qualidade. Reutilização de componentes;
Redução do tempo de entrega. Core assets prontos, tratamento da variabilidade;
Borba (2009) apud Pohl et al (2005);

VariabilidadeCapacidade que um sistema tem de
alterar seu comportamento durante seu ciclo de vida (CAO et al, 2009);
Habilidade de implementar modificações em arquiteturas de software (Galster, M., 2010);
Geralmente é representada por Variation Points (Kim & Doh, 2008) e por Modelos de Features (Pohl et al, 2005);

Uma análise sobre variabilidade em abordagens SOPL

Representações de Variabilidade
RepresentaçõesTrabalhos
Relacionados Total
Modelos de Feature
P09, P10, P12, P14, P15, P16, P17, P18, P19, P20, P21, P22
e P23
13
Variation PointsP01, P02, P11, P17
e P20 5
UMLP03, P07, P13 e
P18 4
Business Process Management P04 e P07 2
Outras P01, P18 e P21 3

Modelos de FeaturesTécnica usada para representar e
descrever uma possível configuração do sistema e suas variações em termos de features, que representam funcionalidades do sistema (Mohabbati et al, 2009);
Features são organizadas num diagrama hierárquico (Borba, 2010);

Features obrigatórias, opcionais e alternativas
Figura retirada de Pohl et al, 2005

Variation Points e Variants
Representação utilizada em artefatos de projeto ou em implementações onde ocorre variação, variants são alternativas que podem ser selecionadas para um Variation Point (Sun et al, 2009 apud Bachmann & Bass, 2001);

Representações de Variabilidade
13
5
4
2
3
Modelos de FeatureVariation PointsUMLBPMOutros

Tipos de VariabilidadeP01 P02 P04 P05 P06 P11
Logic X X X XCompositi
on X X
Interface X X X X
Parameter X
Workflow X X X
Partner XCardinalit
y X
WSLA X

Tipos de VariabilidadeLogic. Diferentes implementações para
uma mesma operação;
Composition. Diferentes interfaces, implementações, atributos de qualidade;
Interface. Diferentes interfaces para um mesmo serviço;
Parameter. Parâmetros utilizados no serviços;

Tipos de Variabilidade
Workflow. Ocorrem em fluxos de trabalho;
Partner. Serviços pertencentes a diferentes parceiros de negócio;
Cardinality. Várias instâncias para um mesmo service;
WSLA. Atributos de qualidade especificados entre parceiros de negócio;

Como abordagens SOPL lidam com variabilidade na derivação de produtos
Procurou identificar como abordagens SOPL tratam de variabilidade durante o processo de derivação de produtos.
Seis trabalhos propuseram alguma abordagem nesse sentido (P03, P04, P08, P10, P17 e P19);

Abordagens Propostas
Artigo Representação de Variabilidade
Variabilidade na derivação de
produtos
P03 MetaModel (UML)Variability
Specification e Variability Resolution
P04BPM, Feature
Modeling, Use Case, Variation Points
Variability Analysis
P08 BPM
Business Process Lines e Process
Oriented Development
P10 Feature Modeling Service Analysis
P17 Feature Modeling, Variation Points
Feature Oriented Service
Customization
P19 Feature Modeling Feature-Based Approach

Considerações Finais
05
101520
Quantidade de Respostas por Questão de Pesquisa
Quantidade de Artigos

Considerações Finais
Representações de Variabilidade;
Tipos de Variabilidade em um contexto SOPL;
Abordagens SOPL que tratam de Variabilidade;

Comentários e Dúdivas

Referências Bibliográficas
(Erl, 2012) Erl, T.. Service-Oriented Architecture. Disponível em: www.whatissoa.com/p10.php Acessado em: 20/04/2012;
(Clements & Northrop, 2002). Clements, P. Northrop, L.. Software Product Lines: Practive and Patterns. 2002;
(Almeida, 2010) Almeida, R. B.; Modeling Software Product Line Variability in Use Case Scenarios. UFPE, Recife, PE. 2010.

(Medeiros et al, 2009) Medeiros, F. M., Almeida, E. S. & Meira, S. R. L.; Towards an Approach for Service-Oriented Product Line Architectures. In 3rd Workshop on Service-Oriented Architectures and Software Product Lines (SOAPL), São Francisco, Estados Unidos. 2009.
(Cohen & Krut, 2010) Cohen, S. & Krut, R.; Managing Variation in Services in a Software Product Line Context. 2010.

(Medeiros, 2010) Medeiros, F. M.; SOPLE-DE: An Approach to Design Service-Oriented Product Line Architectures. UFPE, Recife, PE. 2010.
(Josuttis, 2007) Josuttis, N. M.; SOA in Practice – The Art of Distributed System Design. O’Really. 2007.
(Borba, 2009) Borba, C. C.; Uma Abordagem Orientada a Objetivos para as fases de Requisitos para Linhas de Produtos de Software. UFPE, Recife, PE. 2009.

(Kim & Doh, 2008) Kim, Y. & Doh, K.; Adaptable Web Services Modeling using Variability Analysis. In Third 2008 International Conference on Convergence and Hybrid Information Technology. 2008.
(Pohl et al, 2005) Pohl, K., Bockle, G. & Van Der Linder, F.; Software Product Line Engineering Foundations, Principles, and Techniques. Springer. 2005.

(CAO et al, 2009) CAO Bu-Qing, LI Bing & XIA Qi-Ming; A Process-Driven and Ontology Based Software Product Line Variability Modeling Approach. In Eighth International Conference on Grid and Cooperative Computing. 2009.
(Galster, 2010) Galster, M.; Describing Variability in Service-oriented Software Product Lines. Department of Mathematics and Computing Science, University of Groningen ,Groningen, Holanda. 2010.

(Mohabbati et al, 2009) Mohabbati, B., Kaviani, N. & Gašević, D.; Semantic Variability Modeling for Multi-staged Service Composition. In Workshop on Service-Oriented Architectures and Software Product Lines, Airport Marriott, São Francisco, Califórnia, Estados Unidos. 2009.
(Sun et al, 2009) Sun, G., Rossin, R., Sinnema, M. Bulanov, P. & Aiello, M.; Modeling and managing the variability of Web service-based systems. The Journal of Systems and Software, n°83. 2009.