• Sonuç bulunamadı

Resim-ĠĢ Eğitimi Öğrencilerinin Durumluk Kaygı, Sürekli Kaygı ve YaĢam

Esse trabalho apresentou a reengenharia do framework Cosmos (LOPES, 2006), que

foi motivado pela mudança do estilo de adaptação utilizado anteriormente. Esse estilo era composto por ações definidas na concepção do framework original. Com a mudança realizada, essas ações passaram a ser produzidas em tempo de execução. Outra motivação foi possibilitar a instanciação do Cosmos na plataforma OSGi.

O processo de adaptação é executado através do uso de feedback control loops onde cada fase é executada por um componente específico. A fase de coleta de dados é realizada por Probes. A fase de analise é realizada por um componente de gerenciamento de QoS. A fase decidir é realizada pelo componente de seleção arquitetural. Por fim, o framework de geração de processos define os planos de adaptação na fase decidir e executa esses planos direto no Cosmos na fase atuar.

Com a integração do Cosmos com o framework de geração de processos foi necessária a mudança do metamodelo, de maneira que ele possa representar modelos por meio de suas estruturas e de suas instâncias. Essa mudança é uma exigência do framework de geração de processos, por ele usar o modelo de estrutura e de instância em momentos diferentes na geração do plano de adaptação. Para tal, foi necessário substituir o metamodelo defi- nido inicialmente por (LOPES, 2006) e depois por (PINTO, 2011) por um metamodelo que suporte visões de instância, estrutura e tipos. Para tal, foi adotado como base de nosso metamodelo o definido pela linguagem arquitetural xADL. Essa escolha foi realizada de- vido ao fator que o metamodelo definido por essa linguagem representar os modelos nas visões de instância e estrutura, além de possibilitar a sua extensão de forma simples e ter um bom conjunto de ferramentas para poder manipular os modelos definidos.

Para a integração com a plataforma OSGi foi realizado o mapeamento entre os ciclos de vida dos bundles e componentes do framework Cosmos. Também foi definida uma arquitetura para dar suporte as necessidades da plataforma OSGi, por meio da especiali- zação dos componentes que formam a base do Cosmos.

Por fim foi criado um protótipo como prova de conceito. Esse protótipo define uma aplicação de transmissão de vídeo composto por um componente consumidor e dois com- ponentes produtores. Ao se simular uma situação de adaptação, temos como resultado da adaptação a troca dos produtores.

A abordagem apresentada se torna interessante por possibilitar o uso de um novo estilo de adaptação e sua instanciação na plataforma OSGi. Ao definir interfaces de inte- gração, possibilitamos o uso de componentes que não foram utilizados nessa abordagem. Por exemplo, podemos utilizar outros gerenciadores de QoS, seletores de arquitetura ou geradores de planos de adaptação. Para tal, esses novos componentes devem prover as in- terfaces definidas. Um ponto que requer observação é ao atraso no processo de adaptação ocasionado pela adaptação aberta e o uso de componentes externos, contudo vemos essa utilização como promissora.

6.1

Limitações

Na elaboração desse trabalho foram encontradas algumas dificuldades que se tornaram limitações. Essas limitações foram trabalhadas de maneira a não se tornar um grande impacto. A seguir, essas limitações serão apresentadas e como elas foram tratadas.

• Para o uso do MoSAC, como componente de seleção de configurações arquitetu- rais, seria necessário realizar mudanças em seu metamodelo, de maneira que fosse possível a utilização do metamodelo adotado pelo Cosmos. Para contornar essa difi- culdade foi elaborado um componente simples que contêm um conjunto de possíveis configurações a serem utilizadas.

• A instanciação do framework de geração de processos se mostrou mais trabalhosa que o esperado, com isso, foi elaborado um componente que simula a elaboração e execução dos planos de adaptação. Mesmo não tendo instanciado o framework de geração de processos, no contexto do Configurator o processo de gerar e executar os planos de adaptação devem ser realizados por um componente externo, assim, entendemos que o objetivo original foi atingido.

• Com a decisão de tornar externo o QoS Manager, se faz necessário realizar mudanças nele, de maneira a tirar a dependência existente com o Cosmos. Em seu lugar foi criado um componente básico, que segue a assinatura original.

• No decorrer da elaboração desse trabalho foi elaborado somente uma aplicação, a qual, foi utilizada para realizar a validação do Cosmos.

• Não foram realizados experimentos para avaliar o atraso ocasionado pelo uso de componentes externos, no processo de adaptação.

Outra limitação refere-se a impossibilidade de geração de um plano de adaptação pelo framework de geração de processos. Caso isso ocorra, não será possível adaptar a aplicação que necessita ser adaptada.

6.2

Trabalhos Futuros

Buscando solucionar as limitações apresentadas anteriormente como também novos direcionamentos de nosso trabalho apontamos como trabalhos futuros:

