Representação do Conhecimento de forma a Buscar Oportunidades de Refatoração através de uma Ontologia

Autores

DOI:

https://doi.org/10.5902/2448190422642

Palavras-chave:

Refatoração, Ontologia, OWL.

Resumo

Durante o ciclo de vida dos sistemas de software, eles precisam ser melhorados, modificados e adaptados a novas funcionalidades. Tais modificações podem aumentar a complexidade e diminuir sua qualidade. Uma das maneiras de melhorar sua qualidade é aplicar transformações, mais especificamente, refatorações. Uma das atividades do processo de refatoração proposto por Piveta (2009), é a seleção do conjunto de refatorações a serem aplicadas em um sistema de software. A partir desse cenário, este trabalho tem como objetivo: (i) Representar o conhecimento de refatoração através de uma ontologia OWL; (ii) Utilizar a ontologia proposta como base de dados para selecionar o conjunto de refatorações a serem aplicadas. A fim de facilitar a seleção, desenvolveu-se uma aplicação Java utilizando a API Jena. Essa possibilita filtrar as refatorações por algumas características como vantagem e domínio.

Downloads

Não há dados estatísticos.

Biografia do Autor

Fernando Quatrin Campagnolo, Universidade Federal de Santa Maria

Linguagens de Programação e Bancos de Dados.

  • Refatoração
  • DSLs

Referências

Astah (2015). Astah community. http://astah.net/editions/community. Acesso em: 15 dez. 2015.

Cantarelli, G. S. (2012). Um processo para o uso de linguagens de consulta em código fonte. Master’s thesis, Universidade Federal de Santa Maria-RS, Brasil, Cidade Universitária, Bairro Camobi, Santa Maria - RS, Brasil.

Fowler, M., Beck, K., Brant, J., Opdyke, W., and Roberts, D. (1999). Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional.

Gerd Groner, F. S. P. and Staab, S. (2010). Semantic recognition of ontology refactoring.The International Semantic Web Conference.

Gomes, A. F. (2013). Agile: Desenvolvimento de software com entregas frequentes e foco no valor de negócio. Casa do Código.

Gruber, T. R. (1993). A translation approach to portable ontology specifications. Technical Report KSL 92-71, pages 199–220.

Guarino, N. (1998). Formal ontology and information systems. International Conference on Formal Ontology in Information Systems, pages 3–15.

Harold, E. (2009). Refatorando HTML. Como Melhorar o Projeto de Aplicações Web Existentes - Em Portuguese do Brasil. Bookman.

Jambalaya (2015). Jambalaya overview. Disponível em: http://www.thechiselgroup.org/jambalaya/. Acesso em: 15 dez. 2015.

Jena, A. (2015). Apache jena: Java framework. Disponível em: https://jena.apache.org/. Acesso em: 12 dez. 2015.

Júnior, J. E. T. (2014). Um catálogo de refatorações envolvendo expressões lambda em java. Master’s thesis, Universidade Federal de Santa Maria-RS, Brasil, Cidade Universitária, Bairro Camobi, Santa Maria - RS, Brasil.

Kerievsky, J. (2008). Refatoração Para Padrões - Em Portuguese do Brasil. BOOKMAN - GRUPO A.

Mens, T. and Tourwe, T. (2004). A survey of software refactoring. IEEE Transactions on Software Engineering, 20:126–139.

Opdyke, W. (1992). Refactoring Object-oriented Frameworks. PhD thesis, University of Illinois.

Ostrowski, D. A. (2008). Ontology refactoring. ICSC 08 Proceedings of the 2008 IEEE International Conference on Semantic Computing, pages 476–479.

OWL (2015). Owl 2 web ontology language document overview (second edition). Disponível em: http://www.w3.org/TR/owl2-overview/. Acesso em: 15 dez. 2015.

Piveta, E. K. (2009). Improving the Search for Refactoring Opportunities on Object-oriented and Aspect-oriented Software. PhD thesis, Universidade Federal do Rio Grande do Sul. Instituto de Informática. Programa de Pós-Graduação em Computação.

Protégé (2015). About protégé. Disponível em: http://protege.stanford.edu/. Acesso em: 15 dez. 2015.

SPARQL (2015). Sparql 1.1 query language - w3c recommendation 21 march 2013. Disponível em: http://www.w3.org/TR/sparql11-query/. Acesso em: 15 dez. 2015.

Stellman, A. and Greene, J. (2013). Learning Agile: Understanding Scrum, XP, Lean, and Kanban. O’Reilly Media.

W3C (2015). Comunidade word wide web. Disponível em: http://www.w3c.br/Home/WebHome. Acesso em: 20 mai. 2015.

Wildt, D. (2015). Extreme Programming: Práticas Para o Dia a Dia no Desenvolvimento ágil de Software. Casa do Código.

Downloads

Publicado

2016-10-21

Como Citar

Campagnolo, F. Q., & Piveta, E. K. (2016). Representação do Conhecimento de forma a Buscar Oportunidades de Refatoração através de uma Ontologia. Revista ComInG - Communications and Innovations Gazette, 1(2), 74–86. https://doi.org/10.5902/2448190422642

Edição

Seção

Artigos científicos