Escolar Documentos
Profissional Documentos
Cultura Documentos
Sumrio
Introduo
Motivao Problemtica
Mtodos
CIn.ufpe.br
Sumrio
Reviso da Literatura
Computao Orientada a Servios Linhas de Produto de Software
O Estado da Arte em Derivao Dinmica Apresentao Cronolgica
CIn.ufpe.br
Sumrio
DYMOS QoS
Anlise Exploratria
Operaes do DYMOS
Interveno Exploratria
Seleo de Servios
Avaliao
Validao Exploratria Avaliao Estatstica Descritiva
CIn.ufpe.br
Sumrio
Concluso
Contribuies Limitaes Trabalhos Futuros
CIn.ufpe.br
Introduo
- Quarenta e dois [...] Eu verifiquei cuidadosamente e no h dvida de que a resposta essa. Para ser franco, acho que o problema que vocs jamais souberam qual a pergunta. - DOUGLAS ADAMS (O Guia do Mochileiro das Galxias)
6
CIn.ufpe.br
Linhas de Produto
CIn.ufpe.br
Motivao
Problemtica
CIn.ufpe.br
Problemtica
10
CIn.ufpe.br
Objetivo Geral
Propor uma abordagem de seleo em tempo de execuo das caractersticas que iro compor uma DSPL com base em uma anlise de seus respectivos atributos de qualidade
11
CIn.ufpe.br
Objetivos Especficos
Revisar a literatura a fim de identificar as maneiras pelas quais a derivao dinmica em DSPL ocorre Desenvolver um mtodo para a avaliao da qualidade dos servios em tempo de execuo Avaliar a performance da abordagem proposta
12
CIn.ufpe.br
Soluo Proposta
13
CIn.ufpe.br
Escop o Negati vo
14
CIn.ufpe.br
Reviso da Literatura
- O que nos traz finalmente ao momento da verdade, em que a falha fundamental definitivamente expressa e a anomalia revela ser tanto o comeo quanto o fim. - Matrix (Dilogo entre Neo e o Arquiteto)
15
CIn.ufpe.br
16
CIn.ufpe.br
SOC Contratos
Clientes aderem a contratos de comunicao Descrio de caractersticas, funcionalidades e formato de dados XML, WSDL e XSD
18
CIn.ufpe.br
SOC - Descoberta
Ocorre a partir da especificao descritiva (contratos) Universal Descriptor, Discovery and Integration (UDDI) Uniform Resource Identifier (URI)
19
CIn.ufpe.br
SOC - Web
Manifesta-se na forma de Web services Identificado por URI
20
CIn.ufpe.br
22
CIn.ufpe.br
CIn.ufpe.br
26
CIn.ufpe.br
27
CIn.ufpe.br
29
CIn.ufpe.br
32
CIn.ufpe.br
33
CIn.ufpe.br
34
CIn.ufpe.br
DYMOS QoS
Esse caminho no h outro Que por voc faa. - SKANK (Acima do Sol)
35
CIn.ufpe.br
36
CIn.ufpe.br
Anlise Exploratria
DYMOS ApplicationService ServiceContext OSGi continer Elementos descritores
37
CIn.ufpe.br
DYMOS
38
CIn.ufpe.br
DYMOS
<?xml version="1.0"?> <services> ... <service id="imageService service-impl="com.assertLab.imageServiceImpl"> <service-spec> com.assertLab.imageService </service-spec> <alternative-service ref="imageService1" priority="1" /> </service> <service id="imageService1" service-impl="com.assertLab.imageService1"> <service-spec> com.assertLab.imageService </service-spec> </service> ... </services> </variabilities>
39
CIn.ufpe.br
DYMOS
40
CIn.ufpe.br
DYMOS
<?xml version="1.0"?> <variabilities> <variability id="accessMode"> <variant id="infraredMode"> <service-ref ref="hiService" /> </variant> </variability> <variability> <variant id="batteryHalfLife"> <service-ref ref="imageService/> </variant> </variability> </variabilities>
41
CIn.ufpe.br
DYMOS
42
CIn.ufpe.br
DYMOS
43
CIn.ufpe.br
DYMOS
44
CIn.ufpe.br
DYMOS
Descoberta de Servios
45
CIn.ufpe.br
DYMOS
Reconfigurao de Servios
46
CIn.ufpe.br
DYMOS ContextHotBuild
Bind em tempo de execuo Servios Web empacotados como bundles OSGi Sob responsabilidade do OSGi Container
47
CIn.ufpe.br
Interveno Exploratria
O critrio de seleo utilizado pode no ser ideal Responsabilidade da deciso nas mos do Engenheiro de Software Propor anlise com base em atributos de qualidades dos servios Maior pontuao dentro de um nvel de servio exigido
48
CIn.ufpe.br
DYMOS QoS
49
CIn.ufpe.br
DYMOS QoS
Descoberta
de Servios
50
CIn.ufpe.br
DYMOS QoS
Atributos de
qualidade
... <serviceLevel id="1"> <cost>2,07</cost> <curCapacity>0</curCapacity> <level>1</level> <maxCapacity>42</maxCapacity> <name>imageService1</name> <responseTime>23379</responseTime> <serviceSpec> com.assertLab.imageService </serviceSpec> </serviceLevel> <serviceLevel id="2"> <cost>0,29</cost> <curCapacity>38</curCapacity> <level>2</level> <maxCapacity>48</maxCapacity> <name>imageService1</name> <responseTime>44639</responseTime> <serviceSpec> com.assertLab.imageService </serviceSpec> </serviceLevel> ...
51
CIn.ufpe.br
Seleo de servios
O Broker deriva das abordagens de Chen et al. (2003); Yu and Lin (2004, 2005) Cada provedor oferece diversos nveis de servio Funo de utilidade Utilizao de informaes estticas, a necessidade de qualidade e a capacidade dinmica do servidor
52
CIn.ufpe.br
Seleo de servios
53
CIn.ufpe.br
Avaliao
O poder permanece onde os homens crem que ele deve permanecer. - GEORGE R. R. MARTIN (A Fria dos Reis, As Crnicas de Gelo e Fogo)
54
CIn.ufpe.br
Validao Exploratria
Produtos MobiLine Modificao da DymosClientLib Descrio dos servios Validao em 3 fases
55
CIn.ufpe.br
... private ServiceEndPoint endpoint; this.endpoint = ServiceEndPointFactory.getEndPoint("imageService", 1); SoapObject request = new SoapObject(endpoint.getNamespace(), METHOD_NAME); HttpTransportSE transport = new HttpTransportSE(endpoint.getEndpoint()); transport.call(SOAP_ACTION, envelope); ...
56
CIn.ufpe.br
XML de Servios
<?xml version="1.0"?> <services> ... <service id="imageService" serviceimpl="com.assertLab.imageServiceImpl"> <servicespec> com.assertLab.imageService </servicespec> <alternativeservice ref="imageService1" /> <alternativeservice ref="imageService2" /> <alternativeservice ref="imageService3" /> <alternativeservice ref="imageService4" /> <alternativeservice ref="imageService5" /> </service> <service id="imageService1 serviceimpl="com.assertLab.imageService1"> <servicespec>com.assertLab.imageService</servicespec> </service> <service id="imageService2" serviceimpl="com.assertLab.imageService2"> <servicespec>com.assertLab.imageService</servicespec> </service>
57
CIn.ufpe.br
Valores de QoS
58
CIn.ufpe.br
Primeira Fase
59
CIn.ufpe.br
Segunda Fase
60
CIn.ufpe.br
Terceira Fase
61
CIn.ufpe.br
Dados ordinais:
Nvel de Servio
62
CIn.ufpe.br
63
CIn.ufpe.br
64
CIn.ufpe.br
65
CIn.ufpe.br
Custo
66
CIn.ufpe.br
Desempenho
67
CIn.ufpe.br
Desempenho
68
CIn.ufpe.br
Concluso
Eu que no me sento No trono de um apartamento Com a boca escancarada Cheia de dentes Esperando a morte chegar - RAUL SEIXAS (Ouro de Tolo) 69
CIn.ufpe.br
Concluso
A abordagem apresentada efetiva efetiva para a linha de produto para a qual foi validada, sendo melhor utilizada com pequenas quantidades de servios a serem avaliados em tempo de execuo
70
CIn.ufpe.br
Contribuies
Criao de uma abordagem de seleo, em tempo de execuo das caractersticas que iro compor a DSPL com base em uma anlise de seus respectivos atributos de qualidade
Expande o processo de derivao j existente
Fornecimento de um mecanismo que permite a seleo de servios, assim como um benchmark para testes futuros junto com outras abordagens
71
CIn.ufpe.br
Limitaes
Apresentao de algo diferente (Wazawick, 2009)
Caracterstico de reas emergentes Comparaes comumente qualitativas entre tcnicas As outras abordagens so a proposio de algo novo
Indcios de que a rea de DSPL esteja imatura corroborada pelos estudos de Buregio et al. (2010); Alves et al., (2009); Bencomo et al. (2010, 2012); da Silva et al. (2013) Impossibilidade de criao de um desenho experimental rebuscado Possibilidade de existir um vis no Benchmark 72 CIn.ufpe.br
Trabalhos Futuros
As limitaes da rea de DSPL apresentam um conjunto de oportunidades de pesquisa, no que tange ao desenvolvimento de
Modelos Ferramentas Algortimos Discusses Conceituais Relatos de experincia Pesquisas de validao e avaliao
73
CIn.ufpe.br
Trabalhos Futuros
Identificao, avaliao e comparao entre outras tcnicas de descoberta de servios em diversos contextos de DSPL Contribuir com o avano das DSPL autnomas, diminuindo a necessidade de interveno Estudar a sinergia entre as DSPLs orientadas a servios e as Social Machines Investigao cientfica para o desenvolvimento de um mecanismo que permita a reconfigurao dinmica de artefatos de cdigo JavaScript
74
CIn.ufpe.br
Referncias
Abbas, N. (2011). Towards autonomic software product lines. volume 46. Abbas, N., Andersson, J., and Weyns, D. (2011). Knowledge evolution in autonomic software product lines. page 1, New York, New York, USA. ACM Press. Alferez, G. H. and Pelechano, V. (2011). Context-Aware Autonomous Web Services in Software Product Lines. pages 100 109. Ieee. Ali, R., Chitchyan, R., and Giorgini, P. (2009). Context for goal-level product line derivation. Alves, V., Schneider, D., Becker, M., Bencomo, N., and Grace, P. (2009). Comparitive study of variability management in software product lines and runtime adaptable systems. Baresi, L. and Milano, P. (2012). Service-Oriented Dynamic Software Product Lines. Number Cvl, pages 4248. Bencomo, N., Lee, J., and Hallsteinsen, S. (2010). How dynamic is your Dynamic Software Product Line? Bencomo, N., Hallsteinsen, S., and Almeida, E. (2012). A View of the Landscape of Dynamic Software Product Lines. pages 11. Buregio, V., Almeida, E., and Meira, S. (2010). Characterizing Dynamic Software Product Lines A Preliminary Mapping Study. pages 5360. Carvalho, S. T., Loques, O., and Murta, L. (2010). Dynamic Variability Management in Product Lines: An Approach Based on Architectural Contracts. pages 6169. Ieee. Cetina, C., Fons, J., and Pelechano, V. (2008). Applying Software Product Lines to Build Autonomic Pervasive Systems. Number ii, pages 117126. Ieee. Chen, H. C. H., Yu, T. Y. T., and Lin, K.-J. L. K.-J. (2003). QCWS: an implementation of QoS-capable multimedia Web services. CIn.ufpe.br da Silva, J. R. F., da Silva, F. A. P., do Nascimento, L. M., Martins, D. A., and Garcia, V. C. (2013). The dynamic aspects of product derivation in dspl: A systematic literature review. In Information Reuse and Integration (IRI), 2013 IEEE 14th
75
Referncias
DAmbrogio, A. (2006). A model-driven wsdl extension for describing the qos ofweb services. In Web Services, 2006. ICWS 06. International Conference on, pages 789796. Damiani, F., Padovani, L., and Schaefer, I. (2012). A Formal Foundation for Dynamic Delta-Oriented Software Product Lines. pages 110. de Oliveira Martins, D. A. (2013). DYMOS: Uma abordagem para suporte a variabilidades dinmicas em Linhas de Produto de Software Orientado a Servios e Sensvel ao Contexto. Masters thesis, Universidade Federal de Pernambuco, Recife, Pernambuco, Brazil. Deora, V., Shao, J., Gray, W. A., and Fiddian, N. (2006). Modelling quality of service in service oriented computing. In Service-Oriented System Engineering, 2006. SOSE 06. Second IEEE International Workshop, pages 95101. Erl, T. (2005). Service-Oriented Architecture: Concepts, Technology, and Design. Erl, T. (2007). SOA and Web Services. In SOA Principles of Service Design, chapter 3, pages 4650. Prentice Hall. Gomaa, H. and Hashimoto, K. (2011). Dynamic software adaptation for service-oriented product lines. page 1, New York, New York, USA. ACM Press. Gomaa, H. and Saleh, M. (2006). Software Product Line Engineering and Dynamic Customization of a Radio Frequency Management System. pages 345352. Gnther, S. and Sunkle, S. (2010). Dynamically adaptable software product lines using Ruby metaprogramming. pages 80 87, New York, New York, USA. ACM Press. Hallsteinsen, S., Stav, E., Solberg, a., and Floch, J. (2006). Using Product Line Techniques to Build Adaptive Systems. pages 141150. Ieee. Hallsteinsen, S., Hinchey, M., Park, S., and Schmid, K. (2008). Dynamic software product lines. Computer, (April), 9395. IBM (2006). An architectural blueprint for autonomic computing. Technical Report June. Josuttis, N. (2007). SOA in Practice. Oreilly.
76
CIn.ufpe.br
Referncias
Khezrian, M., Wan Kadir, W. M. N., Ibrahim, S., Mohebbi, K., Munusamy, K., and Tabatabaei, S. G. H. (2010). An evaluation of state-of-the-art approaches for web service selection. In Proceedings of the 12th International Conference on Information Integration and Web-based Applications & Services, iiWAS 10, pages 885889, New York, NY, USA. ACM. Kim, M., Jeong, J., and Park, S. (2005). From product lines to self-managed systems: an architecture-based runtime reconfiguration framework. pages 6672. Lee, J. (2006). A Feature-Oriented Approach to Developing Dynamically Reconfigurable Products in Product Line Engineering. pages 131140. Ieee. Lee, J. and Kotonya, G. (2010). Combining service-orientation with product line engineering. Number June, pages 3541. Lin, K.-J., Zhang, J., Zhai, Y., and Xu, B. (2010). The design and implementation of service process reconfiguration with endto-end QoS constraints in SOA. Service Oriented Computing and Applications, 4(3), 157168. Marinho, F. G., Andrade, R. M., Werner, C., Viana, W., Maia, M. E., Rocha, L. S., Teixeira, E., Filho, J. a. B. F., Dantas, V. L., Lima, F., and Aguiar, S. (2012). MobiLine: A Nested Software Product Line for the domain of mobile and context-aware applications. Science of Computer Programming. Mendona, D. F., Rodrigues, G. N., Favacho, A., and Holanda, M. (2013). A Systematic Mapping Study on Service Oriented Computing in the Context of Quality of Services. pages 3948. Moresi, E. (2003). Metodologia da pesquisa. Papazoglou, M. P. and Georgakopoulos, D. (2003). Introduction: Service-oriented computing. Commun. ACM, 46(10), 24 28. Parra, C., Blanc, X., and Duchien, L. (2009). Context awareness for dynamic service oriented product lines. pages 131140. Parra, C., Blanc, X., Cleve, A., and Duchien, L. (2011). Unifying design and runtime software adaptation using aspect CIn.ufpe.br models. volume 76, pages 12471260. Elsevier B.V. Pohl, K., Bckle, G., and van der Linden, F. (2005). Software Product Line Engineering: Foundations, Principles, and
77
Referncias
Pukall, M., Siegmund, N., and Cazzola, W. (2009). Feature-oriented runtime adaptation. page 33, New York, New York, USA. ACM Press. Rosenmller, M., Siegmund, N., Apel, S., and Saake, G. (2011). Flexible feature binding in software product lines. volume 18, pages 163197. Shen, L., Peng, X., Liu, J., and Zhao, W. (2011). Towards feature-oriented variability reconfiguration in dynamic software product lines. Sunkle, S. and Pukall, M. (2010). Using reified contextual information for safe run-time adaptation of software product lines. pages 16, New York, New York, USA. ACM Press. Wainer, J. (2007). Mtodos de pesquisa quantitativa e qualitativa para a Cincia da Computao. Atualizao em Informtica. Org: Tomasz Kowaltowski; Karin Breitman. Rio de Janeiro: Ed. PUC-Rio, pages 142. Wazlawick, R. (2009). Metodologia de pesquisa para cincia da computao, volume 1. Elsevier Brasil. Wolfinger, R., Reiter, S., Dhungana, D., Grunbacher, P., and Prahofer, H. (2008). Supporting Runtime System Adaptation through Product Line Engineering and Plug-in Techniques. pages 2130. Ieee. Yu, J., Lalanda, P., and Bourret, P. (2010). An Approach for Dynamically Building and Managing Service-Based Applications. pages 5158. Ieee. Yu, T. and Lin, K. (2004). Service selection algorithms for Web services with end-to-end QoS constraints. In IEEE International Conference on E-Commerce Technology. Yu, T. and Lin, K.-J. (2005). Service selection algorithms for Web services with end-to-end QoS constraints. Information Systems and e-Business Management, 3(2), 103126.
78
CIn.ufpe.br
Obrigado!
79
CIn.ufpe.br