• Concluir a instanciação do framework de geração de processos no contexto do Cos- mos. Para tal, deve-se realizar as customizações apresentadas por Da Silva e por fim realizar mais experimentos.

• Viabilizar a integração do Cosmos com o MoSAC, na busca de possibilitar o suporte a seleção de configurações arquiteturais dinamicamente. Para essa viabilização apon- tamos dois caminhos que podem ser seguidos: realizar a transformação nos modelos do Cosmos, de maneira que seja possível seu uso no MoSAC ; e possibilitar que o MoSAC seja capaz de realizar as transformações por meio de customizações.

• Avaliar o impacto da separação das fases do feedback control loop em componentes externos no processo de adaptação do Cosmos.

• Realizar a reengenharia do modelo de interconexão, de maneira a possibilitar seu uso durante a transmissão de fluxos multimídia.

• Realizar as mudanças necessárias no QoS Manager para substituir o componente que foi utilizado.

• Ao instanciar o Cosmos sobre a plataforma OSGi, possibilitar o uso dos mecanismos de monitoramento da plataforma, para realizar o monitoramento dos componentes. Com isso, parte do monitoramento realizado pelos ProbesOSGi poderia ser realizado pelo mecanismo da plataforma.

Referências

AFSHAR, M. Application Software Re-Engineering. [S.l.]: Pearson Education India, 2010.

ALLIANCE, O. OSGi Service Platform Core Specification Release 4, Aug. 2005. ALLIANCE, O. Osgi service platform core specification release 4 version 4.2 core specification. 2009. URL http://www. osgi. org/Specifications/HomePage.

AMARO, F. et al. Especificação e gerenciamento de qos em um middleware para sistemas de televisão digital interativa. XI Simpósio Brasileiro de Sistemas Multimídia e Web, v. 10, 2005.

ANDRZEJAK, A.; HERMANN, U.; SAHAI, A. Feedbackflow-an adaptive workflow generator for systems management. In: IEEE. Autonomic Computing, 2005. ICAC 2005. Proceedings. Second International Conference on. [S.l.], 2005. p. 335–336.

BALME, L. et al. Cameleon-rt: A software architecture reference model for distributed, migratable, and plastic user interfaces. In: Ambient intelligence. [S.l.]: Springer, 2004. p. 291–302.

BENEDITTO, D.; MADEIRA, M. E. Automating the reconfiguration for self-adaptable software. In: ACM. Proceedings of the 17th international doctoral symposium on Components and Architecture. [S.l.], 2012. p. 13–18.

BLAIR, G.; BENCOMO, N.; FRANCE, R. B. Models@ run. time. Computer, IEEE, v. 42, n. 10, p. 22–27, 2009.

BOUCKÉ, N.; GARCIA, A.; HOLVOET, T. Composing structural views in xadl. In: Early Aspects: Current Challenges and Future Directions. [S.l.]: Springer, 2007. p. 115–138.

BRUN, Y. et al. Engineering self-adaptive systems through feedback loops. In: Software Engineering for Self-Adaptive Systems. [S.l.]: Springer, 2009. p. 48–70.

CHENG, B. H. et al. Software engineering for self-adaptive systems: A research roadmap. [S.l.]: Springer, 2009.

CHENG, S.-W.; GARLAN, D.; SCHMERL, B. Architecture-based self-adaptation in the presence of multiple objectives. In: ACM. Proceedings of the 2006 international workshop on Self-adaptation and self-managing systems. [S.l.], 2006. p. 2–8.

COUTAZ, J. User interface plasticity: model driven engineering to the limit! In: ACM. Proceedings of the 2nd ACM SIGCHI symposium on Engineering interactive computing systems. [S.l.], 2010. p. 1–8.

DASHOFY, E. M.; HOEK, A. v. d.; TAYLOR, R. N. A comprehensive approach for the development of modular softwarearchitecture description languages. ACM Transactions on Software Engineering and Methodology (TOSEM), ACM, v. 14, n. 2, p. 199–245, 2005. DASHOFY, E. M.; HOEK, A. Van der; TAYLOR, R. N. An infrastructure for the rapid development of xml-based architecture description languages. In: IEEE. Software Engineering, 2002. ICSE 2002. Proceedings of the 24rd International Conference on. [S.l.], 2002. p. 266–276.

DEELMAN, E. et al. Mapping abstract complex workflows onto grid environments. Journal of Grid Computing, Springer, v. 1, n. 1, p. 25–39, 2003.

DESERTOT, M.; CERVANTES, H.; DONSEZ, D. Frogi: Fractal components deployment over osgi. In: SPRINGER. Software Composition. [S.l.], 2006. p. 275–290.

DOBSON, S. et al. A survey of autonomic communications. ACM Transactions on Autonomous and Adaptive Systems (TAAS), ACM, v. 1, n. 2, p. 223–259, 2006.

DUSTDAR, S.; SCHREINER, W. A survey on web services composition. International Journal of Web and Grid Services, Inderscience, v. 1, n. 1, p. 1–30, 2005.

