Buscas de Heurísticas para a Resolução de Problemas Arquiteturais em Projetos Arquiteturais Baseados em Busca

Autores

  • Erik Seyti Johansson IFPR - Campus Paranavaí Autor
  • Willian Nalepa Oizumi IFPR - Campus Paranavaí Autor

Palavras-chave:

Projetos Arquiteturais, Busca de Heurísticas, Resolução de Problemas

Resumo

Um dos principais propósitos da engenharia de software é o de ditar ou mesmo aconselhar as melhores práticas à organizações e indivíduos envolvidos com o desenvolvimento de software [Sommerville 2010]. Por exemplo, a engenharia de software é responsável por recomendar as melhores práticas para organizar produtos de software, assim como as equipes que os criam e os mantêm atualizados. Sendo assim, um dos aspectos de suma importância no desenvolvimento de um sistema é a Arquitetura de Software. A arquitetura de software abrange um conjunto de decisões significativas sobre a organização de um sistema [Booch 2004]. Caso a arquitetura seja mal projetada, pode afetar futuras implementações ou mesmo manutenção do código fonte. Portanto, foram propostas diferentes plataformas e ferramentas, como a abordagem Model Driven Architecture (OMG 2018), a fim de auxiliar no desenvolvimento do projeto de arquitetura de software. Porém, essas abordagens não impedem que ocorram deslizes ou mesmo erros no projeto de arquitetura. Por esse motivo, Colanzi (2014) propôs uma abordagem, chamada MO4PLA, para a otimização multiobjetivo de projetos de arquitetura de software. 

A abordagem MO4PLA gera inúmeros projetos de arquitetura de software a partir do uso de algoritmos genéticos. Entretanto, essa abordagem ainda não se mostrou capaz de identificar e remover ​problemas arquiteturais [Garcia et al. 2009] que afetam os projetos gerados. Os problemas arquiteturais são causados por decisões arquiteturais (podendo ou não ser intencionais) que afetam de forma negativa atributos de qualidade do sistema. Um exemplo de problema arquitetural é o chamado ​Fat Interface ​[Martin 2006], que ocorre quando uma interface do sistema está sobrecarregada com múltiplos serviços desconexos. Esse tipo de problema arquitetural afeta atributos de qualidade como manutenibilidade e extensibilidade. Por este motivo, este trabalho se foca em analisar arquiteturas de software projetadas a partir da abordagem MO4PLA, a fim de identificar os problemas arquiteturais gerados. Com base nessa análise, pretende-se propor heurísticas para a resolução de problemas arquiteturais recorrentes. Dessa forma, espera-se contribuir para a geração de projetos arquiteturais com maior qualidade. 

Este trabalho é uma extensão de nosso trabalho anterior [Johansson e Oizumi 2016]. Neste trabalho, realizaremos a análise de 7 projetos arquiteturais de Linha de Produto de Software (LPS), sendo 4 da LPS para jogos Arcade Game Media [SEI 2018] e 3 da LPS Mobile Media [Oizumi et al. 2012], que é focada no gerenciamento de mídias em dispositivos móveis. Com essa nova análise, almeja-se não somente identificar novos tipos de problemas arquiteturais em projetos arquiteturais, mas também propor heurísticas para a identificação desses problemas em projetos arquiteturais otimizados pela abordagem MO4PLA.

Referências

Booch, Grady. et al. (2014) “Object-Oriented Analysis and Design with Applications”, 3. ed., Addison Wesley, Redwood City, CA, EUA.

Colanzi, Thelma Elita. (2014) “Uma abordagem de otimização multiobjetivo para projeto arquitetural de linha de produto de software”, http://dspace.c3sl.ufpr.br:8080/dspace/bitstream/handle/1884/36061/R%20-%20T%20-%20THELMA%20ELITA%20COLANZI.pdf?sequence=1, Março.

Sommerville, I. (2010) Software engineering. New York: Addison-Wesley.

Garcia, J., Popescu, D., Edwards, G., & Medvidovic, N. (2009). Identifying architectural bad smells. In Software Maintenance and Reengineering, 2009. CSMR'09. 13th European Conference on (pp. 255-258). IEEE.

Martin, R. C. (2006) Agile principles, patterns, and practices in C. Pearson Education.

Oizumi, Willian Nalepa, et al.(2012) “On the proactive design of product line architectures with aspects:an exploratory study”, In Computer Software and Applications Conference (COMPSAC), 2012 IEEE 36th Annual, p. 273-​278.

SEI (2018) "The Arcade Game Maker Pedagogical Product Line", https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=485941, Julho.

Johansson, E. S.; Kamakawa, H. T.; Oliveira, F. W. C.; Flôr, D. E.; Zavan, A. R.; Oizumi, W. N. (2016) “Um Estudo Exploratório Sobre a Identificação de Problemas em Arquiteturas de Software”. I Congresso Internacional de Ciência, Tecnologia e Inovação da Unipar.

OMG (2018) “MDA® - THE ARCHITECTURE OF CHOICE FOR A CHANGING WORLD”, https://www.omg.org/mda/, Julho

Downloads

Publicado

12-12-2018

Como Citar

Buscas de Heurísticas para a Resolução de Problemas Arquiteturais em Projetos Arquiteturais Baseados em Busca. (2018). Semana Da Tecnologia Da Informação Do IFPR Campus Paranavaí, 1(1). https://tecnoif.com.br/periodicos/index.php/setif/article/view/48

Artigos Semelhantes

11-20 de 29

Você também pode iniciar uma pesquisa avançada por similaridade para este artigo.