Produtos gerados: Trabalho de Conclusão de Curso - 2018

MAPEAMENTO ONTOLÓGICO PARA CLASSIFICAR MENSAGENS SIGNIFICATIVAS EM ATIVIDADES COLABORATIVAS

A colaboração permite que os indivíduos possam compartilhar objetos, informações e ideias na tomada de decisão, mas é difícil mensurar a participação de cada pessoa. As informações em um ambiente colaborativo, em sua maioria, são modeladas em diferentes pontos de vista sobre o conhecimento do contexto. Normalmente, cada sistema possui sua própria linguagem e sintaxe para a representação do conhecimento, formando uma semântica local para cada um deles o que dificulta o processamento de dados. As ontologias ajudam a resolver problemas relacionados a semântica porque são capazes de representar, compartilhar e reutilizar conhecimento em comum. Este trabalho tem a finalidade de realizar o mapeamento de interações entre os indivíduos em um ambiente de atividades colaborativas com o uso de ontologias para avaliar as mensagens significativas. A aplicação da ontologia proposta foi aplicada nas mensagens trocadas entre os participantes do Collabora, que é um ambiente de aprendizagem colaborativa para promover a colaboração entre estudantes por meio de um chat e permite a troca de mensagens, links e arquivos para a resolução de atividades. A ontologia proposta consegue identificar a partir das interações entre os participantes quais mensagens podem ser classificadas como significativas.

PROPOSTA DE UM MODELO USANDO AGENTES PARA REFATORAÇÃO DE SOFTWARE

A refatoração de software tem como finalidade aumentar a qualidade do projeto em relação aos atributos de reusabilidade, manutenibilidade e legibilidade. Existem métodos de refatoração que são capazes de ler um código-fonte e detectar e inserir padrões de projeto. As ferramentas automatizadas implementam somente um método de refatoração, por isto, o desenvolvedor deve executar seu projeto em várias ferramentas para conseguir detectar e inserir todos os possíveis padrões de projeto em seu código-fonte. Este trabalho propõe a modelagem de um sistema multiagentes para unificar os métodos de refatoração em um único ambiente contemplando um modelo de agente capaz de ler um código-fonte e refatorá-lo usando padrões de projeto. A metodologia Prometheus foi utilizada na criação do modelo proposto. Como resultado, é apresentado um cenário de teste no qual o modelo criado é capaz de ler um código e aplicar padrões de projeto.

REFATORAÇÃO DA CAMADA DE PERSISTÊNCIA DO FRAMEMK

O FrameMK é um framework de domínio que tem como objetivo estabelecer o preço de venda de um produto ou serviço. Como o software vem sendo desenvolvido por acadêmicos desta instituição ao longo dos anos, diferentes grupos de desenvolvedores acabam trabalhando no projeto o que pode gerar um sistema com o código de difícil entendimento, dificultando a manutenção e evolução do software. As técnicas de refatoração de software catalogadas por especialistas da área surgem como um meio de amenizar esse tipo de problema, tornando o software mais legível, flexível e de manutenção menos custosa. Para auxiliar no processo de refatoração surgem na literatura os métodos de refatoração, que são constituídos por uma sequência de passos definidos que envolvem em sua maioria, análise de projeto e aplicação de técnicas de refatoração. Na literatura existem métodos de refatoração que tratam de diferentes aspectos, podendo ser voltado para uma determinada linguagem de programação, diferentes domínios ou mesmo os que podem ser utilizados de forma geral. Este trabalho realizou um estudo de três métodos de refatoração: baseado em padrões de projeto para sistemas desenvolvidos em linguagem Java, usado de forma geral e o voltado para frameworks de domínio, que é baseado nos dois métodos citados anteriormente e foi utilizado neste trabalho. O método fundamentado em framework de domínio foi adaptado para melhor atender as necessidades encontradas durante a análise da camada de persistência do framework, visando aproveitar o processo já definido. A adaptação do método se mostrou eficiente para os objetivos deste trabalho, tendo em vista que o mesmo auxiliou na detecção de códigos com sintomas de má concepção ou implementação de escolhas, os bad smells em todas as classes da camada trabalhada. A aplicação da refatoração gerou dados quantitativos que possibilitaram analisar o impacto causado pelas técnicas aplicadas em cada uma das classes da camada de persistência do framework. Ao final do processo de refatoração foram aplicadas seis técnicas diferentes, separadas em 5 categorias distintas. As classes refatoradas apresentaram mudanças referentes a quantidade de métodos e linhas de códigos, porém, os resultados relevantes foram as melhorias implementadas na camada trabalhada, reduzindo a complexidade e aumentaram a manutenibilidade do código.

Laboratório de Engenharia de Software e Inteligência Computacional

Siga-nos