EDWARDS, G. et al. Architecture-driven self-adaptation and self-management in robotics systems. In: IEEE. Software Engineering for Adaptive and Self-Managing Systems, 2009. SEAMS’09. ICSE Workshop on. [S.l.], 2009. p. 142–151.

FONSECA F. L.; BENEDITTO, M. E. M. D. W. C. M. L. Um mecanismo extensível para a execução de um plano de reconfiguração arquitetural sob o framework osgi+ipojo. In: Workshop sobre Sistemas Autônomos (AutoSoft) (CBSOFT ?12), 2012.

FOX, M.; LONG, D. Pddl2.1: An extension to pddl for expressing temporal planning domains. J. Artif. Intell. Res. (JAIR), v. 20, p. 61–124, 2003.

GEREVINI, A.; LONG, D. Preferences and soft constraints in pddl3. In: ICAPS workshop on planning with preferences and soft constraints. [S.l.: s.n.], 2006. p. 46–53. JOUAULT, F. et al. Atl: A model transformation tool. Science of Computer Programming, Elsevier, v. 72, n. 1, p. 31–39, 2008.

KRAMER, J.; MAGEE, J. Self-managed systems: an architectural challenge. In: IEEE. Future of Software Engineering, 2007. FOSE’07. [S.l.], 2007. p. 259–268.

KRUCHTEN, P. B. The 4+ 1 view model of architecture. Software, IEEE, IEEE, v. 12, n. 6, p. 42–50, 1995.

LEE, K. et al. Adaptive workflow processing and execution in pegasus. Concurrency and Computation: Practice and Experience, Wiley Online Library, v. 21, n. 16, p. 1965–1981, 2009.

LOPES, A. et al. Qos specification and management in a middleware for distributed multimedia systems. In: IEEE. Advanced Information Networking and Applications, 2006. AINA 2006. 20th International Conference on. [S.l.], 2006. v. 1, p. 959–964.

LOPES, A. B. Um Framework para Configuração e Gerenciamento de Recursos e Componentes em Sistemas Multimídia Distribuídos Abertos. Tese (Doutorado) — Universidade Estadual de Campinas, Faculdade de Engenharia Elétrica e de Computação, 2006.

MCKINLEY, P. K. et al. Composing adaptive software. Computer, IEEE, v. 37, n. 7, p. 56–64, 2004.

MORIN, B. et al. Models@ run. time to support dynamic adaptation. Computer, IEEE, v. 42, n. 10, p. 44–51, 2009.

MORIN, B. et al. An aspect-oriented and model-driven approach for managing dynamic variability. In: Model driven engineering languages and systems. [S.l.]: Springer, 2008. p. 782–796.

OREIZY, P. et al. An architecture-based approach to self-adaptive software. Intelligent Systems and Their Applications, IEEE, IEEE, v. 14, n. 3, p. 54–62, 1999.

PINTO, F. A. P. Um framework baseado em modelos para desenvolvimento de sistemas. Dissertação (Mestrado) — Universidade Federal do Rio Grande do Norte, Natal, 2011. SALEHIE, M.; TAHVILDARI, L. Self-adaptive software: Landscape and research challenges. ACM Transactions on Autonomous and Adaptive Systems (TAAS), ACM, v. 4, n. 2, p. 14, 2009.

SILVA, C. E. D. Dynamic Generation of Adaptations Plans For Self-Adaptive Software Systems. Tese (Doutorado) — The University of Kent at Canterbury, 2011.

SILVA, C. E. da; LEMOS, R. de. Dynamic plans for integration testing of self-adaptive software systems. In: ACM. Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. [S.l.], 2011. p. 148–157.

SILVA, C. E. da; LEMOS, R. de. A framework for automatic generation of processes for self-adaptive software systems. Informatica: An International Journal of Computing and Informatics, Slovene Society Informatika, Vozarski pot 12 1000 Ljubljana, Slovenia, v. 35, n. 1, p. 3–13, 2011.

SILVA, D. C. da. MoSAC: Um Módulo Para Seleção de Configurações Arquiteturais Baseado em Criérios de QoS no Contexto de Sistemas Distribuídos Autoadaptativos. Dissertação (Mestrado) — Universidade Federal do Rio Grande do Norte, Natal, 2011. SOARES, F. H. L.; LOPES, A. B.; SILVA, C. E. D. Instanciação de um framework de geração dinâmica de processos para reconfiguração arquitetural em ambiente osgi. In: III Workshop em Sistemas Distribuídos Autônomo (WoSiDA), p. To Appear. [S.l.: s.n.], 2013.

TAJALLI, H. et al. Plasma: a plan-based layered architecture for software model-driven adaptation. In: ACM. Proceedings of the IEEE/ACM international conference on Automated software engineering. [S.l.], 2010. p. 467–476.

Benzer Belgeler