Dissertações/Teses

Clique aqui para acessar os arquivos diretamente da Biblioteca Digital de Teses e Dissertações da UFBA

2024
Dissertações
1
  • ISRAEL NASCIMENTO MATOS
  • Reconstituição Temporal de Dados na Internet das Coisas usando Redes Neurais: Uma comparação com métodos clássicos de interpolação

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • CLEBER JORGE LIRA DE SANTANA
  • RICARDO ARAUJO RIOS
  • Data: 31/01/2024

  • Mostrar Resumo
  • Atualmente, vive-se na era do Big Data, na qual instrumentos científicos ultramodernos, redes e mídias sociais, bem como dispositivos da IoT geram e transmitem diariamente pela Internet enormes quantidades de dados. No contexto da IoT, emerge um novo paradigma para mitigar a sobrecarga no envio de tantos dados à nuvem. Assim, em contraste com a computação em nuvem, vem sendo cada vez mais adotado a computação em névoa, com a maior parte do processamento e armazenamento de dados realizado na borda da rede por gateways. Nesse cenário, em ambientes nos quais os sensores coletam informações a cada segundo, por exemplo, em vez de se enviar cada uma das medidas para nuvem, o gateway adota uma estratégia de agregação de dados antes de transmiti-los. No entanto, dado que diversas aplicações requerem os dados conforme originalmente medidos pelos dispositivos, e considerando que a nuvem possui maior capacidade para atender um maior número de clientes em comparação aos gateways, o cenário ideal implica na capacidade da nuvem de reconstituir o histórico dos dados e fornecê-los a essas aplicações. Este trabalho propõe investigar a capacidade da rede neural perceptron de reconstituir o histórico dos dados dos sensores por meio de interpolação, a partir dos valores agregados enviados à nuvem. Uma vez que os dispositivos da IoT são limitados em recursos, o estudo também compara a rede neural perceptron desenvolvida com os algoritmos clássicos de interpolação, a fim de avaliar a eficiência e a eficácia entre os métodos. Para atingir esse objetivo, duas redes neurais foram desenvolvidas, a primeira na borda da rede, que aprende o comportamento dos dados dos sensores no tempo, enquanto a segunda rede neural localizada na nuvem realiza a interpolação a partir dos dados agregados enviados e do modelo gerado pela rede neural da borda. Os resultados obtidos indicam que mesmo uma arquitetura relativamente simples de rede neural como a perceptron pode realizar a interpolação dos dados IoT com uma considerável margem de precisão. Quando comparada com os algoritmos clássicos de interpolação, analisando critérios como Tempo e o EQM, a rede perceptron demonstra-se estatisticamente tão eficaz quanto os métodos classicos, mas menos eficiente no tempo de interpolação. Em síntese, este estudo contribui para a compreensão das possibilidades e limitações da aplicação de redes neurais na reconstituição temporal de dados da IoT e aponta a necessidade de avaliar a mesma comparação com o uso de outras arquiteturas de redes neurais, como por exemplo, a rede neural LSTM.


  • Mostrar Abstract
  • Currently, we live in the era of Big Data, in which cutting-edge scientific instruments, networks, social media, as well as Internet of Things (IoT) devices generate and transmit enormous amounts of data daily through the internet. In the context of IoT, a new paradigm emerges to mitigate the overload in sending such data to the cloud. Thus, in contrast to cloud computing, fog computing is increasingly being adopted, with most of the data processing and storage being performed at the network edge by gateways. In this scenario, in environments where sensors collect information every second, for example, instead of sending each measurement to the cloud, the gateway adopts a data aggregation strategy before transmitting them. However, since various applications require data as originally measured by the devices, and considering that the cloud has greater capacity to serve a larger number of clients compared to gateways, the ideal scenario implies the cloud's ability to reconstruct the data history and provide it to these applications. This work proposes to investigate the capacity of the \textit{perceptron} neural network to reconstruct sensor data history through interpolation from the aggregated values sent to the cloud. Since \ac{IoT} devices are resource-constrained, the study also compares the perceptron neural network developed with classical interpolation algorithms to evaluate the efficiency and effectiveness between the methods. To achieve this goal, two neural networks were developed: the first at the network edge, which learns the behavior of sensor data over time, while the second neural network located in the cloud performs interpolation based on the aggregated data sent and the model generated by the edge neural network. The results obtained indicate that even a relatively simple neural network architecture like the perceptron can perform \ac{IoT} data interpolation with a considerable margin of accuracy. When compared to classical interpolation algorithms, considering criteria such as time and Mean Squared Error (MSE), the perceptron network proves to be statistically as effective as classical methods but less efficient in interpolation time. In summary, this study contributes to understanding the possibilities and limitations of applying neural networks in the temporal reconstruction of \ac{IoT} data and highlights the need to evaluate the same comparison with the use of other neural network architectures, such as Long Short-Term Memory (LSTM) neural networks.

2
  • EDER PEREIRA DOS SANTOS
  • Dívida técnica em projetos ágeis: Investigando o ponto de vista dos profissionais de gerenciamento de projetos adeptos ao Stack Exchange

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • EDUARDO MANUEL DE FREITAS JORGE
  • JOSÉ AMÂNCIO MACEDO SANTOS
  • MANOEL GOMES DE MENDONCA NETO
  • Data: 16/02/2024

  • Mostrar Resumo
  • A Dívida Técnica (DT) pode oferecer benefícios de curto prazo para projetos de software, mas sua presença pode levar à diminuição da qualidade do produto. Embora a literatura recente tenha proposto várias abordagens para identificar e gerenciar a Dívida Técnica de Desenvolvimento Ágil de Software (DT-DAS), a maioria delas analisa o ponto de vista dos desenvolvedores de software. No entanto, existe uma lacuna no conhecimento sobre como os profissionais de gerenciamento de projetos percebem e lidam com os itens de DT-DAS. O objetivo deste estudo é investigar como os praticantes de gerenciamento de projetos discutem e enfrentam itens da DT em suas atividades profissionais. Para atingir esse objetivo, foi realizada uma análise de 108 discussões relacionadas à DT-DAS no site de perguntas e respostas Stack Exchange Project Management (SEPM). Essas discussões totalizaram 547 postagens e 882 comentários de texto, fornecendo uma boa visão do tema. A análise foi conduzida utilizando métodos quantitativos e qualitativos, empregando a codificação aberta para identificar tipos de DT e indicadores. O estudo identificou 74 indicadores utilizados para reconhecer itens de DT-DAS, 126 práticas de gestão de DT e 9 tipos de DT. As discussões mais frequentes no SEPM sobre dívida técnica concentram-se em dois tipos processo e pessoas, diferindo dos estudos anteriores com desenvolvedores, que costumavam focar em itens de dívida de código e design. Além disso, o Product Owner e Development Team são os papeis mais envolvidos com a DT-DAS. Sprint Backlog e Sprint Planning são os elementos ágeis mais afetados pela DT-DAS. Os profissionais de gerenciamento de projetos usuário do SEMP adotam uma perspectiva distinta dos desenvolvedores ao analisar a DT. Os indicadores e práticas de gestão da DT foram estruturados em um diagrama de Sankey, proporcionando uma ferramenta valiosa para orientar a gestão da DT e orientar futuras pesquisas sobre o assunto.


  • Mostrar Abstract
  • Technical Debt (TD) can provide short-term benefits for software projects, but its presence can lead to decreased product quality. Although recent literature has proposed several approaches to identify and manage Agile Software Development Technical Debt (TD-ASD), most of them look at the point of view of software developers. However, there is a gap in knowledge about how project management professionals perceive and deal with TD-ASD items. The objective of this study is to investigate how project management practitioners discuss and face TD items in their professional activities. To achieve this objective, an analysis of 108 discussions related to TD-ASD was carried out on the Stack Exchange Project Management (SEPM) question and answer website. These discussions totaled 547 posts and 882 text comments, providing a good overview of the topic. The analysis was conducted using quantitative and qualitative methods, employing open coding to identify types of TD and indicators. The study identified 74 indicators used to recognize TD-ASD items, 126 TD management practices and 9 types of TD. The most frequent discussions in SEPM about technical debt focus on two types of process and people, differing from previous studies with developers, which tended to focus on code and design debt items. Furthermore, the Product Owner and Development Team are the roles most involved with TD-ASD. Sprint Backlog and Sprint Planning are the agile elements most affected by TD-ASD. Project management professionals who use SEMP adopt a different perspective than developers when analyzing TD. TD management indicators and practices were structured in a Sankey diagram, providing a valuable tool to guide ID management and guide future research on the subject.

Teses
1
  • ALEX SILVA SANTOS
  • POLÍTICAS DE ALOCAÇÃO DE RECURSOS EM SITUAÇÃO DE DESASTRE 

  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • BRUNO PEREIRA DOS SANTOS
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • HELDER MAY NUNES DA SILVA OLIVEIRA
  • MAYCON LEONE MACIEL PEIXOTO
  • RODRIGO IZIDORO TININI
  • Data: 29/01/2024

  • Mostrar Resumo
  • As redes ópticas elásticas (EON) permitem a transmissão de grande volume de dados através de múltiplos canais com diferentes granularidades de espectro. Entretanto, a disponibilidade de recursos das redes EON pode ser severamente impactada por conges- tionamento, desastres naturais ou ataques provocados pelo homem. Para lidar com estas restrições de recursos, o operador da rede precisa fazer escolhas sobre qual caminho de luz será servido pela rede. A tomada de decisão deve levar em consideração os requisitos das diferentes Classes de Serviço (CoS), bem como a possibilidade da degradação do ser- viço, fornecendo largura de banda inferior à solicitada ou ajustando o instante de tempo do estabelecimento do canal óptico, para adaptar o provisionamento da rede quando os recursos ópticos são insuficientes. Nesta tese de doutorado, abordam-se problemas rela- cionados com a escassez de recursos e sobrevivência em Redes Ópticas Elásticas. Foram desenvolvidas e validadas estratégias pelo menos tão eficientes quanto as estratégias exis- tentes na literatura: um algoritmo que considera um modelo de Qualidade de Serviço (QoS) proporcional e informações de camadas superiores para decidir qual caminho óptico a ser degradado no provisionamento, visando reduzir o impacto da indisponibilidade de recursos em aplicações sensíveis a atrasos e largura de banda; um algoritmo que utiliza uma técnica híbrida de tomada de decisão multicritério para selecionar as requisições a serem provisionadas; um algoritmo para selecionar caminhos ópticos a serem restaurados após desastres; um algoritmo que visa reduzir a fragmentação do espectro em Redes Ópti- cas Elásticas alocando novas requisições em caminhos que produzam menor fragmentação de espectro após a alocação. Alguns dos algoritmos propostos possuem uma abordagem de decisão multicritério que considera CoS, largura de banda, número de saltos e tempo de conclusão. Além disso, a degradação do serviço também é considerada para caminhos ópticos que não podem ser restaurados com largura de banda total. 


  • Mostrar Abstract
  • Elastic optical networks (EON) allow the transmission of large volumes of data through multiple channels with different spectrum granularities. However, the resource availability of EON networks can be severely impacted by congestion, natural disasters or human- made attacks. To deal with these resource constraints, the network operator needs to make choices about which lightpath will be served by the network. The Decision-making process must take into account requirements of the different Classes of Service (CoS), as well as the possibility of service degradation, providing lower bandwidth than reques- ted or adjusting the time instant of establishing the ligthpath, to adapt the network provisioning when optical resources are insufficient. In this doctoral thesis, problems related to the scarcity of resources and survival in Elastic Optical Networks are addres- sed. Strategies that were at least as efficient as existing strategies in the literature were developed and validated: an algorithm that considers a proportional Quality of Service (QoS) model and information from higher layers to decide which lightpath to be degra- ded in provisioning process, aiming to reduce the impact the unavailability of resources in applications sensitive to delays and bandwidth; an algorithm that uses a hybrid multi- criteria decision-making technique to select requests to be provisioned; an algorithm for selecting lightpaths to be restored after disasters; an algorithm that aims to reduce spec- trum fragmentation in Elastic Optical Networks by allocating new requests on paths that produce less spectrum fragmentation after allocation. Some of the proposed algorithms have a multi-criteria decision approach that considers CoS, bandwidth, number of hops and completion time. Furthermore, service degradation is also considered for lightpaths that cannot be restored to full bandwidth. 

2
  • GLAUCYA CARREIRO BOECHAT
  • Uma Investigação sobre Análise de Sentimentos e Categorização de Issues Reabertas do GitHub

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • EMMANUEL SÁVIO SILVA FREIRE
  • GLAUCO DE FIGUEIREDO CARNEIRO
  • MANOEL GOMES DE MENDONCA NETO
  • MÁRIO ANDRÉ DE FREITAS FARIAS
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 08/03/2024

  • Mostrar Resumo
  •    A reabertura de issues representa um desafio significativo no desenvolvimento e manutenção de software, aumentando os custos e a complexidade dos esforços envolvidos. Essa ocorrência muitas vezes indica problemas não resolvidos ou mal compreendidos na comunicação entre os colaboradores do projeto e os usuários em plataformas como o GitHub.
    Esta tese tem como objetivo aprofundar a compreensão do conceito de reabertura de issues em repositórios de software de código aberto do GitHub, considerando dados históricos, categorização de issues e análise de sentimentos dos desenvolvedores presentes nas discussões associadas a essas issues.
       Nossa metodologia envolveu o uso da ferramenta SentiStrength-SE, adaptada para léxicos da área de Engenharia de Software, para calcular a polaridade e o sentimento nos textos das discussões relacionadas às issues. Em seguida, desenvolvemos um modelo de categorização automática de issues, classificando-as em categorias específicas, como banco de dados, configuração, desempenho, funcional, GUI, info, permissão/obsoleto, redes, segurança e testes. Essa abordagem permite uma priorização mais eficaz na resolução das issues reabertas, direcionando recursos de forma mais precisa. Por último, caracterizamos a reabertura de issues de acordo com os sentimentos dos desenvolvedores contidos nos textos das discussões em cada categoria de issue.
       Os resultados revelaram que a análise de sentimentos, quando aplicada isoladamente, não mostrou uma métrica eficaz para identificar reabertura de issues. No entanto, identificamos que certos tipos de categorias de issues estão mais propensos a problemas relacionados à reabertura. Isso aponta para a importância da categorização de issues em conjunto com a análise de sentimentos para uma abordagem mais eficiente na prevenção e tratamento das reabertura de issues em repositórios de software de código aberto.


  • Mostrar Abstract
  •     The reopening of issues represents a significant challenge in software development and maintenance, increasing the costs and complexity of the efforts involved. This occurrence often indicates unresolved or misunderstood issues in communication between project collaborators and users on platforms like GitHub.
       This thesis aims to deepen the understanding of issue reopenings in open-source GitHub software repositories, considering historical data, issue categorization, and sentiment analysis of developers involved in the associated discussions.
       Our methodology involved using the SentiStrength-SE tool, adapted for lexicons in the field of Software Engineering, to calculate polarity and sentiment in the texts of discussions related to issues. Subsequently, we developed an automated issue categorization model, classifying them into specific categories such as configuration, database-related, program anomaly, performance, functional, GUI-related, info, permission/deprecation, network, security, and testing. This approach enables more effective prioritization in resolving reopened issues, directing resources more accurately. Finally, we characterized issue reopenings based on the sentiments of developers expressed in discussions within each issue category.
      The results revealed that sentiment analysis, when applied in isolation, did not prove to be an effective metric for identifying issue reopenings. However, we identified that certain types of issue categories are more prone to problems related to reopening. This underscores the importance of combining issue categorization with sentiment analysis for a more efficient approach to preventing and addressing issue reopenings in open-source software repositories.

3
  • ELIDIANE PEREIRA DO NASCIMENTO
  • FRB-BlinGui: Um Modelo Baseado em Regras Fuzzy para Previsão de Riscos de Colisão com Obstáculos em Apoio a Pessoas com Deficiência Visual.

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • KAMILA RIOS DA HORA RODRIGUES
  • MANOEL CARVALHO MARQUES NETO
  • RICARDO ARAUJO RIOS
  • TATIANE NOGUEIRA RIOS
  • VANINHA VIEIRA DOS SANTOS
  • Data: 02/04/2024

  • Mostrar Resumo
  • É possível observar na literatura que diversas abordagens são desenvolvidas para a navegação segura e orientação de pessoas com deficiência visual, visando evitar colisões com obstáculos. Essas abordagens frequentemente utilizam sensores ultrassônicos ou infravermelhos, aplicativos móveis com o auxílio de câmeras para visão computacional ou dispositivos vestíveis. No entanto, as incertezas e imprecisões decorrentes da dinâmica do ambiente muitas vezes são negligenciadas, tornando a navegação e orientação para pessoas com deficiência visual inseguras e sujeitas a vários tipos de colisões com diversos tipos de obstáculos. Diante dessa situação, surge a necessidade de desenvolver abordagens que considerem o grau de risco de colisão apresentado por cada obstáculo, considerando a dinâmica no deslocamento entre o indivíduo e o obstáculo, bem como a sua localização em pontos altos ou baixos de difícil percepção. Nesse contexto, a Teoria de Conjuntos Fuzzy (TCF) apresenta-se como um ferramental essencial para lidar com a imprecisão e as incertezas existentes no ambiente, uma vez que o uso de sistemas baseados na TCF possui a vantagem da interpretação intuitiva do comportamento do usuário. Sendo assim, esta tese apresenta um modelo inovador para detecção de obstáculos e previsão de riscos de colisões em cenários dinâmicos, denominado FRB-BlinGui (Modelo de navegação e orientação cega baseado em regras fuzzy). O modelo proposto foi testado em um dispositivo vestível para detectar obstáculos e prevenir colisões em tempo real, oferecendo alertas graduais sobre os riscos. Os resultados mostram sua eficácia ao fornecer alertas, prometendo melhorar a segurança e mobilidade de pessoas com deficiência visual.


  • Mostrar Abstract
  • It is possible to observe in the literature that several approaches are developed for safe navigation and orientation of people with visual impairments, aiming to avoid collisions with obstacles. These approaches often use ultrasonic or infrared sensors, mobile applications with cameras for computer vision, or wearable devices. However, uncertainties and inaccuracies resulting from the dynamics of the environment are often overlooked, making navigation and orientation for people with visual impairments insecure and subject to various types of collisions with different types of obstacles. Faced with this situation, there is a need to develop approaches that consider the degree of collision risk presented by each obstacle, the dynamics in the displacement between the individual and the obstacle, and its location at high or low points of complex perception. In this context, the fuzzy set theory (FST) presents itself as an essential tool for dealing with the imprecision and uncertainties existing in the environment since the use of systems based on FST has the advantage of intuitively interpreting user behavior. Thus, this thesis presents an innovative obstacle detection and collision risk prediction model called FRB-BlinGui in dynamic scenarios. The proposed model was tested on a wearable device to detect obstacles and prevent collisions in real time, offering gradual alerts about risks. The results show its effectiveness in providing alerts, promising to improve the safety and mobility of people with visual impairments.

2023
Dissertações
1
  • PEDRO HENRIQUE BATISTA DIAMANTINO
  • Visual Analytics no Apoio à Exploração Visual de Dívidas Técnicas em Repositórios de Softwares

  • Orientador : DANILO BARBOSA COIMBRA
  • MEMBROS DA BANCA :
  • DANILO BARBOSA COIMBRA
  • MANOEL GOMES DE MENDONCA NETO
  • DANIEL GARCIA FEITOSA
  • Data: 26/01/2023

  • Mostrar Resumo
  • O uso crescente de tecnologias digitais ocasionam uma produção e consumo de dados em larga escala em todo o mundo. Consequentimente, há uma grande demanda por técnicas de análise computacional que auxiliem os usuários a obter uma melhor compreensão dos dados. Um desafio inerente a esse contexto é analisar grande volume de dados complexos e heterogêneos, como os concebidos por repositórios de software. Áreas como Visualização de Software e Visual Software Analytics têm se tornado cada vez mais usadas para apoiar os desenvolvedores na compreensão do software, fornecendo um panorama visual de todo o processo de desenvolvimento. Essas representações gráficas fornecem extração de informações úteis, especialmente para manutenção do sistema ao analisar dívidas técnicas. Embora os repositórios sejam compostos em sua maioria por conjuntos de dados multidimensionais, faltam trabalhos que apliquem visualizações multidimensionais para identificar e rastrear tipos distintos de dívidas técnicas.
    Nesse sentido, a proposta apresenta a ferramenta Visual Debts Analytics, uma abordagem baseada em Visual Analytics composta por múltiplas visualizações multidimensionais coordenadas para a análise de diferentes grupos de dívidas técnicas em repositórios de software. Em particular, a técnica proposta visa identificar e rastrear a correlação, estrutura, evolução e semelhanças de dívidas técnicas em repositórios de software de código aberto. Para avaliar nossa abordagem, apresentamos estudos de caso em dois repositórios que demonstram uma melhor compreensão do ciclo de vida do projeto, permitindo extrair novos insights e informações.


  • Mostrar Abstract
  • The increasing access to digital technologies leads to a large-scale data production and consumption worldwide. Consequently, there is a high demand for computing analysis techniques that help users to obtain a better understanding of data. An inherent challenge in this context is to analyze large volume of complex and heterogeneous datasets, such as conceived by software repositories. Areas such as Software Visualization and Visual Software Analytics have become increasingly used to support developers in software comprehension by providing a visual panorama of the entire software development process. Those graphical representations enable useful information extraction, especially for system maintenance when analyzing technical debts. Although repositories are mostly composed of multidimensional datasets, there is a lack of works that apply multidimensional visualizations to identify and track distinct groups of technical debts. In this sense, the proposal presents the Visual Debts Analytics tool, an approach based on Visual Analytics consisting of multiple coordinated multidimensional visualizations for the analysis of different groups of technical debts in software repositories. In particular, the proposed technique aims to identify and track the correlation, structure, evolution and similarities of technical debts in open-source software repositories. To evaluate our approach we presented case studies in two different repositories that demonstrate the a better comprehension in the project life cycle, enabling insights into the project quality.

2
  • ERINALDO SANTOS OLIVEIRA
  • Um Modelo para Avaliar a Eficácia do Uso de Projetos FLOSS no Ensino de Engenharia de Software: Uma Proposta baseada em Análise de Conteúdo

  • Orientador : CHRISTINA VON FLACH GARCIA CHAVEZ
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • LAIS DO NASCIMENTO SALVADOR
  • ROBERTO ALMEIDA BITTENCOURT
  • Data: 31/03/2023

  • Mostrar Resumo
  • Contexto: A  demanda crescente da indústria de software por profissionais qualificados coloca em evidência a importância e necessidade de valorização da Educação em Engenharia de Software (EES) na formação de egressos dos cursos superiores da área de Computação. Educadores são desafiados continuamente a acompanhar as tendências emergentes na área, a identificar técnicas adequadas e incorporá-las em suas disciplinas de engenharia de software, de modo a promover o desenvolvimento de habilidades e competências que garantam aos egressos dos cursos da área de Computação uma formação que concilie o aprendizado de conceitos, processos, técnicas e ferramentas proporcionado no ambiente acadêmico com as necessidades e melhores práticas da indústria de software. Projetos de Software Livre/Código Aberto (FLOSS) trazem uma oportunidade para que estudantes e professores de cursos de graduação possam trabalhar o conteúdo da disciplina de engenharia de software em projetos realistas, que trazem uma experiência de mundo real próxima das exigências do mundo do trabalho. Problema: Um dos desafios associados ao uso de FLOSS na EES é como o educador pode avaliar o projeto escolhido como recurso de ensino e aprendizagem, bem como sua eficácia para o objetivo pedagógico proposto pela atividade ou disciplina. Torna-se relevante o uso de métodos ou modelos de avaliação que permitam ao docente mensurar e avaliar os resultados provenientes da sua escolha, de acordo com as exigências de aprendizagem necessárias após a conclusão da atividade ou disciplina. Objetivo: Este trabalho propõe a criação de um modelo para avaliar a eficácia do uso de projetos FLOSS no ensino da disciplina de Engenharia de Software. O modelo proposto será baseado no mapeamento de critérios de avaliação que serão estruturados de forma a facilitar a análise sobre o alcance dos objetivos pedagógicos planejados para o componente curricular. Método de Pesquisa: Por meio da Análise de Conteúdo, pretende-se identificar competências e habilidades técnicas e sociotécnicas mais relevantes para a disciplina de Engenharia de Software, segundo as principais diretrizes curriculares do Brasil e do exterior, e investigar aspectos de interferência tanto técnicas quanto pedagógicas, do uso de projetos FLOSS no ensino da disciplina de engenharia de software. Com base nestas informações, pretende-se definir os critérios de avaliação e, por meio de um diálogo teórico, identificar suas relações para propor um modelo de avaliação da eficácia do uso de projetos FLOSS no ensino de Engenharia de Software. Contribuições Esperadas: O uso de métodos para avaliar projetos FLOSS na EES mostra-se uma solução viável para o desenvolvimento real de competências e habilidades associadas a aspectos teóricos e práticos da engenharia de software, importantes na formação de profissionais das diversas vertentes da área de Computação. O uso de métodos para avaliar projetos FLOSS na EES pode estimular a inserção dos educadores no ecossistema de FLOSS, além de oferecer novas formas de avaliação aos que reconhecem e adotam tais projetos em sala de aula. 


  • Mostrar Abstract
  • Context: The software industry's growing demand for qualified professionals highlights the importance and need for valuing Education in Software Engineering in the training of graduates from higher education courses in the area of Computing. Educators are continually challenged to keep up with emerging trends in the area, to identify appropriate techniques and incorporate them into their software engineering disciplines, in order to promote the development of skills and competences that guarantee graduates of courses in the area of Computing an education that reconciles the learning of concepts, processes, techniques and tools provided in the academic environment with the needs and best practices of the software industry. Free, Libre and Open Source software projects provide an opportunity for students and professors of undergraduate courses to work on the content of the software engineering discipline in realistic projects, which bring a real-world experience close to the demands of the world of work. Problem: One of the challenges associated with the use of FLOSS in the EES is how the educator can evaluate the chosen project as a teaching and learning resource, as well as its effectiveness for the pedagogical objective proposed by the activity or discipline. It is relevant to use evaluation methods or models that allow the professor to measure and evaluate the results from his choice, according to the learning requirements necessary after the conclusion of the activity or discipline. Objective: This work proposes the creation of a model to evaluate the effectiveness of using FLOSS projects in the teaching of Software Engineering. The proposed model will be based on the mapping of evaluation criteria that will be structured in order to facilitate the analysis of the scope of the pedagogical objectives planned for the curricular component. Research Methods: Through Content Analysis, the aim is to identify the most relevant technical and sociotechnical skills and abilities for the Software Engineering discipline, according to the main curricular guidelines in Brazil and abroad, and to investigate aspects of interference, both technical and pedagogical, of the use of FLOSS projects in teaching the discipline of software engineering. Based on this information, it is intended to define the evaluation criteria and, through a theoretical dialogue, identify their relationships to propose a Model for evaluating the effectiveness of the use of FLOSS projects in the teaching of Software Engineering. Expected Contributions: The use of methods to evaluate FLOSS projects in the EES can stimulate the insertion of educators in the FLOSS ecosystem, in addition to offering new forms of evaluation to those who recognize and adopt such projects in the classroom, a solution to the real development of skills and abilities associated with theoretical and practical aspects of software engineering, important in the training of professionals from the various areas of the Computing area.

3
  • Levy Marlon Souza Santiago
  • Gifflar: um Framework para Geração de Contratos Inteligentes em Tempo de Execução

  • Orientador : FABIOLA GONCALVES PEREIRA GREVE
  • MEMBROS DA BANCA :
  • FABIOLA GONCALVES PEREIRA GREVE
  • RODRIGO ROCHA GOMES E SOUZA
  • ALEX BORGES VIEIRA
  • Data: 18/04/2023

  • Mostrar Resumo
  • Blockchain é uma tecnologia disruptiva que permite transações diretas entre entidades distribuídas sem a necessidade de uma terceira parte confiável, oferecendo uma rede descentralizada segura. Contratos inteligentes (SmCs) são códigos executáveis hospedados na blockchain e permitem a implementação de aplicações descentralizadas, em diferentes domínios. Devido à complexidade de construção dos SmCs, é necessário buscar formas de facilitar e tornar robusto esse processo de desenvolvimento inovador. Muitos projetos da literatura propuseram soluções baseadas em geração automática de código a partir de uma modelagem de alto nível, como diagramas. Porém, esta abordagem traz consigo uma constante necessidade de uma pessoa para modelar os contratos e realizar o processo de compilação e implantação. Esta dissertação de mestrado apresenta o Gifflar, um framework para geração automática de código de SmC em tempo de execução, que permite a um sistema escrever, compilar e implantar SmCs numa rede blockchain com uma aplicação ainda em execução, o que reduz a frequente precisão do desenvolvedor de SmC e possibilita automatizar ainda mais o processo de desenvolvimento de SmC. Uma das suas principais ferramentas é uma biblioteca estruturada em componentes que implementam padrões de projeto para melhor definir a responsabilidade de cada uma dessas partes. A biblioteca Gifflar oferece uma API que permite ao desenvolvedor modelar, gerar códigos e gerenciar os SmCs através de métodos que abstraem até certo nível o código do SmC utilizando o JSON como modelo para a geração de código. Em complemento, foram realizadas duas avaliações para validar o projeto: (i) uma avaliação de usabilidade da biblioteca do Gifflar e (ii) uma avaliação conceitual de aplicação do Gifflar em outros projetos. Até onde se sabe, este framework é um dos primeiros a permitir gerar SmCs dinamicamente em tempo de execução, assim contribuindo para o estado da arte ao abordar um novo paradigma, onde os sistemas podem atuar como desenvolvedores de contratos inteligentes.


  • Mostrar Abstract
  • Blockchain is a disruptive technology that offers a secure decentralized network, and allows for direct transactions between distributed entities, without the need for a trusted third party. Smart contracts (SmC) are executable codes hosted on the blockchain and enable the implementation of several decentralized applications, in different domains. However, due to the complexity of SmC construction, it is necessary to seek ways to facilitate and make this innovative development process robust. Many projects in the literature proposed solutions based on automatic code generation from high-level modeling, such as diagrams. However, this approach brings with it a constant need for a person to model the contracts. This paper presents Gifflar, a framework for generating SmC code on the fly, in such a way that it allows a system to write, compile and implement blockchain SmCs with an application still running, which reduces the frequent precision of the SmC developer and allows to further automate the SmC development process. One of the main tools is a component-structured library that implements design patterns to better define the responsibility of each of these parts. The Gifflar library offers an API that allows the developer to model, generate code and manage SmCs through methods that abstract to a certain level the SmC code using the JSON as a model to the code generation. In addition, project evaluations were carried out to validate the project: (i) a usability evaluation of the Gifflar library and (ii) a conceptual evaluation of Gifflar's application in other projects. As far as we know, this framework is one of the first to allow dynamically generating SmCs on the fly, thus contributing to the state of the art by approaching a new paradigm, where systems can act as smart contract developers.

4
  • Ibirisol Fontes Ferreira
  • Algoritmos de Roteamento Multicast Orientados a Justiça para Aplicações Distribuidas Interativas Usando COmputação na Borda

  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • TIAGO DE OLIVEIRA JANUARIO
  • MAYCON LEONE MACIEL PEIXOTO
  • JOSE AUGUSTO SURUAGY MONTEIRO
  • Data: 27/04/2023

  • Mostrar Resumo
  • Enfrentar os desafios dos serviços de rede na borda, como o roteamento considerando a Qualidade de Serviço, é uma questão crucial para os atuais esforços de pesquisa na área de redes. O roteamento multicast é uma técnica essencial para entregar serviços de roteamento com alto nível de otimização sob a perspectiva das operadoras e provedores de aplicações quando há grupos de usuários.
    Além disso, o roteamento considerando restrições de latência tem obstáculos para mesclar diferentes condições na solução, principalmente quando há uma perspectiva de equidade a ser realizada na comunicação dos usuários. Este trabalho visa lidar com este requisito de justiça no multicasting, apresentando soluções eficientes para aumentar o equilíbrio no roteamento através da escolha de melhores opções de caminhos para interação justa do grupo.


  • Mostrar Abstract
  • Facing the challenges of network services on the edge, such as routing considering quality of service, is a crucial issue for the current research efforts in the area of network. Multicast routing is an essential technique for delivering routing services with a high level of optimization from the perspective of operators and application providers when there are user groups.
    Furthermore, the routing that considers latency constraints has obstacles to merging different conditions in the solution, mainly when there is a fairness perspective to be accomplished in the users' communication. This work aims to deal with this fairness requirement in multicasting, showing efficient solutions to increase the equilibrium in the routing by choosing better path options for fair group interaction.

5
  • Caiza Almeida Fortunato
  • ATAM-4SAS: Um método para avaliar atributos de qualidade em sistemas autoadaptativos

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • LUCIANA LOURDES SILVA
  • CARLA ILANE MOREIRA BEZERRA
  • IVAN DO CARMO MACHADO
  • Data: 04/05/2023

  • Mostrar Resumo
  • Sistemas autoadaptativos podem monitorar a si mesmos e ao seu contexto. Eles podem detectar mudanças e reagir à condições inesperadas com o mínimo de supervisão humana durante a sua execução. Um dos desafios por trás do desenvolvimento de sistemas autoadaptativos é lidar com o processo de tomada de decisão durante a análise dos pontos de \textit{tradeoff} dentre os múltiplos atributos de qualidade (QA). Em Engenharia de Software, um método amplamente aceito de avaliação das metas de QA em projetos de software é o Método de Análise de \textit{Tradeoffs} Arquiteturais, amplamente conhecido como ATAM. Entretanto, apesar de sua importância e ampla aceitação, há poucos relatos de estudos empíricos sobre a análise de \textit{tradeoffs} de QA em sistemas autoadaptativos. Neste sentido, a presente investigação propõe uma versão adaptada do ATAM chamada ATAM-4SAS para lidar com as particularidades de sistemas de software autoadaptativos. Para alcançar o objetivo da pesquisa, empregamos o UPPAAL SMC (modelo de verificação estatística) para analisar um conjunto de QA. Para avaliar a viabilidade do método proposto, realizamos um estudo empírico sobre a execução do ATAM-4SAS em um sistema autoadaptativo desenvolvido conforme o modelo MAPE-K. Este modelo engloba as fases de Monitoramento, Análise, Planejamento e Execução. Tais etapas compartilham uma base de conhecimento (K), fundamental no apoio à tomada de decisões. A avaliação empírica foi complementada com a realização de um grupo focal, que buscou avaliar a facilidade de uso percebida e a utilidade percebida do ATAM-4SAS para apoiar a escolha estratégica de QA em um sistema autoadaptativo. Como resultado, obervamos que maioria dos participantes concordou que o ATAM-4SAS provê o devido suporte para a escolha estratégica dos QA em sistemas autoadaptativos. 


  • Mostrar Abstract
  • Self-adaptive Systems (SAS) can monitor themselves and their context. They can detect changes and react to unexpected conditions with minimal human supervision during their execution. One of the challenges behind developing SAS is dealing with the decision-making process while analyzing the tradeoff points among the multiple quality attributes (QA). In Software Engineering, a widely accepted method of evaluating QA goals in software projects is the Architecture Tradeoff Analysis Method (ATAM). However, despite its importance and wide acceptance, there are few reports of empirical studies on analyzing QA tradeoffs in SAS. In this sense, the present investigation proposes an adapted version of ATAM called ATAM-4SAS to deal with the particularities of SAS. To achieve the research goal, we employed the UPPAAL SMC (statistical verification model) to analyze a set of QA. To evaluate the feasibility of the proposed method, we performed an empirical study on the execution of the ATAM-4SAS in a SAS developed according to the MAPE-K model. This model encompasses the Monitoring, Analysis, Planning, and Execution phases. Such steps share a knowledge base (K), which is fundamental in supporting decision-making. We complemented the empirical evaluation by conducting a focus group, which sought to assess the perceived ease of use and the perceived usefulness of the ATAM-4SAS to support the strategic choice of QA in a SAS. As a result, we observed that most participants agreed that ATAM-4SAS provides adequate support for the strategic choice of QA in SAS.

6
  • RENATA DE SOUSA SANTOS
  • Process Smell 2.0: Um catálogo de Bad Smells para processo de software utilizando BPMN

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • ANA PATRICIA FONTES MAGALHÃES MASCARENHAS
  • CLAUDIO NOGUEIRA SANT ANNA
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 04/05/2023

  • Mostrar Resumo
  • Um processo de software explicitamente especificado aprimora a qualidade do produto
    gerado, pois a especifica ̧c ̃ao direciona o caminho e passos a serem seguidos para que o
    software desenvolvido alcance a qualidade almejada pelo projeto. O processo de software

    evolui juntamente `as necessidades da organiza ̧c ̃ao e dos profissionais que o utilizam,e pre-
    cisa ser continuamente monitorado e avaliado para manter sua qualidade. Para avaliar

    um processo de software utiliza-se, comumente de simula ̧c ̃oes ou dados obtidos ap ́os uma

    execu ̧c ̃ao. Entretanto, em ambos os casos ́e dif ́ıcil prever problemas no processo de soft-
    ware em um determinado projeto de desenvolvimento antes de uma ou mais execu ̧c ̃oes.

    Diante disso,Process Smells foram propostos para possibilitar que problemas no design
    de processos de software pudessem ser identificados antes destes serem executados. A
    presen ̧ca de um Process Smell poder ́a ter um impacto negativo na qualidade do processo
    afetando assim a qualidade do produto de software. Inicialmente Process Smells foram
    especificados utilizando-se a nota ̧c ̃ao Software Process Specification Metamodel (SPEM).

    Apesar do SPEM ser uma linguagem para o dom ́ınio da modelagem de processos, Busi-
    ness Process Model and Notation (BPMN) tem sido utilizada largamente para processos

    de forma geral, com alta popularidade tanto no mercado e academia, neste sentido a espe-
    cifica ̧c ̃ao de um novo cat ́alogo pode permitir que process smells sejam compreendidos de

    forma independente de dom ́ınio de linguagem. Ainda no contexto de melhoria de processo,
    da mesma forma que o SPEM, embora o BPMN seja usado para melhorar o entendimento

    de um processo, a especifica ̧c ̃ao de um processo pode ser feita de forma inadequada, fe-
    rindo os fatores necess ́arios para a qualidade de um processo de software. Neste contexto,

    esta pesquisa teve como objetivo especificar um cat ́alogo de Process Smells para apoiar a
    identifica ̧c ̃ao de anomalias em processos de software especificado com BPMN a partir da
    proposta de (SANTOS; MACIEL; SANT’ANNA, 2018). Inicialmente, os Process Smells
    foram especificados em BPMN, originando assim um novo cat ́alogo com 8 Process Smells,
    o Process Smells 2.0. A especifica ̧c ̃ao foi avaliada por trinta e dois profissionais atrav ́es
    de um estudo de entrevista, que indicou que o novo cat ́alogo proposto de Process Smells
    foi aceito por estes profissionais. Atrav ́es dos resultados obtidos neste estudo foi poss ́ıvel
    verificar que a proposta de identificar smells independente do dom ́ınio de linguagem faz
    sentido, bem como a segunda etapa do estudo se mostrou mais convergente em rela ̧c ̃ao ao
    SPEM. Espera-se que a especifica ̧c ̃ao do cat ́alogo possa apoiar a identifica ̧c ̃ao de Process
    Smells em processo de software modelados usando BPMN, de forma a indicar os pontos
    onde o processo pode ser melhorado, antes mesmo da sua primeira execu ̧c ̃ao, evitando

    problemas que afetam negativamente os atributos de qualidade do processo. Adicional-
    mente, espera-se que o novo cat ́alogo possa ampliar a possibilidade de uso dos Process

    Smells.


  • Mostrar Abstract
  • An explicitly specified software process improves the quality of the generated product.
    The specification directs the path and steps to be followed so that the developed software
    reaches the quality desired by the project. The software process evolves along with the
    needs of the organization and the professionals who use it. It needs to be continuously

    monitored and evaluated to maintain its quality. To evaluate a software process, simula-
    tions or data obtained after execution are commonly used. However, in both cases, it is

    difficult to predict problems in the software process in a given development project before
    one or more executions. Therefore, Process Smells were proposed to enable problems in
    the design of software processes to be identified before they were executed. The presence
    of a Process Smell can negatively impact the quality of the Process, thus affecting the

    quality of the software product. Initially, Process Smells were specified using the Soft-
    ware Process Specification Metamodel (SPEM) notation. Although SPEM is a language

    for the domain of process modeling, Business Process Model and Notation (BPMN) has
    been widely used for processes in general, with high popularity both in the market and
    academia. In this sense, the specification of a new catalog can allow Process smells to

    be understood independently of the language domain. Still, in the context of process im-
    provement, just like SPEM, although BPMN is used to improve the understanding of a

    process, the specification of a process can be done inappropriately, injuring the necessary
    factors for the quality of a process of software. In this context, this research aimed to
    specify a Process Smells catalog to support the identification of anomalies in software
    processes specified with BPMN based on the (SANTOS; MACIEL; SANT’ANNA, 2018)

    proposal. Initially, Process Smells were specified in BPMN, thus originating a new ca-
    talog with 8 Process Smells, Process Smells 2.0. Thirty-two professionals evaluated the

    specification through an interview study, which indicated that these professionals accep-
    ted the proposed new Process Smells catalog. The results obtained in this study made it

    possible to verify that the proposal to identify smells regardless of the language domain
    makes sense. The second stage of the study proved to be more concurrent with SPEM.
    The catalog specification is expected to support the identification of Process Smells in
    software processes modeled using BPMN to indicate the points where the Process can be
    improved, even before its first execution, avoiding problems that negatively affect process
    quality attributes. Additionally, the new catalog is expected to expand the possibility of
    using Process Smells.

7
  • Jamile de Barros Vasconcelos
  • AVALIAÇÃO EXPERIMENTAL DO USO DE ESTATÍSTICA DOS VALORES EXTREMOS NA DETERMINAÇÃO DE LIMITES DE TEMPOS DE EXECUÇÃO PARA PROJETO DE SISTEMAS DE TEMPO REAL

  • Orientador : GEORGE MARCONI DE ARAUJO LIMA
  • MEMBROS DA BANCA :
  • GEORGE MARCONI DE ARAUJO LIMA
  • TATIANE NOGUEIRA RIOS
  • VERONICA MARIA CADENA LIMA
  • Data: 30/05/2023

  • Mostrar Resumo
  • Sistemas de tempo real (RTS) são aqueles cujas ações estão sujeitas a restrições tempo- rais, definidas em termos de prazos de execução (deadlines). Um RTS crítico é usualmente  projetado para nunca deixar de cumprir seus deadlines, como é o caso dos sistemas aviônicos e espaciais. Para que isso aconteça, é fundamental que se saiba qual o tempo máximo que cada tarefa leva para executar nestes ambientes, parâmetro conhecido como
    Tempo de Execução no Pior Caso (WCET). Estimar o WCET de uma tarefa não é simples e, no caso das arquiteturas modernas, o mesmo está sujeito a imprevisíveis influências de diferentes elementos de hardware e software, que impedem a identificação de um valor absoluto de WCET. Uma das técnicas mais empregadas, nestes casos, é a Análise Temporal Probabilística Baseada em Medições (MBPTA), fundamentada em um ramo da estatística conhecido como Teoria dos Valores Extremos (EVT). Por meio da MBPTA-EVT pode-se inferir distribuições de probabilidade de pior caso e estimar WCET Probabilísticos (Probabilistic Worst Case Execution Time - pWCET). O presente trabalho visa realizar uma análise experimental do uso da EVT via MBPTA
    para inferência de pWCET, apresentando o processo de aplicação da técnica em um ambiente real RPi e expondo os desafios e falhas encontrados durante este processo; ponto raramente exposto pela literatura. Os resultados parciais apontam que EVT é robusta, mas que apresenta fragilidades pois nem sempre produz modelos adequados e resultados pWCET coerentes. O trabalho está inserido no contexto do projeto Kepler,
    uma cooperação entre a UFBA e o INRIA-Paris.


  • Mostrar Abstract
  • Real-time systems (RTS) are those whose actions are subject to time constraints, defined in terms of execution time deadlines. A hard RTS is usually designed to never miss a deadline, as in the case of avionics and space systems. To guarantee this it is essential to know the maximum time that each task takes to execute, a parameter known as Worst Case Execution Time (WCET). Estimating the WCET of a task is not simple and, in the case of modern architectures, it is subject to unpredictable influences caused by different hardware and software elements, which prevent the derivation of an absolute  WCET value. One of the most used techniques in these cases is the Measurement-Based Probabilistic Timing Analysis (MBPTA) method based on the Extreme Values Theory (EVT) statistical area, for estimating worst-case probability distributions, called Probabilistic WCET (pWCET) . The present work aims to carry out an experimental analysis of the use of EVT via MBPTA for pWCET inference, presenting the process of applying the technique in a real RPi environment and exposing the challenges and flaws encountered during this process; a point rarely demonstrated in the literature. The partial results indicate that EVT is robust, but that has weaknesses because it does not always produce adequate models and
    coherent pWCET results. This work is part of the Kepler project, a cooperation between UFBA and INRIA-Paris.

8
  • TIAGO DA CONCEICAO OLIVEIRA
  • Uma metaheurística iterated local search baseada em simulação para o escalonamento de bombas hidráulicas em redes de distribuição de água

  • Orientador : RAFAEL AUGUSTO DE MELO
  • MEMBROS DA BANCA :
  • CELSO DA CRUZ CARNEIRO RIBEIRO
  • ISLAME FELIPE DA COSTA FERNANDES
  • RAFAEL AUGUSTO DE MELO
  • Data: 17/07/2023

  • Mostrar Resumo
  • Em uma rede de distribuição de água, a utilização de energia elétrica para o funcionamento das bombas pode alcançar 90% do total consumido nesta. Uma vez que o valor cobrado pelo consumo de energia elétrica pode variar com o horário, o escalonamento das bombas em horários oportunos pode diminuir o custo com energia. Escalonamentos de bombas ótimos ou quase ótimos não são triviais dadas as restrições não lineares da WDN, as quais inserem o problema de escalonamento de bombas na classe de problemas NP-hard. Assim, o problema de escalonamento de bombas consiste em obter o menor custo monetário operacional, garantindo que a água seja entregue a todos os pontos de demanda, respeitando as restrições físicas da rede de distribuição. Este trabalho tem por finalidade propor métodos heurísticos baseados em simulações, combinando-os em uma metaheurística Iterated Local Search (ILS). Por fim, experimentos computacionais realizados mostraram que a proposta apresentada é bastante promissora, obtendo os melhores resultados utilizando a representação binária com as restrições apresentadas e quando comparado a outras representações de escalonamento os valores obtidos para a instância Vanzyl chegou a soluções que desviam em apenas 0,73% do melhor valor conhecido e em apenas 2,02% do melhor valor conhecido para a Richmond.


  • Mostrar Abstract
  • In a water distribution network, the electricity amount to operate the pumps can achieve 90% of the total electricity consumed. The amount charged for electricity consumption can differ at each time of the day. Therefore, scheduling the pump’s operation at opportune times can reduce energy costs. Optimal or near-optimal pump scheduling is not trivial given the nonlinear constraints of the WDN, which include the pump scheduling problem in the NP-hard class. The pump scheduling problem consists of obtaining the lowest operating monetary cost, guaranteeing that water is delivered to all demand points, and without violating the physical constraints of the water distribution network. This work proposes heuristic methods based on simulations, combining them in a metaheuristic Iterated Local Search (ILS). Computational experiments show that the proposed approach is promissory, obtaining the best results using the binary representation with the restrictions presented in this work, and when compared to other pump scheduling representations, the values obtained for the Vanzyl instance reached solutions that deviate by only 0.73% of the best-known value and at only 2.02% value for Richmond.

9
  • Edmilson dos Santos de Jesus
  • MODELOS DE APRENDIZAGEM DE MÁQUINA PARA PREVISÃO DA DEMANDA DE ÁGUA DA REGIÃO METROPOLITANA DE SALVADOR, BAHIA

  • Orientador : GECYNALDA SOARES DA SILVA GOMES
  • MEMBROS DA BANCA :
  • ANDERSON LUIZ ARA SOUZA
  • GECYNALDA SOARES DA SILVA GOMES
  • PAULO HENRIQUE FERREIRA DA SILVA
  • Data: 31/07/2023

  • Mostrar Resumo
  • O objetivo deste trabalho é propor um novo modelo híbrido SVR-ANN para previsão de demanda de água. Onde uma adaptação da metodologia proposta por Zhang (2003) é utilizada para decompor as séries temporais de 10 reservatórios que abastecem a Região Metropolitana de Salvador (RMS). Os dados utilizados são do consumo histórico de janeiro/2017 a fevereiro/2022, obtidos junto à empresa de abastecimento local, Empresa Baiana de Águas e Saneamento (EMBASA), e dados meteorológicos obtidos junto ao Instituto Nacional de Meteorologia do Brasil (INMET). Os resultados demonstraram a viabilidade do uso do modelo proposto, comparado a outros modelos tradicionais como o Multilayer Perceptron (MLP), Support Vector Regression (SVR), Short Long Term Memory (LSTM) e Autoregressive and Integrated Moving Average (ARIMA).


  • Mostrar Abstract
  • The objective of this work is to proposes a new hybrid SVR-ANN model for water demand forecasting. Where an adaptation of the methodology proposed by Zhang (2003) is used to decompose the time series of 10 reservoirs that supply the Metropolitan Region of Salvador (RMS). The data used are from the historical consumption from January/2017 to February/2022, obtained from the local supply company, Empresa Baiana de Águas e Saneamento, and meteorological data obtained from the National Institute of Meteorology of Brazil. The results demonstrated the feasibility of using the proposed model, compared to other traditional models such as the Multilayer Perceptron (MLP), Support Vector Regression (SVR), Short Long Term Memory (LSTM) and Autoregressive and Integrated Moving Average (ARIMA).

10
  • Dárcio Santos Rocha
  • IDENTIFICAÇÃO DE TIPOS DE RELAÇÕES TEMPORAIS EVENT-TIME EM PORTUGUÊS: UMA ABORDAGEM BASEADA EM REGRAS COM CLASSIFICAÇÃO ASSOCIATIVA

  • Orientador : MARLO VIEIRA DOS SANTOS E SOUZA
  • MEMBROS DA BANCA :
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • RERISSON CAVALCANTE DE ARAUJO
  • ROBESPIERRE DANTAS DA ROCHA PITA
  • Data: 14/08/2023

  • Mostrar Resumo
  • Este trabalho tem como objetivo desenvolver um método computacional para identificar tipos de relações temporais entre eventos e expressões temporais em textos escritos em língua portuguesa. A fim de alcançar esse objetivo, serão empregadas técnicas de aprendizado de regras para descobrir as melhores combinações de informações linguísticas disponíveis, formulando regras de decisão que possam identificar eficientemente os tipos de relações temporais entre eventos e expressões temporais. A maioria dos trabalhos relacionados adotou uma abordagem baseada em aprendizagem de máquina, enquanto apenas um utilizou uma abordagem híbrida, combinando regras manuais. A metodologia proposta neste trabalho consiste em uma abordagem baseada em regras, que incorpora informações lexicais, morfossintáticas e contextuais, tempos verbais de Reichenbach, sinais temporais e conhecimento sobre o mundo, além das anotações TimeML no corpus. Ao contrário de uma abordagem puramente baseada em aprendizagem de máquina, os conjuntos de regras gerados pelo nosso método permitem a combinação de regras geradas pelos diferentes algoritmos, ou a combinação de conjuntos completos, o que pode resultar em melhor desempenho. Em resumo, o método recebe pares de evento/expressão temporal como entrada e utiliza uma estratégia de filtragem para selecionar os pares com maior probabilidade de terem sido anotados no corpus. Em seguida, aplica conjuntos de regras em cada par para identificar o tipo da relação temporal existente e uma estratégia de aumento de dados para calcular o fechamento temporal de todos os pares e suas respectivas relações identificadas. Em experimentos preliminares, propusemos um conjunto inicial de regras manuais para o idioma português. No entanto, os resultados obtidos demonstraram que esse conjunto era limitado, resultando em baixa cobertura e consequentemente baixa acurácia. O valor máximo alcançado foi de 45,1% de acurácia e 34,1% de cobertura nos dados de teste. Para melhorar esses resultados, propomos incorporar técnicas de aprendizagem de regras ao método, visando aumentar o conjunto de regras. Essas técnicas são capazes de lidar bem com dados contendo ruídos, funcionar bem em dados não vistos e gerar regras mais eficientes, além de oferecer desempenho competitivo e funcionar de forma eficiente. Com essa incorporação, esperamos que os experimentos propostos produzam um conjunto de regras capaz de identificar tipos de relações temporais event-time com eficiência e alcance resultados superiores. Isso contribuirá para o avanço do estado da arte na área, além de disseminar a pesquisa realizada e contribuir com a comunidade científica.


  • Mostrar Abstract
  • This work aims to develop a computational method to identify types of temporal relations between events and temporal expressions in texts written in Portuguese. In order to achieve this goal, rule learning techniques will be employed to discover the best combinations of available linguistic information, formulating decision rules that can efficiently identify the types of temporal relations between events and temporal expressions. Most related works adopted a machine learning-based approach, while only one used a hybrid approach, combining manual rules. The methodology proposed in this work consists of a rule-based approach, which incorporates lexical, morphosyntactic and contextual information, Reichenbach tenses, temporal signals and knowledge about the world, in addition to TimeML annotations in the corpus. Unlike a purely machine learning approach, the rule sets generated by our method allow the combination of rules generated by different algorithms, or the combination of complete sets, which can result in better performance. In short, the method takes event/time expression pairs as input and uses a filtering strategy to select the pairs most likely to have been annotated in the corpus. It then applies sets of rules to each pair to identify the type of existing temporal relationship and a data augmentation strategy to calculate the temporal closure of all pairs and their respective identified relationships. In preliminary experiments, we proposed an initial set of manual rules for the Portuguese language. However, the results obtained showed that this set was limited, resulting in low coverage and consequently low accuracy. The maximum value achieved was 45.1% accuracy and 34.1% coverage in the test data. To improve these results, we propose to incorporate rule learning techniques to the method, aiming to increase the set of rules. These techniques are able to handle noisy data well, work well on unseen data and generate more efficient rules, in addition to offering competitive performance and working efficiently. With this incorporation, we hope that the proposed experiments will produce a set of rules capable of identifying types of event-time temporal relations efficiently and achieving superior results. This will contribute to the advancement of the state of the art in the area, in addition to disseminating the research carried out and contributing to the scientific community.

11
  • Davi Lima Alves
  • UMA PLATAFORMA SIDECHAIN PARA TRANSAÇÕES DE E-COMMERCE EM RESTAURANTES
  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • ALLAN EDGARD SILVA FREITAS
  • CASSIO VINICIUS SERAFIM PRAZERES
  • LEOBINO NASCIMENTO SAMPAIO
  • MANOEL GOMES DE MENDONCA NETO
  • ROBESPIERRE DANTAS DA ROCHA PITA
  • Data: 22/08/2023

  • Mostrar Resumo
  • Pedir comida online está presente diariamente na vida das pessoas, entretanto, este procedimento exige o envio de dados de clientes para diferentes sistemas de restaurantes, e muitas vezes esses restaurantes compartilham informações sensíveis com seus parceiros sem autorização, criando um risco à segurança ao compartilhar tais dados. Ainda, em muitos casos quando uma pessoa viaja para um país diferente de sua origem e deseja pedir comida é exigida a transação de câmbio para moeda local que tem custo elevado. As blockchains revolucionaram o modo de fazer pagamentos online e intrinsecamente de forma segura eliminando a entidade centralizadora e autorizativa, a exemplo da Bitcoin, primeira blockchain utilizada em larga escala. Entretanto, a literatura científica registra a dificuldade diante da alta frequência de transações na Bitcoin, alto tempo de transações, e, também, seu alto custo por transação além da limitação da linguagem Script para desenvolvimento de aplicações. Nesse passo a blockchain Ethereum surge como alternativa a Bitcoin, num ambiente de aplicações mais complexas com maior frequência de aplicações e número de transações por segundo, mas, ainda distante da performance de soluções como cartão de crédito, o que desfavorece esta “cadeia de blocos” ante soluções tradicionais de pagamento como o cartão de crédito, além disso teve por um grande período altas taxas de custo por transação. Do estudo deste contexto nós propomos o modelo de pagamento de transações para o varejo por meio da blockchain a partir de Prova de Conceito (POC) voltada para restaurantes utilizando o Software Development Kit (SDK) da blockchain Lisk. A POC Lisk Restaurante representa uma integração da Lisk blockchain na indústria de alimentos permitindo clientes comprarem comida de forma rápida e segura através de sidechains - blockchains exclusivas para transações especiais tipo-restaurantes, sem intermediação e com menores taxas ao utilizar um único cripto ativo no mundo: o LSK. Realizamos estudo empírico da solução proposta no qual é avaliada o desempenho de transações em bloco, taxas de transação, auditabilidade, escala de solução, privacidade e segurança no envio de mensagens em transações. Os resultados foram utilizados na comparação com dados da literatura das blockchains Bitcoin, Ethereum, e Multichain. Os resultados apontam que, as transações especiais utilizadas na Lisk Restaurante permitem garantir privacidade de dados para seus clientes, pois, apenas ao recipiente de uma transação é possível acessar dados sensíveis de remetente. Assim, através de pesquisa, revisão da literatura e experimentos de avaliação de desempenho foi observado que a solução de sidechain para restaurantes demonstrou eficiência da tecnologia blockchain em prover serviços globais de forma menos custosa do que meios de pagamentos comuns; também, quando comparadas suas taxas de transações com outras blockchains como Bitcoin ou Ethereum, pois, seus valores são menores e mantida a privacidade de seus clientes. Ainda, a nossa solução demonstrou aumento na capacidade de transações Food em um único bloco e melhor escalabilidade por meio de sidechains, as quais, aceitam transações específicas ao negócio envolvido o que difere de blockchains únicas como Bitcoin ou Ethereum que executam transações de diversas finalidades, superando também à primeira versão da Prova de Conceito (PoC) Lisk Restaurante, ultrapassando em duas vezes a capacidade de número de transações ou frequência, em um bloco. Finalmente, ainda foi realizado experimentos com a Lightning network, tecnologia off-chain que funciona sobre a Bitcoin sendo uma solução de escalabilidade para a Bitcoin. A avaliação de resultados de experimentos da solução sidechain Lisk e da Lightning network demonstraram as diferenças de cada tecnologia e foi enaltecida as vantagens e desvantagens de cada uma. Assim, foi observado que a tecnologia Lightning network também pode ser utilizada na indústria de varejo, mas sem a possibilidade de personalizar custos de transação.


  • Mostrar Abstract
  • Ordering food online is present in people's lives every day, however, this procedure requires sending customer data to different restaurant systems, and often these restaurants share sensitive information with their partners without authorization, creating a security risk when sharing such information. data. Also, in many cases, when a person travels to a country other than their origin and wants to order food, an exchange transaction for local currency is required, which is expensive. Blockchains have revolutionized the way of making payments online and intrinsically secure, eliminating the centralizing and authorizing entity, such as Bitcoin, the first blockchain used on a large scale. However, the scientific literature records the difficulty in view of the high frequency of transactions in Bitcoin, the high transaction time, and also its high cost per transaction, in addition to the limitation of the Script language for application development. In this step, the Ethereum blockchain emerges as an alternative to Bitcoin, in an environment of more complex applications with a higher frequency of applications and number of transactions per second, but still far from the performance of solutions such as credit cards, which disadvantages this “chain of blocks”. ” compared to traditional payment solutions such as credit cards, which also had high transaction cost rates for a long time. From the study of this context, we propose a payment model for retail transactions through the blockchain based on a Proof of Concept (POC) aimed at restaurants using the Software Development Kit (SDK) of the Lisk blockchain. POC Lisk Restaurante represents an integration of Lisk blockchain in the food industry allowing customers to buy food quickly and securely through sidechains - exclusive blockchains for special restaurant-type transactions, without intermediation and with lower fees when using a single crypto asset in the world : the LSK. We performed an empirical study of the proposed solution in which the performance of block transactions, transaction fees, auditability, solution scale, privacy and security in sending messages in transactions is evaluated. The results were used in comparison with data from the literature of Bitcoin, Ethereum, and Multichain blockchains. The results indicate that the special transactions used at Lisk Restaurante allow guaranteeing data privacy for its customers, since only the recipient of a transaction can access sensitive sender data. Thus, through research, literature review and performance evaluation experiments, it was observed that the sidechain solution for restaurants demonstrated the efficiency of blockchain technology in providing global services at a lower cost than common means of payment; also, when compared to their transaction fees with other blockchains like Bitcoin or Ethereum, their values are lower and the privacy of their customers is maintained. Also, our solution has shown an increase in the capacity of Food transactions in a single block and better scalability through sidechains, which accept transactions specific to the business involved, which differs from single blockchains such as Bitcoin or Ethereum that execute transactions for different purposes, also surpassing the first version of the Proof of Concept (PoC) Lisk Restaurante, exceeding twice the capacity of number of transactions or frequency, in a block. Finally, experiments were carried out with the Lightning network, an off-chain technology that works on top of Bitcoin, being a scalability solution for Bitcoin. The evaluation of experimental results of the Lisk sidechain solution and the Lightning network demonstrated the differences of each technology and the advantages and disadvantages of each one were praised. Thus, it was observed that the Lightning network technology can also be used in the retail industry, but without the possibility of customizing transaction costs.

12
  • João Medrado Gondim
  • AMPLIANDO MODELOS DE IMAGE CAPTIONING EM PORTUGUES ATRAVÉS DAS INFORMAÇÕES LINGUÍSTICAS

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • SANDRA ELIZA FONTES DE AVILA
  • DANIELA BARREIRO CLARO
  • TATIANE NOGUEIRA RIOS
  • Data: 23/08/2023

  • Mostrar Resumo
  • O aumento no número de aplicações que demandam acessibilidade, recuperação de informação e interação humano-computador vem culminando com uma crescente necessidade de geração automatizada da descrição de uma imagem. Essa descrição automatizada requer uma identificação do cenário, dos personagens e dos objetos presentes e de como esses elementos se relacionam entre si. A partir destes elementos torna-se possível gerar uma sentença em linguagem natural descrevendo o conteúdo da imagem. O desenvolvimento de métodos capazes de gerar de uma maneira automática as sentenças que descrevem a imagem permeia uma área de pesquisa denominada  Image Captioning. A maioria das pesquisas e  datasets  da área de Image Captioning se concentram na língua inglesa, desenvolvendo modelos e construindo recursos eficientes no estado da arte. Línguas com poucos recursos para desenvolvimento, tais como o Português, demandam maior pesquisa para alcançarem uma sentença descritiva e compreensível. Porém, somente a aglomeração de vários objetos da imagem não geram uma sentença na língua Portuguesa. Diante deste contexto, este trabalho propõe a análise e incorporação de recursos linguísticos que possam guiar o modelo de linguagem na geração de uma descrição que seja mais representativa da imagem e da sentença em Português. Experimentos foram realizados com a tradução de datasets para a geração da descrição em Português. Os resultados obtidos dão indícios que a análise morfológica das saídas de um modelo de Image Captioning, bem como a incorporação de classes gramaticais durante o treinamento, contribuirão para uma melhor descrição da imagem em língua Portuguesa.


  • Mostrar Abstract
  • The increase in the number of applications that require accessibility, information retrieval and human-computer interaction has culminated in a growing need for automated generation of the description of an image. This automated description requires an identification of the scenario, characters and objects present and how these elements relate to each other. From these elements it becomes possible to generate a sentence in natural language describing the content of the image. The development of methods capable of automatically generating the sentences describing the image permeates a research area called textit{Image Captioning}. Most researches and datasets in the area of Image Captioning focus on the English language, developing models and building efficient state-of-the-art resources. Languages with few resources for development, such as Portuguese, require more research to achieve a descriptive and understandable sentence. However, only the agglomeration of several objects in the image does not generate a sentence in the Portuguese language. In this context, this work proposes the analysis and incorporation of linguistic resources that can guide the language model in generating a description that is more representative of the image and the sentence in Portuguese. Experiments were performed with the translation of datasets to generate the description in Portuguese. The results indicate that the morphological analysis of the outputs of an Image Captioning model, as well as the incorporation of grammatical classes during the training, will contribute to a better description of the image in Portuguese.

13
  • CLEBER BRITO SANTOS
  • Determinação de vizinhança em rede veiculares ad hoc: uma análise dos tempos limite para entrega de mensagens

  • Orientador : ALINE MARIA SANTOS ANDRADE
  • MEMBROS DA BANCA :
  • ALINE MARIA SANTOS ANDRADE
  • ALIRIO SANTOS DE SA
  • ALLAN EDGARD SILVA FREITAS
  • LEOBINO NASCIMENTO SAMPAIO
  • Data: 05/09/2023

  • Mostrar Resumo
  • A detecção de vizinhança em redes veiculares ad hoc envolve a determinação de veículos
    vizinhos para uma organização colaborativa. Esse problema apresenta desafios em relação à
    comunicação entre veículos em redes veiculares devido à natureza dinâmica da rede, que
    provoca variações imprevisíveis na qualidade do canal de comunicação devido a fatores como
    condições ambientais, interferências e congestionamentos. Nesta dissertação, abordamos a
    detecção de vizinhança entre pelotões em redes dinâmicas, enfrentando desafios como a
    movimentação variada dos veículos e as interferências de edificações. A organização em
    pelotões representa um cenário relevante para o estudo em redes veiculares, uma vez que traz
    benefícios na qualidade do trânsito, como a redução do consumo de combustível, a melhoria
    do fluxo de tráfego e o aumento da segurança. Desenvolvemos um protocolo básico de
    comunicação, projetado para a comunicação entre líderes de pelotões, que garante o
    conhecimento mútuo entre eles, possibilitando a troca de informações essenciais para a
    detecção de vizinhança e o funcionamento colaborativo dos pelotões. Verificamos o protocolo
    utilizando o verificador de modelos PRISM. Utilizando este protocolo, realizamos experimentos
    para determinar os tempos necessários que ocorrem entre o envio e o recebimento de
    mensagens trocadas entre líderes de pelotões para a determinação de vizinhança. Realizamos
    experimentos em canais confiáveis e não confiáveis e determinamos tempos limite de
    progresso por meio de simulações utilizando o framework VEINS, que integra SUMO e
    OMNET++. Os resultados dos experimentos forneceram informações sobre os tempos limite
    de progresso em vários cenários que podem servir de referência para o desenvolvimento de
    aplicações relacionadas à comunicação em VANETs.


  • Mostrar Abstract
  • A detecção de vizinhança em redes veiculares ad hoc envolve a determinação de veículos
    vizinhos para uma organização colaborativa. Esse problema apresenta desafios em relação à
    comunicação entre veículos em redes veiculares devido à natureza dinâmica da rede, que
    provoca variações imprevisíveis na qualidade do canal de comunicação devido a fatores como
    condições ambientais, interferências e congestionamentos. Nesta dissertação, abordamos a
    detecção de vizinhança entre pelotões em redes dinâmicas, enfrentando desafios como a
    movimentação variada dos veículos e as interferências de edificações. A organização em
    pelotões representa um cenário relevante para o estudo em redes veiculares, uma vez que traz
    benefícios na qualidade do trânsito, como a redução do consumo de combustível, a melhoria
    do fluxo de tráfego e o aumento da segurança. Desenvolvemos um protocolo básico de
    comunicação, projetado para a comunicação entre líderes de pelotões, que garante o
    conhecimento mútuo entre eles, possibilitando a troca de informações essenciais para a
    detecção de vizinhança e o funcionamento colaborativo dos pelotões. Verificamos o protocolo
    utilizando o verificador de modelos PRISM. Utilizando este protocolo, realizamos experimentos
    para determinar os tempos necessários que ocorrem entre o envio e o recebimento de
    mensagens trocadas entre líderes de pelotões para a determinação de vizinhança. Realizamos
    experimentos em canais confiáveis e não confiáveis e determinamos tempos limite de
    progresso por meio de simulações utilizando o framework VEINS, que integra SUMO e
    OMNET++. Os resultados dos experimentos forneceram informações sobre os tempos limite
    de progresso em vários cenários que podem servir de referência para o desenvolvimento de
    aplicações relacionadas à comunicação em VANETs.

14
  • Iury Gomes de Oliveira
  • CycleVis - Uma abordagem de visualização esportiva para análise de desempenho de ciclistas

  • Orientador : DANILO BARBOSA COIMBRA
  • MEMBROS DA BANCA :
  • DANILO BARBOSA COIMBRA
  • FREDERICO ARAUJO DURAO
  • RENATO LIMA NOVAIS
  • Data: 14/09/2023

  • Mostrar Resumo
  • A evolução tecnológica em conjunto com a crescente produção massiva de dados demandam a criação de novos mecanismos para processamento e análise nos mais diferentes domínios de informação. O mesmo ocorre para o domínio de esportes, que possui um grande apelo popular ao redor do mundo e vem conquistando cada vez mais interesse da comunidade científica. Dentre os diferentes gêneros esportivos, o ciclismo vem ganhando atenção especial na comunidade de visualização de informação e Visual Analytics ao longo dos anos. De modo geral, o foco destes trabalhos está na descoberta de padrões para traçar estratégias, exibir informações estatísticas, ou analisar desempenho de grupos de ciclistas. Contudo, há uma lacuna de estudos que foquem em percursos não relacionados a competições profissionais ou ainda que considerem atributos de clima e intensidade em suas análises. Nesse contexto, esse trabalho apresenta o CycleVis, uma abordagem de visualização de dados para ciclismo que permite melhor compreensão do desempenho esportivo de ciclistas. Para tal, utilizou-se características de intensidade, como velocidade, frequência cardíaca e elevação, além da geolocalização das corridas/pedaladas. Para validar a abordagem, foi desenvolvido um caso de uso e o mesmo foi avaliado por meio de estudo com usuários, que resultou em uma avaliação muito positiva para eficácia e usabilidade. 


  • Mostrar Abstract
  • The technological evolution together with the growing mass production of data demand the creation of new mechanisms for processing and analysis in the most different areas of information. The same goes for the field of sports, which has a great popular appeal around the world and has been gaining more and more interest from the scientific community. Among the different sports genres, cycling has been gaining special attention in the community of information visualization and Visual Analytics over the years. In general, the focus of these works is on finding patterns to draw strategies, display statistical information, or analyze performance of groups of cyclists. However, there is a gap of studies that focus on paths not related to professional competitions or that consider attributes of climate and intensity in their analysis. In this context, this work presents CycleVis, a data visualization approach for cycling that allows a better understanding of the sports performance of cyclists. For this, intensity characteristics such as speed, heart rate and elevation were used, in addition to the geolocation of the runs/pedals. To validate the approach, a use case was developed and it was evaluated through a study with users, which resulted in a very positive evaluation for effectiveness and usability.

15
  • JOSÉ AUGUSTO DUARTE GOMES
  • MultiVisD3: uma abordagem Visual Analytics para Análise da Qualidade de Projeções Multidimensionais Utilizando Múltiplas Visões Coordenadas

  • Orientador : DANILO BARBOSA COIMBRA
  • MEMBROS DA BANCA :
  • RAFAEL MESSIAS MARTINS
  • BRUNO PEREIRA DOS SANTOS
  • DANILO BARBOSA COIMBRA
  • Data: 29/09/2023

  • Mostrar Resumo
  • Visualizações multidimensionais são representações gráficas que atuam na apresentação de conjuntos de dados multidimensionais ou multivariados. Entretanto, muitas dessas técnicas apresentam pouca escalabilidade visual à medida que as dimensões aumentam, exigindo um espaço visual cada vez maior para acomodar todo o conjunto de dados. Uma forma de contornar esse problema é utilizar técnicas de Projeções Multidimensionais que realizam redução de dimensionalidade e buscam preservar os padrões dos dados originais no espaço projetado. Durante esse processo, é altamente provável que erros e distorções estejam presentes nos layouts de projeção. Um desafio na pesquisa desse tema é mensurar e visualizar os erros e distorções incorporados nos mapeamentos das projeções. Nesse sentido, este trabalho desenvolveu o MultiVisD3, uma abordagem de Visual Analytics para analisar a qualidade de Projeções Multidimensionais. Esta abordagem compreende um dashboard como um painel visual interativo contendo múltiplas visualizações coordenadas para facilitar a compreensão e comparação de métricas de erro entre duas projeções. Outras técnicas de visualização como Treemap e visão tabular apoiam a extração de informações sobre a qualidade das projeções. Por fim, a abordagem proposta foi submetida a uma avaliação com usuário utilizando conjuntos de dados conhecidos para analisar aspectos de funcionalidade e usabilidade. Os resultados mostraram que os usuários avaliaram positivamente a abordagem proposta neste trabalho. Mais de 90% dos participantes executaram corretamente oito das nove tarefas que lhes foram solicitadas e mais de 90% deles aprovaram os aspectos de usabilidade relacionados às interações e disposição das visualizações.


  • Mostrar Abstract
  • Multidimensional visualizations are graphical representations that assist in presenting multidimensional datasets. However, many of these techniques exhibit limited visual scalability as the number of dimensions increases, requiring ever-expanding visual space to accommodate the entire dataset. One way to address this problem is by utilizing Multidimensional Projection techniques, which perform dimensionality reduction while aiming to preserve the patterns of the original data in the projected space. However, it is highly likely that errors and distortions may be present in the projection layouts. A challenge in researching this topic is to measure and visualize the errors and distortions embedded in the projection mappings. In this regard, this article introduces MultiVisD3, a Visual Analytics approach to analyzing the quality of Multidimensional Projections. This approach comprises an interactive visual dashboard containing multiple coordinated views to facilitate understanding and comparison of error metrics between two projections. Other visualization techniques such as Treemap and tabular views support the extraction of information regarding projection quality. Finally, the proposed approach underwent user evaluation using well-known datasets to analyze functionality and usability aspects. The results demonstrated that users positively evaluated the proposed approach. More than 90% of the participants correctly completed eight out of nine tasks assigned to them, and over 90% of them approved of usability aspects related to interactions and the arrangement of visualizations.

16
  • LEONARDO RODRIGUES RIBEIRO
  • MetaLProjection: Uma Abordagem para Recomendação de Algoritmos de Redução de Dimensionalidade Utilizando Meta-Aprendizagem

  • Orientador : DANILO BARBOSA COIMBRA
  • MEMBROS DA BANCA :
  • THIAGO FERREIRA COVÕES
  • DANILO BARBOSA COIMBRA
  • RICARDO ARAUJO RIOS
  • Data: 06/10/2023

  • Mostrar Resumo
  • As técnicas de visualização de dados possuem um enorme potencial para análise, sumarização, compreensão a fim de facilitar a extração de informação. Áreas recentes como Visual Analytics e Ciência de Dados evidenciam a sua importância, principalmente para analisar complexos conjuntos de dados. Nesse sentido, as técnicas de Projeção Multidimensional são particularmente utilizadas para realizar análise visual de conjuntos de dados de alta dimensionalidade, em razão de realizarem redução de dimensionalidade e, por consequência, possuírem melhor escalabilidade no tocante a quantidade de atributos/dimensões. Todavia, há uma grande variedade destas técnicas de projeção e definir qual a mais adequada para encontrar padrões visuais de informação em um, ou vários, conjuntos de dados não é uma tarefa trivial. Ainda que os trabalhos na literatura testem e comparem diferentes técnicas em conjuntos de dados com características distintas, não o fazem de modo sistematizado para facilitar uma escolha para o usuário. Nesse contexto, esta pesquisa utiliza a meta-aprendizagem para classificar e recomendar as projeções multidimensionais considerando determinadas métricas de avaliação em uma base de conhecimento com mais de 500 conjuntos de dados distintos. Para avaliar a abordagem foi observado i) a relação entre os meta-atributos de todos os conjuntos de dados, ii) geração de um ranking contendo o desempenho das técnicas de projeção escolhidas e, iii) acurácia da recomendação dessas técnicas. Por fim, os resultados obtidos mostram que a abordagem desenvolvida contribui de modo eficiente para a escolha e recomendação de técnicas de projeção multidimensional.


  • Mostrar Abstract
  • Data visualization techniques have significant potential for analysis, summarization, and comprehension to facilitate information extraction. Recent areas such as Visual Analytics and Data Science underscore their importance, especially in analyzing complex datasets. In this sense, Multidimensional Projection techniques are particularly used for visual analysis of high-dimensional datasets because they perform dimensionality reduction and, consequently, exhibit better scalability in terms of the number of attributes/dimensions. However, there is a wide variety of these projection techniques, and determining the most suitable one for discovering visual patterns of information in one or multiple datasets is not a trivial task. While works in the literature test and compare different techniques on datasets with distinct characteristics, they do not do so systematically to assist user decision-making. In this context, this research leverages meta-learning to classify and recommend multidimensional projections, considering specific evaluation metrics from a knowledge base comprising over 500 distinct datasets. To evaluate the approach, we observed i) the relationship between the meta-attributes of all datasets, ii) the generation of a ranking containing the performance of the selected projection techniques, and iii) the accuracy of the recommendation of these techniques. Finally, the results obtained demonstrate that the developed approach effectively contributes to the selection and recommendation of multidimensional projection techniques.

17
  • FELIPE REBOUCAS FERREIRA ABREU
  • Um Sistema de Recomendação Inteligente e Autoconfigurável como Serviço

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • CLAUDIO NOGUEIRA SANT ANNA
  • ROSALVO FERREIRA DE OLIVEIRA NETO
  • Data: 28/11/2023

  • Mostrar Resumo
  • No mundo digital dinâmico de hoje, a infinidade de serviços de listagem, que vão desde plataformas de música até recomendações de produtos e sugestões de conteúdo de mídia social, muitas vezes deixa os usuários em busca de itens que realmente se alinhem com seus gostos. Abordando esta complexidade, a ascensão dos Sistemas de Recomendação provou ser inestimável. Esses sistemas filtram com eficiência vastos dados para alinhar itens com preferências individuais, melhorando as escolhas do usuário. Este trabalho centra-se na criação de uma API avançada de Sistemas de Recomendação. Criada de forma distinta, esta API possui acessibilidade universal e um procedimento de implantação descomplicado. Como base para vários serviços da Web, a API se fortalece na robusta arquitetura REST. Ele foi projetado com um compromisso com a modularidade, defendendo a adaptabilidade e a flexibilidade. A API processa dados e consultas do usuário para fornecer recomendações personalizadas rapidamente. As avaliações de desempenho destacaram a louvável precisão da API. Ele brilhou particularmente com conjuntos de dados menores, exibindo impressionantes tempos de processamento de dados e execução de algoritmos. A API manifestou eficiência e resiliência excepcionais sob condições de teste específicas, incluindo ambientes de nuvem, especialmente notáveis em cenários extensos de conjuntos de dados de 16.000 itens. A API é mais que uma ferramenta; ele abre caminho para experiências digitais personalizadas, mostrando sua habilidade em operações CRUD e recomendações personalizadas. A fase de avaliação do usuário abrangeu um grupo demográfico variado: desenvolvedores iniciantes a experientes. Mais da metade tinha experiência considerável em desenvolvimento de software e uma porcentagem significativa tinha envolvimentos anteriores com sistemas de recomendação de codificação. Com conhecimento diversificado de bibliotecas de recomendação, a maioria dos comentários elogiou a eficácia da API. 81% valorizaram as recomendações e muitos se sentiram confiantes nas técnicas de filtragem. O destaque deste trabalho é a versatilidade da API do Sistema de Recomendação. Apesar do feedback positivo, os usuários sugeriram melhorias na documentação, segurança de dados e recursos. Esses insights moldarão futuros refinamentos de API e experiência do usuário. O envolvimento entusiástico e o feedback dos participantes sublinham o potencial da API para melhorar aplicações que requerem um sistema de recomendação, especialmente para desenvolvedores que talvez sejam menos versados nas nuances teóricas. A sólida base de pesquisa e a dedicação dos participantes destacam o potencial da API para uma adoção mais ampla pelos desenvolvedores.


  • Mostrar Abstract
  • In today's dynamic digital realm, the plethora of listing services, spanning from music platforms to product recommenders and social media content suggestions, often leaves users searching for items that truly align with their tastes. Addressing this intricacy, the rise of Recommender Systems has proven invaluable. These systems efficiently filter vast data to align items with individual preferences, enhancing user choices. This work centers on the creation of an advanced Recommender Systems API. Distinctively crafted, this API boasts universal accessibility and an uncomplicated deployment procedure. As the foundation for various Web Services, the API draws strength from the stalwart REST architecture. It is designed with a commitment to modularity, championing adaptability and flexibility. The API processes user data and queries to provide tailor-made recommendations quickly. Performance evaluations illuminated the API's commendable accuracy. It particularly shone with smaller datasets, displaying impressive data processing and algorithm execution times. The API manifested exceptional efficiency and resilience under specific test conditions, including cloud environments, especially notable in extensive 16,000-item dataset scenarios. The API is more than a tool; it paves the way for personalized digital experiences, showcasing its prowess in CRUD operations and tailored recommendations. The user evaluation phase encompassed a varied demographic: novice to experienced developers. Over half had considerable software development experience, and a significant percentage had prior engagements with coding recommender systems. With diverse knowledge of recommender libraries, most feedback praised the API's effectiveness. 81% valued the recommendations, and many felt confident in its filtering techniques. The highlight of this work is the Recommender System API's versatility. Despite positive feedback, users suggested improvements in documentation, data security, and features. These insights will shape future API refinements and user experience. Participants' enthusiastic engagement and feedback underscore the API's potential to enhance applications requiring a recommendation system, especially for developers who are perhaps less versed in the theoretical nuances. The solid research foundation and participant dedication highlight the API's potential for broader adoption by developers.

18
  • GENICLEITO CARVALHO BELTRAO GONCALVES
  • GEnI-FR: Um método para assegurar a interpretabilidade de regras fuzzy por meio de granularidade

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • MARCOS EVANDRO CINTRA
  • HELOISA DE ARRUDA CAMARGO
  • TATIANE NOGUEIRA RIOS
  • Data: 30/11/2023

  • Mostrar Resumo
  • A representação computacional do conhecimento humano, quando composto por dados imprecisos, é uma tarefa facilitada pela utilização de sistemas que utilizam recursos da teoria de conjuntos e lógica fuzzy. Tais sistemas usam regras que permitem mapear o conhecimento obtido a partir dos dados em uma representação linguística de fácil entendimento. A base de regras fuzzy que constitui esse tipo de sistema pode ser gerada por um especialista ou por meio de métodos que consideram as características dos próprios dados, diminuindo a necessidade de um especialista neste processo de criação. Com os devidos ajustes e utilização de métodos automatizados é possível aumentar a interpretabilidade dessas regras sem reduzir a precisão do sistema. Neste sentido, a base de regras de um sistema fuzzy pode ser melhorada por meio do princípio da granularidade justificável para ajustar os conjuntos fuzzy representativos dos dados. Sendo assim, nesta dissertação de mestrado é apresentado o método denominado GEnI-FR (Granularity to Ensure Interpretability of the Fuzzy Rules), o qual realiza ajustes e refinamentos no processo de geração de regras fuzzy, obtendo o equilíbrio entre interpretabilidade e precisão, ajustando conjuntos fuzzy baseando-se nas características dos próprios dados. GEnI-FR apresenta-se como um método promissor visto que proporciona uma redução da quantidade de regras fuzzy mantendo os mesmos níveis de acurácia quando comparado com outros métodos do estado da arte. 


  • Mostrar Abstract
  • The computational representation of human knowledge, when composed of imprecise data, is a task facilitated by the use of systems that use resources from set theory and fuzzy logic. Such systems use rules that allow mapping the knowledge obtained from data into an easy-to-understand linguistic representation. The fuzzy rule base that constitutes this type of system can be generated by a specialist or through methods that consider the characteristics of the data itself, reducing the need for a specialist in this creation process. With the appropriate adjustments and use of automated methods, it is possible to increase the interpretability of these rules without reducing the system's accuracy. In this sense, the rule base of a fuzzy system can be improved through the principle of justifiable granularity to adjust the fuzzy sets representative of the data. Therefore, in this master's thesis, the method called GEnI-FR (Granularity to Ensure Interpretability of the Fuzzy Rules) is presented, which makes adjustments and refinements in the process of generating fuzzy rules, achieving a balance between interpretability and precision, adjusting sets fuzzy based on the characteristics of the data itself. GEnI-FR presents itself as a promising method as it provides a reduction in the number of fuzzy rules while maintaining the same levels of accuracy when compared to other state-of-the-art methods.

19
  • JALISSON DOS SANTOS HENRIQUE
  • MOTIVAÇÕES PARA APLICAÇÃO DA REFATORAÇÃO EXTRACT METHOD: UM ESTUDO BASEADO EM MENSAGENS DE COMMIT

  • Orientador : CLAUDIO NOGUEIRA SANT ANNA
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • CLAUDIO NOGUEIRA SANT ANNA
  • RAPHAEL PEREIRA DE OLIVEIRA
  • Data: 11/12/2023

  • Mostrar Resumo
  • Refatorações são operações realizadas no código fonte que visam melhorar a capacidade de manutenção de um sistema de software. Apesar da literatura conter diversos estudos sobre refatorações, são poucos os trabalhos que investigam as motivações reportadas pelos desenvolvedores para realizar refatorações. Portanto, esta pesquisa tem o objetivo de investigar as motivações por trás das refatorações de extract method em sistemas reais. Para isso, foram conduzidos dois estudos experimentais, um preliminar envolvendo um único sistema de software, e um outro estudo onde foram considerados diversos sistemas. Os estudos foram baseados em mineração de commits onde ocorreram refatorações do tipo extract method. Basicamente, buscou-se analisar as mensagens desses commits visando capturar as motivações dos desenvolvedores para realizar tais refatorações. Os resultados apontaram 16 motivações diferentes para a aplicação do extract method. Além disso, observou-se que apenas 16% das refatorações tiveram intenção explícita de melhorar a qualidade do código. Também foi identificado que as refatorações com intenção de melhorar a qualidade do código ocorreram com maior frequência em métodos com tamanho acima de 61 linhas de código e com menor frequência em métodos abaixo de 20 linhas de código.


  • Mostrar Abstract
  • Refactorings are operations performed on source code aimed at improving the maintainability of a software system. Although literature contains a high number of studies on refactorings, there are only few works that investigate the motivations reported by developers to perform refactorings. Therefore, this research aims to investigate the motivations behind extract method refactorings in real systems. To achieve this, we conducted two empirical studies: a preliminary study involving a single software system, and another study considering multiple real systems. The studies were based on mining software repository commits in which extract method refactorings occurred. Essentially, the goal was to analyze commit messages in order to capture developers' motivations for performing such refactorings. The results identified 16 different motivations for applying extract method. Additionally, it was observed that only 16% of the refactorings had an explicit intention of improving code quality. It was also identified that refactorings with the intention of improving code quality occurred more frequently in methods with size higher than 61 lines of code and less frequently in methods smaller than 20 lines of code.

20
  • MATEUS CARVALHO DA SILVA
  • Aplicações de algoritmos genéticos de chaves aleatórias enviesadas e formulações para o problema da coloração de Grundy e o problema da coloração conexa de Grundy

  • Orientador : RAFAEL AUGUSTO DE MELO
  • MEMBROS DA BANCA :
  • PEDRO HENRIQUE GONZÁLEZ SILVA
  • MAURICIO GUILHERME DE CARVALHO RESENDE
  • FREDERICO ARAUJO DURAO
  • RAFAEL AUGUSTO DE MELO
  • Data: 13/12/2023

  • Mostrar Resumo
  • Dado um grafo G, seu número de Grundy $\Gamma(G)$ define o comportamento de pior caso para a conhecida e amplamente utilizada heurística de coloração gulosa \textit{first-fit}. Mais especificamente, $\Gamma(G)$ é o maior $k$ para o qual uma $k$-coloração  pode ser obtida com a heurística \textit{first-fit}. O número de Grundy conexo $\Gamma_c(G)$ fornece o comportamento do pior caso para a heurística de coloração \textit{first-fit} conexa, ou seja, aquela em que cada vértice a ser colorido, exceto o primeiro, é adicionado adjacente a um vértice já colorido. Ambos os problemas são NP-difíceis. Nesta dissertação, apresentamos abordagens heurísticas e exatas para o problema da coloração de Grundy e o problema de coloração de Grundy conexo, que são problemas de otimização consistindo na obtenção do número de Grundy e do número de Grundy conexo, respectivamente. Nesse estudo é proposto o uso do algoritmo genético de chaves aleatórias viesado (\textit{Biased random-key genetic algorithm} - BRKGA) e do uso de formulações de programação inteira usando uma abordagem mais tradicional (padrão) e uma por representativos. Também é proposto um novo limite superior combinatório que é válido para ambos os problemas e um algoritmo usando programação dinâmica para o seu cálculo. Os experimentos computacionais mostram que o novo limite superior pode melhorar o limite para vários casos em relação a um limite combinatório bem estabelecido disponível na literatura. Os resultados também evidenciam que a formulação por representativos tem um desempenho geral superior que a formulação padrão, alcançando melhores resultados para as instâncias mais densas, enquanto esta última tem melhor desempenho para as mais esparsas para o problema dos números de Grundy. Contudo mostramos que este tipo de formulações com programação inteira são computacionalmente impraticáveis para a versão conexa. Além disso, o BRKGA pode encontrar soluções de alta qualidade para ambos os problemas e pode ser usado com confiança em grandes instâncias onde as formulações falham para o problema da coloração de Grundy.


  • Mostrar Abstract
  • Given a graph G, its Grundy number $\Gamma(G)$ defines the worst-case behavior for the well-known and widely used first-fit greedy coloring heuristic. Specifically, $\Gamma(G)$ is the largest $k$ for which a $k$-coloring can be obtained with the first-fit heuristic. The connected Grundy number $\Gamma_c(G)$ gives the worst-case behavior for the connected first-fit coloring heuristic, that is, one in which each vertex to be colored, except the first, is added adjacent to an already colored vertex. Both problems are NP-hard. In this master's thesis, we present heuristic and exact approaches to the Grundy coloring problem and the connected Grundy coloring problem, which are optimization problems consisting of obtaining the Grundy number and the connected Grundy number, respectively. This study proposes the use of a algorithm Biased Random-Key Genetic Algorithm (BRKGA) and the use of integer programming formulations using a more traditional (standard) approach and a representative one. A new combinatorial upper bound is also proposed that is valid for both problems and an algorithm using dynamic programming for its calculation. The computational experiments show that the new upper bound can improve over a well-established combinatorial bound available in the literature for several instances. The results also evidence that the formulation by representatives has an overall superior performance than the standard formulation, achieving better results for the denser instances, while the latter performs better for the sparser ones to the Grundy coloring problem. However, we show that these types of integer programming formulations are computationally impractical for the connected version. Furthermore, the BRKGA can find high-quality solutions for both problems and can be used with confidence in large instances where the formulations fail for the Grundy coloring problem.

21
  • JUVENAL CONSTANTINO DE MACÊDO JÚNIOR
  • Investigando a associação entre Rajadas de Mudanças e o Status da Build

  • Orientador : RODRIGO ROCHA GOMES E SOUZA
  • MEMBROS DA BANCA :
  • RODRIGO ROCHA GOMES E SOUZA
  • IVAN DO CARMO MACHADO
  • JOSÉ AMÂNCIO MACEDO SANTOS
  • TIAGO OLIVEIRA MOTTA
  • Data: 18/12/2023

  • Mostrar Resumo
  • Rajadas de commits são sequências de modificações realizadas por desenvolvedores, que ocorrem no código dentro de um curto período de tempo. Em projetos que adotam a prática de Integração Contínua (IC), toda vez que uma modificação é finalizada, cria-se uma nova versão do código, gerando uma nova build. Nessa nova versão, as mudanças realizadas são verificadas automaticamente, executando testes de unidade e relatando o resultado de falha ou sucesso da build para os desenvolvedores. Nesse sentido, o objetivo desta pesquisa é realizar um estudo empírico para verificar a associação entre rajadas de commits e falhas na build. O primeiro passo foi a realização de um estudo empírico a partir da mineração de repositórios, por meio do qual se identificou a relação das rajadas de commits e falha na build. Após esse estudo, foi conduzido um survey, para se avaliar os resultados obtidos, considerando as opiniões de desenvolvedores que trabalham com IC. Dentre as descobertas realizadas, os resultados do primeiro estudo mostram que em alguns projetos a taxa de sucesso de builds após rajadas de mudanças tendem a diminuir. No entanto, não podemos generalizar os resultados para todos os projetos visto que, na maioria dos projetos estudados a diferença não foi estatisticamente significativa. No segundo estudo, a maioria dos participantes da pesquisa concordam que a proximidade da data de entrega de um projeto é um fator responsável pela rajada de commits e falha na build. No entanto, não podemos generalizar os resultados, visto que alguns desenvolvedores apresentaram pequenas discordâncias quanto aos responsáveis pela falha na build. Desse modo, os resultados deste trabalho pretendem contribuir com a comunidade de desenvolvedores que utilizam IC, ajudando-os a reduzir falhas na build, podendo orientar trabalhos futuros sobre boas práticas de desenvolvimento.


  • Mostrar Abstract
  • Commit bursts are sequences of changes made by developers that occur in code within a short period of time. In projects that adopt the practice of Continuous Integration (CI), every time a modification is completed, a new version of the code is created, generating a new build. In this new version, the changes made are verified automatically, running unit tests and reporting the result of failure or success of build to the developers. In this sense, the objective of this research is to carry out an empirical study to verify the association between bursts of commits and failures in build. The first step was to carry out an empirical study based on the mining of deposits, through which the relationship between bursts of commits and construction failure was identified. After this study, a survey was followed to evaluate the results obtained, considering the opinions of developers who work with CI. Among the discoveries made, the results of the first study show that in some projects the success rate of builds after bursts of changes tends to decrease. However, we cannot generalize the results to all projects since, in most of the studied projects, the difference was not statistically significant. In the second study, most survey participants agree that the proximity of a project's delivery data is a factor responsible for bursts of commits and build failure. However, we cannot generalize the results, since some developers had small disagreements about who was responsible for the construction failure. Thus, the results of this work intend to contribute to the community of developers who use CI, helping them to reduce failures in build, facilitating future work on good development practices.

22
  • ANGELA PEIXOTO SANTANA
  • Um Estudo de Caracterização da Dívida Técnica em Software na Indústria

  • Orientador : CHRISTINA VON FLACH GARCIA CHAVEZ
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • IVAN DO CARMO MACHADO
  • CRESCENCIO RODRIGUES LIMA NETO
  • TIAGO OLIVEIRA MOTTA
  • Data: 20/12/2023

  • Mostrar Resumo
  • Contexto. O termo Dívida Técnica (DT) denota resultados e consequências da decisão de priorizar a entrega rápida de software, com foco na eficácia de curto prazo, em detrimento de sua qualidade. Dívidas de natureza técnica contraídas durante o desenvolvimento e manutenção de um software devem ser identificadas, caracterizadas e pagas no futuro, para não comprometer sua qualidade e a facilidade de evolução. Em projetos de software desenvolvidos na indústria, reconhece-se a necessidade de identificar e caracterizar a DT no ciclo de vida de um software, buscando gerenciá-la e mitigar ameaças ao sucesso de longo prazo de um software. Estudos na indústria permitem explorar diferentes aspectos da DT na prática e sob diferentes perspectivas, por exemplo, de desenvolvedores e gerentes, enriquecendo a caracterização da DT. Objetivos. O objetivo principal deste trabalho foi investigar, no contexto de uma empresa de TI, as percepções dos profissionais de equipes de desenvolvimento sobre o conceito de DT e sobre como a DT se manifesta em um dos sistemas de software desenvolvidos. Métodos. Realizou-se um estudo no contexto da filial de uma empresa de desenvolvimento de software, incluindo: (i) um estudo de levantamento (survey) com funcionários que atuavam no desenvolvimento de software na filial; (ii) uma caracterização preliminar da DT de um sistema de software a partir da identificação da DT com o apoio da ferramenta de análise estática adotada pela empresa, SonarQube; (iii) entrevistas semi-estruturadas com a equipe de desenvolvimento do software analisado sobre a DT identificada pelo SonarQube. Resultados. O estudo de levantamento recebeu 32 respostas válidas. Observou-se que o conceito de DT era conhecido pela maioria dos profissionais que participaram do estudo, entretanto, com pouca familiaridade com as consequências de longo prazo da DT. A caracterização do sistema de software com base na identificação automática da DT foi realizada e usada como suporte para seis entrevistas. Segundo os desenvolvedores entrevistados, os prazos definidos para a implementação dos requisitos são notadamente curtos. As documentações, ao não serem atualizadas, tornam-se insuficientes no longo prazo, enquanto os testes são relegados a segundo plano em favor de entregas mais rápidas. Conclusões. A caracterização da Dívida Técnica em uma empresa, sob diferentes perspectivas, revelou que os prazos estabelecidos são o fator preponderante para as equipes de desenvolvimento decidirem incorrer em dívida técnica. A equipe entrevistada frequentemente opta por essa abordagem para atender aos prazos de entrega. Apesar de ser um tema conhecido, ainda há a necessidade de explorar e caracterizar as consequências a longo prazo da Dívida Técnica. Embora haja um aumento nas pesquisas sobre dívida técnica, o campo carece de consenso em suas definições e nos impactos a longo prazo na indústria.


  • Mostrar Abstract
  • Context. The term Technical Debt (TD) denotes the results and consequences of the decision to prioritize the rapid delivery of software, focusing on short-term effectiveness at the expense of its quality. Technical debts incurred during the development and maintenance of software must be identified, characterized, and repaid in the future to avoid compromising its quality and the ease of its evolution.
    In software projects developed in the industry, there is a recognized need to identify and characterize TD throughout the software lifecycle, aiming to manage it and mitigate threats to the long-term success of software. Industry studies allow exploring different aspects of TD in practice and from various perspectives, such as those of developers and managers, enriching the characterization of TD.


    Objectives. The main objective of this work is to investigate, in the context of an IT company, the perceptions of development team professionals regarding the concept of Technical Debt (TD) and how TD manifests in one of the developed software systems.

    Methods. We conducted a study in the context of a software development company branch, comprising:

    (i) a survey with employees engaged in software development at the branch;
    (ii) a preliminary characterization of the Technical Debt (TD) in a software system based on the identification of TD using the static analysis tool adopted by the company, SonarQube;
    (iii) semi-structured interviews with the development team of the analyzed software regarding the TD identified by SonarQube.


    Results. The survey study received 32 valid responses. It was observed that the concept of Technical Debt (TD) was known to the majority of professionals who participated in the study; however, they exhibited little familiarity with the long-term consequences of TD. The characterization of the software system based on the automatic identification of TD was conducted and used as support for the interviews. The deadlines set for the implementation of requirements are notably short. The documentation, when not updated, becomes insufficient in the long term, while testing is relegated to the background in favor of faster deliveries.

    Conclusions. A characterization of Technical Debt in the industry revealed that established deadlines are the predominant factor for development teams to decide to incur technical debt. The team often chooses this approach to meet delivery deadlines. Despite being a known topic, there is still a need to disseminate the long-term consequences of Technical Debt. However, despite the increasing research on technical debt, the field lacks consensus on its definitions and long-term impacts on the industry.

     

23
  • ADRIANO HUMBERTO DE OLIVEIRA MAIA
  • Um Framework baseado em Fog Computing para redução de dados em um sistema de detecção de tráfego para VANETs

  • Orientador : MAYCON LEONE MACIEL PEIXOTO
  • MEMBROS DA BANCA :
  • RODRIGO AUGUSTO CARDOSO DA SILVA
  • ROBERTO RODRIGUES FILHO
  • MAYCON LEONE MACIEL PEIXOTO
  • Data: 20/12/2023

  • Mostrar Resumo
  • Com o crescimento da quantidade de veículos no mundo nos últimos anos, se tornou necessária a adoção de tecnologias para lidar com as consequências que esse volume veicular pode gerar para as grandes cidades, como o aumento dos congestionamento nas rodovias. As redes veiculares Ad-Hoc (VANETs) se apresentam como uma tecnologia promissora nesse cenário, auxiliando na formação de redes veiculares capazes de interconectar veículos e infraestrutura para entender e lidar com congestionamento de veículos. Considerando isso, a quantidade de dados gerados por esse ambiente aumenta na proporção que o número de veículos nas vias cresce. Consequentemente, o envio dos dados do ambiente veicular para a estrutura que identifica o congestionamento, pode ser cada vez mais oneroso no ponto de vista de utilização de rede, podendo gerar sobrecargas e aumento da latência e dificultando a tomada de decisão rápida. Dessa forma, propomos nesse trabalho, a construção de um Framework que visa identificar congestionamento de veículos, com uma abordagem para reduzir na camada de névoa, os dados gerados por uma VANET e depois enviar para a nuvem somente os dados mais relevantes para tomada de decisão. Além da detecção de congestionamento, com os dados históricos em formato de séries temporais realizamos a previsão de congestionamento utilizando ARIMA. Para trabalhar com a redução dos dados, o Framework utiliza algoritmos de amostragem simples e  técnicas de agrupamento (DBSCAN e XMEANS). Os resultados mostraram que, a utilização de algoritmos de agrupamento nesse Framework pode alcançar um nível significativo de acurácia na detecção de congestionamento de tráfego em conjunto com uma redução acentuada do uso de rede.


  • Mostrar Abstract
  • With the growth in the number of vehicles in the world in recent years, it has become necessary to adopt technologies to deal with the consequences that this vehicle volume can generate for large cities, such as increased congestion on highways. Vehicular Ad-Hoc Networks (VANETs) present themselves as a promising technology in this scenario, helping to form vehicular networks capable of interconnecting vehicles and infrastructure to understand and deal with vehicle congestion. Considering this, the amount of data generated by this environment increases as the number of vehicles on the roads increases. Consequently, sending data from the vehicular environment to the structure that identifies congestion can be increasingly costly from the point of view of network use, potentially generating overloads and increased latency, making quick decision-making difficult. Therefore, in this work, we propose the construction of a Framework that aims to identify vehicle congestion, with an approach to reduce the data generated by a VANET in the fog layer and then send only the most relevant data to the cloud. for decision making. In addition to congestion detection, with historical data in time series format we perform congestion prediction using ARIMA. To work with data reduction, \textit{Framework} uses simple sampling algorithms and clustering techniques (DBSCAN and XMEANS). The results showed that the use of clustering algorithms in this Framework can achieve a significant level of accuracy in detecting traffic congestion together with a marked reduction in network usage.

24
  • IURY MAIA DE ALMEIDA
  • Predição da Evasão de Jogadores em Jogo Grátis-Para-Jogar Utilizando Game Analytics

  • Orientador : RODRIGO ROCHA GOMES E SOUZA
  • MEMBROS DA BANCA :
  • LYNN ROSALINA GAMA ALVES
  • RODRIGO ROCHA GOMES E SOUZA
  • TIAGO OLIVEIRA MOTTA
  • Data: 21/12/2023

  • Mostrar Resumo
  • A problemática da evasão de jogadores em jogos grátis-para-jogar representa um desafio significativo na indústria de jogos eletrônicos. A crescente popularidade desses modelos de negócios, nos quais os jogadores podem acessar o jogo gratuitamente, coloca uma ênfase crucial na retenção desses usuários para garantir o sucesso financeiro e a sustentabilidade do jogo. Nesse cenário, a análise preditiva emerge como uma ferramenta essencial para antecipar e compreender os padrões de evasão.

    O trabalho começou com um mapeamento sistemático de literatura no campo de modelos preditivos em game analytics, visando responder à principal questão de pesquisa, Como modelos preditivos estão sendo aplicados em game analytics?. A pesquisa foi conduzida com base em um protocolo que definiu os objetivos, questões de pesquisa e critérios de inclusão e exclusão.

    Os principais resultados indicam que a pesquisa sobre modelos preditivos em game analytics tem crescido significativamente desde 2010, com uma variedade de técnicas de aprendizado de máquina sendo aplicadas. Além disso os objetos de predição mais investigados incluem a probabilidade de vitória, a predição de evasão e a perícia do jogador. Quanto às técnicas de pré-processamento, foram identificadas várias abordagens, como análise de componentes principais (PCA) e técnicas de raspagem da web (web scraping).

    Focamos nossa pesquisa em predição de evasão, inicialmente pela definição de evasão e estabelecimento de datas de corte, com a consideração de múltiplas janelas de tempo para classificação dos jogadores como evadidos ou recorrentes. A análise abordou as ameaças à validade do trabalho, incluindo questões de definição de evasão, desequilíbrio de classes e o uso de técnicas como o SMOTE para balancear os dados.

    Foram avaliados seis modelos de aprendizado de máquina, com ênfase em métricas como acurácia, precisão, recall e AUC (Area Under the Curve). A técnica de 10-fold cross validation foi aplicada para validar os modelos, proporcionando uma visão mais abrangente de seu desempenho. A análise da importância das features revelou quais características dos jogadores eram mais relevantes para a previsão da evasão, embora a interpretação dessas features tenha sido destacada como dependente do contexto do jogo.

    Em última análise, o trabalho ofereceu insights promissores para a previsão de evasão de jogadores em jogos grátis-para-jogar, mas ressaltou a necessidade de abordagens cuidadosas e considerações contextuais para mitigar ameaças à validade e garantir a generalização dos modelos para diferentes conjuntos de dados e períodos no tempo.


  • Mostrar Abstract
  • The issue of player churn in free-to-play games poses a significant challenge in the electronic gaming industry. The growing popularity of these business models, where players can access the game for free, places a crucial emphasis on retaining these users to ensure the financial success and sustainability of the game. In this scenario, predictive analysis emerges as an essential tool to anticipate and understand the patterns of player churn.

    This study began with a systematic literature review in the field of predictive models in game analytics, aiming to answer the main research question: How are predictive models applied in game analytics? The research was conducted based on a protocol that defined the objectives, research questions, and inclusion and exclusion criteria.

    The main findings indicate that research on predictive models in game analytics has grown significantly since 2010, with a variety of machine learning techniques being applied. Furthermore, the most investigated prediction targets include the probability of winning, churn prediction, and player expertise. Regarding preprocessing techniques, several approaches were identified, such as Principal Component Analysis (PCA) and web scraping techniques.

    We focused our research on churn prediction, initially by defining churn and establishing cutoff dates, considering multiple time windows for classifying players as churned or recurrent. The analysis addressed the validity threats of the work, including churn definition issues, class imbalance, and the use of techniques like SMOTE to balance the data.

    Six machine learning models were evaluated, with an emphasis on metrics like accuracy, precision, recall, and AUC (Area Under the Curve). The 10-fold cross-validation technique was applied to validate the models, providing a more comprehensive view of their performance. The analysis of feature importance revealed which player characteristics were most relevant for churn prediction, although the interpretation of these features was highlighted as context-dependent.

    Ultimately, the work offered promising insights into the prediction of player churn in free-to-play games but emphasized the need for careful approaches and contextual considerations to mitigate validity threats and ensure the generalization of models to different datasets and time periods.

Teses
1
  • EMMANUEL SÁVIO SILVA FREIRE
  • Organizando o Estado da Prática em Prevenção, Monitoramento e Pagamento de Dívidas Técnicas em Projetos de Software

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • DANIELA SOARES CRUZES
  • MANOEL GOMES DE MENDONCA NETO
  • RENATO LIMA NOVAIS
  • THIAGO SOUTO MENDES
  • UIRÁ KULESZA
  • Data: 30/01/2023

  • Mostrar Resumo
  • Contexto: Dívida Técnica (DT) descreve os efeitos de artefatos imaturos no desenvolvimento de software que podem trazer benefícios a curto prazo, mas que poderão ter que ser pagos com juros a longo prazo. O gerenciamento da DT equilibra os objetivos de curto e longo prazo, auxiliando as equipes de desenvolvimento a decidir sobre a necessidade e o melhor momento para eliminar a dívida. Dentre as atividades de gerenciamento da DT, tem-se a prevenção, o monitoramento e o pagamento. Por meio da prevenção, é possível evitar que equipes incorram em DT, enquanto o monitoramento as auxilia a acompanhar a evolução dos itens da DT em relação ao custo-benefício de eliminá-los ou não, ou seja, pagar os itens da dívida. Conhecer as práticas utilizadas para prevenir, monitorar e pagar os itens da DT pode auxiliar equipes de desenvolvimento na escolha da melhor prática a ser utilizada nos seus projetos. Identificar as razões que levam à não prevenção, ao não monitoramento e ao não pagamento da DT pode ajudar equipes a entenderem quais aspectos precisam ser melhorados para possibilitar o gerenciamento da DT. Embora a literatura técnica tenha investigado a prevenção, o monitoramento e o pagamento da DT, os resultados atuais refletem apenas o ponto de vista de um pequeno número de profissionais e organizações. Para alcançar os benefícios da gestão da DT, é necessário investigar mais profundamente as práticas e as razões associados a essas atividades da DT.

    Objetivo: Esta tese tem como objetivo investigar, por meio da replicação contínua e independente de uma família de surveys conduzidos globalmente, o estado da prática sobre a prevenção, o monitoramento e o pagamento de itens da DT em projetos de software.

    Método: Inicialmente, foi realizada uma revisão da literatura sobre o estado atual da pesquisa sobre DT e sua prevenção, monitoramento e pagamento. Em seguida, foram analisados os dados coletados por seis equipes de replicação do projeto InsighTD, uma família de surveys globalmente distribuída sobre causas, efeitos e gerenciamento da DT. A partir do corpo de conhecimento resultante das análises dos dados de InsighTD, foram definidos três artefatos: uma versão atualizada do modelo conceitual de DT, um conjunto de mapas conceituais e os diagramas IDEA (Impediments, Decision factors, Enabling practices, and Actions). Por fim, os três artefatos foram avaliados por meio de estudos de casos na academia e na indústria.

    Resultados: Esta tese apresenta as principais práticas utilizadas para prevenir, monitorar e pagar itens da DT e as razões que justificam a não aplicação dessas práticas. Em relação à prevenção da DT, requisitos bem definidos, adoção de boas práticas de programação e melhor gerenciamento do projeto estão entre as cinco práticas relacionadas à prevenção mais citadas, enquanto prazo curto, gerenciamento ineficiente e falta de previsibilidade no desenvolvimento de software estão entre as cinco razões mais citadas para justificar a não prevenção da dívida. Sobre o monitoramento da DT, backlog composto por itens da DT, utilização de ferramentas e reuniões da equipe estão entre as cinco práticas relacionadas ao monitoramento mais citadas, enquanto falta de interesse, foco em metas de curto prazo e falta de tempo estão entre as cinco razões utilizadas para explicar o não monitoramento de itens da DT. Em relação ao pagamento da DT, refatoração de código, investindo esforço nas atividades de pagamento da DT e refatoração de design estão entre as cinco práticas relacionadas ao pagamento mais citadas, enquanto foco em metas de curto prazo, falta de interesse organizacional e falta de tempo estão entre as cinco razões mais citadas para explicar o não pagamento da DT. O modelo conceitual da DT foi atualizado por meio da inclusão do conhecimento oriundo do estado da prática e todas as práticas e razões, juntamente com seus tipos, natureza e categorias, foram organizadas em mapas conceituais e diagramas IDEA. Por meio da avaliação do modelo conceitual e do mapa de pagamento da DT, foi encontrado que eles são bem-organizados e fornecem informações valiosas para definir estratégias de gerenciamento da DT. A avaliação dos diagramas IDEA forneceu evidências positivas de que eles são fáceis de ler e seguir e podem influenciar as decisões sobre como gerenciar itens de TD. Conclusão: Utilizando dados de InsighTD, esta tese explora o estado da prática da prevenção, monitoramento e pagamento da DT, revelando as principais práticas utilizadas para realizar essas atividades e as razões que evitam sua execução. Todo o corpo de conhecimento foi organizado em três artefatos que podem guiar novas investigações sobre a DT e apoiar os profissionais de software a aumentar suas capacidades e reduzir seus problemas no gerenciamento de itens de dívida.


  • Mostrar Abstract
  • Context: Technical debt (TD) describes the effects of immature artifacts on software development that can bring benefits in the short term but may have to be paid with interest in the long term. TD management balances short-term and long-term goals, supporting development teams to decide on the need and the best time to eliminate the debt. TD management activities include prevention, monitoring, and payment. Through prevention, it is possible to prevent teams from incurring TD, while monitoring helps them follow the evolution of TD items concerning the cost-benefit of eliminating them or not, that is, paying the debt items. Knowing the practices used to prevent, monitor, and pay TD items can help development teams to choose the best practice to be used in their projects. Identifying the practice avoidance reasons (PARs) that lead to nonprevention, non-monitoring, and non-payment of TD can help teams understand which aspects need to be improved to enable TD management. Although the technical literature has investigated the prevention, monitoring, and payment of TD, current results only reflect the viewpoint of a small number of professionals and organizations. To achieve the benefits of TD management, it is necessary to investigate more deeply the practices and PARs associated with these TD activities.

    Aims: This Ph.D. dissertation aims to investigate, through the continuous and independent replication of a family of surveys conducted globally, the state of practice on the prevention, monitoring, and payment of TD items in software projects.

    Method: Initially, we conducted a literature review on the current state of research on TD and its prevention, monitoring, and payment. Then, we analyzed data collected by six replication teams from the InsighTD project, which is a family of globally distributed surveys on the causes, effects, and management of TD. From the body of knowledge resulting from the analysis of InsighTD data, we defined three artifacts: an updated version of the conceptual model for TD, a set of conceptual maps, and IDEA (Impediments, Decision factors, Enabling practices, and Actions) diagrams. Finally, we assessed these artifacts through case studies in academic and industrial settings.

    Results: This Ph.D. dissertation presents the leading practices used to prevent, monitor, and pay off TD items and the PARs that justify the non-application of these practices. Regarding the prevention of TD, well-defined requirements, adopting good programming practices, and better project management are among the five most cited practices related to prevention, while short deadlines, ineffective management, and lack of predictability in the software development are among the five most cited PARs to justify the non-prevention of debt. About TD monitoring, TD item backlog, use of tools, and team meetings are among the five most cited practices related to monitoring, while lack of interest, focus on short-term goals, and lack of time are among the five PARs used to explain the non-monitoring of TD items. Regarding TD payment, code refactoring, investing effort in TD payment activities, and design refactoring are among the top five payment-related practices, while focusing on short-term goals, lack of organizational interest, and lack of time are among the five most cited PARs to explain the non-payment of TD. We update the conceptual model for TD by including the knowledge we learn from the state of practice and organize all practices and PARs along with their types, natures, and categories into maps and IDEA diagrams. From the conceptual model and TD payment map assessment, we found that they are well organized and provide valuable information to define strategies for TD management. The IDEA diagrams assessment provided positive evidence that the diagrams are easy to read and follow and can influence decisions on how to manage TD items.

    Conclusion: Using the InsighTD data, this Ph.D. dissertation explores the state of practice on TD prevention, monitoring, and payment, revealing the primary practices used to perform these activities and the PARs that avoid their execution. All body of knowledge was organized into three artifacts that can drive new investigations on TD and support software practitioners in increasing their capabilities and reducing their issues in managing debt items.

2
  • Edson Mota da Cruz
  • DaRkaM: Um Framework de Redução de Dados Baseado na Névoa Aplicado ao Contexto da Computação Urbana

  • Orientador : MAYCON LEONE MACIEL PEIXOTO
  • MEMBROS DA BANCA :
  • ADEMAR TAKEO AKABANE
  • DIONISIO MACHADO LEITE FILHO
  • GERALDO PEREIRA ROCHA FILHO
  • LOURENÇO ALVES PEREIRA JUNIOR
  • MAYCON LEONE MACIEL PEIXOTO
  • Data: 01/02/2023

  • Mostrar Resumo
  • Os Sistemas de Transporte Inteligente (ITS) são projetados para analisar o fluxo de veículos nas rodovias com o objetivo de identificar eventuais anomalias de tráfego, garantindo maior eficiência na tomada de decisão. Estes sistemas podem ser estruturados no contexto das redes veiculares Ad-Hoc (VANET), na qual realizam a tarefa de integrar os elementos do espaço urbano por meio de um sistema de comunicação distribuída. Analogamente, aplicações ITS requerem um monitoramento constante das rodovias e tal monitoramento visa analisar, entre outros aspectos, a variação da densidade de veículos ao longo do tempo. Em geral, este processo ocorre por meio do envio periódico de dados situacionais do ambiente de mobilidade para a nuvem. Como consequência, os conjuntos de dados enviados em alta frequência para nuvem formam um fluxo contínuo de dados a serem processados e essa dinâmica resulta no aumento progressivo do custo de comunicação. Esse fenômeno ocorre em função do volume de dados transferidos no enlace entre a névoa e a nuvem, elevando os riscos de sobrecarga no canal de comunicação, além de aumentar a latência durante as requisições de serviços disponibilizados na nuvem. Diante disso, propõe-se neste trabalho, a elaboração de uma arquitetura multicamada para redução de dados baseada em Fog Computing denominada DaRkaM, acrônimo em inglês para (Data Reduction Framework for Traffic Management). A estratégia consiste na utilização de uma estratégia de monitoramento capaz de realizar processos de redução de dados diretamente na borda da rede veicular. Na camada da nuvem, DaRkaM atua como um controlador central, analisando as posições geográficas dos veículos que são recebidas a partir de um fluxo de dados contínuo, os quais são utilizados nos processos de monitoramento e gestão do tráfego. %sobre os quais são realizadas as ações de monitoramento.
    Na borda da rede, um módulo de redução de dados implementado no framework DaRkaM foi projetado para hospedar diferentes estratégias de monitoramento de tráfego. Esta arquitetura permite a realização de análises comparativas envolvendo tanto a utilização de algoritmos baseados em amostragem simples, como o uso de algoritmos de agrupamento, nos quais os processos de redução de dados são estruturados com base na similaridade dos objetos analisados. Os resultados preliminares demonstraram que a utilização de algoritmos baseados em agrupamento, hospedados no núcleo de redução de dados do framework DaRkaM, podem alcançar uma significativa redução no custo de comunicação, especialmente em cenários sobrecarregados, além de manterem alta precisão no monitoramento e detecção de congestionamento de tráfego.


  • Mostrar Abstract
  • The Intelligent Transport Systems (ITS) has a function to analyze the flow of vehicles on highways in order to identify any traffic anomalies, ensuring greater efficiency during the decision-making process. These systems can be based on an Ad-Hoc vehicular network (VANETs) able to integrate the elements of urban space through a distributed communication system. Similarly, ITS applications require constant monitoring of roads, and such monitoring aims to analyze, among other aspects, the variation of the vehicle density over time. In general, this process occurs by means of the periodic sending of situational data from the mobility environment to the cloud. Consequently, the data sets sent at high frequency to the cloud form a continuous data flow that should be processed in a real-time context. However, this dynamic implies in a progressive increase of the communication cost, in function of the volume of data transferred in the link between the fog and the cloud, increasing the risks of overload beyond increasing the latency during requests for services made available in the cloud. Therefore, this work proposes the development of a multilayer architecture for data reduction based on Fog Computing called DaRkaM, acronym in English for (Data Reduction Framework for Traffic Management). The strategy consists of using a monitoring model able to perform data reduction processes directly at the edge of the vehicular network. At the cloud layer, DaRkaM acts as a central controller, analyzing the geographic positions of vehicles that are received from a continuous data flow. These data are used to monitor and perform the traffic management processes addressed in this proposal. At the edge network, a data reduction module was designed to host different traffic monitoring strategies. This architecture favors the comparative analysis among different approaches, ranging from the use of algorithms based on simple sampling until clustering algorithms, in which the data reduction processes are structured based on the number of clusters. The results showed that the use of cluster-based algorithms, hosted in the data reduction core of the DaRkaM framework, are able to achieve high accuracy in monitoring and detecting traffic congestion, in addition, they are able to reach a significant reduction in communication cost, especially in overloaded scenarios.

3
  • DIEGO BRAGA MONTEIRO DE MOURA
  • Heterogeneous Memory Management for Graph Applications

  • Orientador : VINICIUS TAVARES PETRUCCI
  • MEMBROS DA BANCA :
  • PAUL M. CARPENTER
  • LUIS FILIPE NUNES QUARESMA DE OLIVEIRA
  • DANIEL MOSSÉ
  • ESBEL TOMÁS VALERO ORELLANA
  • GEORGE MARCONI DE ARAUJO LIMA
  • VINICIUS TAVARES PETRUCCI
  • Data: 09/03/2023

  • Mostrar Resumo
  • A demanda por memória aumentou devido ao surgimento de várias aplicações, como big data, aprendizado de máquina, redes sociais, análise de grafos entre outros. A tecnologia DRAM está enfrentando problemas com escalabilidade, energia e custos, apesar de sua vantagem de baixa latência. A memória não volátil (NVM) é uma alternativa aos problemas de escalabilidade da DRAM. Embora o NVM tenha alta densidade, baixo custo e baixo consumo de energia, sua alta latência o impede de substituir a DRAM. Memórias heterogêneas como DRAM+NVM provavelmente se tornarão comuns, e o posicionamento eficiente de dados é uma importante questão de pesquisa. Esta dissertação de doutorado se concentra no gerenciamento de posicionamento de dados para aplicações de análise de grafos. Ele estuda modelos de aprendizado de máquina para prever o desempenho de aplicativos em um contexto com várias aplicações e explora opções de mapeamento de dados no nível de objeto ou bloco para uma única aplicação. A dissertação contribui para a identificação off-line de atributos de objetos que influenciam o desempenho, a implementação de um escalonador off-line no nível do chunk e a implementação de um escalonador on-line no nível do chunk.


  • Mostrar Abstract
  • The demand for memory has increased due to various applications such as big data, machine learning, social networks, and streaming analytics. DRAM technology is facing issues with scalability, energy, and costs, despite its low latency advantage. Non-Volatile Memory (NVM) is an alternative to DRAM scalability issues. Although NVM has high density, low cost, and low energy, its high latency prevents it from replacing DRAM. Heterogeneous memories like DRAM+NVM are likely to become common, and efficient data placement is an important research question. This PhD dissertation focuses on managing data placement for graph analytics applications. It studies machine learning models to predict application performance in a context with multiple applications and explores data mapping choices at the object or chunk level for a single application. The dissertation contributes to offline identification of performance-influencing object attributes, implementation of an offline scheduler at the chunk level, and implementation of an online scheduler at the chunk level.

4
  • Valéria Argôlo Rosa de Queiroz
  • Design de Interação Semioparticipativo por pessoas Idosas: empatia e engajamento na produção de tecnologia

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • SIMONE BACELLAR LEAL FERREIRA
  • KAMILA RIOS DA HORA RODRIGUES
  • FAUSTO ORSI MEDOLA
  • ECIVALDO DE SOUZA MATOS
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • Data: 27/03/2023

  • Mostrar Resumo
  • O número de pessoas idosas tem aumentado consideravelmente em todo o mundo. Assim, a ciência tem desenvolvido estratégias para ajudar as pessoas a envelhecer com saúde e manter a vida ativa. As tecnologias digitais podem contribuir para isso. No entanto, essas tecnologias nem sempre são projetadas de acordo com as reais necessidades e expectativas dos idosos. Estimular idosos a projetar tecnologias computacionais por meio de perspectivas abertas e participativas de design de interação tem-se mostrado uma solução possível. Contudo, engajar o sujeito idoso nesse processo e torná-lo parceiro de design ainda é desafiador. A maioria dos estudos baseados em práticas participativas encontrados não estabelece o engajamento de potenciais usuários, principalmente em relação aos sujeitos idosos. Desse modo, esta pesquisa teve o objetivo de investigar e desenvolver técnicas de engajamento do sujeito idoso na concepção de tecnologias digitais por meio de um processo semioparticipativo de (co)design de interação, estabelecendo a empatia como elemento fundamental de engajamento. Para isso, inicialmente foi elaborado um modelo de engajamento para integrar os elementos e variáveis desse modelo em um processo semioparticipativo. Sob essa perspectiva, realizou-se dois estudos de casos, o primeiro no formato presencial e o segundo no formato remoto, em uma abordagem qualitativa com mulheres idosas. Os resultados analisados por meio do método de análise de conteúdo confirmaram a potencialidade dos elementos e variáveis para melhorar o engajamento do sujeito idoso. Espera-se que esses resultados possam contribuir para a ampliação dos processos semioparticipativos de codesign de interação na perspectiva do sujeito idoso, além de oferecer elementos epistemológicos para desenvolvimento de métodos e processos de design de interação inclusivos.


  • Mostrar Abstract
  • The number of elderly people has increased considerably around the world. Thus, science has developed strategies to help people age healthily and maintain an active life. Digital technologies can contribute to this. However, these technologies are not always designed according to the real needs and expectations of the elderly. Encouraging the elderly to design computational technologies through open and participatory perspectives of interaction design has been shown to be a possible solution. However, engaging older people in this process and making them a design partner is still challenging. Most studies based on participatory practices found do not establish the engagement of potential users, especially in relation to elderly people. Therefore, this research aimed to investigate and develop techniques to engage the elderly in designing digital technologies through a semi-participatory interaction (co)design process, establishing empathy as a fundamental engagement element. To this end, an engagement model was initially developed to integrate the elements and variables of this model in a semi-participatory process. From this perspective, two case studies were carried out, the first in a face-to-face format and the second in a remote format, in a qualitative approach with elderly women. The results analyzed using the content analysis method confirmed the potentiality of the elements and variables to improve the engagement of the elderly person and, thus, provided the conception of an informative educational document in Guide format, highlighting the main techniques, activities and strategies with the purpose of making the conduction of a semi-participatory Interaction co-design process more practical and accessible. It is expected that these results may contribute to the expansion of semi-participatory interaction co-design processes from the perspective of the elderly person, besides offering epistemological elements for developing inclusive interaction design methods and processes.

5
  • Djan Almeida Santos
  • Compreensibilidade de Código Fonte com Dependência entre Features em Sistemas Configuráveis

  • Orientador : CLAUDIO NOGUEIRA SANT ANNA
  • MEMBROS DA BANCA :
  • ROHIT GHEYI
  • FLÁVIO MOTA MEDEIROS
  • CLAUDIO NOGUEIRA SANT ANNA
  • EDUARDO SANTANA DE ALMEIDA
  • IVAN DO CARMO MACHADO
  • Data: 28/03/2023

  • Mostrar Resumo
  • Compilação condicional é frequentemente utilizada para implementar variabilidade em código fonte de sistemas configuráveis. Compilação condicional utiliza #ifdefs para delimitar o código de uma funcionalidade (feature). Estudos anteriores mostraram que #ifdefs podem dificultar a compreensão do código. No entanto, esses estudos não levaram explicitamente em conta as dependências entre features. A dependência entre feature ocorre quando diferentes features se referem ao mesmo elemento de programa, como por exemplo, uma variável. A compreensibilidade de código fonte de sistemas configuráveis pode ser ainda mais afetada na presença de dependência entre features, pois o desenvolvedor deve raciocinar sobre diferentes cenários que afetam a mesma variável. Nosso objetivo é, portanto, entender como a dependência entre features afeta a compreensibilidade do código fonte de sistemas configuráveis. Para isso, realizamos quatro estudos experimentais complementares. No Estudo 1, quarenta e seis desenvolvedores responderam a uma pesquisa online. Eles executaram tarefas nas quais tiveram que analisar programas contendo #ifdefs com e sem dependências entre features. No entanto, as dependências entre features podem ser de tipos diferentes, dependendo do escopo da variável compartilhada. No Estudo 1, não nos preocupamos com diferentes tipos de dependência. Assim, no Estudo 2, realizamos um experimento no qual 30 desenvolvedores depuraram programas com diferentes tipos de dependência entre features. Cada programa incluiu um tipo diferente de dependência entre features: global, intraprocedural ou interprocedural. Usamos um dispositivo de rastreamento ocular para registrar os movimentos do olhar dos desenvolvedores enquanto depuravam os programas. No entanto, as dependências entre features não diferem umas das outras apenas em termos de tipos. Eles também podem apresentar diferenças em termos de número de variáveis dependentes e grau de variabilidade, entre outros. Para atender a essas características, complementamos os Estudos 1 e 2 por meio dos Estudos 3 e 4. No Estudo 3, realizamos um experimento controlado com 12 participantes que analisaram programas com diferentes números de variáveis dependentes. No Estudo 4, realizamos um experimento no qual 12 desenvolvedores analisaram programas com diferentes graus de variabilidade. Nossos resultados mostram que: (i) analisar programas contendo #ifdefs e dependência entre features exigiu mais tempo do que programas contendo #ifdefs, mas sem dependência entre features, (ii) depurar programas com #ifdefs e dependência global ou interprocedural exigiu mais tempo e maior esforço visual do que programas com dependência intraprocedural, (iii) quanto maior o número de variáveis dependentes, mais difícil foi para entender programas com dependência entre features e (iv) o grau de variabilidade não afetou a compreensibilidade de programas com dependência entre features. Em resumo, nossos estudos mostraram que #ifdefs afetaram a compreensibilidade de sistemas configuráveis em diferentes graus, dependendo da presença ou não de dependência entre features, do tipo de dependência entre features e do número de variáveis dependentes.


  • Mostrar Abstract
  • Conditional compilation is often used to implement variability in configurable systems. This technique relies on #ifdefs to delimit feature code. Previous studies have shown that #ifdefs may hinder code comprehensibility. However, those studies did not explicitly take feature dependencies into account. Feature dependency occurs when different features refer to the same program element, such as a variable. Comprehensibility may be even more affected in the presence of feature dependency, as the developer must reason about different scenarios affecting the same variable. Our goal is to understand how feature dependency affects the comprehensibility of configurable system source code. We conducted four complementary empirical studies. In Study 1, forty-six developers responded an online survey. They executed tasks in which they had to analyze programs containing #ifdefs with and without feature dependency. However, feature dependencies may be of different types depending on the scope of the shared variable. In Study 1, we were not concerned with different types of dependency. Thus, in Study 2, we carried out an experiment in which 30 developers debugged programs with different types of feature dependency. Each program included a different type of feature dependency: global, intraprocedural or interprocedural. We used an eye-tracking device to record developers' gaze movements while they debugged programs. However, feature dependencies do not differ from each other only in terms of types. They can also present differences in terms of number of dependent variables and degree of variability, among others. To address those characteristics, we complemented Study 1 and 2 by means of Studies 3 and 4. In Study 3, we executed a controlled experiment with 12 participants who analyzed programs with different numbers of dependent variables and number of uses of dependent variables. In Study 4, we carried out an experiment in which 12 developers analyzed programs with different degrees of variability. Our results show that: (i) analyzing programs containing #ifdefs and feature dependency required more time than programs containing #ifdefs but without feature dependency, (ii) debugging programs with #ifdefs and global or interprocedural dependency required more time and higher visual effort than programs with intraprocedural dependency, (iii) the higher the number of dependent variables the more difficult it was to understand programs with feature dependency, and (iv) the degree of variability did not affect the comprehensibility of programs with feature dependency. In summary, our studies showed that #ifdefs affected comprehensibility of configurable systems in different degrees depending on the presence or not of feature dependency, on the type of feature dependency, and on the number of dependent variables.

6
  • LEANDRO OLIVEIRA DE SOUZA
  • Although Software Product Lines (SPL) offer the potential for order-of-magnitude improvements in software engineering performance, the up-front cost, level of effort, assumed risk, and latency required to make the transition to SPL are prohibitive adoption barriers for many organizations that could otherwise benefit from reusing of their existing systems. The SPL adoption from an extractive model based on a reengineering process of existing systems into SPL is an active research topic with tangible benefits in practice. It allows software development companies to preserve their investment and aggregate knowledge obtained while developing their individually developed systems portfolio. 

     

    Despite these benefits, adopting an extractive product line approach still requires a considerable upfront investment and is more complex to evolve than one-off systems. Because of these drawbacks, software companies refrain from adopting SPL, resorting to an ad-hoc practice of clone-and-own. To speed the conversion to and maintenance of SPL, we present FOUNDRY, a Software Transplantation (ST) approach that guides transplanting and merging features in a product line from existing systems. It is the first approach for SPL that automates all stages of product line construction using the ST technique. We realized Foundry in a software transplantation tool for SPL that automates identifying, adapting, and transferring features from existing systems to a standard product base. Its code transfer mechanism between different systems allows it to be used not only for generating product lines but also as an alternative to the clone-and-own technique for system specialization. We compared our proposal with the existing reengineering solutions to demonstrate evidence that the ST is an alternative with the potential for application in reengineering existing systems to SPL. In the search for more concrete evidence, we evaluated two case studies where two products were generated by transplanting features from three real-world systems.

     

    Moreover, we experimented with comparing Foundry’s feature migration with manual effort. We show that Foundry automatically migrated features across codebases 4.8 times faster, on average, than the average time a group of SPL experts took to accomplish the task. Although preliminary, our evaluation provides evidence to support the claim that ST for Software Product Line Engineering (SPLE) is a feasible and promising new research direction.


  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • EDUARDO SANTANA DE ALMEIDA
  • GUSTAVO HENRIQUE LIMA PINTO
  • LEOPOLDO MOTTA TEIXEIRA
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 30/06/2023

  • Mostrar Resumo
  • Although Software Product Lines (SPL) offer the potential for order-of-magnitude improvements in software engineering performance, the up-front cost, level of effort, assumed risk, and latency required to make the transition to SPL are prohibitive adoption barriers for many organizations that could otherwise benefit from reusing of their existing systems. The SPL adoption from an extractive model based on a reengineering process of existing systems into SPL is an active research topic with tangible benefits in practice. It allows software development companies to preserve their investment and aggregate knowledge obtained while developing their individually developed systems portfolio. 

     

    Despite these benefits, adopting an extractive product line approach still requires a considerable upfront investment and is more complex to evolve than one-off systems. Because of these drawbacks, software companies refrain from adopting SPL, resorting to an ad-hoc practice of clone-and-own. To speed the conversion to and maintenance of SPL, we present FOUNDRY, a Software Transplantation (ST) approach that guides transplanting and merging features in a product line from existing systems. It is the first approach for SPL that automates all stages of product line construction using the ST technique. We realized Foundry in a software transplantation tool for SPL that automates identifying, adapting, and transferring features from existing systems to a standard product base. Its code transfer mechanism between different systems allows it to be used not only for generating product lines but also as an alternative to the clone-and-own technique for system specialization. We compared our proposal with the existing reengineering solutions to demonstrate evidence that the ST is an alternative with the potential for application in reengineering existing systems to SPL. In the search for more concrete evidence, we evaluated two case studies where two products were generated by transplanting features from three real-world systems.

     

    Moreover, we experimented with comparing Foundry’s feature migration with manual effort. We show that Foundry automatically migrated features across codebases 4.8 times faster, on average, than the average time a group of SPL experts took to accomplish the task. Although preliminary, our evaluation provides evidence to support the claim that ST for Software Product Line Engineering (SPLE) is a feasible and promising new research direction.



  • Mostrar Abstract
  • Although Software Product Lines (SPL) offer the potential for order-of-magnitude improvements in software engineering performance, the up-front cost, level of effort, assumed risk, and latency required to make the transition to SPL are prohibitive adoption barriers for many organizations that could otherwise benefit from reusing of their existing systems. The SPL adoption from an extractive model based on a reengineering process of existing systems into SPL is an active research topic with tangible benefits in practice. It allows software development companies to preserve their investment and aggregate knowledge obtained while developing their individually developed systems portfolio. 

     

    Despite these benefits, adopting an extractive product line approach still requires a considerable upfront investment and is more complex to evolve than one-off systems. Because of these drawbacks, software companies refrain from adopting SPL, resorting to an ad-hoc practice of clone-and-own. To speed the conversion to and maintenance of SPL, we present FOUNDRY, a Software Transplantation (ST) approach that guides transplanting and merging features in a product line from existing systems. It is the first approach for SPL that automates all stages of product line construction using the ST technique. We realized Foundry in a software transplantation tool for SPL that automates identifying, adapting, and transferring features from existing systems to a standard product base. Its code transfer mechanism between different systems allows it to be used not only for generating product lines but also as an alternative to the clone-and-own technique for system specialization. We compared our proposal with the existing reengineering solutions to demonstrate evidence that the ST is an alternative with the potential for application in reengineering existing systems to SPL. In the search for more concrete evidence, we evaluated two case studies where two products were generated by transplanting features from three real-world systems.

     

    Moreover, we experimented with comparing Foundry’s feature migration with manual effort. We show that Foundry automatically migrated features across codebases 4.8 times faster, on average, than the average time a group of SPL experts took to accomplish the task. Although preliminary, our evaluation provides evidence to support the claim that ST for Software Product Line Engineering (SPLE) is a feasible and promising new research direction.


7
  • SILVIO LUIZ BRAGATTO BOSS
  • Avaliação automática de mapas conceituais para identificar indícios de aprendizagem significativa

  • Orientador : ALINE MARIA SANTOS ANDRADE
  • MEMBROS DA BANCA :
  • DAVIDSON CURY
  • ALINE MARIA SANTOS ANDRADE
  • CREDINE SILVA DE MENEZES
  • ECIVALDO DE SOUZA MATOS
  • LYNN ROSALINA GAMA ALVES
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • Data: 01/09/2023

  • Mostrar Resumo
  • Mapas Conceituais são ferramentas pedagógicas amplamente utilizadas para facilitar o
    processo de aprendizagem. De forma geral, podem ser definidos como diagramas com
    organização hierárquica que apresentam relações entre conceitos. São um importante
    instrumento para o ensino e avaliação do conhecimento por representarem, entre outras
    características, a estrutura cognitiva do aprendiz. Os mapas conceituais estão fundamentados
    na Teoria da Aprendizagem Significativa de Ausubel, assim, é possível avaliar os mapas com
    base em aspectos dessa Teoria, como as categorias-chave da diferenciação progressiva e
    reconciliação integrativa. Estas representam informações sobre o processo de construção do
    conhecimento sendo, portanto, fundamentais para uma avaliação de aprendizagem
    significativa. As categorias-chave podem ser identificadas no processo de elaboração dos
    mapas, no entanto, este processo não vem sendo muito explorado na literatura. A maioria dos
    trabalhos focam na análise comparativa entre o mapa do aprendiz e um mapa de referência
    para verificar se os conceitos e relações estão representados corretamente. A análise
    comparativa entre mapas é importante, mas não suficiente para uma avaliação da
    aprendizagem significativa, visto que as categorias-chave bem como outras informações da
    estrutura cognitiva do aprendiz, ou seja, como ele constrói e reconstrói seu conhecimento no
    decurso do seu processo de aprendizagem, são essenciais para identificar indícios de
    aprendizagem. Na literatura, há trabalhos que analisam a estrutura do mapa conceitual para
    classificar a qualidade da aprendizagem em aprendizagem mecânica, significativa ou não-
    aprendizagem, mas não analisa o processo de construção do mapa e nenhuma discussão é
    feita sobre a automatização da avaliação. Pesquisas no campo da Informática na Educação têm
    investigado o problema de se avaliar a aprendizagem, comparando mapas conceituais de
    aprendizes com um mapa de referência, por meio de ferramentas computacionais. Há diversas
    soluções que envolvem análise estrutural utilizando padrões de comparação e análise
    semântica por meio de ontologias de domínio. Esta tese de doutorado apresenta um modelo
    e um método para avaliação de mapas conceituais que considera avaliação sintática e
    semântica bem como o processo de construção de mapas, propondo critérios para identificar
    indícios de aprendizagem mecânica, significativa e não-aprendizagem. São consideradas
    avaliação qualitativa e quantitativa. Um framework conceitual é especificado fornecendo um
    arcabouço sobre a organização e estruturação de avaliação de mapas conceituais para apoiar a
    construção de sistemas computacionais para a sua automatização. Foram desenvolvidos
    estudos de caso, que serviram como uma primeira avaliação do método proposto.


  • Mostrar Abstract
  • Mapas Conceituais são ferramentas pedagógicas amplamente utilizadas para facilitar o
    processo de aprendizagem. De forma geral, podem ser definidos como diagramas com
    organização hierárquica que apresentam relações entre conceitos. São um importante
    instrumento para o ensino e avaliação do conhecimento por representarem, entre outras
    características, a estrutura cognitiva do aprendiz. Os mapas conceituais estão fundamentados
    na Teoria da Aprendizagem Significativa de Ausubel, assim, é possível avaliar os mapas com
    base em aspectos dessa Teoria, como as categorias-chave da diferenciação progressiva e
    reconciliação integrativa. Estas representam informações sobre o processo de construção do
    conhecimento sendo, portanto, fundamentais para uma avaliação de aprendizagem
    significativa. As categorias-chave podem ser identificadas no processo de elaboração dos
    mapas, no entanto, este processo não vem sendo muito explorado na literatura. A maioria dos
    trabalhos focam na análise comparativa entre o mapa do aprendiz e um mapa de referência
    para verificar se os conceitos e relações estão representados corretamente. A análise
    comparativa entre mapas é importante, mas não suficiente para uma avaliação da
    aprendizagem significativa, visto que as categorias-chave bem como outras informações da
    estrutura cognitiva do aprendiz, ou seja, como ele constrói e reconstrói seu conhecimento no
    decurso do seu processo de aprendizagem, são essenciais para identificar indícios de
    aprendizagem. Na literatura, há trabalhos que analisam a estrutura do mapa conceitual para
    classificar a qualidade da aprendizagem em aprendizagem mecânica, significativa ou não-
    aprendizagem, mas não analisa o processo de construção do mapa e nenhuma discussão é
    feita sobre a automatização da avaliação. Pesquisas no campo da Informática na Educação têm
    investigado o problema de se avaliar a aprendizagem, comparando mapas conceituais de
    aprendizes com um mapa de referência, por meio de ferramentas computacionais. Há diversas
    soluções que envolvem análise estrutural utilizando padrões de comparação e análise
    semântica por meio de ontologias de domínio. Esta tese de doutorado apresenta um modelo
    e um método para avaliação de mapas conceituais que considera avaliação sintática e
    semântica bem como o processo de construção de mapas, propondo critérios para identificar
    indícios de aprendizagem mecânica, significativa e não-aprendizagem. São consideradas
    avaliação qualitativa e quantitativa. Um framework conceitual é especificado fornecendo um
    arcabouço sobre a organização e estruturação de avaliação de mapas conceituais para apoiar a
    construção de sistemas computacionais para a sua automatização. Foram desenvolvidos
    estudos de caso, que serviram como uma primeira avaliação do método proposto.

8
  • GABRIELA OLIVEIRA MOTA DA SILVA
  • Explorando estratégias de personalização de similaridade baseadas em Lod para sistemas de recomendação

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • FREDERICO ARAUJO DURAO
  • LAIS DO NASCIMENTO SALVADOR
  • NATASHA CORREIA QUEIROZ LINO
  • ROSALVO FERREIRA DE OLIVEIRA NETO
  • Data: 28/09/2023

  • Mostrar Resumo
  • Linked Open Data (LOD) é uma nuvem de conjuntos de dados livremente acessíveis e interconectados abranger dados legíveis por máquina. Esses dados estão disponíveis em Web Semântica aberta padrões, como Resource Description Framework (RDF) e protocolo SPARQL e Linguagem de Consulta RDF (SPARQL). Um exemplo notável de um conjunto de LOD é o DBpedia, um esforço comunitário de crowdsourcing para extrair informações estruturadas da Wikipedia e tornar esta informação disponível abertamente na Web. O conteúdo semântico de LOD e os recursos avançados do SPARQL abriram oportunidades sem precedentes para habilitar aplicações semânticas. Sistemas de recomendação baseados em LOD Sistemas de recomendação geralmente aproveitam os dados disponíveis nos conjuntos de dados LOD, como DBpedia, para recomendar itens como filmes, lugares, livros e música para usuários finais. Esses sistemas usam uma semântica algoritmo de similaridade que calcula o grau de correspondência entre pares de recursos contando o número de links diretos e indiretos entre eles, o comprimento do caminho entre eles, ou a hierarquia de classes. Por outro lado, calcular a similaridade em Gráficos RDF podem ser difíceis porque cada recurso pode ter centenas de links para outros nós. Nem todos eles são semanticamente relevantes ou podem ser aplicados a todos os recursos em o gráfico. Isso pode levar ao conhecido problema de esparsidade da matriz. No entanto, alguns esforço foi feito para selecionar subconjuntos de recursos, ou seja, links, que são mais úteis para calcular a similaridade entre os itens de um conjunto de dados do gráfico, reduzindo a dimensão da matriz. Apesar de vários estudos nesta área, ainda faltam soluções aplicadas à personalização de tarefas de seleção de recursos. Neste contexto, propomos estratégias personalizadas para melhorar a precisão da similaridade semântica em sistemas de recomendação baseados em LOD, incluindo i) aplicar uma abordagem de seleção de recursos para filtrar os melhores recursos para um determinado usuário; ii) personalizar o grafo RDF adicionando pesos às arestas, de acordo com o desejo do usuário preferências anteriores; e iii) explorar a semelhança de propriedades literais, bem como a links do modelo de usuário. Os experimentos de avaliação usaram dados combinados da DBpedia e conjuntos de dados MovieLens e DBpedia e LastFM. Os resultados indicam significativa aumentos nas principais tarefas de recomendação em Precision@K (K=5, 10), Map e NDCG sobre métodos de semelhanças de linha de base não personalizados, como distância semântica de dados vinculados (LDSD) e Similaridade de Recursos (ReSim). Os resultados mostram que o LOD baseado estratégias de personalização do modelo do usuário e seleção de recursos exploradas neste trabalho são eficiente para melhorar sistemas de recomendação baseados em conteúdo em diversos contextos.


  • Mostrar Abstract
  • Linked Open Data (LOD) is a cloud of freely accessible and interconnected datasets that encompass machine-readable data. These data are available under open Semantic Web standards, such as Resource Description Framework (RDF), SPARQL Protocol, and RDF Query Language (SPARQL). One notable example of a LOD set is DBpedia, a crowd-sourced community effort to extract structured information from Wikipedia and make this information openly available on the Web. The semantic content of LOD and the advanced features of SPARQL has opened unprecedented opportunities for enabling semantic-aware applications. LOD-based Recommender Systems Recommender Systems usually leverage the data available within LOD datasets such as DBpedia to recommend items such as movies, places, books, and music to end-users. These systems use a semantic similarity algorithm that calculates the degree of matching between pairs of resources by counting the number of direct and indirect links between them, the length of the path between them, or the hierarchy of classes. Conversely, calculating similarity in RDF graphs could be difficult because each resource can have hundreds of links to other nodes. Not all of them are semantically relevant or can be applied to all resources in the graph. This can lead to the well-known matrix sparsity problem. Nevertheless, some effort has been made to select subsets of features, i.e., links, which are more helpful to computing similarity between items of a graph dataset, reducing the matrix dimension. Despite several studies in this field, there is still a lack of solutions applied to the personalization of feature selection tasks. In this context, we propose personalized strategies to improve semantic similarity precision in LOD-based Recommender Systems, including i) applying a feature selection approach to filter the best features for a particular user, ii) personalizing the RDF graph by adding weights to the edges, according to the user’s previous preferences; and iii) exploiting the similarity of literal properties as well as the links from the user model. The evaluation experiments used combined data from DBpedia and MovieLens and DBpedia and LastFM datasets. Results indicate significant increases in top-n recommendation tasks in Precision@K (K=5, 10), Map, and NDCG over non-personalized baseline similarities methods such as Linked Data Semantic Distance (LDSD) and Resource Similarity (ReSim). The results show that the LOD-based strategies of user model personalization.

9
  • SAULO ANTONIO DE LIMA MATOS
  • Invariantes e estruturas de vizinhanças para 1-fatorações de grafos completos

  • Orientador : RAFAEL AUGUSTO DE MELO
  • MEMBROS DA BANCA :
  • RAFAEL AUGUSTO DE MELO
  • TIAGO DE OLIVEIRA JANUARIO
  • CELSO DA CRUZ CARNEIRO RIBEIRO
  • MARCIO COSTA SANTOS
  • VINICIUS FERNANDES DOS SANTOS
  • SEBASTIÁN ALBERTO URRUTIA
  • Data: 03/10/2023

  • Mostrar Resumo
  • Uma 1-fatoração é uma partição do conjunto de arestas de um grafo em emparelhamentos perfeitos. O conceito de 1-fatoração é de grande interesse devido às suas aplicações na modelagem de torneios esportivos. Duas 1-fatorações são ditas isomorfas (pertencem a mesma classe de isomorfismo) se existir uma bijeção entre seus conjuntos de vértices que transforme uma na outra. O espaço de busca de 1-fatorações não isomorfas é um grafo em que cada classe de isomorfismo é representada por um vértice e cada aresta que conecta os vértices $\mathcal{F}_a$ e $\mathcal{F}_b$ corresponde a um movimento em uma estrutura de vizinhança, que a partir de uma 1-fatoração isomorfa a $\mathcal{F}_a$ gera uma 1-fatoração isomorfa a $\mathcal{F}_b$. Uma invariante de uma 1-fatoração é uma propriedade que depende apenas de sua estrutura, de modo que 1-fatorações isomorfas possuem valores de invariantes iguais. Uma invariante é completa quando quaisquer duas 1-fatorações não isomorfas têm valores invariantes distintos. Essa tese analisa sete invariantes utilizadas para distinguir 1-fatorações não isomorfas de $K_{2n}$ (grafos completos com quantidade par de vértices). Considerando que as invariantes disponíveis na literatura não são completas, propomos duas novas invariantes, denominadas \textit{lantern profiles} e \textit{even-size bichromatic chains}. As invariantes são comparadas quanto aos seus tamanhos e complexidade computacional do seu cálculo. Além disso, realizamos experimentos computacionais para avaliar suas capacidades de distinguir 1-fatorações não isomorfas. Para tal, utilizamos os conjuntos de 1-fatorações não isomorfas de $K_{10}$ e $K_{12}$, bem como os conjuntos de 1-fatorações perfeitas não isomorfas de $K_{14}$ e $K_{16}$. Também consideramos aspectos algorítmicos e computacionais para explorar a vizinhança \textit{generalized partial team swap} (GPTS), uma estrutura de vizinhança para problemas de planejamento de tabelas de torneios \textit{round-robin} recentemente proposta na literatura. Nesse sentido, apresentamos um arcabouço para explorar a vizinhança GPTS. Além disso, é apresentada uma discussão sobre como esta estrutura de vizinhança aumenta a conectividade do espaço de busca definido por 1-fatorações não isomorfas de $K_{2n}$ (para $8 \le 2n \le 12$) quando comparada a outras estruturas de vizinhança.


  • Mostrar Abstract
  • A 1-factorization is a partition of the edge set of a graph into perfect matchings. The concept of 1-factorization is of great interest due to its applications in modeling sports tournaments. Two 1-factorizations are said to be isomorphic (belong to the same isomorphism class) if there exists a bijection between their sets of vertices that transforms one into the other. The non-isomorphic 1-factorization search space is a graph in which each isomorphism class is represented by a vertex and each edge that connects the vertices $\mathcal{F}_a$ and $\mathcal{F}_b$ corresponds to a move in a neighborhood structure, which from a 1-factorization isomorphic to $\mathcal{F}_a$ generates a 1-factorization isomorphic to $\mathcal{F}_b$. An invariant of a 1-factorization is a property that depends only on its structure such that isomorphic 1-factorizations are guaranteed to have equal invariant values. An invariant is complete when any two non-isomorphic 1-factorizations have distinct invariant values. This thesis reviews seven invariants used to distinguish non-isomorphic 1-factorizations of $K_{2n}$ (complete graph with an even number of vertices). Additionally, considering that the invariants available in the literature are not complete, we propose two new ones, denoted lantern profiles and even-size bichromatic chains. The invariants are compared regarding their sizes and calculation time complexity. Furthermore, we conduct computational experiments to assess their ability to distinguish non-isomorphic 1-factorizations. To accomplish that we use the sets of non-isomorphic 1-factorizations of $K_{10}$ and $K_{12}$, as well as the sets of non-isomorphic perfect 1-factorizations of $K_{14}$ and $K_{16}$.
    We also consider algorithmic and computational aspects for exploring the generalized partial team swap (GPTS) neighborhood, a neighborhood structure for round-robin sports scheduling problems recently proposed in the literature. In this regard, we present a framework to explore the GPTS neighborhood. Furthermore, a discussion is presented on how this neighborhood structure increases the connectivity of the search space defined by non-isomorphic 1-factorizations of $K_{2n}$ (for $8 \le 2n \le 12$) when compared to other neighborhood structures.

10
  • RENATA MARIA DE SOUZA SANTOS
  • Um Estudo de Múltiplos Casos sobre Práticas de Engenharia de Software em Startups em Estágio Inicial

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • GLEISON DOS SANTOS SOUZA
  • KIEV SANTOS DA GAMA
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • IVAN DO CARMO MACHADO
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 14/11/2023

  • Mostrar Resumo
  • Startups em estágios iniciais, frequentemente fundadas por equipes pequenas com ideias inovadoras, porém não comprovadas, enfrentam o desafio de validar seus conceitos no mercado. Essas ideias tomam forma por meio de um modelo de negócios flexível, adaptando-se até que uma abordagem repetível e escalável seja estabelecida. As startups precisam lidar com a pressão de fornecer rapidamente um produto ou serviço mínimo viável. Para as startups de software, isso frequentemente gira em torno de ofertas de software ou tecnologia, operando em um cenário altamente competitivo ao lado de empresas de vários tamanhos. Pesquisas recentes exploraram o contexto, objetivos, desafios e práticas de startups de software. Embora pesquisas extensivas tenham investigado como as startups de software se envolvem no desenvolvimento de software, ainda existe uma lacuna na compreensão de como elas selecionam e implementam práticas de desenvolvimento específicas. Descobrir seus processos e metodologias de desenvolvimento de software é igualmente essencial, pois isso impacta diretamente sua capacidade de superar os desafios do desenvolvimento de software. Perguntas-chave incluem: O que caracteriza o desenvolvimento de software em ambientes de startup? Como as startups priorizam os atributos de qualidade do produto em seus processos de desenvolvimento? Quais práticas de engenharia de software apoiam seus esforços de desenvolvimento e quais ferramentas auxiliam seu progresso? Esta tese busca obter insights sobre como as startups de software em estágios iniciais navegam na jornada de desenvolvimento de software, lançando luz sobre suas prioridades, processos e as ferramentas que utilizam. Nossa pesquisa adota uma abordagem qualitativa na forma de um estudo de caso múltiplo envolvendo 14 organizações. Analisamos os dados usando técnicas da Teoria Fundamentada, incluindo codificação aberta, axial e seletiva. As descobertas destacam a relevância crítica de fatores humanos, processos de desenvolvimento de software, práticas de engenharia de software e influências externas na jornada de desenvolvimento de software. A compreensão desses fatores levou à formulação de recomendações práticas para fortalecer o desenvolvimento de software em estágios iniciais nas startups. Este trabalho identifica fatores cruciais que influenciam o desenvolvimento de software nas startups e oferece recomendações práticas para suas iniciativas de desenvolvimento de software em estágios iniciais.


  • Mostrar Abstract
  • Early-stage startups, often founded by small teams with innovative yet unproven ideas, face the challenge of validating their concepts in the market. These ideas take shape through a fluid business model, adapting until a repeatable and scalable approach is established. Startups must grapple with the pressure to deliver a minimum viable product or service swiftly. For software startups, this often centers around software or technology-mediated offerings, operating within a competitive landscape alongside companies of various sizes. Recent research has explored software startups' context, objectives, challenges, and practices. While extensive research has delved into how software startups engage in software development, there remains a gap in understanding how they select and implement specific development practices. Uncovering their software development processes and methodologies is equally essential, as it directly impacts their ability to overcome software development challenges. Key questions include: What characterizes software development in startup environments? How do startups prioritize product quality attributes in their development processes? What software engineering practices support their development endeavors, and which tools aid their progress? This thesis seeks to gain insights into how early-stage software startups navigate the software development journey, shedding light on their priorities, processes, and the tools they leverage. Our research adopts a qualitative approach in the form of a multiple case study involving 14 organizations. We analyze the data employing Grounded Theory techniques, including open, axial, and selective coding. The findings underscore the critical relevance of human factors, software development processes, software engineering practices, and external influences in the software development journey. Understanding these factors has led to the formulation of practical recommendations to bolster early-stage software development within startups. This work identifies pivotal factors influencing software development within startups and offers practical recommendations for their early-stage software development endeavors.

11
  • RENATA MARIA DE SOUZA SANTOS
  • Um Estudo de Múltiplos Casos sobre Práticas de Engenharia de Software em Startups em Estágio Inicial

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • GLEISON DOS SANTOS SOUZA
  • IVAN DO CARMO MACHADO
  • KIEV SANTOS DA GAMA
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 14/11/2023

  • Mostrar Resumo
  • Startups em estágios iniciais, frequentemente fundadas por equipes pequenas com ideias inovadoras, porém não comprovadas, enfrentam o desafio de validar seus conceitos no mercado. Essas ideias tomam forma por meio de um modelo de negócios flexível, adaptando-se até que uma abordagem repetível e escalável seja estabelecida. As startups precisam lidar com a pressão de fornecer rapidamente um produto ou serviço mínimo viável. Para as startups de software, isso frequentemente gira em torno de ofertas de software ou tecnologia, operando em um cenário altamente competitivo ao lado de empresas de vários tamanhos. Pesquisas recentes exploraram o contexto, objetivos, desafios e práticas de startups de software. Embora pesquisas extensivas tenham investigado como as startups de software se envolvem no desenvolvimento de software, ainda existe uma lacuna na compreensão de como elas selecionam e implementam práticas de desenvolvimento específicas. Descobrir seus processos e metodologias de desenvolvimento de software é igualmente essencial, pois isso impacta diretamente sua capacidade de superar os desafios do desenvolvimento de software. Perguntas-chave incluem: O que caracteriza o desenvolvimento de software em ambientes de startup? Como as startups priorizam os atributos de qualidade do produto em seus processos de desenvolvimento? Quais práticas de engenharia de software apoiam seus esforços de desenvolvimento e quais ferramentas auxiliam seu progresso? Esta tese busca obter insights sobre como as startups de software em estágios iniciais navegam na jornada de desenvolvimento de software, lançando luz sobre suas prioridades, processos e as ferramentas que utilizam. Nossa pesquisa adota uma abordagem qualitativa na forma de um estudo de caso múltiplo envolvendo 14 organizações. Analisamos os dados usando técnicas da Teoria Fundamentada, incluindo codificação aberta, axial e seletiva. As descobertas destacam a relevância crítica de fatores humanos, processos de desenvolvimento de software, práticas de engenharia de software e influências externas na jornada de desenvolvimento de software. A compreensão desses fatores levou à formulação de recomendações práticas para fortalecer o desenvolvimento de software em estágios iniciais nas startups. Este trabalho identifica fatores cruciais que influenciam o desenvolvimento de software nas startups e oferece recomendações práticas para suas iniciativas de desenvolvimento de software em estágios iniciais.


  • Mostrar Abstract
  • Early-stage startups, often founded by small teams with innovative yet unproven ideas, face the challenge of validating their concepts in the market. These ideas take shape through a fluid business model, adapting until a repeatable and scalable approach is established. Startups must grapple with the pressure to deliver a minimum viable product or service swiftly. For software startups, this often centers around software or technology-mediated offerings, operating within a competitive landscape alongside companies of various sizes. Recent research has explored software startups' context, objectives, challenges, and practices. While extensive research has delved into how software startups engage in software development, there remains a gap in understanding how they select and implement specific development practices. Uncovering their software development processes and methodologies is equally essential, as it directly impacts their ability to overcome software development challenges. Key questions include: What characterizes software development in startup environments? How do startups prioritize product quality attributes in their development processes? What software engineering practices support their development endeavors, and which tools aid their progress? This thesis seeks to gain insights into how early-stage software startups navigate the software development journey, shedding light on their priorities, processes, and the tools they leverage. Our research adopts a qualitative approach in the form of a multiple case study involving 14 organizations. We analyze the data employing Grounded Theory techniques, including open, axial, and selective coding. The findings underscore the critical relevance of human factors, software development processes, software engineering practices, and external influences in the software development journey. Understanding these factors has led to the formulation of practical recommendations to bolster early-stage software development within startups. This work identifies pivotal factors influencing software development within startups and offers practical recommendations for their early-stage software development endeavors.

2022
Dissertações
1
  • TATIANA DE OLIVEIRA SILVA
  • Estratégia híbrida de proteção dedicada e restauração dirigida por conexões de baixa prioridade em redes EON

  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • RODRIGO IZIDORO TININI
  • PEDRO MESQUITA MOURA
  • Data: 15/02/2022
    Ata de defesa assinada:

  • Mostrar Resumo
  • A rigidez do espectro das redes multiplexadas por comprimento de onda (Wavelength Division Multiplexing - WDM) não permite acomodar as requisições proporcionalmente à sua necessidade de banda, causando desperdício no espectro. Logo, as Redes Ópticas Elásticas (Elastic Optical Networks - EON) tem se mostrado uma solução para o futuro das redes de transporte óptico trazendo flexibilidade e eficiência no uso dos recursos. A escalabilidade provida por estas redes demonstram ser um paradigma adequado aos requisitos de largura de banda para as aplicações emergentes na Internet. Devido ao volume de tráfego suportado pelas EONs, eventos de falhas podem causar a perda vigorosa de dados. Para isso, esquemas de proteção e restauração tem sido desenvolvidos a fim de minimizar tal prejuízo. Especificações de contrato de serviço (Service Level Agreement - SLA), tornam possível às aplicações terem seus recursos atribuídos apropriadamente e com seus respectivos níveis de tolerância à degradação de serviço. Classes de serviço de maior prioridade apresentam maiores restrições à degradação de serviço, enquanto classes de menor prioridade são mais flexíveis à degradação. Desta forma, a classificação das conexões e suas respectivas especificações de SLA devem ser levadas em consideração na definição de estratégias para recuperação de desastres a fim de identificar as melhores oportunidades que elevem a capacidade de provisionamento ou reprovisionamento da rede. Este trabalho propõe um esquema de sobrevivência híbrida (proteção e restauração) com degradação de banda e atraso na restauração para conexões de baixa prioridade transmitidas no caminho de backup de conexões de alta prioridade. O algoritmo proposto foi comparado com uma estratégia de proteção de caminho com backup dedicado. Os resultados obtidos demonstram que a restauração baseada na degradação de serviços e na utilização de recursos de backup reduz a probabilidade de bloqueio geral da rede e a probabilidade de bloqueio por classes. Ademais, a estratégia proposta aumenta a capacidade de restauração de conexões de baixa prioridade interrompidas pelo desastre enquanto mantém a capacidade de restauração de conexões de alta prioridade.


  • Mostrar Abstract
  • The spectrum rigidity of wavelength-multiplexed networks (Wavelength Division Multiplexing - WDM) does not allow to accommodate requests proportionally to their bandwidth needs, causing waste in the spectrum. Therefore, Elastic Optical Networks (EON) have proved to be a solution for the future of optical transport networks, bringing flexibility and efficiency in the use of resources. The scalability provided by these networks proves to be an adequate paradigm for the bandwidth requirements for emerging applications on the Internet. Due to the volume of traffic supported by EONs, failure events can cause massive data loss. For this, protection and restoration schemes have been developed in order to minimize such damage. Service Level Agreement (SLA) specifications make it possible for applications to have their resources properly allocated and with their respective service degradation tolerance levels. Higher priority classes of service present greater restrictions to service degradation, while lower priority classes are more flexible to degradation. In this way, the classification of connections and their respective SLA specifications must be taken into account when defining disaster recovery strategies in order to identify the best opportunities that increase the network provisioning or re-provisioning capacity. This work proposes a hybrid survivability scheme (protection and restoration) with bandwidth degradation and restoration delay for low-priority connections transmitted in the backup path of high-priority connections. The proposed algorithm was compared with a path protection strategy with dedicated backup. The results obtained demonstrate that restoration based on service degradation and the use of backup resources reduces the overall network blocking probability and the blocking probability by classes. Furthermore, the proposed strategy increases the ability to restore low-priority connections interrupted by the disaster while maintaining the ability to restore high-priority connections.

2
  • GABRIEL DAHIA FERNANDES
  • META APRENDIZADO PARA A CLASSIFICAÇÃO DE UMA CLASSE COM POUCAS AMOSTRAS

  • Orientador : MAURICIO PAMPLONA SEGUNDO
  • MEMBROS DA BANCA :
  • FABIO AUGUSTO FARIA
  • MAURICIO PAMPLONA SEGUNDO
  • RUBISLEY DE PAULA LEMES
  • Data: 08/03/2022

  • Mostrar Resumo
  • Nós propomos um método que pode realizar a classificação de uma classe, dado apenas um pequeno número de exemplos da classe alvo e nenhum das outras. Nós formulamos o aprendizado de features significativas para a classificação de uma classe como um problema de meta-aprendizado no qual o estágio de metatreinamento simula repetidamente a classificação de uma classe, usando o objetivo de classificação do algoritmo escolhido para aprender uma representação de recurso. Para aprender essas representações, exigimos apenas dados multiclasse de tarefas semelhantes. Mostramos como o método Support Vector Data Description (SVDD) pode ser usado em nosso método, e também propomos uma variante mais simples baseada em Prototypical Networks que obtém desempenho comparável, indicando que aprender a representações de features diretamente dos dados pode ser mais importante do que qual algoritmo nós escolhemos. Nós validamos nossa abordagem adaptando conjuntos de dados de classificação com poucos exemplos ao cenário de classificação de uma classe com poucos exemplos, obtendo resultados semelhantes ao estado da arte da classificação tradicional de uma classe e que melhora a classificação de uma classe quando comparado aos baselines de classificação de uma classe com poucos exemplos. Além disso, como uma aplicação prática, empregamos nosso método para a tarefa biométrica de verificação facial. Nesse cenário, ele se compara desfavoravelmente à tácnica de aprendizagem de métrica do estado-da-arte.


  • Mostrar Abstract
  • We propose a method that can perform one-class classification given only a small number of examples from the target class and none from the others. We formulate the learning of meaningful features for one-class classification as a meta-learning problem in which the meta-training stage repeatedly simulates one-class classification, using the classification loss of the chosen algorithm to learn a feature representation. To learn these representations, we require only multiclass data from similar tasks. We show how the SVDD method can be used with our method, and also propose a simpler variant based on Prototypical Networks that obtains comparable performance, indicating that learning feature representations directly from data may be more important than which one-class algorithm we choose. We validate our approach by adapting few-shot classification datasets to the few-shot one-class classification scenario, obtaining similar results to the state-of-the-art of traditional one-class classification, and that improves upon that of one-class classification baselines employed in the few-shot setting. Moreover, as a practical application, we employ our method to the biometric task of on-device face verification. In this scenario, it compares unfavorably to the state-of-the-art metric learning technique.

3
  • DANIEL DAVID FERNANDES
  • Uma investigação empírica sobre a ocorrência de test smells em Python

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • LEOPOLDO MOTTA TEIXEIRA
  • RITA SUZANA PITANGUEIRA MACIEL
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 30/03/2022

  • Mostrar Resumo
  • este de software é uma atividade do processo de desenvolvimento de software que busca por defeitos. Testes automatizados são compostos por códigos que permitem executar cenários de teste de software mais rapidamente, evitando retrabalho manual. Ao escrever códigos de teste, testadores podem executar más práticas, conhecidas como test smells, que são padrões de codificação que podem impactar negativamente na qualidade dos testes em termos de manutenibilidade, compreensibilidade e eficácia na detecção de defeitos. Python tornou-se a linguagem de programação mais utilizada no mundo em 2020, entretanto, a maioria das pesquisas sobre a qualidade do código de teste é conduzida para a linguagem Java. A ausência de estudos referentes à percepção de desenvolvedores Python sobre test smells, bem como tipos de test smells ainda não detectados por ferramentas podem causar prejuízos em softwares desenvolvidos nesta linguagem. Apesar do conceito de test smells ser independente de linguagem de programação, estudos em uma linguagem de programação não são generalizáveis para as demais, pois diferentes linguagens podem apresentar diferentes comportamentos a respeito dos test smells. Esta dissertação de mestrado tem como objetivo apoiar desenvolvedores Python na construção e manutenção de código de teste com maior qualidade, trazendo uma visão a respeito de ocorrências de test smells em Python. Para isto, inicialmente construímos um dataset com 5303 arquivos de teste de 90 projetos Python coletados de repositórios do GitHub para observar o comportamento dos test smells em Python. Esta análise resultou na proposta de 4 novos test smells com discussões dos seus potenciais impactos. Além disso, para conhecer a percepção de desenvolvedores Python sobre test smells, fizemos uma pesquisa através de questionários para compreender a percepção sobre teste de software de desenvolvedores Python, o qual divulgamos a análise dos resultados obtidos. Como contribuição adicional, desenvolvemos o TEMPY, uma ferramenta open-source de detecção de 10 test smells para Python, a qual alcançou 100% de precisão. Avaliamos o TEMPY através de entrevistas com 10 desenvolvedores Python, obtendo 99% de concordância nas detecções apontadas pelo TEMPY. Espera-se que ao compartilhar os resultados deste estudo, desenvolvedores Python possam usar o conceito de test smell para melhorar a qualidade do código de teste, consequentemente apoiar as atividades de teste de software.


  • Mostrar Abstract
  • Software testing is an activity in the software development process that looks for defects. Automated testing is composed of code that allows you to run software testing scenarios more quickly, avoiding manual rework. When writing test code, testers may execute bad practices, known as test smells, which are coding patterns that can negatively impact test quality in terms of maintainability, understandability, and defect detection effectiveness. Python became the most widely used programming language in the world in 2020, however, most research on test code quality is conducted for the Java language. The absence of studies regarding Python developers’ perception of test smells, as well as types of test smells not yet detected by tools, can cause damage to software developed in this language. Although the concept of test smells is language independent, studies in one programming language cannot be generalized to the others, because different languages may present different behaviors regarding test smells. This dissertation aims to support Python developers in building and maintaining higher quality test code, providing insight into the occurrences of test smells in Python. To do this, we initially built a dataset with 5303 test files from 90 Python projects collected from GitHub repositories to observe the behavior of test smells in Python. This analysis resulted in the proposal of 4 new test smells with discussions of their potential impacts. In addition, to know the perception of Python developers about test smells, we conducted a survey through questionnaires to understand the perception about software testing of Python developers, which we publish the analysis of the results obtained. As an additional contribution, we developed TEMPY, an open-source 10 test smells detection tool for Python, which achieved 100% accuracy. We evaluated TEMPY through interviews with 10 Python developers, obtaining 99% agreement on the detections pointed out by TEMPY. We hope sharing the findings of this study, Python developers can use the concept of test smell to improve test code quality, thereby supporting software testing activities

4
  • Alan Teixeira de Oliveira
  • Melhorando a eficiência de sistemas em nuvem através de coalocação de tarefas sensíveis à latência e de melhor esforço

  • Orientador : VINICIUS TAVARES PETRUCCI
  • MEMBROS DA BANCA :
  • GEORGE MARCONI DE ARAUJO LIMA
  • VINICIUS TAVARES PETRUCCI
  • ESBEL TOMÁS VALERO ORELLANA
  • Data: 01/04/2022

  • Mostrar Resumo
  • A computação em nuvem oferece uma infraestrutura centralizada e orientada a serviços para usuários em todo o mundo. Um ambiente em nuvem permite executar aplicações críticas sensíveis à interação com os usuários (como uma busca online na Web), e também é usado para executar aplicações em lote orientadas a melhor esforço (como compressão de áudio/vídeo, indexação das páginas Web). Data centers são projetados em larga escala para suportar os diversos serviços em nuvem, distribuídos em centenas de milhares de servidores, com expressivos gastos operacionais e de capital. Assim, otimizar o uso dos recursos dos servidores resulta em economia significativa nesses sistemas. Como oportunidade de pesquisa, há a possibilidade de explorar momentos de ociosidade dos servidores que executam os serviços críticos, em especial durante períodos de baixa demanda. Esta pesquisa visa permitir coalocar diferentes tipos de tarefas de aplicações em nuvem (sensíveis à latência e de melhor esforço) em um mesmo servidor de forma a aumentar sua utilização, melhorando assim sua eficiência. O trabalho demonstra que realizar coalocação de tarefas sensíveis à latência e de melhor esforço proporciona maior eficiência dos servidores em nuvem, desde que seja garantido o desempenho das tarefas das aplicação críticas. O trabalho explorou o uso de escalonadores específicos para cada tipo de tarefa, as tarefas sensíveis à latência foram escalonadas e parametrizadas via escalonamento de tempo real, e tarefas de aplicações em lote utilizaram escalonamento justo de melhor esforço. Os ganhos em relação ao escalonador padrão do sistema chegaram a até 150% quando comparado ao proposto neste trabalho, aqui chamado de EDFCoaloc.


  • Mostrar Abstract
  • Cloud computing provides a centralized, service-oriented infrastructure for users around the world. A cloud environment allows running critical applications sensitive to user interaction (such as an online web search), and is also used to run best-effort oriented batch applications (such as audio/video compression, indexing of web pages). Data centers are designed on a large scale to support the various cloud services, distributed across hundreds of thousands of servers, with significant operational and capital expenditures. Thus, optimizing the use of server resources results in significant savings on these systems. As a research opportunity, there is the possibility of exploring idle moments of servers that run critical services, especially during periods of low demand. This research aims to co-locate different types of cloud application tasks (latency-sensitive and best-effort) on the same server in order to increase its utilization, thus improving its efficiency. The work demonstrates that performing co-allocation of latency-sensitive and best-effort tasks provides greater efficiency for cloud servers, as long as the performance of critical application tasks is guaranteed. The work explored the use of specific schedulers for each type of task, latency-sensitive tasks were scheduled and parameterized via real-time scheduling, and batch application tasks used fair best-effort scheduling. The gains in relation to the standard scheduler of the system reached up to 150% when compared to the one proposed in this work, here called EDFCoaloc.

5
  • PRABHÁT KUMAR DE OLIVEIRA
  • SIMULAÇÃO DE DEFORMAÇÃO EM TECIDO MOLE NO PLANEJAMENTO DE CIRURGIA ORTOGNÁTICA UTILIZANDO POSITION BASED DYNAMICS


  • Orientador : ANTONIO LOPES APOLINARIO JUNIOR
  • MEMBROS DA BANCA :
  • ANTONIO LOPES APOLINARIO JUNIOR
  • IEDA MARGARIDA CRUSOE ROCHA REBELLO
  • KARL PHILIPS APAZA AGUERO
  • VINICIUS MOREIRA MELLO
  • Data: 08/04/2022

  • Mostrar Resumo
  • Corpos deformáveis  é um tema que vem sendo estudado na área da computação gráfica nas últimas décadas, existindo diversas soluções e propostas para simular esses tipos de objetos. Entretanto, ainda há uma preocupação com o balanceamento entre o realismo físico e a simulação em tempo real de forma interativa. Alguns trabalhos anteriores na área médica, utilizam FEM e MSM para realizar simulações, porém essas abordagens possuem limitações. O uso de Position-Based Dynamics (PBD), por sua vez, vem ganhando destaque, sendo capaz de proporcionar interações entre diferentes tipos de objetos. A proposta deste trabalho foca no uso de PBD para simulação em tempo real de tecidos moles e rígidos na previsão de resultados de cirurgia ortognática.



  • Mostrar Abstract
  • Deformable bodies is a topic that has been studied in the area of computer graphics in recent decades, with several solutions and proposals for simulations of these types of objects. However, there is still a concern with the balance between physical realism and real-time simulation in an interactive way. Some previous works in the medical field use FEM and MSM to perform simulations, but these approaches have limitations. The use of Position-Based Dynamics (PBD), in turn, has been gaining prominence, being able to provide interactions between different types of objects. The purpose of this work focuses on the use of PBD for real-time simulation of soft and rigid tissues in predicting the results of orthognathic surgery. 

6
  • ARISTOTELES ESTEVES MARÇAL DA SILVA
  • Planejamento em Sistemas Auto-Adaptativos: Uma Abordagem Baseada em Verificação de Modelos e MAPE-K

  • Orientador : ALINE MARIA SANTOS ANDRADE
  • MEMBROS DA BANCA :
  • MARIA VIVIANE MENEZES
  • ADOLFO ALMEIDA DURAN
  • ALINE MARIA SANTOS ANDRADE
  • ALIRIO SANTOS DE SA
  • SANDRO SANTOS ANDRADE
  • Data: 12/04/2022

  • Mostrar Resumo
  • O projeto e implementação de Self-Adaptive Systems (SAS) eficazes é uma tarefa bastante desafiadora, geralmente por conta da existência de dinâmicas complexas entre os diversos elementos que compõem o sistema e entre estes elementos e o ambiente no qual eles operam. Um ponto crucial, no projeto de SAS, é a execução da atividade de planejamento (planning): definição de quais ações (planos de adaptação) devem ser realizadas para que o sistema se adapte e volte a atender os níveis de qualidade de serviço esperados. Pesquisas recentes têm investigado o uso de técnicas de verificação formal para viabilizar a geração de planos de adaptação confiáveis. Através da técnica de verificação de modelos (model checking) e do modelo de referência MAPE-K desenvolvemos o projeto, implementação e validação de uma arquitetura que define estruturas e comportamentos auto-adaptativos utilizando modelos formais, para a especificação planejadores que gerem planos de adaptação de forma autônoma, considerando propriedades auto-adaptativas tais como self-organizing e self-healing. Para a avaliação da arquitetura foi realizada através de um estudo de caso relacionado ao problema de controle de semáforos, com a criação de um planejador, em que os planos de adaptação foram gerados, de forma off-line, com o verificador de modelos UPPAAL e executados em run-time através de uma implementação própria deste trabalho. Alguns cenários da aplicação foram simulados, com uso da ferramenta SUMO, para avaliar a eficácia das soluções encontradas. O planejador criado gerou planos de adaptação eficientes, de forma autônoma, em cenários onde o número de possíveis planos de adaptação foi ordem de 2¹². Os resultados indicam que as soluções adotadas com nosso planejador foram mais efetivas em relação a soluções sem nenhuma abordagem de auto-adaptação, quando o fluxo de veículos se aproximou do colapso.


  • Mostrar Abstract
  • The design and implementation of effective Self-Adaptive Systems (SAS) is a very challenging task, usually due to the existence of complex dynamics between the various elements that make up the system and between these elements and the environment in which they operate. A crucial point, in the SAS project, is the execution of the planning activity (planning): definition of which actions (adaptation plans) must be carried out so that the system adapts and returns to meet the quality levels expected service. Recent research has investigated the use of formal verification techniques to enable the generation of reliable adaptation plans. Through the model checking technique (model checking) and the MAPE-K reference model, we developed the design, implementation and validation of an architecture that defines self-adaptive structures and behaviors using formal models, for the specification planners that generate adaptation plans autonomously, considering self-adaptive properties such as self-organizing and self-healing. The architecture evaluation was carried out through a case study related to the traffic light control problem, with the creation of a planner, in which the adaptation plans were generated, in an off-line way, with the verifier of UPPAAL models and executed in run-time through an implementation of this work. Some application scenarios were simulated, using the SUMO tool, to evaluate the effectiveness of the solutions found. The created planner generated efficient adaptation plans, autonomously, in scenarios where the number of possible adaptation plans was around 2¹². The results indicate that the solutions adopted with our planner were more effective compared to solutions without any self-adaptation approach, when the vehicle flow approached collapse.

7
  • EBERTY ALVES DA SILVA
  • Pipeline de reconstrução 3D de artefatos culturais utilizando diferentes câmeras de profundidade e cor

  • Orientador : KARL PHILIPS APAZA AGUERO
  • MEMBROS DA BANCA :
  • LUCIANO SILVA
  • ANTONIO LOPES APOLINARIO JUNIOR
  • KARL PHILIPS APAZA AGUERO
  • Data: 12/05/2022

  • Mostrar Resumo
  • "Nos últimos anos, houveram numerosos avanços no que diz respeito à digitalização 3D de patrimônio cultural, principalmente aplicando um encadeamento de processos para
    reconstrução tridimensional (pipelines) a partir de custosos scanners 3D de alta precisão.
    Além disso, recentes estudos buscam reconstruir objetos e artefatos utilizando dispositivos de aquisição de baixo custo (por exemplo, o sensor Microsoft Kinect) ou utilizando técnicas mais modernas de fotogrametria (como Structure from Motion). Métodos de baixo custo ainda são limitados no contexto de reconstrução 3D de artefatos culturais, sendo um verdadeiro desafio quando se trata da representatividade e qualidade final dos modelos 3D reconstruídos digitalmente.
    Visando obter modelos tridimensionais completos e bem detalhados de artefatos culturais utilizando tecnologia de baixo custo, este trabalho propõe um pipeline de reconstrução 3D que utiliza nuvens de pontos de diferentes sensores, combinando capturas de um sensor de profundidade de baixo custo pós-processadas por técnicas de Super-Resolução com imagens RGB de alta resolução adquiridas por uma câmera externa aplicadas em algoritmos de Structure from Motion e Multi-View Stereo.
    A principal contribuição deste trabalho inclui a descrição de um pipeline completo que aprimora o estágio de aquisição de informações e mescla dados de diferentes sensores. Várias fases do pipeline de reconstrução 3D também foram especializadas para melhorar a qualidade visual do modelo.
    O pipeline foi avaliado e discutido em termos dos resultados obtidos e demonstra contribuir para viabilizar a utilização de metodologias de reconstrução 3D de baixo custo no contexto de patrimônio cultural digital. A metodologia proposta foi desenvolvida para ser aplicada à preservação de peças do Museu de Arqueologia e Etnologia da Universidade Federal da Bahia (MAE/UFBA), sendo também testada em objetos de mesa que viabilizaram o processo de validação dos resultados experimentais."


  • Mostrar Abstract
  • "In recent years, there have been numerous advances with regard to 3D digitization of cultural heritage, mainly applying a process chain to
    three-dimensional reconstruction (pipelines) from expensive high-precision 3D scanners.
    In addition, recent studies seek to reconstruct objects and artifacts using low-cost acquisition devices (for example, the Microsoft Kinect sensor) or using more modern photogrammetry techniques (such as Structure from Motion). Low-cost methods are still limited in the context of 3D reconstruction of cultural artifacts, being a real challenge when it comes to the representativeness and final quality of digitally reconstructed 3D models.
    Aiming to obtain complete and well-detailed three-dimensional models of cultural artifacts using low-cost technology, this work proposes a 3D reconstruction pipeline that uses point clouds from different sensors, combining captures from a low-cost depth sensor post-processed by imaging techniques. Super-Resolution with high resolution RGB images acquired by an external camera applied in Structure from Motion and Multi-View Stereo algorithms.
    The main contribution of this work includes the description of a complete pipeline that improves the information acquisition stage and merges data from different sensors. Various phases of the 3D reconstruction pipeline were also specialized to improve the visual quality of the model.
    The pipeline was evaluated and discussed in terms of the results obtained and demonstrates that it contributes to enabling the use of low-cost 3D reconstruction methodologies in the context of digital cultural heritage. The proposed methodology was developed to be applied to the preservation of pieces from the Museum of Archeology and Ethnology of the Federal University of Bahia (MAE/UFBA), being also tested on table objects that enabled the validation process of the experimental results."

8
  • MURILO GUERREIRO AROUCA
  • Gamificação como suporte às abordagens de mapeamento participativo e crowdsourcing no enfrentamento da Covid-19

  • Orientador : MARCOS ENNES BARRETO
  • MEMBROS DA BANCA :
  • ISA BEATRIZ DA CRUZ NEVES LUSTOSA
  • MARCOS ENNES BARRETO
  • RICARDO LUSTOSA BRITO
  • VANINHA VIEIRA DOS SANTOS
  • Data: 16/05/2022

  • Mostrar Resumo
  • Em virtude dos impactos provocados pelo advento do novo Coronavírus (SARS-CoV-2), a mobilização e participação popular diante das políticas públicas de saúde são fundamentais para o enfrentamento da Covid-19 e mitigação dos seus danos, o que ´e amplamente afetado pelo conhecimento, atitudes e práticas em relação `a doença. Porém, tendo em vista o contexto de pessoas em estado de vulnerabilidade social e com baixo acesso `a educação e `a informação, a ausência de participação e engajamento em comunidades socioeconomicamente desfavorecidas se apresenta como um obstáculo que se interpõe aos objetivos propostos pelas políticas sanitárias. Desse modo, o presente trabalho propõe a implementação do modelo de design de gamificação orientado `a teoria GAFCC na plataforma +Lugar (versão Covid-19), para apoiar as abordagens participativas de crowdsourcing e mapeamento participativo em prol de iniciativas destinadas ao enfrentamento da Covid-19, principalmente o mapeamento e sinalização dos preditores de transmissão da doença em tempo real, por meio de uma abordagem de percepção de risco. A fim de avaliar a aceitação e uso da solução proposta, utilizou-se a UTAUT para identificação dos fatores determinantes que apresentam impacto significativo na intenção de uso da plataforma. Para tanto, foi realizado um estudo de validação com 20 jovens e adolescentes residentes do bairro de Marechal Rondon, onde foi aplicado um formulário composto por questões relacionadas aos fatores moderadores e determinantes, e intenção comportamental. O resultado do estudo apontou que os respondentes possuem altos níveis de expectativa de desempenho e esforço, influência social, condições facilitadoras, e intenção comportamental de uso da plataforma. Porém, por meio da análise do coeficiente de correlação de Spearman, foi possível identificar que apenas os fatores “expectativa de esforço” e “influência social” impactam significativamente a intenção comportamental.


  • Mostrar Abstract
  • Due to the impacts caused by the advent of the new Coronavirus (SARS-CoV-2), the mobilization and popular participation in the face of public health policies are fundamental for facing Covid-19 and mitigating its damages, which is widely affected knowledge, attitudes and practices in relation to the disease. However, in view of the context of people in a state of social vulnerability and with low access to education and information, the absence of participation and engagement in socioeconomically disadvantaged communities presents itself as an obstacle that stands in the way of the objectives proposed by health policies. . Thus, the present work proposes the implementation of the GAFCC theory-oriented gamification design model on the +Lugar platform (Covid-19 version), to support participatory crowdsourcing approaches and participatory mapping in favor of initiatives aimed at coping with Covid-19. -19, mainly the mapping and signaling of disease transmission predictors in real time, through a risk perception approach. In order to assess the acceptance and use of the proposed solution, UTAUT was used to identify the determining factors that have a significant impact on the intention to use the platform. To this end, a validation study was carried out with 20 young people and adolescents living in the Marechal Rondon neighborhood, where a form was applied, consisting of questions related to moderating and determining factors, and behavioral intention. The result of the study pointed out that the respondents have high levels of performance and effort expectation, social influence, facilitating conditions, and behavioral intention to use the platform. However, through the analysis of Spearman's correlation coefficient, it was possible to identify that only the factors “effort expectancy” and “social influence” significantly impact behavioral intention.

9
  • GESSÉ JUSTINIANO DE OLIVEIRA JÚNIOR
  • Avaliação de Algoritmos de Escalonamento e Economia de Energia para Sistemas Embarcados Baseados em FreeRTOS

  • Orientador : GEORGE MARCONI DE ARAUJO LIMA
  • MEMBROS DA BANCA :
  • ALLAN EDGARD SILVA FREITAS
  • GEORGE MARCONI DE ARAUJO LIMA
  • VINICIUS TAVARES PETRUCCI
  • Data: 03/06/2022

  • Mostrar Resumo
  • Os sistemas embarcados, cada vez mais presentes no nosso cotidiano, estão ficando mais complexos e poderosos devido aos avanços tecnológicos da computação e eletrônica. As aplicações de sistemas embarcados de tempo real, relacionadas às indústrias automotiva e aeronáutica, são exemplos proeminentes das disciplinas clássicas da engenharia, onde os conflitos entre custos, pequenos ciclos de vida de produtos e requisitos legais relativos à confiabilidade, à robustez e à segurança se tornaram um problema.
    De fato, gerenciar energia de maneira eficaz e eficiente é crucial para todos os dispositivos alimentados por baterias, por exemplo, aqueles aplicados em robôs autônomos, dispositivos vestíveis (\textit{wearable devices}), controladores industriais e redes de sensores sem fio.
    Determinar em sistemas de tempo real, algoritmos de escalonamento eficazes onde os prazos das tarefas sejam cumpridos, é um tema amplamente abordado no estado da arte, visando sempre melhorar as aplicações em diversos ambientes. Quando a abordagem aplicada é via escalonamento por prioridade fixa, que não se modifica em função do tempo, o custo computacional é menor  que o escalonamento por prioridade dinâmica, pois não é necessário ordenar dinamicamente a fila de tarefas. Em sistemas embarcados de pequena capacidade de processamento, o uso de Earliest-Deadline First (EDF), uma política de escalonamento de prioridade dinâmica, é frequentemente menos visto, embora existam muitos esforços para usá-la neste segmento, demonstrando que a sobrecarga pode ser viável. Ao se utilizar a técnica DVFS, a frequência e a tensão de alimentação da CPU são manipuladas ao longo da execução das tarefas, a fim de reduzir a potência dissipada pelo processador. Já com o uso da técnica DPM, os componentes ociosos em um determinado instante de tempo $t$, podem ser desligados ou colocados em modos baixo consumo energético com o objetivo de reduzir a potência consumida pelo processador ao executar alguma ação no sistema.
    foco do presente trabalho é adaptar o FreeRTOS, sistema operacional de tempo real, de modo a torná-lo capaz de lidar com aplicações que possuam restrições temporais e consumo energético. Uma nova técnica de economia de energia baseada em DPM, com baixa sobrecarga computacional, foi criada para ser utilizada em plataformas com poucos recursos de hardware.


  • Mostrar Abstract
  • Embedded systems, increasingly present in our daily lives, are becoming more complex and powerful due to technological advances in computing and electronics. Real-time embedded systems applications related to the automotive and aeronautical industries are prominent examples of classical engineering disciplines, where the conflicts between costs, short product life cycles and legal requirements regarding reliability, robustness and safety arise. became a problem. Indeed, managing energy effectively and efficiently is crucial for all battery powered devices, for example those applied in autonomous robots, wearable devices, industrial controllers and wireless sensor networks. Determining effective scheduling algorithms in real-time systems where task deadlines are met is a topic widely addressed in the state of the art, always aiming to improve applications in different environments.
    When the approach applied is via fixed priority scheduling, which does not change as a function of time, the computational cost is lower than dynamic priority scheduling, since it is not necessary to dynamically order the task queue. In embedded systems with small processing power, the use of Earliest-Deadline First (EDF), a dynamic priority scheduling policy, is often less seen, although there are many efforts to use it in this segment, demonstrating that overhead may be feasible. When using the DVFS technique, the frequency and voltage of the CPU supply are manipulated during the execution of the tasks, in order to reduce the power dissipated by the processor. With the use of the DPM technique, the idle components at a given instant of time t, can be turned off or placed in low energy modes in order to reduce the power consumed by the processor when performing some action in the system. The focus of the present work is to adapt FreeRTOS, the real-time operating system, in order to make it capable of dealing with applications that have time constraints and energy consumption. A new energy saving technique based on DPM, with low computational overhead, was created to be used on platforms with few hardware resources.

10
  • MAYCON EMILY DE FARIAS RIBEIRO
  • PROJETO E DESENVOLVIMENTO DE UMA FERRAMENTA COMPUTACIONAL ROBUSTA PARA ELETROCARDIOGRAFIA

  • Orientador : RAIMUNDO JOSE DE ARAUJO MACEDO
  • MEMBROS DA BANCA :
  • LUCIANO REBOUCAS DE OLIVEIRA
  • RAIMUNDO JOSE DE ARAUJO MACEDO
  • ROBERTO FREITAS PARENTE
  • Data: 08/06/2022

  • Mostrar Resumo
  • Por muito tempo, os eletrocardiogramas (ECGs) têm sido usados para diagnosticar problemas cardíacos. No entanto, obter uma classificação satisfatória através da tecnologia dos sistemas digitais aplicados a medicina e-health é uma tarefa difícil. Para estudar tal problemática foi considerado que o coração é sistema reativo com alguns modos ou estados de funcionamento possíveis, então, é intuitivo usar ferramentas computacionais como máquinas estados finitas (MEFs) para descrever o estado de saúde desse órgão humano. Nesse paradigma, propomos o Cyber-ECG, um modelo computacional para classificação automática de sinais de ECG com detecções de falhas do eletrocardiógrafo ou sensores. Para realizá-lo, foram utilizadas as bibliotecas Simscape e Stateflow do Simulink no ecossistema Matlab. Além disso, é apresentado um protótipo para detecção do pulso cardíaco, com uso da tecnologia da Internet das Coisas Médico (IoTM). Esse protótipo é constituído de uma placa ESP32, para coletar, agregar e visualizar os dados do pulso cardíaco de uma pessoa na nuvem. A ferramenta Cyber-ECG proposta obteve uma precisão de 84% e 80% ao classificar as classes ARR e NSR, respectivamente. Para essas mesmas classes, os valores de F1- Score são 82% e 83%, aproximadamente. A precisão foi de 82,5% e a sensibilidade foi de 80%, respectivamente. Com base nesses resultados, a ferramenta apresentou desempenho satisfatório e, em alguns casos, teve desempenho superior em comparação a outros estudos de métodos de classificação de sinais de ECG relatados na literatura científica.


  • Mostrar Abstract
  • For a long time, electrocardiograms (ECGs) have been used to diagnose heart problems. However, obtaining a satisfactory classification through the technology of digital systems applied to e-health medicine is a difficult task. To study this problem, it was considered that the heart is a reactive system with some possible modes or states of functioning, so it is intuitive to use computational tools such as finite state machines (FEMs) to describe the health status of this human organ. In this paradigm, we propose the Cyber-ECG, a computational model for automatic classification of ECG signals with detection of electrocardiograph or sensor failures. To accomplish this, the Simscape and Stateflow libraries from Simulink were used in the Matlab ecosystem. In addition, a prototype for cardiac pulse detection is presented, using the Medical Internet of Things (IoTM) technology. This prototype consists of an ESP32 board, to collect, aggregate and visualize data on a person's heart pulse in the cloud. The proposed Cyber-ECG tool obtained an accuracy of 84% and 80% when classifying the ARR and NSR classes, respectively. For these same classes, the F1-Score values are approximately 82% and 83%. The precision was 82.5% and the sensitivity was 80%, respectively. Based on these results, the tool 

11
  • MATHEUS THIAGO MARQUES BARBOSA
  • Q-balance: Um esquema de balanceamento de carga baseado em uma Multilayer Perceptron para recursos em Névoa em uma Smart Grid

  • Orientador : MAYCON LEONE MACIEL PEIXOTO
  • MEMBROS DA BANCA :
  • MAYCON LEONE MACIEL PEIXOTO
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • BRUNO GUAZZELLI BATISTA
  • Data: 14/06/2022

  • Mostrar Resumo
  • O processamento de dados em aplicações de Smart Grids pode utilizar a computação em nuvem. Entretanto, essa infraestrutura pode levar ao aumento do tempo de resposta em tais aplicações devido a distância entre os data centers da nuvem e os Smart Meters. Dessa forma, propomos uma abordagem baseada em rede neural para gerenciar os recursos computacionais na névoa. Nesse ambiente, o Q-balance tem o objetivo de reduzir o tempo médio de resposta das aplicações que utilizam dados dos Smart Meters por meio da utilização de uma rede neural MultiLayer Perceptron -- (MLP). A MLP realiza a previsão do tempo que um recurso computacional irá processar uma requisição da aplicação do Smart Meter. O Q-balance utiliza essa informação sobre a previsão para balancear a carga entre os recursos disponíveis, reduzindo o tempo médio de resposta obtido. A avaliação de desempenho dos experimentos mostrou que o Q-balance reduziu o tempo médio de resposta em até 65% e 79% em comparação aos algoritmos da literatura para a névoa e nuvem respectivamente.


  • Mostrar Abstract
  • Data processing in Smart Grids applications can use cloud computing. However, this infrastructure can lead to increased response time in such applications due to the distance between cloud data centers and Smart Meters. In this way, we propose a neural network based approach to manage the computational resources in the fog. In this environment, Q-balance aims to reduce the average response time of applications that use data from Smart Meters through the use of a MultiLayer Perceptron -- (MLP) neural network. MLP predicts the time that a computational resource will process a request from the Smart Meter application. Q-balance uses this information about the forecast to balance the load between available resources, reducing the average response time obtained. The performance evaluation of the experiments showed that the Q-balance reduced the average response time by up to 65% and 79% compared to the algorithms in the literature for fog and cloud respectively.

12
  • VICTOR MARTINEZ VIDAL PEREIRA
  • Explorando Dados Ligados na DBpedia para Reduzir Erros de Predição em Sistemas de Recomendação que utilizam Fatoração de Matrizes

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • ADRIANO CÉSAR MACHADO PEREIRA
  • DANILO BARBOSA COIMBRA
  • FREDERICO ARAUJO DURAO
  • RAMON PEREIRA LOPES
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 21/06/2022

  • Mostrar Resumo
  • Sistemas de Recomendação fornecem sugestões de itens que são mais prováveis de serem de interesse dos usuários. Prover recomendações personalizadas é um desafio que pode ser endereçado por meio de algoritmos de filtragem, entre os quais a Filtragem Colaborativa (CF) tem demonstrado grande progresso nos últimos anos. Ao usar técnicas de Fatorização de Matrizes (MF), métodos de CF reduzem o erro estimado por meio da utilização de algoritmos de otimização. Contudo, eles geralmente lidam com problemas de esparsidade dos dados e erro predito. Estudos apontam o uso de dados da Web Semântica como um caminho para melhorar sistemas de recomendação e endereçar desafios relacionados a técnicas de CF. Motivado por essas premissas, o presente trabalho desenvolveu um pipeline de dados e um algoritmo que processa a Matriz de Avaliações combinando similaridades semânticas da Linked Open Data (LOD) e estima avaliações em branco. Os experimentos consideram subsets de três diferentes datasets (Movielens, LastFM and LibraryThing), duas métricas de similarity semântica, Linked Data Similarity Distance (LDSD) e Resource Similarity (RESIM), e três algoritmos baseados em MF (SVD, SVD++ and NMF). Nossos experimentos reduziram a esparsidade em mais de 70% no subset de Movielens e 28% no LastFM. Erro predito foi reduzido em todos os subsets com confiança estatística usando o teste paramétrico ANOVA seguido o teste de comparação múltipla de Tukey.


  • Mostrar Abstract
  • Recommender Systems provide suggestions for items that are most likely of interest to users. Providing personalized recommendations is a challenge that can be addressed by filtering algorithms among which Collaborative Filtering (CF) has demonstrated much progress in the last few years. By using Matrix Factorization (MF) techniques, CF methods reduce prediction error by using optimization algorithms. However, they usually face problems such as data sparsity and prediction error. Studies point to the use of data available in Semantic Web as a path to improve recommender systems and address the challenges related to CF techniques. Motivated by these premises, the present work developed a data pipeline along with an algorithm that processes the Ratings Matrix combining semantic similarities of Linked Open Data (LOD) and estimates missing rat- ings. The experiments take subsets of three different datasets (Movielens, LastFM and LibraryThing), two semantic similarity metrics, Linked Data Similarity Distance (LDSD) and Resource Similarity (RESIM), and three MF-based algorithms (SVD, SVD++ and NMF). Our experiments reduced sparsity by more than 75% in Movielens subset and 28% in LastFM. Prediction error is reduced in all subsets with statistical confidence using parametric test one-way ANOVA followed by Tukey’s multiple comparison test.

13
  • MARCOS RICARDO SANTOS OLIVEIRA
  • PSGF (Phase Space Gap Filling): Um novo método para substituição de valores ausentes em séries temporais caóticas

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • RENATO PORFIRIO ISHII
  • EWALDO EDER CARVALHO SANTANA
  • Data: 07/07/2022

  • Mostrar Resumo
  • O tratamento de informações ausentes ou inválidas em bases de dados representa um grande desafio na área de Aprendizado de Máquina (AM) que, se não for realizado da maneira adequada, pode afetar a qualidade do modelo produzido ou, até mesmo, impedir a sua utilização. Em geral, esse problema ocorre por diversas razões como, por exemplo, erro no dispositivo utilizado para coleta de informações, problemas na transmissão entre os dispositivos de coleta e de armazenamento, e a ausência real de informação no sistema monitorado. Quando os dados são coletados de maneira independente e identicamente distribuída, os próprios modelos tradicionais de AM podem ser utilizados para tratar esse problema. Entretanto, quando há dependência temporal entre as observações coletadas, e.g. quando os dados são organizados como séries temporais, tais modelos não são adequados por não considerar o relacionamento existente entre os instantes de tempo das coletas. Para o tratamento desse tipo de dado, há diversas técnicas como métodos de interpolação (e.g. Lagrange, Newton e Splines) e Singular Spectrum Analysis (SSA). Contudo, experimentos realizados durante esse projeto de mestrado demonstraram que as técnicas existentes apresentam resultados insatisfatórios quando as séries temporais possuem comportamento caótico, uma vez que informações sobre seus atratores no espaço de coordenadas de atraso (espaço fase) não são levados em consideração. Neste sentido, este projeto de mestrado apresenta um novo método que utiliza ferramenta de Sistemas Dinâmicos e Teoria do Caos para desdobrar séries do domínio temporal para o espaço fase, viabilizando, assim, a aplicação de técnicas de Aprendizado de Máquina na substituição de valores ausentes. Resultados obtidos enfatizam a importância desse novo paradigma de substituição de valores ausentes, apresentando uma superioridade do método proposto com relação às técnicas conhecidas no estado da arte.


  • Mostrar Abstract
  • The preprocessing step performed to deal with missing or invalid information in datasets is a relevant task in Machine Learning (ML) applications to avoid producing wrong models and make feasible the usage of specific algorithms that do not work in such a condition. In general, missing values occours for different reasons as, for instance, problems in the device used to monitor a system, network issues between monitoring and storage services, and the authentic absence of data. By collecting data in an i.i.d (independent and identically distributed) manner, traditional ML models are able to replace missing values. However, when there are temporal dependencies between collected observations, e.g., time series, such models are unsuitable for not considering the existing relationship in time instants. The treatment of missing data in time series is performed by several techniques such as interpolation methods (e.g. Lagrange, Newton, and Splines) and Singular Spectrum Analysis (SSA). Experiments during this project highlighted that these methods provided poor results when the time series present a chaotic behavior once their attractors in the phase space are not taken into account. Therefore, this work presents a new method that considers Dynamical System and Chaos Theory tools to unfold series from the temporal domain into phase space, making it possible the adoption of ML models to replace missing values. Our results emphasize the importance of this new paradigm to deal with missing values, outperforming the state-of-the-art.

14
  • VERUSCA CARIN BARROS ROCHA
  • EVOLUINDO UM MAPA DE APOIO AO GERENCIAMENTO DE ITENS DE DÍVIDA TÉCNICA RELACIONADA A TESTE DE SOFTWARE

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • JOSÉ CARLOS MALDONADO
  • MANOEL GOMES DE MENDONCA NETO
  • RENATO LIMA NOVAIS
  • Data: 27/07/2022

  • Mostrar Resumo
  • Dívida Técnica (TD) contextualiza um conjunto de tarefas que deixam de ser executadas e são acumuladas para serem realizadas posteriormente durante o desenvolvimento de software. Em teste de software, cobertura insuficiente de teste, falta de teste e ausência de planejamento de casos de teste são situações nas quais dívidas de teste podem ser encontradas. Em contrapartida, outros tipos de dívida podem afetar a qualidade das atividades de teste. Documentação de requisitos desatualizada é um exemplo de uma situação de dívida de requisitos que pode comprometer as atividades de planejamento de teste. Nesse cenário, o termo dívida relacionada a teste (TRTD) refere-se aos problemas enfrentados pelos profissionais de teste devido à presença de itens de TD. Recentemente, propôs-se na literatura técnica um mapa conceitual que relaciona atividades de teste a itens de TD. Este mapa apresenta causas, indicadores e práticas de pagamento de TD relacionada a teste. Entretanto, esse mapa foi baseado em uma revisão ad hoc da literatura e a evidência experimental sobre a sua viabilidade de uso na indústria é limitada. Apesar de vários trabalhos investigarem indicadores, causas, efeitos e prevenção de TD, ainda há um longo caminho sobre como usar essas informações para apoiar a gestão de itens de dívida no contexto de atividades de teste. O objetivo desse trabalho é (i) apresentar uma versão atualizada de uma estrutura conceitual que organiza um conjunto de indicadores, causas, efeitos e práticas preventivas de TRTD, utilizando como base os dados do projeto InsighTD, que é um questionário global, que busca gerar dados experimentais sobre TD, suas causas, efeitos e gerenciamento a partir de profissionais de engenharia de software e (ii) avalia-o quanto à sua facilidade de uso, utilidade e possível uso futuro. Esta metodologia de avaliação, baseada no modelo de aceitação de tecnologia (TAM), faz um estudo de viabilidade dos mapas com 95 participantes. Como resultado da pesquisa, observou-se que o arcabouço conceitual com os elementos de TD pode ser útil para subsidiar a gestão dos itens do TRTD, conforme apontado por 89% dos participantes. A maioria dos participantes também indicou que ganharia produtividade, desempenho, agilidade e eficácia usando o arcabouço proposto. O framework também foi considerado fácil de aprender e usar pelos participantes do estudo.


  • Mostrar Abstract
  • Technical Debt (TD) contextualizes a set of tasks that are not performed and are accumulated to be performed later during software development. In software testing, insufficient test coverage, lack of testing, and lack of test case planning are situations in which test debt can be found. In contrast, other types of debt can affect the quality of testing activities. Outdated requirements documentation is an example of a requirements debt situation that can compromise test planning activities. In this scenario, the term test-related debt (TRTD) refers to the problems faced by test professionals due to the presence of TD items. Recently, a conceptual map has been proposed in the technical literature that relates test activities to TD items. This map presents test-related TD causes, indicators and payment practices. However, this map was based on an ad hoc literature review and experimental evidence on its feasibility for use in industry is limited. Despite several works investigating indicators, causes, effects and prevention of TD, there is still a long way to go on how to use this information to support the management of debt items in the context of testing activities. The objective of this work is (i) to present an updated version of a conceptual framework that organizes a set of indicators, causes, effects and preventive practices of TRTD, based on data from the InsighTD project, which is a global questionnaire, which seeks to generate experimental data on TD, its causes, effects and management from software engineering professionals and (ii) to evaluate it for its ease of use, usefulness and possible future use. This evaluation methodology, based on the technology acceptance model (TAM), ran a feasibility study of the maps with 95 participants. As a result of the research, it was observed that the conceptual framework with TD elements can be useful to support the management of TRTD items, as pointed out by 89% of the participants. Most participants also indicated that they would gain productivity, performance, agility and effectiveness using the proposed framework. The framework was also considered easy to learn and use by the study participants.

15
  • SAMIA CAPISTRANO GOMES
  • Evaluating Nexus Modifications Popularity and Positive Evaluations: An Empirical Study

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • RODRIGO PEREIRA DOS SANTOS
  • EDUARDO SANTANA DE ALMEIDA
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 18/08/2022

  • Mostrar Resumo
  • Nos últimos anos, os jogos de computador têm crescido em número de usuários, área de aplicação e complexidade de desenvolvimento. Neste contexto, destaca-se o modding, que são alterações criadas pelos utilizadores de jogos (Modders), disponibilizadas gratuitamente através de comunidades de modificação. Uma das maiores comunidades de compartilhamento de modificações é a Nexus Mods. Está possui mais de 300.000 arquivos diversos à disposição dos seus utilizadores. As Modificações (Mods) tendem a aumentar o ciclo de vida, as vendas e ajudam a acrescentar novas funcionalidades aos jogos, porém poucos estudos os analisam. Assim, estudámos os Mods a fim de identificar padrões dos artefatos centrados em sua popularidade e qualidade (avaliações positivas). Este estudo identificou quais dimensões poderiam distinguir as modificações populares das impopulares e os mods com muitas avaliações positivas dos com poucas avaliações positivas. Identificamos também as características com poder explicativo significativo sob popularidade e as avaliações positivas dos mods. Para tal, foram propostos e analisados modelos logísticos utilizando cálculos estatísticos. Analisamos 40.865 mods populares e 40.865 mods impopulares, 40.865 mods com muitas avaliações positivas, e 40.865 com poucas avaliações positivas da comunidade de Mods Nexus através de 4 dimensões (Mods Categorias, Mods Documentação, Mods Contribuição da Comunidade e Modders Características ) e 27 características. Como resultado, obtemos que todas as dimensões estudadas têm o poder de distinguir as modificações populares das impopulares e as modificações com muitas avaliações positivas das que têm poucas avaliações positivas. Das 27 características, 23 características têm poder explicativo significativo sob popularidade dos mods, e 22 sob avaliações positivas dos mods. Este estudo identificou a necessidade de integrar as versões dos mods e as suas classificações de versão, permitir avaliações negativas, criar uma boa descrição, e adicionar etiquetas aos mods, entre outras implicações e perspectivas para a comunidade Nexus, os Modders, usuários e pesquisadores.


  • Mostrar Abstract

  • In recent years, computer games have grown in the number of users, application area, and development complexity. In this context, modding stands out, which are changes created by game users (Modders), made available for free through modification communities. One of the largest modification-sharing communities is Nexus Mods, with over 300,000 diverse files available to its users.
    The Mods tend to increase the life cycle and sales and help add new functionality to games, but few studies have analyzed them. So we studied the mods in order to identify patterns of artifacts focusing on their popularity and quality (positive evaluations).
    This study identified which dimensions could distinguish popular modifications from unpopular ones and the mods with many positive evaluations from those with few positive evaluations. We also identify the features with significant explanatory power under popularity and positive evaluations of the mods. For this, Logistic models were proposed and analyzed using statistical calculations. We analyze 40,865 popular mods and 40,865 unpopular mods, 40,865 mods with many positive evaluations, and 40,865 with few positive evaluations from the Nexus Mods community through 4 dimensions (Mods Categories, Mods Documentation, Mods Community Contribution, and Modders Characteristics ) and 27 characteristics.
    As a result, we obtained that all the dimensions studied have the power to distinguish popular modifications from unpopular ones and modifications with many positive evaluations from those with few positive evaluations. Of the 27 features, 23 features have significant explanatory power under mod popularity, and 22 under mod positive evaluations. This study has identified a need to integrate the versions of mods and their version evaluations, enable negative evaluations, create a good description, and add tags to the mods, among other implications and perspectives for the Nexus community, Modders, users, and researchers.

16
  • JADNA ALMEIDA DA CRUZ
  • GRSPOID: Um Sistema de Recomendação de Pontos de Interesse para Grupos com Diversificação

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • DANILO BARBOSA COIMBRA
  • ROSALVO FERREIRA DE OLIVEIRA NETO
  • Data: 24/08/2022

  • Mostrar Resumo
  • Nos últimos anos a disponibilidade de dados na Web tem sido impulsionada pelo uso crescente das redes sociais e aplicativos para smartphones. Além do conteúdo textual, informações de geo-localização também são compartilhadas, favorecendo o surgimento de inúmeros serviços baseado em localização. As informações de localização de um Ponto de Interesse (POI) podem ser utilizadas para se entender o perfil de usuários, seus interesses e movimentações. Dessa maneira, é possível identificar, por exemplo, lugares de interesse de um determinado usuário, e até mesmo classificá-los em categorias, tais como café, universidade, bar, shopping, etc. Esse tipo de dado é bastante utilizado para os Sistemas de Recomendação de Pontos de Interesse que tem por objetivo auxiliar os usuários na busca por lugares de interesses, seja no dia a dia, ou durante uma viagem. Esses sistemas tradicionalmente recomendam para indivíduos, no entanto, existem cenários em que os indivíduos se reúnem em grupos, aumentando assim a complexidade do problema. Além da necessidade de encontrar as preferências individuais, a recomendação deve ponderar as preferências do grupo como um todo, o que exige a aplicação de uma técnica de consenso. Outro obstáculo é que recomendações não diversificadas, tendem a ser sempre da mesma categoria, diminuindo o interesse do grupo em recomendações de Pontos de Interesse já conhecidos. Esta dissertação de mestrado propõe Sistema de Recomendação de Pontos de Interesse para Grupos usando diversidade. Para avaliar o modelo proposto, foi realizado um exaustivo experimento com 19 grupos, sendo alguns com 3 e outros 5 membros. Para avaliar as recomendações diversificadas, foram utilizadas métricas de precisão nas posições 3, 5 e 10. De acordo com os resultados, as recomendação para as posições 5 e 10 obtiveram resultados mais satisfatórios quando a diversidade foi aplicada. Após o experimento com usuários reais, também foi realizada uma análise offline com variações do modelo proposto e das técnicas de agregação. De acordo com os resultados obtidos, foi possível verificar que os modelos de recomendação com diversidade obtiveram melhores resultados que a abordagem não diversificada na maioria das configurações testadas.


  • Mostrar Abstract
  • In recent years the availability of data on the Web has been driven by the increasing use of social networks and smartphone applications. In addition to textual content, geo-location information is also shared, favoring the emergence of numerous location-based services. The location information of a Point of Interest (POI) can be used to understand the profile of users, their interests, and movements. In this way, it is possible to identify, for example, places of interest for a particular user, and even classify them into categories, such as cafes, universities, bars, malls, etc. This type of data is widely used for Points of Interest Recommender Systems, which aim to assist users in the search for places of interest, whether on a daily basis or during a trip. These systems are traditionally recommended for individuals, however, there are scenarios where individuals gather in groups, thus increasing the complexity of the problem. In addition to the need to find individual preferences, the recommendation must consider the preferences of the group as a whole, which requires the application of a consensus technique. Another obstacle is that non-diversified recommendations tend to always be in the same category, decreasing the group's interest in recommendations from already known Points of Interest. This master's thesis proposes a Points of Interest Recommendation System for Groups using diversity. To evaluate the proposed model, an exhaustive experiment was carried out with 19 groups, some with 3 and others with 5 members. To evaluate the diversified recommendations, precision metrics were used in positions 3, 5, and 10. According to the results, the recommendations for positions 5 and 10 obtained more satisfactory results when diversity was applied. After the experiment with real users, an offline analysis was also performed with variations of the proposed model and aggregation techniques. According to the results obtained, it was possible to verify that the recommendation models with diversity obtained better results than the non-diversified approach in most of the tested configurations.

17
  • ADEILSON ANTONIO DA SILVA
  • Ao enganar a classificação de malware com injeção de seção: ataque e defesa usando redes neurais profundas
  • Orientador : MAURICIO PAMPLONA SEGUNDO
  • MEMBROS DA BANCA :
  • ANDRÉ BRASIL VIEIRA WYZYKOWSKI
  • KARL PHILIPS APAZA AGUERO
  • MAURICIO PAMPLONA SEGUNDO
  • Data: 22/11/2022

  • Mostrar Resumo
  • Investigamos como modificar arquivos executáveis para enganar os sistemas de classificação de malware. A principal contribuição deste trabalho é uma metodologia para injetar bytes em um arquivo de malware aleatoriamente e usá-lo tanto como um ataque para diminuir a precisão da classificação quanto como um método defensivo, aumentando os dados disponíveis para treinamento. Ele respeita o formato de arquivo do sistema operacional para garantir que o malware ainda será executado após nossa injeção e não mudará seu comportamento. Reproduzimos cinco abordagens de classificação de malware de última geração para avaliar nosso esquema de injeção: uma baseada em GIST+KNN, três variações de CNN e uma CNN Gated. Realizamos nossos experimentos em um conjunto de dados público com 9.339 amostras de malware de 25 famílias diferentes. Nossos resultados mostram que um simples aumento de 7% no tamanho do malware causa uma queda de precisão entre 25% e 40% para a classificação da família de malware. Eles mostram que um sistema de classificação automática de malware pode não ser tão confiável quanto relatado inicialmente na literatura. Também avaliamos o uso de malwares modificados ao lado dos originais para aumentar a robustez das redes contra os ataques mencionados. Os resultados mostram que uma combinação de reordenar seções de malware e injetar dados aleatórios pode melhorar o desempenho geral da classificação. Código disponível em https://github.com/adeilsonsilva/malware-injection.


  • Mostrar Abstract
  • We investigate how to modify executable files to deceive malware classification systems. This work's main contribution is a methodology to inject bytes across a malware file randomly and use it both as an attack to decrease classification accuracy but also as a defensive method, augmenting the data available for training. It respects the operating system file format to make sure the malware will still execute after our injection and will not change its behavior. We reproduced five state-of-the-art malware classification approaches to evaluate our injection scheme: one based on GIST+KNN, three CNN variations and one Gated CNN. We performed our experiments on a public dataset with 9,339 malware samples from 25 different families. Our results show that a mere increase of 7% in the malware size causes an accuracy drop between 25% and 40% for malware family classification. They show that a automatic malware classification system may not be as trustworthy as initially reported in the literature. We also evaluate using modified malwares alongside the original ones to increase networks robustness against mentioned attacks. Results show that a combination of reordering malware sections and injecting random data can improve overall performance of the classification. Code available at https://github.com/adeilsonsilva/malware-injection.

18
  • AMANDA CHAGAS DE OLIVEIRA
  • Um Modelo de Recomendação para Grupos Utilizando Técnicas de Diversificação

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • DANILO BARBOSA COIMBRA
  • NATASHA CORREIA QUEIROZ LINO
  • Data: 28/11/2022

  • Mostrar Resumo
  • Sistemas de Recomendação tradicionalmente recomendam itens a usuários individuais, no entanto existem cenários nos quais os indivíduos se reúnem em grupos e com isso surge a necessidade de recomendar também a grupos. A maior parte desses grupos se forma naturalmente, como por exemplo para assistir um filme, almoçar em algum restaurante ou até mesmo planejar uma viagem. Em todas essas hipóteses é possível utilizar os Sistemas de Recomendação enquanto ferramentas para oferecer informações personalizadas ao grupo como um todo. Para tanto, é preciso levar em consideração as preferências individuais dos membros do grupo, com o intuito de satisfazê-lo plenamente, e, nesse sentido, utilizar técnicas de agregação dessas informações. Embora existam técnicas de consenso para agregação das informações, as recomendações podem ser repetitivas entre si pois atenderão sempre ao mesmo perfil de grupo. Esse inconveniente abre precedente para adoção de técnicas de diversidade para recomendações ao grupo. Neste trabalho, nós investigamos como aplicar tais técnicas de diversificação em recomendações para grupo, com base nas preferências dos membros, a fim de evitar a super-especialização do sistema e assim manter os membros do grupo satisfeitos de forma geral. Para tanto, é preciso desenvolver um modelo de formação do grupo, e, em seguida, modelar como será realizada a recomendação, para então conseguir aplicar técnicas de diversificação nos itens a serem recomendados. Foram realizados dois experimentos nesta pesquisa, ambos considerando um trabalho relacionado como baseline. No experimento offline o resultado do modelo proposto foi levemente  superior ao baseline, tendo sido 3.8% mais preciso e 1.8% mais diverso. No segundo experimento, o experimento online, o modelo proposto dominou completamente o baseline em termos de precisão e foi levemente inferior em termos de diversidade.


  • Mostrar Abstract
  • Recommender Systems traditionally recommend items to individual users. However, there are scenarios where individuals gather in groups, and with that arises the need to recommend to groups. Most of these groups form naturally, for example, to watch a movie, have lunch at a restaurant, or even plan a trip. In all these hypotheses, it is possible to use Recommender Systems to offer personalized information to the group as a whole. To do so, it is necessary to consider the individual preferences of the group members, to satisfy them fully, and, in this sense, to use techniques for aggregating this information. Although there are consensus techniques for aggregating information, the recommendations can be repetitive among themselves, as they will always serve the same group profile. This inconvenience sets a precedent for adopting diversity techniques for recommendations to the group. In this work, we investigate how to apply such diversification techniques in group recommendations, based on the members' preferences, to avoid over-specialization of the system and thus keep the group members satisfied in general. To do so, it is necessary to develop a group formation model and then model how the recommendation will be carried out to be able to apply diversification techniques to the items to be recommended. Two experiments were carried out in this research, considering related work as a baseline. In the offline experiment, the result of the proposed model was slightly higher than the baseline, having been 3.8% more accurate and 1.8% more diverse. In the second experiment, the online experiment, the proposed model completely dominated the baseline in terms of accuracy and was slightly inferior in terms of diversity.

19
  • Jane Barbosa Santos
  • Estratégias Para Adoção Das Redes Experimentais No Ensino De Redes De Computadores: Dispositivos Para Orientação Docente

     
     
  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • ECIVALDO DE SOUZA MATOS
  • JOBERTO SERGIO BARBOSA MARTINS
  • LEOBINO NASCIMENTO SAMPAIO
  • MARIA CAROLINA DE SOUZA SAMPAIO
  • Data: 07/12/2022

  • Mostrar Resumo
  • Na tentativa de promover uma aprendizagem ativa, dinâmica e centrada no aluno, diversas instituições têm investido no uso de simuladores, jogos, laboratórios virtuais, e mais recentemente ambientes de redes experimentais (testbeds) como uma alternativa tecnológica para a realização de laboratórios práticos. Os testbeds já são utilizados como plataformas para apoio ao desenvolvimento de pesquisas na área de redes há um tempo, e é comum que com o passar do tempo as tecnologias empregadas na sua construção se tornem obsoletas e menos interessante para os pesquisadores, fazendo com que seus projetos iniciais sejam descontinuados. Sendo assim, são necessários novos incentivos e parcerias para manter o testbed ativo, e é justamente nesse cenário, que observa-se uma oportunidade para o uso desses ambientes na educação. Porém, mesmo com as vantagens de proporcionar uma formação diferenciada aos alunos, já que os testes no testbeds são realizados com equipamentos reais, seu uso no ensino ainda é baixo, uma vez que, não há um sistema que oriente o professor no uso desses ambientes para potencializar o processo de ensino e aprendizagem pelos alunos, tampouco há técnicas de avaliação que considerem suas especificidades. Neste sentido, apresentamos nesta dissertação dois produtos: o dispositivo de avaliação RUBIK, criado para permitir a avaliação de cursos que utilizam testbeds sob diferentes perspectivas e um Guia de Recomendações com recomendações básicas para orientar os professores na inserção dos testbeds em sala de aula. O objetivo do RUBIK é avaliar a efetividade dos testbeds no ensino de redes de computadores, bem como se tornar uma ferramenta genérica para avaliação de cursos que utilizam esses ambientes como infraestrutura tecnológica para realização de laboratórios práticos. O guia tem como objetivo contribuir para o processo de adoção dos testbeds em sala de aula, ampliando assim as oportunidades de aprendizagem dos alunos, a partir da aplicação de conceitos teóricos em situações práticas. Assim, os recursos apresentados nesta dissertação (RUBIK e Guia de Recomendações) contribuem para apoiar o professor através da sinalização de critérios importantes a serem considerados desde a fase de elaboração até a efetiva avaliação de cursos que utilizam testbeds como infraestrutura tecnológica para realização de laboratórios práticos. 

     
     

  • Mostrar Abstract
  •  

     
     
20
  • LEONAN TEIXEIRA DE OLIVEIRA
  • Uma abordagem sensível à latência e ao custo de comunicação para alocação de aplicações modulares em uma fog hierárquica

  • Orientador : MAYCON LEONE MACIEL PEIXOTO
  • MEMBROS DA BANCA :
  • DANIEL GOUVEIA COSTA
  • LUIZ FERNANDO BITTENCOURT
  • MAYCON LEONE MACIEL PEIXOTO
  • Data: 13/12/2022

  • Mostrar Resumo
  • Ao longo dos anos, a Cloud Computing vem fornecendo infraestrutura para o processamento de aplicações e serviços. Entretanto, a distância entre os recursos computacionais da Cloud e os dispositivos da Internet of Things (IoT) pode causar atrasos nos tempos de respostas para alguns serviços e aplicações que possuem sensibilidade e requisitos temporais. Nesse contexto, a Fog Computing surge como um paradigma computacional que busca aproximar os recursos da Cloud Computing dos dispositivos IoT, distribuindo geograficamente os micro-centros de dados (Cloudlets) e reduzindo o tempo de resposta. Estudos utilizando a Fog Computing apresentam soluções para a alocação das aplicações de forma que seja possível atender os diferentes tipos de requisitos. Esses estudos avaliam determinados requisitos para tomada de decisão, tais como o tempo de resposta e o custo de comunicação. Entretanto, observa-se nesses estudos que à medida que um requisito é priorizado outro é preterido. Dessa forma, este trabalho propõe uma abordagem para alocação de aplicações modulares em uma arquitetura de Fog Computing de múltiplos níveis hierárquicos, que busca reduzir o tempo de resposta de aplicações sensíveis a latência e reduzir o tráfego de dados na rede. Para alcançar esse objetivo, a abordagem proposta, Least Impact - X (LI-X), busca reduzir a ociosidade de recursos nos níveis mais baixos da Fog e leva em consideração a comunicação entre os módulos das aplicações quando precisa decidir sobre a
    alocação. O LI-X foi comparado a estudos predecessores em um ambiente simulado do iFogSim. Os resultados mostram que o LI-X conseguiu superar esses estudos na maioria dos cenários propostos, reduzindo o tempo de resposta e o custo com a comunicação de dados na rede.

  • Mostrar Abstract
  • Over the years, Cloud Computing has provided infrastructure for processing applications and services. However, the distance between Cloud computing resources and Internet of Things (IoT) devices can cause delays in response times for some services and applications that have sensitivity and temporal constraints. In this context, Fog Computing emerges as a computational paradigm that seeks to bring Cloud Computing resources closer to IoT devices, geographically distributing micro-data centers (Cloudlets) and reducing response time. Studies using Fog Computing present solutions for the application allocation, addressing that it is possible to meet different types of requirements. These studies evaluate certain requirements for decision making, such as response time and communication cost. However, it is observed in these studies that as a requirement is prioritized, another is neglected. Thus, this work proposes an approach for allocating modular applications in a Fog Computing architecture with multiple hierarchical levels, which seeks to reduce the response time of latency-sensitive applications and reduce data traffic on the network. To achieve this goal, the proposed approach, Least Impact - X (LI-X), seeks to reduce the idleness of resources at the lowest levels of the fog and takes into account the communication between application modules when deciding on the allocation. LI-X was compared to predecessor studies in a simulated iFogSim environment. The results show that the LI-X was able to overcome these studies in most of the proposed scenarios, reducing the response time and the cost of data communication on the network.

21
  • Nilvan Santana Souza
  • Alocação Inteligente de Recursos para Proteção Adiada Baseada em Aprendizado de Máquina em Redes Ópticas Elásticas

  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • MARCIA HELENA MOREIRA PAIVA
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • TATIANE NOGUEIRA RIOS
  • Data: 14/12/2022

  • Mostrar Resumo
  • Atualmente diversos Data Centers estão interconectados em todo o mundo, fornecendo suporte a serviços de nuvem para processamento e armazenamento de dados gerados na internet. A Rede Óptica Elástica (EON) se apresenta como uma infraestrutura capaz de transmitir as altas taxas de dados geradas em tais redes de Data Centers, criando as Redes Ópticas Elásticas Inter-datacenters (IDC-EONs). Isto porque, a rede EON possui alta largura de banda, além disso, pode operar em diversas taxas de transmissão, aumentando ou diminuindo a largura de banda de acordo com a demanda, o que torna a rede ideal para suprir o fluxo de dados mundial. Em IDC-EONs, pequenas interrupçõeses na transmissão podem resultar na perda de um grande volume de dados, alguns dados podem ser críticos, sua perda pode causar danos aos usuários da rede, por isso, a necessidade de utilizar estratégias de proteção em IDC-EONs. A partir do estudo e análise de dados é possível detectar padrões e/ou comportamentos da rede IDC-EON, através do processo de Aprendizado de Máquina (AM), a partir da aprendizagem de uma experiência passada. A partir desse contexto, este trabalho apresenta 3 mecanismos de alocação de recursos para proteção adiada em redes IDC-EONs. Os mecanismos utilizados neste trabalho, foram baseadas em técnicas de análise de dados e de AM para o auxilio das decisões relacionadas a alocação de banda nos caminhos ópticos em redes IDC-EONs


  • Mostrar Abstract
  • Currently, several Data Centers are interconnected worldwide, providing support to cloud services for processing and storing data generated on the internet. The Elastic Optical Network (EON) presents itself as an infrastructure capable of transmitting the high data rates generated in such Data Center networks, creating the Inter-datacenter Elastic Optical Networks (IDC-EONs). This is because the EON network has high bandwidth. In addition, it can operate at different transmission rates, increasing or decreasing the bandwidth according to demand, which makes the network ideal for supplying the world's data flow. In IDC-EONs, minor interruptions in transmission can result in the loss of a large volume of data. Some data can be critical, so their loss can cause harm to network users, hence the need to use protection strategies in IDC-EONs. From the study and analysis of data, it is possible to detect patterns and behaviors of the IDC-EON network, through the Machine Learning (ML) process, from the learning of a past experience. This work presents 3 resource allocation mechanisms for deferred protection in IDC-EON networks from this context. The mechanisms used in this work were based on data analysis and AM techniques to help decisions related to bandwidth allocation in optical paths in IDC-EON networks.

Teses
1
  • STEFANI SILVA PIRES
  • Aprendizagem de políticas de cache adequadas em redes centradas na informação

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • JUSSARA MARQUES DE ALMEIDA
  • DANIEL SADOC MENASCHE
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • LEOBINO NASCIMENTO SAMPAIO
  • TATIANE NOGUEIRA RIOS
  • Data: 11/02/2022

  • Mostrar Resumo
  • Nos últimos anos, a rede centrada na informação (Information-centric networking - ICN) ganhou atenção das comunidades de pesquisa e indústria como um paradigma de rede de distribuição de conteúdo eficiente e confiável, especialmente para lidar com aplicativos centrados em conteúdo e que necessitam de alta largura de banda, juntamente com os requisitos heterogêneos de redes emergentes, como a Internet das coisas, Redes veiculares Ad-hoc e Computação na borda da rede. O armazenamento em caches na rede é uma parte essencial do design da arquitetura ICN e o desempenho da rede geral depende da eficiência da política de armazenamento de conteúdos utilizada no cache. Portanto, um grande número de políticas de substituição de conteúdos foram propostas para atender às necessidades de diferentes redes. A literatura apresenta extensivamente estudos sobre o desempenho das políticas de substituição em diferentes contextos. As avaliações podem apresentar diferentes variações de características de contexto, levando a diferentes impactos no desempenho das políticas ou diferentes resultados das políticas mais adequadas. Por outro lado, existe uma lacuna de pesquisas para compreender como as características do contexto influenciam o desempenho das políticas. Também faltam iniciativas que auxiliem no processo de escolha de uma política adequada a um cenário específico. Nesse sentido, esta tese aborda essas lacunas de pesquisa ao (i) apontar o que é contexto da perspectiva das políticas de substituição de cache e as características de contexto que influenciam o comportamento do cache, e (ii) propor uma estratégia de meta-política de cache para auxiliar na escolha de políticas adequadas ao contexto vigente. Para o estudo de delimitação de contexto, realizamos uma extensa pesquisa da literatura de ICN para mapear as evidências relatadas de diferentes aspectos do contexto em relação aos esquemas de substituição de cache. Além da contribuição de entender o que é contexto para políticas de cache, a pesquisa forneceu uma classificação útil de políticas com base nas dimensões de contexto usadas para determinar a relevância dos conteúdos. Além disso, como uma investigação de aspectos holísticos para representar o contexto, e motivados pela área emergente das redes centradas no humano, realizamos um estudo de caso exploratório sobre a influência do comportamento humano no desempenho das políticas. Neste sentido, realizamos um estudo baseado em simulação que avaliou o desempenho das políticas de substituição de cache por meio de clusters formados pelos usuários de acordo com seus hábitos de escuta musical. Os resultados mostram evidências de que aspectos distintos de contexto afetam o desempenho das políticas de cache. Após os estudos de contexto, apresentamos uma estratégia de meta-política capaz de aprender a política mais adequada para caches online e se adaptar dinamicamente às variações de contexto que levam à mudanças em qual política é a melhor. A meta-política se beneficia da diversidade de políticas e seus aspectos de contexto, e faz uma separação entre a lógica de remoção do conteúdo e o gerenciamento das informações de contexto usadas pela política. A estratégia modela a escolha de políticas adequadas como um problema de aprendizado online com retorno parcial. A meta-política oferece suporte à implantação de um conjunto diversificado de políticas de cache autocontidas em diferentes redes. Ela permite que o dispositivo de cache funcione como um sistema adaptativo agnóstico aos contextos subjacentes, como padrões de solicitação de conteúdo ou variações de popularidade. Os resultados experimentais mostraram a eficácia e adaptabilidade da meta-política a diferentes contextos em simulações com dados sintéticas reais.


  • Mostrar Abstract
  • In recent years, Information-centric networking (ICN) has gained attention from the research and industry communities as an efficient and reliable content distribution network paradigm, especially to address content-centric and bandwidth-needed applications together with the heterogeneous requirements of emergent networks, such as the Internet of Things, Vehicular Ad-hoc NETwork, and Mobile Edge Computing. In-network caching is an essential part of ICN architecture design, and the performance of the overall network relies on caching policy efficiency. Therefore, a large number of cache replacement strategies have been proposed to suit the needs of different networks. The literature extensively presents studies on the performance of the replacement schemes in different contexts. The evaluations may present different variations of context characteristics leading to different impacts on the performance of the policies or different results of most suitable policies. Conversely, there is a lack of research efforts to understand how the context characteristics influence policy performance. There is also a lack of initiatives to assist the process of choosing a suitable policy given a specific scenario. In this direction, this thesis address those research gaps by (i) pointing out what is context from the perspective of cache replacement policies and the context characteristics that influence cache behavior, and (ii) proposing a caching meta-policy strategy to assist the choosing process of suitable policies according to the current context. For the context delimitation study, we have conducted an extensive survey of the ICN literature to map reported evidence of different aspects of context regarding the cache replacement schemes. Beyond the contribution of understanding what is context for caching policies, the survey provided a helpful classification of policies based on the context dimensions used to determine the relevance of contents. Moreover, as an investigation of holistic aspects to represent context, and motivated by the emergent area of human-centric networking, we have performed an exploratory case study on a human behavior influence over the policies performance. To accomplish such goal, we carry out a simulation-based study that evaluated the performance of cache replacement policies through clusters formed by users according to their music listening habits. The results fostered the evidence that distinct context aspects have an effect on caching policy performances. Following the context studies, we present a meta-policy strategy capable of learning the most appropriate policy for cache online and dynamically adapting to context variations that leads to changes in which policy is best. The meta-policy benefits from the diversity of policies and its context aspects, decouples the eviction strategy from managing the context information used by the policy, and models the choice of suitable policies as online learning with bandit feedback problem. The meta-policy can support the deployment of a diverse set of self-contained caching policies in different networks. It enables cache routers to work as adaptive systems agnostic to the underlying contexts, such as content request patterns or popularity variations. Experimental results in single and network of caches have shown the meta-policy effectiveness and adaptability to different contexts in synthetic and trace-driven simulations.

2
  • ANDRÉ BRASIL VIEIRA WYZYKOWSKI
  • SÍNTESE DE IMPRESSÕES DIGITAIS CIENTE DA IDENTIDADE UTILIZANDO REDES NEURAIS GENERATIVAS

  • Orientador : MAURICIO PAMPLONA SEGUNDO
  • MEMBROS DA BANCA :
  • DANILO BARBOSA COIMBRA
  • KARL PHILIPS APAZA AGUERO
  • MAURICIO PAMPLONA SEGUNDO
  • RAONI FLORENTINO DA SILVA TEIXEIRA
  • RODRIGO MINETTO
  • Data: 23/02/2022

  • Mostrar Resumo
  • As restrições legais atuais que protegem a privacidade dos dados biométricos estão dificultando a pesquisa de reconhecimento de impressão digital. Por exemplo, todos os bancos de dados de impressão digital de alta resolução deixaram de estar disponı́veis. Além disso, não existem bancos de dados hı́bridos que contenham imagens de alta e média resolução em diferentes sensores. Trabalhos recentes utilizam redes neurais generativas (GAN) para replicar a distribuição de impressões digitais em um determinado conjunto de dados com o intuito de sintetizar novas imagens. No entanto, esses métodos são problemáticos, pois estes replicam caracterı́sticas visuais indesejáveis além de gerar dados enviesados (por exemplo, distribuição de classe de impressão digital). Além disso, estes métodos são incapazes de gerar várias imagens da mesma identidade. Para resolver esse problema, apresentamos duas novas abordagens para sintetizar impressões digitais. A primeira é uma abordagem hı́brida para sintetizar impressões digitais realistas, de multi-resolução e multissensores. Essa abordagem pode gerar impressões digitais de alta e média resolução em diferentes sensores, mantendo as mesmas identidades. O segundo é um método de geração de impressão digital em dois estágios: geração de identidade e simulação de aquisição. Ao contrário de trabalhos anteriores que utilizam GAN, nosso primeiro estágio modela identidades de impressões digitais por classe. No segundo estágio, são criadas amostras por identidade através da combinação de uma modelagem de sensor (por exemplo, área, orientação, deformação) e por um processo de texturização realı́stica. Comparamos favoravelmente nossas imagens sintéticas com o estado da arte em termos de desempenho de reconhecimento biométrico e análise de qualidade de imagens sementes. Nossos experimentos sugerem que conjuntos de dados de imagens sintéticas criado por nossas abordagens são análogos a conjuntos de dados autênticos. Este fator pode ser crucial para pesquisas e desenvolvimentos de sistemas biométricos em grande escala sem gerar grandes custos de criação de bases de dados, além de evitar riscos relacionados à privacidade.


  • Mostrar Abstract
  • Today’s legal restrictions that protect biometric data privacy are hampering fingerprint recognition research. For instance, all high-resolution fingerprint databases ceased to be publicly available. Besides, there are no hybrid databases that contain high and medium-resolution images on different sensors. Recent works use generative neural networks (GAN) to replicate the distribution of fingerprints in a given training dataset and synthesize new images. However, these methods are troubled with the replication of undesirable visual characteristics and biases (e.g., fingerprint class distribution) from the training dataset and the inability to generate multiple images of the same identity. To address this problem, we present two novel approaches to synthesize fingerprints. The first is a hybrid approach to synthesize realistic, multiresolution and multisensor fingerprints. This approach can generate high and medium-resolution fingerprints on different sensors, maintaining the same identities. The second is a fingerprint generation method divided into two stage: identity generation and acquisition simulation. Unlike previous works, our first stage models fingerprints focusing on identity cues rather than realism, which we achieve by combining class-specific image generation and inpainting-based restoration. In the second stage, we create multiple samples per identity with the combination of sensor modeling (e.g., area, orientation, deformation) and realistic texturing. We favorably compared our synthetic images to the state-of-the-art in terms of biometric recognition performance and seed image quality analysis. Our experiments suggest that the datasets of synthetic images created by our approaches are analogous to an authentic dataset, which can be crucial for researching and developing large-scale biometric systems without incurring major dataset creation costs and privacy-related risks.

3
  • DIOGO VINÍCIUS DE SOUSA SILVA
  • Utilização de Técnicas de Clusterização e Cadeias de Markov para Sistemas de Recomendação de Itens de Cauda Longa

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • MAYCON LEONE MACIEL PEIXOTO
  • RAFAEL AUGUSTO DE MELO
  • RENATO DE FREITAS BULCÃO NETO
  • PEDRO DE ALCÂNTARA DOS SANTOS NETO
  • Data: 09/06/2022

  • Mostrar Resumo
  • Sistemas de Recomendação focam em recomendar os mais relevantes itens para usuários finais. Geralmente, os itens mais importantes são também os mais populares. Entretanto, o surgimento de novas formas de distribuição de conteúdo nos mais diversos mercados implicou no surgimento do fenômeno cauda longa, ou seja, a formação de novos mercados com produtos de nicho. Considerando o crescimento de grupos relacionados a mercados de nicho, o estudo de recomendações na cauda longa tornou-se cada vez mais crescente. Todavia, por serem menos populares, itens de cauda longa possuem uma menor quantidade de feedbacks, informações que geralmente são fornecidas pelos usuários através de compras, avaliações ou classificação (ratings) de um item. Como o sistema se baseia nos dados de comportamento de utilização e/ou histórico de vendas, quanto menor a quantidade e variedade de dados disponíveis para serem analisados, mais difícil será gerar recomendações mais relevantes. O principal objetivo da proposta apresentada nesta tese é o desenvolvimento de um modelo de recomendação que consiga melhor direcionar os usuários a itens de nicho. Assim, conduzi-los a uma maior diversidade de produtos e ao mesmo tempo de grande relevância. Para isso, técnicas de clusterização e representação de matrizes através de grafos são exploradas. Propomos duas abordagens e adotamos para cada uma, duas técnicas da literatura aplicadas de forma híbrida. A primeira técnica adota cadeias de Markov para calcular similaridades dos nós de um grafo usuário-item. A segunda técnica aplica clusterização no conjunto de itens de um dataset. Experimentos foram realizados para avaliar a abordagem e medir a eficácia das recomendações considerando o contexto da cauda longa. Métricas como recall, diversidade e popularidade das recomendações geradas foram mensuradas e comparadas com técnicas cujo objetivos não abrangem diretamente recomendações cauda longa. Além disso, um questionário aplicado com especialistas do domínio do negócio também complementaram a avaliação das abordagens propostas. Comparando com outros trabalhos do estado da arte, os resultados mostram que é possível melhorar a precisão das recomendações mesmo focando em itens menos populares, no caso, produtos de nicho que formam a cauda longa. O recall em alguns casos melhorou cerca de 27,9% enquanto que a popularidade dos itens recomendados diminuiu. Além disso, as recomendações focaram em itens mais diversificados indicando melhor exploração dos itens de cauda longa.


  • Mostrar Abstract
  • Recommendation Systems focus on recommending the relevant items to end-users. Usually, the most important items are the most popular ones. However, the emergence of new forms of content distribution in the most diverse markets implied the emergence of the long tail phenomenon, i.e., the creation of new niche products market. Considering the growth of groups related to niche markets, the study of recommendations in the long tail has become increasingly demanding. Nevertheless, long-tail items naturally tend to generate fewer inputs to information systems such as purchase logs, user feedback, and ratings. As a result, it becomes more difficult to recommend items from the long tail. Motivated by these premisses, the primary purpose of this thesis is to develop and exploit recommendation models capable of leading users to niche items located in the long tail, but at the same time highly relevant ones. For this, two major techniques of clustering and representation of matrices through graphs are explored. The first technique adopts Markov chains to calculate similarities of the nodes of a user-item graph. The second technique applies clustering to the set of items in a dataset. Such a combination aims to give more visibility to the long tail items. Experiments were carried out to evaluate the approach and measure the effectiveness of the recommendations considering the long tail context. Metrics such as recall, diversity, and popularity of the generated recommendations were calculated and compared with techniques whose objectives do not directly cover long-tail recommendations. In addition, a questionnaire applied to experts in the business domain also complemented the evaluation of the proposed approaches. By comparing our proposals against three state-of-the-art baselines, the results show that it is possible to improve the accuracy of the recommendations even by focusing on less popular items, in this case, niche products that form the long tail. The recall in some cases improved by about 27.9%, while the popularity of recommended items has declined. In addition, the recommendations show to contain more diversified items indicating better exploitation of the long tail.

4
  • JOÃO PAULO PEREIRA DE SÁ CANÁRIO
  • On deep learning features for noisy time series classification

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • RUBISLEY DE PAULA LEMES
  • EDUARDO FURTADO DE SIMAS FILHO
  • MARCELO KEESE ALBERTINI
  • GLORIA MILLARAY JULIA CURILEM SALDIAS
  • Data: 04/07/2022

  • Mostrar Resumo
  • The adoption of Deep Neural Network (DNN) methods to solve problems in real-world scenarios has been increasing as the data volume grows. Although such methods present impressive results in supervised learning, it is known that the occurrence of noises modifying the original data behavior can affect the model accuracies and, consequently, the generalization process, which is highly relevant in learning tasks. Several approaches have been proposed to reduce the impact of noise on the final model, varying since the application of preprocessing steps to the design of robust DNN layers. However, we have noticed that such approaches were not systematically assessed to understand how the noise influences have been propagated throughout the DNN architectures. This gap motivated us to design this work, which was focused on modeling noisy data with temporal dependencies, typically referred to as time series or signals. In summary, our main claim was to create a network capable of acting as a noise filter and being easily connected to existing networks. To reach this goal, we have defined a methodology, which was organized into four phases: i) execution of a study about the application of DNNs to model signals collected from a real-world problem; ii) investigation of different preprocessing tools to transform such signals and reduce noise influences; iii) analysis about the impact of increasing/reducing the noise on the final model; and iv) creation of a new DNN that can be embedded into DNN architectures and act as noise filtering layer to keep the overall performances. The first and second phases were achieved in collaboration with researchers from the Universidad de La Frontera, which provided a set of signals directly collected from the Llaima volcano in Chile. The modeling performed on such signals allowed the creation of a new architecture called SeismicNet. By knowing the behavior or such signals, we could create a controlled scenario with different additive noise levels and outputs produced by our original models, thus meeting the third phase. Next, we performed two new studies to understand the impact of noises in our scenario. Firstly, we used statistical tests to confirm the error variation when noise is added to the expected signals. Then, we used XAI (eXplainable Artificial Intelligence) to visually comprehend the noise propagation into the DNN layers. Finally, we were able to finish up the last phase and accomplish our primary goal: the design of a new neural network architecture with embedding noise filtering to suppress the preprocessing phase. Interpreting the obtained results, we understand that this novel approach learned the noisy features better and was capable of delivering stable results apart from the noise level on the signal.


  • Mostrar Abstract
  • The adoption of Deep Neural Network (DNN) methods to solve problems in real-world scenarios has been increasing as the data volume grows. Although such methods present impressive results in supervised learning, it is known that the occurrence of noises modifying the original data behavior can affect the model accuracies and, consequently, the generalization process, which is highly relevant in learning tasks. Several approaches have been proposed to reduce the impact of noise on the final model, varying since the application of preprocessing steps to the design of robust DNN layers. However, we have noticed that such approaches were not systematically assessed to understand how the noise influences have been propagated throughout the DNN architectures. This gap motivated us to design this work, which was focused on modeling noisy data with temporal dependencies, typically referred to as time series or signals. In summary, our main claim was to create a network capable of acting as a noise filter and being easily connected to existing networks. To reach this goal, we have defined a methodology, which was organized into four phases: i) execution of a study about the application of DNNs to model signals collected from a real-world problem; ii) investigation of different preprocessing tools to transform such signals and reduce noise influences; iii) analysis about the impact of increasing/reducing the noise on the final model; and iv) creation of a new DNN that can be embedded into DNN architectures and act as noise filtering layer to keep the overall performances. The first and second phases were achieved in collaboration with researchers from the Universidad de La Frontera, which provided a set of signals directly collected from the Llaima volcano in Chile. The modeling performed on such signals allowed the creation of a new architecture called SeismicNet. By knowing the behavior or such signals, we could create a controlled scenario with different additive noise levels and outputs produced by our original models, thus meeting the third phase. Next, we performed two new studies to understand the impact of noises in our scenario. Firstly, we used statistical tests to confirm the error variation when noise is added to the expected signals. Then, we used XAI (eXplainable Artificial Intelligence) to visually comprehend the noise propagation into the DNN layers. Finally, we were able to finish up the last phase and accomplish our primary goal: the design of a new neural network architecture with embedding noise filtering to suppress the preprocessing phase. Interpreting the obtained results, we understand that this novel approach learned the noisy features better and was capable of delivering stable results apart from the noise level on the signal.

5
  • MARCO ANTONIO COSTA SIMÕES
  • Aprendizagem por Demonstração de Planos Coordenados em Sistemas Multiagentes

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • TATIANE NOGUEIRA RIOS
  • RITA SUZANA PITANGUEIRA MACIEL
  • REINALDO AUGUSTO DA COSTA BIANCHI
  • JOÃO ALBERTO FABRO
  • LUIS PAULO GONÇALVES DOS REIS
  • Data: 05/07/2022

  • Mostrar Resumo
  • Um dos grandes desafios em SMA é a criação de planos cooperativos para lidar com os diversos cenários que se apresentam num ambiente dinâmico, de tempo real, composto por times de robôs móveis. Neste cenário, cada robô é controlado por um agente do SMA, o qual precisa tomar decisões complexas em um curto espaço de tempo de forma coordenada com os demais robôs de seu time. Apesar das muitas soluções desenvolvidas com base em planejamento multiagente e aprendizagem por reforço, um especialista humano no domínio do problema usualmente percebe oportunidades para melhores planos cooperativos em muitos cenários em que os robôs apresentam performance abaixo do esperado. A pesquisa apresentada nesta tese consiste em capturar o conhecimento do especialista humano para demonstrar como times de robôs podem cooperar melhor na solução do problema que devem resolver. O especialista humano, ao assistir o desempenho de um time de robôs em ação, é capaz de indicar as situações em que um plano cooperativo pode solucionar melhor um determinado problema. Como consequência, as diversas observações humanas podem ser reunidas em um conjunto de dados para treinamento dos agentes que controlam os robôs. Para o desenvolvimento desta pesquisa, foi utilizado o ambiente 3DSSIM e a coleta das demonstrações humanas foi realizada por meio de um conjunto de ferramentas desenvolvido a partir da adaptação de soluções existentes na comunidade RoboCup, utilizando uma estratégia de crowdsourcing. Além disso, foi utilizado o agrupamento fuzzy para reunir demonstrações de especialistas (setplays) que tenham o mesmo significado semântico, mesmo que com pequenas diferenças entre elas. Com os dados organizados, um mecanismo de aprendizagem por reforço foi utilizado para aprender uma política de classificação que permite aos agentes decidirem qual o grupo de  setplays é mais adequado a cada situação que se apresenta no ambiente.  Os resultados evidenciam a capacidade de evolução do time de robôs, a partir da aprendizagem dos setplays sugeridos e do seu uso de forma adequada às habilidades de cada robô.


  • Mostrar Abstract
  • One of the great challenges in MAS is the creation of cooperative plans to deal with the different scenarios that present themselves in a dynamic, real-time environment composed of teams of mobile robots. In this scenario, an agent of the MAS controls each robot, which needs to make complex decisions in a short time in a coordinated manner with the other robots on its team. Despite the many solutions developed based on multi-agent planning and reinforcement learning, a human expert in the problem domain usually sees opportunities for better cooperative plans in many scenarios where robots underperform. The research presented in this thesis consists of capturing the human expert's knowledge to demonstrate how robot teams can better cooperate in solving the problem they must solve. The human expert can indicate the situations in which a cooperative plan can better solve a given problem by watching the performance of a team of robots in action.
    Consequently, a dataset for training the agents that control the robots can gather the various human observations. For the development of this research, this work used the environment 3DSSIM and the collection of human demonstrations was carried out through a set of tools developed from the adaptation of existing solutions in the RoboCup community using a strategy of crowdsourcing. In addition, fuzzy clustering was used to gather expert demonstrations (setplays) with the same semantic meaning, even with small differences. With the data organized, this thesis used a reinforcement learning mechanism to learn a classification policy that allows agents to decide which group of setplays is best suited to each situation that presents itself in the environment. The results show the ability of the robot team to evolve, from the learning of the suggested setplays and its use in an appropriate way to the abilities of each robot.

6
  • JOSÉ ROGÉRIO POGGIO MOREIRA
  • ARQUITETURA EMPRESARIAL: UMA ABORDAGEM DE RASTREABILIDADE E SINCRONIZAÇÃO DE MODELOS COMPUTACIONAIS

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • CARLOS EDUARDO SALGADO
  • FLÁVIA MARIA SANTORO
  • ANA PATRICIA FONTES MAGALHÃES MASCARENHAS
  • LAIS DO NASCIMENTO SALVADOR
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 26/07/2022

  • Mostrar Resumo
  • Uma Arquitetura Empresarial (AE) representa a organização fundamental dos processos e infraestrutura de Tecnologia da Informação (TI), servindo para capturar a essencialidade do negócio, da TI e da sua evolução, sendo relevante para proteger o negócio e manter a flexibilidade e adaptabilidade da organização.
    Uma arquitetura empresarial é formada por níveis como: os níveis estratégico, tático e operacional de TI. Cada nível, por sua vez, possui modelos computacionais distintos como, por exemplo, modelos estratégicos (nível estratégico), modelos de processos de negócio (nível tático) e modelos de requisitos de sistemas (nível operacional de TI).
    No contexto da modelagem da arquitetura empresarial, o estado da arte apresenta algumas lacunas como: (i) a falta de rastreabilidade dos elementos presentes nos modelos computacionais que compõem os níveis da AE ou a visualização, de forma pouco compreensível, da cadeia de elementos que se relacionam; e (ii) a ausência de sincronização entre os modelos computacionais dos níveis estratégico, tático e operacional de TI.
    Entre os impactos negativos relacionados com estes problemas pode-se elencar, por exemplo, a obsolescência dos modelos, a dificuldade da realização de análises de impactos e tomada de decisões, em cenários de mudanças organizacionais.
    Nesse cenário, esta tese procura tratar dos problemas da ausência de rastreabilidade e sincronização de modelos estratégico, de processos de negócio e requisitos de sistemas informação de uma arquitetura empresarial.
    Desta forma, com o objetivo de proporcionar uma redução ou eliminação dos impactos negativos causados pelos referidos problemas, é proposta uma abordagem para promover a rastreabilidade e sincronização dos modelos computacionais de uma AE. A abordagem proposta é formada por: (i) um conjunto de meta-modelos, que representa os níveis estratégico, tático e operacional da AE; (ii) uma estrutura de rastreabilidade, que suporta a gestão de configuração e mudanças, através da utilização das boas práticas do COBIT e ITIL; e (iii) uma estrutura de sincronização de modelos que utiliza as técnicas de desenvolvimento dirigido a modelos (DDM).
    A proposta visa manter os modelos computacionais rastreáveis e atualizados, permitindo: (i) o suporte a visualização e entendimento de como um conjunto de modelos (estratégico, tático e operacional de TI)  e seus elementos se relacionam; (ii) o apoio a análise de impacto e tomada de decisões em cenários de mudanças; (iii) o suporte necessário para evitar a obsolescência dos modelos; e (iv) a criação e manutenção do alinhamento estratégico do negócio com a TI.
    Para avaliar o trabalho foi realizado um survey, no contexto corporativo da esfera pública e privada, que obteve 51 respostas válidas. A pesquisa realizada não se limitou a profissionais da área de tecnologia da informação, envolvendo também profissionais de áreas estratégicas e administrativas. Os resultados da pesquisa evidenciaram que a abordagem proposta é compreensível, útil e contribui para manter os modelos rastreáveis, atualizados e consistentes, além de possibilitar também a realização de análises de impactos e o alinhamento estratégico do negócio com a TI.


  • Mostrar Abstract
  • An Enterprise Architecture (EA) represents the fundamental organization of business processes and Information Technology (IT) infrastructure, serving to capture the essentiality of the business, IT and its evolution, being relevant to protecting the business and maintaining the flexibility and adaptability of the organization.
    An enterprise architecture is formed by levels such as: the strategic, tactical and IT operational levels. Each level, in turn, has distinct computational models, such as strategic models (strategic level), business process models (tactical level) and systems requirements models (IT operational level).
    In the context of enterprise architecture modeling, the state of the art presents some gaps such as: (i) the lack of traceability of the elements present in the computational models that make up the EA levels or the visualization, in a poorly understandable way, of the chain of elements that relate; and (ii) the lack of synchronization between the computational models of the strategic, tactical and operational IT levels.
    Among the negative impacts related to these problems, one can list, for example, the obsolescence of models and the difficulty of carrying out impact analysis and, consequently, decision making, in scenarios of organizational changes.
    In this scenario, this thesis address the problems of lack of traceability and synchronization of strategic models, business processes and information systems requirements of an enterprise architecture.
    Thus, in order to provide a reduction or elimination of the negative impacts caused by these problems, an approach is proposed to promote the traceability and synchronization of the computational models of an AE. The proposed approach consists of: (i) a set of meta-models, representing the strategic, tactical and operational levels of the EA; (ii) a traceability model that supports configuration and change management through the use of COBIT and ITIL best practices; and (iii) a synchronization framework that uses the model-driven development (MDD) techniques.
    The purpose of the proposal is to keep the computational models traceable and updated, allowing: (i) support for visualization and understanding of how a set of models and their elements are related; (ii) support for impact analysis and decision making in change scenarios; (iii) to necessary support to avoid the obsolescence of the models; and (iv) the creation and maintenance of the strategic alignment of the business with IT.
    To evaluate the work, a survey was carried out, in the corporate context of the public and private sphere, which obtained 51 valid responses. The research was not limited to professionals in the area of information technology, but also involved professionals from strategic and administrative areas. The survey results showed that the proposed approach is understandable, useful and contributes to keeping the models traceable, up-to-date and consistent, as well as enabling the performance of impact analyzes and the strategic alignment of the business with IT.

7
  • ANA MARIA PARANHOS DE AMORIM
  • A process model to support the development of crowdsourcing projects to motivate the participation of older adults

  • Orientador : VANINHA VIEIRA DOS SANTOS
  • MEMBROS DA BANCA :
  • VANINHA VIEIRA DOS SANTOS
  • RITA SUZANA PITANGUEIRA MACIEL
  • ADRIANA SANTAROSA VIVACQUA
  • LUCIANA CARDOSO DE CASTRO SALGADO
  • LETÍCIA DOS SANTOS MACHADO
  • Data: 13/10/2022

  • Mostrar Resumo
  • Crowdsourcing é um novo conceito associado à resolução de problemas onde a multidão é o seu elemento principal. Saber o que leva esse público a se engajar em projetos de crowdsourcing é um desafio, assim como construir projetos que atraiam esse público. Nossos estudos se concentraram em dois aspectos. Primeiro, na investigação do planejamento e desenvolvimento de projetos de crowdsourcing, e segundo na identificação dos fatores que levam as pessoas a colaborar com esses projetos. O crowdsourcing tem uma estrutura dinâmica onde o conhecimento, a resolução de problemas e, às vezes, a tomada de decisões podem ser atribuídos a membros desconhecidos da multidão. Essas características únicas do crowdsourcing devem ser consideradas em seu processo de construção. Nesta tese, nosso objetivo é investigar sistemas de crowdsourcing sob duas perspectivas. Do ponto de vista do desenvolvedor, investigamos a construção do crowdsourcing. E da perspectiva do usuário, investigamos os fatores que motivam os usuários a colaborar nesses projetos. Para atingir esse objetivo, realizamos diversos estudos, utilizando um método de pesquisa qualitativa exploratória. A investigação do processo de construção e a investigação da motivação dos usuários seguiram os mesmos procedimentos: (i) estudos selecionados por meio de revisão de literatura e (ii) entrevistas semi-estruturadas com desenvolvedores e usuários. Como a população de idosos está em constante crescimento e é pouco estudada no campo tecnológico, nosso estudo de motivação teve como foco esse público. Realizamos entrevistas com 46 idosos com mais de 60 anos. A análise das entrevistas sugere que os idosos são motivados por tarefas dinâmicas, que estimulam sua curiosidade, aumentam seus conhecimentos e habilidades, tarefas que os ajudam a cuidar de sua saúde física e mental e, principalmente, por tarefas relacionadas a causas altruístas. Com os resultados dos estudos, propusemos um modelo de processo para construção de crowdsourcing e um modelo de motivação voltado para idosos, ambos para serem usados como guia por gestores e desenvolvedores de software.


  • Mostrar Abstract
  • Crowdsourcing is a new concept associated with problem-solving where the crowd is its main element. Knowing what drives this audience to engage in crowdsourcing projects is a challenge, as is building projects that attract this audience. Our studies focused on two aspects. First, in the investigation of the planning and development of crowdsourcing projects, and second in the identification of the factors that lead people to collaborate with these projects. Crowdsourcing has a dynamic structure where knowledge, problem- solving, and sometimes decision-making can be attributed to unknown members of the crowd. These unique characteristics of crowdsourcing must be considered in its building process. In this thesis, our goal is to investigate crowdsourcing systems from two perspec- tives. From the developer’s perspective, we investigated the construction of crowdsourc- ing. And from the user’s perspective, we investigated the factors that motivate users to collaborate on these projects. To achieve this goal, we carried out several studies, using an exploratory qualitative research method. The investigation of the construction process and the investigation of the users’ motivation followed the same procedures: (i) studies selected by literature review, and (ii) semi-structured interviews with developers and users. As the older adults’ population is constantly growing and is little studied in tech- nological field, our motivation study focused on this public. We conducted interviews with 46 older adults over 60 years of age. The interviews’ analysis suggest that older adults are motivated by dynamic tasks, which stimulate their curiosity, increase their knowledge and skills, tasks that help them to care for their physical and mental health and, mainly, by tasks related to altruistic causes. With the results of the studies, we proposed a process model for the construction of crowdsourcing and a motivation model aimed at older adults, both to be used as a guide by managers and software developers.

8
  • Simone da Silva Amorim
  • Saúde Arquitetural de Ecossistemas de Software: Um Framework de Avaliação baseado em Práticas

  • Orientador : CHRISTINA VON FLACH GARCIA CHAVEZ
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • MANOEL GOMES DE MENDONCA NETO
  • RITA SUZANA PITANGUEIRA MACIEL
  • IGOR FABIO STEINMACHER
  • ROSANA TERESINHA VACCARE BRAGA
  • Data: 29/11/2022

  • Mostrar Resumo
  • Os ecossistemas de software surgiram como um importante ambiente tecnológico no qual uma plataforma de software compartilhada e seus aplicativos são desenvolvidos e mantidos por uma comunidade. Esta comunidade é composta por membros internos e externos que trabalham para satisfazer as suas necessidades. Há vários casos de sucesso de ecossistemas de software, por exemplo, Apple, Facebook, Android, KDE e Hadoop, que têm evoluído continuamente. Tais ecossistemas encontraram um meio eficaz de desenvolver produtos com divisão de custos, qualidade e inovação superior aos de ambientes tradicionais de engenharia de software.

    Os ecossistemas de software têm chamado a atenção de pesquisadores para estudar como eles são formados e desenvolvidos, e porque sobrevivem por muito tempo. Alguns estudos investigam o conceito de “Saúde”, denotando a capacidade de evoluir e ter sucesso ao longo do tempo. Indicadores de saúde foram definidos para obter retratos de um ecossistema e monitorar o seu funcionamento. 

    Há uma série de métricas propostas para conhecer o real estado de saúde de um ecossistema. Os estudos existentes concentram-se na definição e medição de indicadores de saúde associados a diferentes perspectivas, a saber, arquitetura, comunidade e negócios. Em relação à perspectiva da arquitetura de software, não encontramos estudos sobre a interseção entre arquitetura de software e saúde de ecossistemas. 

    A arquitetura de software desempenha um papel crucial na operação dos ecossistemas. Sua importância tem sido afirmada por diversos autores, que estudaram diferentes aspectos como atributos de qualidade, variabilidade e desafios de projeto. No entanto, as influências da arquitetura de software na saúde dos ecossistemas foram pouco exploradas até agora. Nossa proposta introduz o conceito de Saúde Arquitetural de Ecossistemas de Software que engloba as partes da saúde do ecossistema influenciadas por sua arquitetura.

    Com o objetivo de avaliar a saúde arquitetural de ecossistemas de software, propomos o framework HEVAL/SA (Avaliação de Saúde de Ecossistemas de Software com base na Arquitetura de Software. HEVAL/SA foi definido considerando as práticas arquiteturais adotadas que influenciam os indicadores de saúde em um ecossistema de software. A avaliação dessas práticas indicará um estado de saúde do ecossistema. 

    Além disso, avaliamos a estrutura HEVAL/SA por meio de estudos de caso em ecossistemas de software de código aberto relevantes. Os resultados trazidos pelo HEVAL/SA podem ajudar a identificar pontos fortes e fracos de as práticas arquitetônicas adotadas por eles. Também ajudará a avaliar o "peso" da arquitetura de software na saúde do ecossistema.


  • Mostrar Abstract
  • Software ecosystems have emerged as an important technological environment where a common software platform and its applications are developed and maintained by a community. This community is composed of internal and external members working to satisfy their needs. Many ecosystems have evolved for years and achieve success as Apple, Facebook, Android, KDE, Hadoop, and others. They have achieved an effective way of developing products with greater sharing of costs, quality, and innovation when compared to traditional software engineering environments.

    Software ecosystems have called the attention of the researchers to study how they were formed, developed, and survived for a long time. Many studies have been directed to investigate the concept of "Health'' which represents its ability to evolve and succeed over time. Health indicators were defined to obtain a picture of an ecosystem and to know how they are working. There is also a set of metrics proposed to know the real state of the health of a software ecosystem. Existing studies focus on the definition and measurement of health indicators without addressing other perspectives for studying the health of ecosystems.

    Regarding the perspective of software architecture, we did not find studies on the intersection between software architecture and ecosystem health. Software architecture plays a crucial role in the operation of ecosystems. Several authors highlight its importance in different aspects such as attributes of quality, variability, and design challenges. However, the influences of software architecture on the health of ecosystems have not been explored by now. Our proposal introduces the concept of Architectural Health of Software Ecosystems which covers parts of ecosystem health influenced by architectural issues.

    Thus, to assess the architectural health of software ecosystems, in this work, we propose the framework HEVAL/SA, defined considering the architectural practices adopted those influence health indicators in a software ecosystem. The evaluation of these practices will indicate a state for the health of the ecosystem. In addition, we validate HEVAL/SA through case studies in real-world open source software ecosystems. The results of HEVAL/SA can help to identify the strengths and weaknesses of the architectural practices adopted by them. The framework will also help to assess the "weight" of the software architecture on the health of ecosystems.

9
  • Jaziel Souza Lobo
  • UAware Alert: Uma Plataforma Sensível ao Contexto para Alertas Antecipados Acessíveis.

  • Orientador : VANINHA VIEIRA DOS SANTOS
  • MEMBROS DA BANCA :
  • VANINHA VIEIRA DOS SANTOS
  • MANOEL GOMES DE MENDONCA NETO
  • MARCOS ROBERTO DA SILVA BORGES
  • CLAUDIA LAGE REBELLO DA MOTTA
  • SORAIA SILVA PRIETCH
  • Data: 06/12/2022

  • Mostrar Resumo
  • Contextualização: Desastres naturais levam a danos e perdas de vidas ao redor do mundo. Sistemas de Alerta Antecipado, ou simplesmente EWS da sigla em inglês Early Warning Systems, são sistemas que geram alertas, de forma antecipada, para avisar a população sobre estes eventos. Instituições de predição enviam as informações de eventos que podem ocasionar desastres em um padrão de arquivo conhecido como CAP. De forma geral, um EWS recebe um arquivo CAP, extrai seus dados e enviam avisos para a população. A maioria dos EWS não levam em consideração as necessidades específicas de grupos vulneráveis e enviam o mesmo alerta para todas as pessoas, quer ela seja, por exemplo, um deficiente visual ou auditivo, ou que estejam em uma área com maior risco para o evento em questão. Objetivo: Diante da contextualização, o objetivo deste estudo é propor um EWS para alertar pessoas, de grupos vulneráveis ou não, que estejam em áreas de risco. Método: Esta pesquisa foi realizada através de uma abordagem de combinação dos seguintes métodos: Mapeamento Sistemático da Literatura (MSL), Estudos Exploratórios e Estudos Empíricos. O MSL fundamentou as questões de pesquisa. Os estudos exploratórios, através de entrevistas semiestruturadas, serviram para se alcançar uma maior familiaridade com o problema da pesquisa. A partir destes estudos, foi proposto um modelo de contexto, regras comportamentais e um processo automatizado para elaboração de uma biblioteca de recursos acessíveis, de forma a possibilitar o desenvolvimento de um EWS que envia alerta para diferentes grupos de usuários. Por fim, a avaliação foi realizada por duas perspectivas: (i) avaliar se os alertas são entregues aos destinatários esperados e com a personalização prevista; (ii) avaliar o modelo de contexto e as regras comportamentais. Para a avaliação (i) foi utilizada uma abordagem empírica através de técnicas quantitativas. Já para a avaliação (ii), foi realizado um survey com especialistas da Defesa Civil. Resultados: Este estudo apresenta uma arquitetura e um modelo de contexto com regras contextuais para um EWS que considera pessoas de grupos vulneráveis (ex: surdos, cegos). Por fim, apresenta um protótipo implementado e funcional, o UAware Alert, com uma interface de gerenciamento de envio de alertas e uma aplicação móvel para o recebimento do alerta de forma acessível. Conclusão: EWS utilizam mensagens CAP e a localização da pessoa para enviar alertas. Mas para avisar pessoas com diferentes necessidades, é preciso também considerar o perfil da pessoa que está recebendo o alerta e do local onde ela se encontra. Assim, o modelo de contexto, regras comportamentais e o processo de geração de mídias deste estudo possibilita o desenvolvimento de um EWS, que envia instruções focadas na região onde a pessoa se encontra, quer seja em texto ou em formatos acessíveis à necessidade de cada usuário.


  • Mostrar Abstract
  • Contextualization: Natural disasters lead to damage and loss of life around the world. Early Warning Systems (EWS) are systems that send alerts, in advance, to warn the population about these events. Prediction institutions send information about events that can cause disasters in a standard file format known as CAP. In general, an EWS receives a CAP file, extracts its data, and sends warnings to the population. Most EWS does not consider the specific needs of vulnerable groups, and send the same alert to everyone, whether they are, e.g., visually or hearing impaired people, or are in an area with a higher level of risk for the event. Objective: Given the context, the aim of this study is to purpose an EWS to warn people (vulnerable groups or not) who are in risk areas. Method: This research was carried out through a combination approach of the following methods: Systematic Mapping Study, exploratory studies, and empirical studies. Exploratory studies, through semi-structured interviews, served to achieve more familiarity with the research problem. Based on these studies, a context model, behavioral rules, and an automated process for creating an accessible resources library were proposed, in order to enable the development of an EWS that sends alerts to different groups of users. Finally, the evaluation was carried out from two perspectives: (i) evaluating whether the alerts are delivered to the expected recipients and with the expected personalization; (ii) evaluating the context model and behavioral rules. For evaluation (i) an empirical approach was used through quantitative techniques. For evaluation (ii), a survey was conducted with Civil Defense experts from the states of Brazil. Results: This study presents an architecture and a context model with contextual rules for an EWS that considers people from vulnerable groups (for example deaf or blind people). Finally, it presents an implemented and functional prototype, the UAware Alert, with a management interface for sending alerts and a mobile app for receiving the warning in an accessible way. Conclusion: EWS uses CAP messages and the person’s location to send alerts. But to alert people who have different needs, it is also necessary to consider the profile of the person who will receive the alert and their location. Thus, the context model, behavioral rules, and media generation process of this study enables the development of an EWS, which sends instructions focused on the region where the person is located, either in text or in formats accessible to the needs of each user.

10
  • DANIEL DOMINGOS ALVES
  • Design de Interação em Desenvolvimento Distribuído de Software: práticas, desafios, recomendações e lacunas de pesquisa

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • FREDERICK MARINUS CONSTANT VAN AMSTEL
  • IVALDIR HONORIO DE FARIAS JUNIOR
  • ARTUR HENRIQUE KRONBAUER
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • ECIVALDO DE SOUZA MATOS
  • Data: 15/12/2022

  • Mostrar Resumo
  • Interação Humano-Computador (IHC) é uma área multidisciplinar focada no design de tecnologias computacionais, bem como na interação entre humanos e computadores. Na IHC, o design de interação tem se consolidado como uma prática com potencial de apoiar projetos de sistemas interativos. Por outro lado, cada vez mais organizações estão desenvolvendo (concebendo, projetando, construindo, testando) software com equipes distribuídas geograficamente. No entanto, o design de interação em desenvolvimento distribuído de software (DDS) tem sido pouco explorado, mapeado ou estruturado na literatura científica. Embora na literatura científica exista relatos sobre design de interação em DDS e algumas soluções propostas, não está claro como ocorre o design de interação em projetos de DDS. O avanço em DDS, aumento no número de projetos e usuários de free/libre open source software (FLOSS), problemas relacionados à interação humano-computador e desafios de design de interação em DDS motivaram a condução desta pesquisa. Nesse sentido, esta pesquisa investigou como ocorre o design de interação em projetos de DDS, buscando compreender suas práticas, desafios e limitações. A metodologia desta pesquisa apoia-se na metodêutica proposta por Charles S. Peirce e é orientada nos métodos de pesquisa bibliográfica e pesquisa de métodos mistos para investigar o estado do conhecimento sobre o tema desta pesquisa e propiciar a fundamentação e embasamento teórico para a concepção de recomendações para o design de interação em DDS. Esta pesquisa contribui para o corpo de conhecimento de design de interação na fronteira de pesquisa entre IHC e DDS e tem potencial contribuição científica ao (i) fornecer uma visão geral da prática do design de interação em projetos de DDS, (ii) apresentar como ocorre o design de interação em projetos de DDS; (iii) identificar gaps de pesquisa e discutir futuras direções de pesquisa; (iv) conceber um conjunto de recomendações para o design de interação em DDS; e (v) apoiar o envolvimento de usuários finais na construção de artefatos de sistemas interativos em projetos de DDS.


  • Mostrar Abstract
  • Human-Computer Interaction (HCI) is an area focused on studies on human interaction with/through computational systems, among which stand out tangent studies on interaction design. In HCI, interaction design has been consolidated as a practice with the potential to support interactive systems projects. On the other hand, more and more organizations are developing (conceiving, designing, building, testing) software with geographically distributed teams. However, interaction design in distributed software development (DSD) has been little explored, mapped, or structured in the scientific literature. Although there are reports in the scientific literature about interaction design in DSD and some proposed solutions, it is unclear how interaction design occurs in DSD projects. This research, therefore, was motivated by the advancement of projects in DSD, the increase in the number of projects and users of free/libre open source software (FLOSS), problems related to human-computer interaction, and interaction design challenges in DSD. In this sense, this research investigated how interaction design has been practiced in DSD projects, seeking to understand its characteristics, challenges, and limitations. The methodology of this research was based on Charles S. Peirce’s semiotic methodeutics, bibliographic research method (ad-hoc literature review and systematic mapping study), and mixed methods research (survey and interview study) to investigate the current state of knowledge and practice on interaction design in DSD, in addition to providing a theoretical foundation for the conception of recommendations for the interaction design in DSD. We hope that the results pointed out by this research contribute to the body of knowledge about interaction design at the research frontier between HCI and DSD by (i) providing an overview of research efforts on interaction design in DSD, (ii) providing an overview of the practice of interaction design in DSD projects, (iii) presenting how interaction design occurs in DSD projects, (iv) identify research gaps and discuss future research directions, (v) conceiving a set of recommendations for interaction design in DSD, and (vi) supporting the involvement of end users in the construction of interactive systems artifacts in DSD projects.

2021
Dissertações
1
  • MOARA SOUSA BRITO LESSA
  • Seleção de Projetos de Código Aberto para Educação em Engenharia de Software

  • Orientador : CHRISTINA VON FLACH GARCIA CHAVEZ
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • IGOR FABIO STEINMACHER
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 05/02/2021

  • Mostrar Resumo
  • Contexto: O ensino-aprendizagem de Engenharia de Software (ES) em uma ou mais disciplinas, no contexto de cursos de graduação em Computação e áreas afins, tem-se mostrado desafiador. Na formação do estudante, deve-se prover uma base teórica sólida sobre conceitos básicos (requisitos, projeto, testes, dentre outros) e trabalhar tópicos relacionados a gerência de projetos, interação humano-computador, gerência de configuração e de lançamentos. Experiência prática, habilidades de comunicação e profissionalismo são dimensões que também devem ser consideradas, incluindo trabalho em equipe e ética, para preparar os estudantes para a carreira na indústria de software.

    Projetos de software livre/código aberto (free/libre open source software ou FLOSS) têm sido usados na Educação em Engenharia de Software (EES) como estratégia viável para trabalhar habilidades técnicas e não-técnicas na formação de estudantes preparados para atuar na indústria de software. Na literatura, estudos relatam que o uso pedagógico de projetos FLOSS trouxe benefícios para o ensino-aprendizagem de ES mas também desafios que podem comprometer a sua adoção efetiva no contexto educacional.Uma dificuldade comum está relacionada ao processo de seleção de projetos, tanto pela diversidade de projetos FLOSS disponíveis, como pela complexidade da tarefa. Em geral, o professor deve buscar manualmente, ou com apoio de diferentes ferramentas (não necessariamente projetadas para uso na Educação), um ou mais projetos para uso pedagógico na disciplina. Vários critérios podem ser considerados para a seleção de um projeto FLOSS para uso na EES, dentre eles, tamanho do projeto, quantidade de testes, linguagem de programação, tamanho da comunidade e práticas utilizadas.

    Problema: O processo de seleção de um projeto FLOSS para uso pedagógico exige tempo e experiência do professor, e ainda há poucas ferramentas para apoiar tal seleção com base em critérios reconhecidos e/ou definidos pelo professor. Dessa forma, o ônus da seleção de projetos FLOSS pode atrapalhar a sua utilização no contexto da EES.

    Objetivo: Esta pesquisa teve como objetivo investigar a utilidade de uma abordagem automatizada para apoiar o professor na seleção de projetos de código aberto guiada por critérios baseados em aspectos sócio-técnicos do projeto, para uso pedagógico em disciplinas de ES.

    Métodos de Pesquisa: Uma revisão da literatura foi realizada para  identificar tipos de critérios já utilizados para a seleção de projetos FLOSS. Em seguida, um conjunto de critérios de seleção foi definido, documentado, operacionalizado e implementado na ferramenta de código aberto FlossSearch.Edu. A primeira versão da ferramenta foi avaliada por estudantes e por professores de diferentes instituições brasileiras de ensino superior. Inicialmente, estudantes usaram FlossSearch.Edu, no contexto de uma disciplina de ES, para selecionar projetos FLOSS com base em critérios definidos pelo professor e, em seguida, avaliaram o uso da ferramenta por meio de um levantamento com perguntas do Modelo de Aceitação de Tecnologia (TAM).
    Em um estudo de natureza qualitativa e quantitativa, professores familiarizados com o uso pedagógico de projetos FLOSS, utilizaram FlossSearch.Edu em sessão individual, gravada e guiada por cenários pré-definidos, enquanto relatavam suas impressões em voz alta (protocolo ``Think Aloud"). Ao final das sessões, os professores avaliaram o uso da ferramenta por meio de um questionário TAM.

    Resultados: No contexto de seleção de projetos FLOSS em que FlossSearch.Edu foi utilizada, a ferramenta foi bem avaliada. Em sua maioria, estudantes que usaram FlossSearch.Edu em sala de aula e professores que participaram da segunda avaliação, afirmaram que a ferramenta é útil, fácil de usar e que pretendem usá-la no futuro. Diversas sugestões para melhoria foram recebidas e deverão guiar a evolução da ferramenta e novos estudos.


  • Mostrar Abstract
  • Context: Teaching Software Engineering (SE) in higher education is a challenging task. A solid theoretical base should be provided to students, including basic SE concepts (requirements, design, tests, among others), and topics related to project management, human-computer interaction, configuration and release management. Practical experience, communication skills and professionalism are dimensions that should also be considered, including teamwork and ethics, to prepare students for a career in the software industry.

    Free/open source software (FLOSS) has been used in Software Engineering Education (SEE) as a viable strategy to address the need for training students' technical and non-technical skills and prepare them to deal with the challenges posed by the evolving software industry.
    Some studies report that the pedagogical use of FLOSS projects has brought benefits but also challenges that may hinder their effective adoption in SEE.

    A common challenge is project selection, due to the diversity of available FLOSS projects and the complexity of the task. In general, the teacher must search for, manually or with the support of different tools (not necessarily designed for use in Education), one or more projects for pedagogical use in the course. Several criteria can be considered for the selection of a FLOSS project for pedagogical use in SEE, including project size, number of tests, programming language, community size and their best practices.

    Problem: The selection of FLOSS projects for pedagogical use in SEE requires effort and experience, and there are few tools that support such complex task while providing clear and well-defined selection criteria to be used by the teacher. Thus, the burden of selecting FLOSS projects can hinder their use and adoption in the context of SEE.

    Objective: This research aimed to investigate the usefulness of an automated approach to support the teacher in the selection of open source projects guided by criteria that take into account socio-technical aspects of the FLOSS project, for pedagogical use in SEE higher education.

    Reasearch Methods: A literature review was carried out to identify criteria already in use for the selection of FLOSS projects. Then, a set of selection criteria was identified, documented, operationalized and implemented in an open source tool called FlossSearch.Edu. The first version of the tool was evaluated by students and professors from different Brazilian higher education institutions. Initially, students used FlossSearch.Edu, in the context of a SE discipline, to select FLOSS projects based on criteria defined by the teacher, and then evaluated the use of the tool through a survey with questions based on the Technology Acceptance Model (TAM). In a qualitative and quantitative study, teachers already familiar with the pedagogical use of FLOSS projects, used FlossSearch.Edu in an individual session, recorded and guided by predefined scenarios, while reporting their impressions out loud (``Think Aloud''protocol). At the end of the sessions, teachers evaluated the use of the tool using a TAM questionnaire.

    Findings: In the context of selecting FLOSS projects in which FlossSearch.Edu was used, the tool was well evaluated. The majority of students who used FlossSearch.Edu in the classroom and teachers who participated in the second assessment said that the tool is useful, easy to use and that they intend to use it in the future. Several suggestions for improvement were received and should guide the evolution of the tool and further studies.

2
  • VITOR MORAES ARANHA
  • Propagação de Virtual Point Lights em Espaço de Tela para Iluminação Global em Tempo Real

  • Orientador : ANTONIO LOPES APOLINARIO JUNIOR
  • MEMBROS DA BANCA :
  • ANTONIO LOPES APOLINARIO JUNIOR
  • KARL PHILIPS APAZA AGUERO
  • RICARDO GUERRA MARROQUIM
  • Data: 01/03/2021

  • Mostrar Resumo
  • Simular o transporte da luz adiciona realismo e efeitos estéticos em cenas virtuais tridimensionais. Contudo, o custo computacional destas complexas interações entre luz e ambiente é proibitivo para aplicações em tempo real. A iluminação difusa indireta ́e um componente de baixa frequência da iluminação global capaz de melhorar consideravelmente a qualidade de uma imagem. Pontos de luz virtuais são comumente usados para reprodução de rebatimentos difusos da luz, traçando caminhos pela cena e criando fontes de luz nos vértices das interseções entre raios de luz e a geometria. Neste trabalho, estendemos técnicas de clusterização baseadas em pontos de luz virtuais de modo a permitir mais rebatimentos de luz em tempo real. Mostramos que imagens plaus ́ıveis podem ser obtidas rapidamente, mesmo para GPUs de baixo custo.


  • Mostrar Abstract
  • Proper light-transport simulation adds both realism and aesthetically pleasing effects to virtual 3D scenes. However, the cost of computing complex light interactions is prohibitive for real-time applications. Indirect diffuse lighting is a low frequency component of global illumination that can greatly enhance the quality of an image. Virtual point lights are commonly used to reproduce diffuse bounces by tracing light paths through the scene and creating proxy light sources at the intersections between a path and geometry. In this work we extend clusterization-based methods for Virtual Point Lights, allowing for the reproduction of up to two bounces of light with a projection-aware sampling method in real-time. We show that plausible images can be obtained in real-time rates for low-to-mid end commodity GPUs.

3
  • FRANKLIN DE JESUS SILVA
  • Highly-configurable systems in software startups: unveiling the white label model.

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • RITA SUZANA PITANGUEIRA MACIEL
  • ADRIANO BESSA ALBUQUERQUE
  • Data: 25/03/2021

  • Mostrar Resumo
  • Startups são pequenas empresas que buscam explorar novos negócios incorporando novas tecnologias a diferentes mercados por meio da inovação. Os ecossistemas de startups existem para fornecer um ambiente de suporte para essas empresas, sendo uma fonte valiosa de networking e conhecimento para elas. Projetos de software white label são desenvolvidos por Startups e conhecidos nos Ecossistemas como produtos altamente adaptáveis, capazes de gerar novos produtos com mais rapidez do que aplicativos autônomos, garantindo o melhor custo x benefício. As startups são divididas em estágios e enfrentam desafios diferentes dependendo do estágio atual. Nos estágios iniciais, eles mal planejam suas atividades de desenvolvimento, mas avaliam as necessidades do mercado e encontram usuários para seu produto inicial, o que deixa uma dívida técnica. Os projetos de software White Label sofrem mais com esses problemas, pois os Startups não abordam técnicas avançadas de reutilização de código amplamente conhecidas pela academia. Nos estágios finais, as startups precisam resolver a dívida técnica gerenciada nos estágios iniciais e precisam de processos ainda mais escaláveis para expandir seus negócios que envolvem projetos de software White Label. Este trabalho busca desvelar o conceito de projetos de software White Label e sua viabilidade para startups de software; investigar se e como técnicas avançadas de reutilização de código, como sistemas altamente configuráveis, podem ser usadas como alavanca de oportunidade para startups de software; construir uma estrutura adaptável para ajudar os projetos de software White Label a gerenciar dívidas técnicas e enfrentar seus desafios. Para cumprir os objetivos mencionados, aplicamos três estudos empíricos sob diferentes públicos. Uma entrevista semiestruturada com startups usando projetos de software White Label, um questionário online aplicado para stakeholders de ecossistemas de inovação e uma Multivocal Literature Review com artigos de literatura cinzenta na Internet sobre projetos de software White Label. Os resultados obtidos apresentaram um retrato convincente de como as startups de software têm lidado com a reutilização de software em suas práticas diárias, com particular atenção em como o desenvolvimento de software White Label tem sido explorado em seus projetos. Os dados coletados permitiram a criação do framework acima para projetos de software Mobile White Label. Além disso, este trabalho apresenta um caminho de melhoria que pode ser aplicado para startups que trabalham com projetos de software White Label em diferentes estágios, além de oferecer aos pesquisadores um conjunto de desafios abertos a serem estudados em trabalhos futuros.


  • Mostrar Abstract
  • Startups are small companies that seek to explore new businesses by embodying new technologies to different markets through innovation. Startups' Ecosystems exist to provide a supportive environment for these companies, being a valuable source of networking and knowledge to them. White label software projects are developed by Startups and known in Ecosystems as highly adaptable products, capable of generating new products faster than stand-alone applications, ensuring the best cost x benefit. Startups are divided into stages, and they face different challenges depending on the current stage. In the early stages, they barely plan their development activities but rather assess the market's needs and find users for their initial product, which leaves technical debt. White Label software projects suffer more from these issues since Startups do not address advanced code reuse techniques widely known by the academy. In the late stages, startups need to solve the technical debt managed in the early stages and need even more scalable processes to grow their business that involves White Label Software projects. This work seeks to unveil the concept of White Label software projects and their feasibility for software startups; investigate if and how advanced code reuse techniques, such as highly-configurable systems, could be used as opportunity-lever for software startups; build an adaptable framework for helping White Label software projects manage technical debt and face its challenges. In order to accomplish the aforementioned goals, we applied three empirical studies under different public. A semi-structured interview with startups using White Label software projects, an online questionnaire applied for stakeholders from ecosystems of innovation, and a Multivocal Literature Review with gray literature articles over the internet about White Label software projects. The yielded results presented a compelling portrait of how software startups have dealt with software reuse in their daily practices, with particular attention on how White Label software development has been explored in their projects. The data gathered allowed the creation of the framework above for mobile White Label software projects. In addition, this work gives a path of improvement that can be applied for startups working with White Label software projects under different stages, besides giving researchers a set of open challenges to be studied in future work.

4
  • Luciane de Andrade Meconi
  • BOA – BusinessProcess Oriented Architecture: Uma Proposta para Publicação, Busca/Descoberta e Composição de Processos de Negócio em SoS

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • FLAVIO OQUENDO
  • LAIS DO NASCIMENTO SALVADOR
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 21/06/2021

  • Mostrar Resumo
  • Os sistemas de software têm apresentado um crescimento exponencial, tornando-se cada vez maiores e complexos. Os sistemas complexos são sistemas caracterizados pela ausência de autoridade central, não são projetados a partir de uma especificação conhecida, mas envolvem diferentes partes interessadas em criar sistemas funcionais para novas finalidades. Apresentam também uma variedade de comportamentos, incluindo a auto-organização, propriedades emergentes, comportamento não-linear e, com frequência, contraintuitivos. Um sistema complexo com independência gerencial e operacional dos componentes é considerado um Sistema de Sistemas (SoS), não importando a complexidade individual dos seus subsistemas. O SoS é uma nova classe de sistemas, resultante, muitas vezes, da interação de vários sistemas, independente da operação. Um estilo arquitetônico padrão amplamente aplicado aos SoS é a SOA (Arquitetura Orientada a Serviço). Apesar de SOA ser vista como uma solução promissora para viabilizar a organização e utilização das funções distribuídas sob o domínio de diferentes proprietários de SoS, os recursos de software são acondicionados como serviços. A granularidade fina dos serviços pode dificultar a composição de um SoS, tendo em vista a grande quantidade de relacionamentos e conexões necessárias entre os sistemas constituintes para que componham serviços para prover suas funcionalidades. Essa dificuldade é ainda maior em SoS colaborativo, uma vez que a entrada e saída dos sistemas constituintes ocorre de maneira dinâmica. A elevação do nível de serviços para processos já vem sendo utilizada para diminuir a complexidade no gerenciamento de sistemas, processos e pessoas de uma mesma organização. As arquiteturas de referência no contexto SoS visam apoiar a padronização de interfaces dos sistemas constituintes, auxiliando às empresas no desenho de seus sistemas e, consequentemente, viabilizando a interoperabilidade entre estes sistemas. Algumas ferramentas conhecidas no mercado como BPMS, de domínio público ou privado, são utilizadas para apoiar o gerenciamento de processos sob a ótica do BPM, porém estas ferramentas não se mostram adaptadas ao domínio SoS, sendo desenvolvidas para atender às necessidades internas das organizações. Esta dissertação apresenta uma abordagem arquitetural orientada a processos de negócio, voltada para o domínio de Sistema de Sistemas, denominada BOA (Business Process Oriented Architecture). O objetivo foi propor, especificar, implementar e avaliar aspectos de  uma Arquitetura Orientada a Processos de Negócio, específica para publicação, descoberta/busca e composição de processos de negócio. A BOA é composta por uma definição de uma linguagem de descrição de processos de negócio (BPDL) e pela implementação de uma ferramenta de publicação, busca/descoberta e composição de processo de negócio, denominada neste trabalho como Plataforma BOA Suite. Para avaliação da nossa proposta foi realizado um estudo exploratório, com abordagem qualitativa, utilizando como ferramenta a entrevista. Os resultados deste estudo evidenciaram que os participantes, a partir de cenários de avaliação e da interação com a BOA Suite, conseguiram realizar a publicação, busca/descoberta e composição de processos de negócio, evidenciando, assim, a viabilidade da proposta. Como contribuição, espera-se diminuir o nível de complexidade da composição por processos de negócio e auxiliar no gerenciamento da integração dos sistemas participantes de um SoS. 


  • Mostrar Abstract
  • Os sistemas de software têm apresentado um crescimento exponencial, tornando-se cada vez maiores e complexos. Os sistemas complexos são sistemas caracterizados pela ausência de autoridade central, não são projetados a partir de uma especificação conhecida, mas envolvem diferentes partes interessadas em criar sistemas funcionais para novas finalidades. Apresentam também uma variedade de comportamentos, incluindo a auto-organização, propriedades emergentes, comportamento não-linear e, com frequência, contraintuitivos. Um sistema complexo com independência gerencial e operacional dos componentes é considerado um Sistema de Sistemas (SoS), não importando a complexidade individual dos seus subsistemas. O SoS é uma nova classe de sistemas, resultante, muitas vezes, da interação de vários sistemas, independente da operação. Um estilo arquitetônico padrão amplamente aplicado aos SoS é a SOA (Arquitetura Orientada a Serviço). Apesar de SOA ser vista como uma solução promissora para viabilizar a organização e utilização das funções distribuídas sob o domínio de diferentes proprietários de SoS, os recursos de software são acondicionados como serviços. A granularidade fina dos serviços pode dificultar a composição de um SoS, tendo em vista a grande quantidade de relacionamentos e conexões necessárias entre os sistemas constituintes para que componham serviços para prover suas funcionalidades. Essa dificuldade é ainda maior em SoS colaborativo, uma vez que a entrada e saída dos sistemas constituintes ocorre de maneira dinâmica. A elevação do nível de serviços para processos já vem sendo utilizada para diminuir a complexidade no gerenciamento de sistemas, processos e pessoas de uma mesma organização. As arquiteturas de referência no contexto SoS visam apoiar a padronização de interfaces dos sistemas constituintes, auxiliando às empresas no desenho de seus sistemas e, consequentemente, viabilizando a interoperabilidade entre estes sistemas. Algumas ferramentas conhecidas no mercado como BPMS, de domínio público ou privado, são utilizadas para apoiar o gerenciamento de processos sob a ótica do BPM, porém estas ferramentas não se mostram adaptadas ao domínio SoS, sendo desenvolvidas para atender às necessidades internas das organizações. Esta dissertação apresenta uma abordagem arquitetural orientada a processos de negócio, voltada para o domínio de Sistema de Sistemas, denominada BOA (Business Process Oriented Architecture). O objetivo foi propor, especificar, implementar e avaliar aspectos de  uma Arquitetura Orientada a Processos de Negócio, específica para publicação, descoberta/busca e composição de processos de negócio. A BOA é composta por uma definição de uma linguagem de descrição de processos de negócio (BPDL) e pela implementação de uma ferramenta de publicação, busca/descoberta e composição de processo de negócio, denominada neste trabalho como Plataforma BOA Suite. Para avaliação da nossa proposta foi realizado um estudo exploratório, com abordagem qualitativa, utilizando como ferramenta a entrevista. Os resultados deste estudo evidenciaram que os participantes, a partir de cenários de avaliação e da interação com a BOA Suite, conseguiram realizar a publicação, busca/descoberta e composição de processos de negócio, evidenciando, assim, a viabilidade da proposta. Como contribuição, espera-se diminuir o nível de complexidade da composição por processos de negócio e auxiliar no gerenciamento da integração dos sistemas participantes de um SoS. 

5
  • DIEGO CORREA DA SILVA
  • Explorando Calibragem Ponderada, Balanceamentos e Métricas para Justiça em Sistemas de Recomendação

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • TATIANE NOGUEIRA RIOS
  • LEANDRO BALBY MARINHO
  • Data: 01/07/2021

  • Mostrar Resumo
  • Sistemas de recomendação são ferramentas utilizadas para sugerir itens que possivelmente sejam de interesse dos usuários. Estes sistemas baseiam-se no histórico de preferências do usuário para gerar uma lista de sugestões que possuam maior similaridade com os itens do histórico do usuário, visando uma melhor precisão e um menor erro. É esperado que ao recomendar um item, o usuário dê um retorno ao sistema, indicando se gostou ou o quanto gostou do item recomendado. A interação do usuário com o sistema possibilita um melhor entendimento dos gostos dos usuários, que com o tempo, adiciona mais e mais itens a seu perfil de preferências. A recomendação baseada em similaridade do item com as preferências, buscando a melhor precisão pode causar efeitos colaterais na lista como: superespecialização das recomendações em um determinado núcleo de itens, pouca diversidade de categorias e desbalanceamento de categoria ou gênero. Assim, esta dissertação tem como objetivo explorar a calibragem, que é um meio para produzir recomendações que sejam relevantes aos usuários e ao mesmo tempo considerar todas as áreas de suas preferências, buscando evitar a desproporção na lista de recomendação. Para isto, são abordadas formas de ponderar o balanceamento entre a relevância das recomendações e a calibragem baseada em medidas de divergência. A hipótese é que a calibragem pode contribuir positivamente para recomendações mais justas de acordo com a preferência do usuário. A pesquisa é realizada através de uma ampla abordagem que contempla nove algoritmos de recomendação aplicados nos domínios de filme e música, analisando três de medidas de divergência, dois pesos de balanceamento personalizado e dois balanceamentos entre relevância-calibragem. A avaliação é analisada com métricas amplamente utilizadas, assim como métricas propostas. Os resultados indicam que a calibragem produz efeitos positivos tanto para a precisão da recomendação quanto para a justiça com as preferências do usuário, criando listas de recomendação que respeitem todas as áreas. Os resultados também indicam qual é a melhor combinação para obter um melhor desempenho ao aplicar as propostas de calibragem.

  • Mostrar Abstract
  • Recommendation systems are tools used to suggest items that might be of interest to users. These systems are based on the user's preference history to generate a list of suggestions that are more similar to the items in the user's history, aiming at better accuracy and less error. It is expected that when recommending an item, the user gives a feedback to the system, indicating if he liked or how much he liked the recommended item. User interaction with the system enables a better understanding of users' tastes, which over time, add more and more items to their preference profile. The recommendation based on the similarity of the item with the preferences, seeking the best precision can cause side effects in the list, such as: overspecialization of the recommendations in a certain core of items, little diversity of categories and imbalance of category or gender. Thus, this dissertation aims to explore calibration, which is a means to produce recommendations that are relevant to users and at the same time consider all areas of their preferences, seeking to avoid disproportion in the recommendation list. For this, ways of weighing the balance between the relevance of the recommendations and the calibration based on measures of divergence are discussed. The hypothesis is that calibration can positively contribute to fairer recommendations according to user preference. The research is carried out through a broad approach that contemplates nine recommendation algorithms applied in the film and music domains, analyzing three of divergence measures, two custom balance weights and two balances between relevance-calibration. The assessment is analyzed with widely used metrics as well as proposed metrics. The results indicate that calibration has positive effects both for recommendation accuracy and fairness with user preferences, creating recommendation lists that respect all areas. The results also indicate which is the best combination to obtain the best performance when applying the calibration proposals.

6
  • NILDO CEZARIO DA SILVA JUNIOR
  • Um estudo multimétodo sobre a compreensão de test smells na indústria de brasileira de software

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • RITA SUZANA PITANGUEIRA MACIEL
  • CARLA ILANE MOREIRA BEZERRA
  • Data: 21/07/2021

  • Mostrar Resumo
  • Os softwares estão presentes no cotidiano e têm despertado na sociedade um interesse cada vez maior. Seu processo de desenvolvimento engloba atividades desde a compreensão dos requisitos até a entrega do software executável e a sua posterior manutenção e evolução. Entretanto, softwares podem apresentar defeitos, que podem levar a prejuízos de grande ordem de magnitude. O teste de software é uma estratégia eficaz na identificação antecipada de defeitos, ou seja, antes da entrega ao usuário final, e uma consequente redução nos danos bem como nos custos associados. Os testes envolvem atividades, manuais ou automatizadas, de análise do comportamento operacional de sistemas de software, considerando o conjunto de dados de entrada e a validação das saídas. É notória a prevalência por mecanismos automatizados de testes, dado ganhos de tempo, esforço e custo no desenvolvimento e na execução de testes. Contudo, durante o processo de criação de testes automatizados, é possível que o código seja implementado a partir de padrões inadequados, o que pode resultar em código de difícil compreensão, ou ainda que prejudiquem atividades de manutenção. Tais anti-padrões são chamados de test smells. A literatura apresenta estudos voltados a análise dos efeitos de test smells no código de teste, bem como ferramentas que automatizam a detecção e a correção de test smells. Entretanto, pouco se sabe sobre o conhecimento de profissionais da indústria sobre esse conceito. Assim, o objetivo deste estudo é analisar empiricamente o conhecimento relacionado ao conceito de test smells a partir da perspectiva de profissionais da indústria brasileira de software, na busca por identificar práticas de programação que influenciam a inserção de test smells no código de testes, bem como analisar a existência de procedimentos que visem a prevenção, a identificação e a correção de test smells. Para alcançar este objetivo, a pesquisa está dividida em quatro etapas: levantamento bibliográfico, aplicação de um survey com profissionais da indústria de software, realização de entrevista com um recorte desses profissionais, e por fim o desenvolvimento de uma teoria fundamentada em dados. O survey contou com a participação de 60 profissionais, e foi possível inferir as práticas mais frequentemente adotadas na prática, bem como uma avaliação preliminar sobre o impacto da experiência profissional no uso dessas práticas. No estudo de entrevista, realizado com 50 profissionais, foi possível avaliar o nível de conhecimento sobre o conceito de test smells. A teoria fundamentada em dados identificou cinco áreas relacionadas a melhoria da qualidade dos testes automatizados: competência, alinhamento técnico, desenvolvimento de teste, melhoria da qualidade e uso de ferramentas. A apresentação do nível de conhecimento sobre test smells e as práticas de verificação da qualidade dos testes de software são as principais contribuições desta pesquisa, que ainda vislumbra possíveis investigações futuras.

  • Mostrar Abstract
  • Software is present in everyday life and has aroused increasing interest in society. Its development process encompasses activities from understanding the requirements to delivering the executable software and its subsequent maintenance and evolution. However, the software could have defects, leading to losses of a large order of magnitude. Software testing is an effective strategy for early identification of defects, that is, before delivery to the end-user, and a consequent reduction in damage and associated costs. Testing involves activities, manual or automated, of analyzing the operational behavior of software systems, considering the input data set and output validation. The prevalence of automated test mechanisms is notorious, given time, effort, and cost savings in test development and execution. However, while creating automated tests, code may be implemented from inappropriate standards, resulting in code that is difficult to understand or even hinder maintenance activities. Such anti-patterns are called test smells. The literature presents studies aimed at analyzing the effects of test smells in the test code and tools that automate the detection and correction of test smells. However, little is known about the knowledge of industry professionals about this concept. Thus, this study aims to empirically analyze the knowledge related to test smells from professionals’ perspectives in the Brazilian software industry. We seek to identify programming practices that influence the insertion of test smells in the test code and analyze the existence of procedures aimed at preventing, identifying, and correcting test smells. To accomplish this goal, we divided the research into four stages: bibliographic survey, application of a survey with professionals from the software industry, interviewing with a selection of these professionals, and finally, developing a grounded theory. The survey included the participation of 60 professionals, and it was possible to infer the practices most frequently adopted in practice and a preliminary assessment of the impact of professional experience on the use of these practices. In the interview study, carried out with 50 professionals, it was possible to assess the level of knowledge about the concept of test smells. Data-based theory identified five areas related to improving the quality of automated testing: competency, technical alignment, test development, quality improvement, and tool use. The presentation of the level of knowledge about test smells and the quality verification practices of software tests are the main contributions of this research, which still foresees possible future investigations.

7
  • RAMON ARAÚJO GOMES
  • Antecipando a identificação de dívidas técnicas em projetos de desenvolvimento dirigido por modelo

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • RITA SUZANA PITANGUEIRA MACIEL
  • CLAUDIO NOGUEIRA SANT ANNA
  • UIRÁ KULESZA
  • Data: 19/08/2021

  • Mostrar Resumo
  • O Desenvolvimento Dirigido por Modelos (DDM) e a metáfora de Dívida Técnica (DT) são abordagens de Engenharia de Software que promovem a qualidade nos sistemas desenvolvidos. Enquanto DDM busca este objetivo através do uso de modelos como principais artefatos do processo de desenvolvimento, o gerenciamento de DT o faz através da correta gestão de problemas que, fora de controle, podem dificultar a manutenção e evolução dos sistemas. Grande parte das pesquisas em DT atualmente foca no código da aplicação como principal fonte das dívidas técnicas.  Em um projeto DDM, entretanto, a geração de código fonte geralmente é feita em etapas posteriores à criação dos modelos e, portanto, lidar com a DT apenas no nível de código pode levar ao pagamento de juros desnecessários devido à existência de dívidas técnicas não gerenciadas. Trabalhos recentes concluíram que códigos desenvolvidos com DDM não são livres de DT, demonstrando a importância em gerenciar a dívida técnica também nesses projetos, de preferência em estágios anteriores do processo de desenvolvimento, como a modelagem. Este trabalho busca analisar se é possível usar estratégias de detecção de dívida técnica de código fonte para identificar DT em modelos geradores de código dentro de um contexto de desenvolvimento dirigido por modelos. Para isso, técnicas de detecção de DT em código fonte foram avaliadas com o objetivo de adaptá-las para o nível de abstração dos modelos. Um catálogo de nove itens de dívida técnica para modelos independentes de plataforma foi especificado, com estratégias de detecção que permitem a automação do processo de identificação das dívidas técnicas nos modelos. Posteriormente, as estratégias de detecção propostas foram implementadas em uma ferramenta que permite a especificação e identificação de model smells para modelos EMF. Um estudo preliminar utilizando 3 projetos opensource versionados no Github foi realizado para avaliar e ajustar as estratégias de detecção propostas. Em seguida, um estudo experimental mais profundo foi feito com o objetivo de avaliar a efetividade real das estratégias de detecção propostas em antecipar a identificação das dívidas técnicas, detectando-as nos modelos geradores do código fonte. Um total de 9 diferentes projetos, com 36 modelos e mais de 400 mil linhas de código foram usados nessa avaliação, todos eles opensource, versionados publicamente no Github e desenvolvidos com a tecnologia EMF. Os resultados mostraram que as estratégias propostas são capazes de antecipar boa parte das dívidas técnicas de código fonte nos modelos geradores do código. Os itens do catálogo, porém, apresentaram diferentes graus de efetividade na antecipação e variados níveis de ocorrência nos projetos estudados. Uma discussão sobre cada item avaliado foi realizada com o objetivo de analisar e explicar os resultados obtidos do estudo experimental. Por fim, foram discutidos aspectos que podem orientar trabalhos futuros com melhorias e a extensão do catálogo proposto


  • Mostrar Abstract
  • ABSTRACT

    Model Driven Development (MDD) and the Technical Debt (TD) metaphor are software

    engineering approaches that look for promoting quality of systems under development.

    While MDD does it through the use of models as primary artifacts in the software development

    process, TD management does it by correctly dealing with problems that, out

    of control, can impair system maintenance and evolution. Most research on TD focuses

    on application code as primary TD sources. In an MDD project, however, dealing with

    technical debt only on the source code may not be an adequate strategy because code

    generation is often done at a later stage than creating models, and then dealing with TD

    only in source code can lead to unnecessary interest payments due to unmanaged debts.

    Recent works concluded that MDD project codes are not technical debt free, making it

    necessary to investigate the possibility and bene ts of applying TD identi cation techniques

    in earlier stages of the development process, such as in modeling phases. This

    work intends to analyze whether it is possible to use source code technical debt detection

    strategies to identify TD on code-generating models in the context of model-driven development

    projects. For this, we investigated source code TD detection techniques were

    evaluated with the purpose of adapting them to be used in the model abstraction level.

    A catalog of nine di erent model technical debt items for platform-independent codegenerating

    models was speci ed, with detection strategies that can automate the TD

    identi cation process in the models. Then, the proposed detection strategies were implemented

    in a tool that allows both speci cation and automatic identi cation of so-called

    model smells in EMF models. A preliminary study was performed to evaluate and re ne

    the proposed detection strategies by using 3 opensource projects versioned on Github.

    Then, a deeper experimental study was performed in order to evaluate the detection strategies

    real e ectiveness in anticipating the technical debt identi cation, detecting them

    in the code-generating models. A total of 9 di erent projects, with 36 EMF models and

    more than 400 thousand lines of code were used in this evaluation, all opensource, git

    versioned and developed with EMF technology. Results showed that the evaluated detection

    strategies are able to anticipate a great amount of source code technical debt in the

    code-generating models. However, di erent catalog items presented di erent anticipation

    e ectiveness levels and various levels of occurrences in the studied projects. A discussion

    was performed for each evaluated item in order to explain the obtained results. Finally,

    aspects were obtained that may guide future works in improvements and also extension

    of the catalog.

8
  • EDERSON DOS SANTOS ASSUNÇÃO
  • Investigando a incidência de code smells em métodos de padrões de projeto

  • Orientador : RODRIGO ROCHA GOMES E SOUZA
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • RODRIGO ROCHA GOMES E SOUZA
  • RICARDO TERRA NUNES BUENO VILLELA
  • Data: 01/09/2021

  • Mostrar Resumo
  • Padrões de projeto são soluções reutilizáveis que podem ser aplicadas para resolver problemas específicos em projeto de software. No entanto, tais padrões podem ser mal aplicados e dar origem a code smells. Code smells ou smells são fragmentos no código-fonte que indicam possíveis falhas de design. Chamamos de coocorrência situações durante as quais padrões de projeto e code smells existem dentro dos mesmo módulos de código (e.g., arquivos .java de projetos Java). Este fenômeno, caso ocorra com frequência, pode resultar em uma oportunidade para avaliar se existe algum desvio ou má prática de aplicação dos padrões que possam ser evitados. Possivelmente, ao refinar a forma como os padrões são adicionados a projetos, o surgimento e existência de smells possam ser mitigados. Este trabalho apresenta dois estudos experimentais com o objetivo de investigar as relações de coocorrência entre padrões de projeto e smells. Ambos demandaram a aplicação de ferramentas de detecção automatizadas de padrões de projeto e smells em sistemas de código-fonte aberto desenvolvidos na linguagem Java. No primeiro estudo buscamos compreender com que frequência os code smells coocorrem com padrões de projeto, bem como determinar as coocorrências mais comuns. Para esse fim, identificamos instâncias de smells em métodos de padrões de projeto de 25 sistemas. Também inspecionamos manualmente fragmentos do código-fonte dos projetos para obter informações sobre a relação entre pares específicos padrão-smell. Entre outras descobertas, percebemos que os métodos que fazem parte do padrão Adapter são mais propensos a conter smells, especialmente o Feature Envy, embora possa ser argumentado que a detecção desse smell nesse contexto é um falso-positivo. O segundo estudo é aplicado sobre o histórico de versão proveniente de repositórios de software Open Source. Esta análise consiste em entender a relação entre as duas variáveis (padrões de projeto e code smells) ao longo da evolução do software. Os resultados encontrados sugerem que o padrão Template Method está mais propenso a ser introduzido simultaneamente com smells ao longo do tempo.


  • Mostrar Abstract
  • Design patterns are reusable solutions that can be applied to solve specific problems of software projects. However, developers may not implement patterns adequately on some occasions. This can lead to the appearance of code smells. Code smells (or smells) are fragments of code that can indicate potential design flaws. Co-occurrences are situations in which design patterns and smells exist simultaneously in the same code unit (e.g., classes and methods of Java-based software projects). In case of such phenomenon occurs frequently it can reveal opportunities to investigate if a bad practice in the application of patterns is the cause of the occurrence of smells. As a consequence, refining the way how developers apply design patterns may be a good measure to avoid code smells. In this context, we present two experimental studies that aim at examining cases of co-occurrence of patterns and smells. Both studies required the application of detection tools to evaluate Java-based software projects. With our first study, we seek to comprehend the frequency by which code smells co-occur with design patterns. We also report the most common cases of co-occurrence. To achieve this, we identified instances of smells in methods of design patterns of 25 software systems. We also manually inspected source code fragments to obtain useful information about pairs of patterns and smells. Among other findings, we perceived that methods that take part in the implementation of the Adapter pattern are prone to contain smells, e.g., the Feature Envy smell, although it can be argued that the detection of this smell in this context is a false positive. Our second study has the purpose of analyzing the evolution of open-source software projects. We wanted to provide insights about the co-occurrences along with the evolution of the projects. As a result, we found out that the Template Method pattern is more inclined to appear concomitantly with smells through time.

9
  • LEILA DE CARVALHO COSTA
  • VERIFICAÇÃO FORMAL DE SISTEMAS DE SISTEMAS (SOS) MODELADOS EM DIAGRAMAS DE COREOGRAFIA (BPMN)

    PARA DETECÇão PRÉVIA DE ERROS TIPICOS DE TEMPO DE EXECUçÃO

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • FLAVIO OQUENDO
  • LAIS DO NASCIMENTO SALVADOR
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 14/09/2021

  • Mostrar Resumo
  • Sistema de Sistemas (SoS) são compostos por um conjunto de sistemas, que interagem entre si

    para um objetivo comum. Assim, ele tende a ser maior e mais complexo do que os sistemas

    tradicionais. Para abordar a questão da complexidade inerente a este tipo de sistemas

    complexos, eles são frequentemente modelados usando a Business Process Modeling and

    Notation (BPMN), que é uma notação padrão para modelagem de processos de negócios.

    O diagrama de coreografia, introduzido na versào BPMN2.0, fornece conceitos adequados

    para representar as interações entre os sistemas constituintes de um SoS. No entanto,

    os modelos criados com essa notação podem conter erros, alguns dos quais podem ser

    detectados em tempo de design e outros apenas em tempo de execução. Os erros de

    sintaxe são facilmente detectados com o auxílio de ferramentas de modelagem, no entanto,

    a ausência de uma semântica formal para BPMN torna mais difícil identificar erros de

    tempo de execução, como por exemplo, deadlocks, livelocks e outras propriedades de

    seguran¸ca em diagramas de coreografia de BPMN. Esses erros são difíceis de detectar e

    podem levar a uma operação inadequada ou até mesmo ao travamento do sistema. Nesse

    contexto, um método para identificar erros de tempo de execução consiste em traduzir

    o diagrama BPMN em um modelo formal que pode ser analisado em um verificador

    de modelo. Assim, apresentamos uma abordagem para construir um modelo formal

    para os diagramas de coreografia de BPMN em termos da linguagem formal PI-ADL,

    que é uma linguagem projetada para a especificação de arquiteturas dinâmicas, uma

    caracteríıstica intríınseca dos SoS. Portanto, definimos o mapeamento dos elementos do

    diagrama de coreografia para pi-ADL, a fim de auxiliar sua descrição formal em pi-ADL.

    Tais modelos pi-ADL permitem sua verificação formal por meio de um verificador de

    modelo específico, possibilitando assim, a detecção prévia de erros em tempo de execução

    no sistema modelado.


  • Mostrar Abstract
  • System of systems (SoS) is composed of a set of systems, which interact together for

    a common goal. Thereby, it tends to be larger and more complex than traditional systems.

    To address the question of the inherent complexity of this kind of complex systems,

    they are frequently modeled using the Business Process Modeling and Notation (BPMN),

    which is a standard modeling notation for business processes. The choreography diagram,

    introduced in version BPMN 2.0, provides suitable concepts for representing the interactions

    among constituents of a SoS. However, models created using this notation may

    contain errors, some of which can be detected at design-time and others only at runtime.

    Syntax errors are easily detected with the assistance of modeling tools. Nevertheless,

    the absence of a formal semantics for BPMN makes it harder to identify runtime errors,

    as for example, deadlocks, livelocks and other safety properties in BPMN choreography

    diagrams. These errors are challenging to detect and may lead to an improper operation

    or even a system lockup. In this context, a method for identifying runtime errors consists

    of translating the BPMN diagram into a formal model that can be analyzed in a model

    checker. Thereby we present an approach to build a formal model for the BPMN choreography

    diagrams in terms of the formal language ⇡-ADL, which is properly designed for

    the specification of dynamic architectures, an intrinsic characteristic of SoS. Therefore,

    we define the mapping of the elements of the choreography diagram to ⇡-ADL, in order

    to obtain its formal description in ⇡-ADL. Such ⇡-ADL models allow its formal verification

    using a specific model checker, enabling the prior detection of runtime errors in the

    modeled system.

10
  • BRUNNA CAROLINE DO CARMO MOURÃO
  • MDSS: Um modelo de apoio ao desenvolvimento de sistemas de software sustentáveis

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • SHEILA DOS SANTOS REINEHR
  • CLAUDIO NOGUEIRA SANT ANNA
  • IVAN DO CARMO MACHADO
  • Data: 05/10/2021

  • Mostrar Resumo
  • Pensar de forma sustentável é uma necessidade urgente para o planeta e uma obrigação a todas as áreas de conhecimento. Deste modo, a área de tecnologia da informação tem buscado maneiras de contribuir com a sustentabilidade através da investigação de melhorias relacionadas à eficiência do consumo de energia por parte do software e hardware. A dificuldade dessa temática dá-se tanto pela importância quanto pela complexidade da adaptação dos processos tradicionais de desenvolvimento de software à novos procedimentos, sem contar que as atividades humanas têm sido cada vez mais dependentes de software, com a recente prevalência de sistemas de software desenvolvidos para o domínio de aplicações móveis.

    Neste contexto, um grande desafio é a investigação de métodos que proporcionem um aumento da sustentabilidade em software, diminuindo assim o consumo de energia pelo software o que por consequência, minimiza o impacto da tecnologia nos recursos naturais.

    A sustentabilidade de software pode ser analisada sob diversas perspectivas (social, econômica, técnica e ambiental). Assim, antes de identificar, medir e/ou gerenciar o consumo de energia de um software, é necessário entender quais são os conceitos e definições cunhados na literatura, ferramentas existentes, o nível de conhecimento por parte dos profissionais, as técnicas e os métodos que estão sendo propostos.

    Este trabalho desenvolveu um modelo para desenvolvimento de software sustentável, e organizou um corpo de conhecimento de sustentabilidade em Engenharia de Software baseado em estudos levantados na literatura, considerando conceitos/definições, métodos/modelos e a opinião dos profissionais atuantes.

    Para alcançar estes objetivos, a pesquisa seguiu duas linhas de trabalho: (1) realização de um mapeamento sistemático da literatura complementado por um survey para a coleta de evidências que permitiu estabelecer um panorama sobre Engenharia de software sustentável; (2) estruturação das informações identificadas para desenvolver o modelo que pretende apoiar as equipes no desenvolvimento de software sustentável, que se deu com a realização de estudos qualitativos com profissionais da indústria.


  • Mostrar Abstract
  • Thinking sustainably is an urgent need for the planet and an obligation for all areas of knowledge. Thus, the information technology area has been looking for ways to contribute to sustainability by investigating improvements related to the efficiency of energy consumption by software and hardware. The difficulty of this theme is due to the importance and the complexity of adapting traditional software development processes to new procedures, not to mention that human activities have been increasingly dependent on software, with the recent prevalence of developed software systems for the domain of mobile applications.

    In this context, a significant challenge lies in investigating methods that increase software sustainability, thus reducing energy consumption by the software, which minimizes the impact of technology on natural resources.

    Software sustainability can be analyzed from different perspectives (social, economic, technical, and environmental). Thus, before identifying, measuring, and managing the energy consumption of software, it is necessary to understand the concepts and definitions coined in the literature, existing tools, the level of knowledge on the part of professionals, and the proposed techniques and methods.

    This work developed a model for sustainable software development and organized a body of knowledge on sustainability in Software Engineering based on studies in the literature, considering concepts/definitions, methods/models, and working professionals' opinions.

    To achieve the goals mentioned above, the research followed two lines of work: (1) carrying out systematic mapping of the literature complemented by a survey for the collection of evidence that allowed to establish an overview of sustainable software engineering; (2) Structuring the identified information to develop the model intended to support teams in developing sustainable software, which took place through qualitative studies with industry professionals.

11
  • SARA MENDES OLIVEIRA LIMA
  • Síntese temática sobre a adoção de técnicas de teste de regressão em projetos de software para a plataforma Android

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • ALCEMIR RODRIGUES SANTOS
  • IVAN DO CARMO MACHADO
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 13/10/2021

  • Mostrar Resumo
  • O mercado de dispositivos móveis tem crescido exponencialmente nos últimos anos, assim como a necessidade de aplicativos quem primem pela qualidade e que ofereçam features que ampliem a retenção de usuários. Nos últimos anos percebe-se uma crescente quantidade de estudos que apresentam soluções para problemas inerentes à demanda supracitada. A atividade de testes de software tem um papel de grande importância no processo de garantia da qualidade de software. Em particular, os testes de regressão apresentam-se como uma estratégia viável para lidar com a complexidade e com a constante evolução dos aplicativos, visto que o seu principal objetivo é garantir que as mudanças realizadas entre versões não alteram o comportamento do sistema. Embora a literatura tenha dedicado esforços para o desenvolvimento de novas técnicas de teste de regressão para Android - o sistema operacional mais popular para os dispositivos móveis - os estudos existentes são limitados no que diz respeito a demonstrar quais são as técnicas de teste de regressão utilizadas por profissionais. A presente investigação tem como objetivo realizar uma síntese temática sobre a adoção de técnicas de teste de regressão em projetos de software para a plataforma Android. A pesquisa foi organizada em quatro etapas: (i) realização de uma revisão estruturada da literatura sobre técnicas de teste de regressão de aplicativos para Android, (ii) aplicação de um survey, (iii) realização de entrevistas com profissionais da indústria, e (iv) a construção de uma síntese temática. O survey obteve 100 respostas e proporcionou uma visão preliminar sobre como é realizado o processo de teste durante e após a manutenção dos aplicativos, quão automatizado é o teste de regressão de aplicativos para Android na prática e os motivos pelos quais os profissionais não realizam teste de regressão após atualizarem os aplicativos. As entrevistas realizadas com 16 profissionais da indústria contribuíram com a pesquisa no sentido de identificar o nível de conhecimento dos profissionais e sua relação com a automação dos testes, as linguagens mais utilizadas no desenvolvimento dos aplicativos para Android e qual a relação delas com o processo de automação, as ferramentas utilizadas para automação de teste e as features esperadas pelos profissionais para executarem teste de regressão automatizado e um entendimento preliminar sobre como os profissionais executam teste de regressão na prática. A síntese temática apresentou um modelo resultante da comparação dos resultados obtidos nas diferentes fontes de dados - literatura, survey e entrevistas, sobre o uso de técnicas de teste de regressão. Esses estudos trazem uma visão sobre o tema e proporcionam possíveis investigações futuras.


  • Mostrar Abstract
  • The mobile device market has grown exponentially in recent years, as the need for apps that strive for quality and that offer features that increase user retention. In recent years, a growing number of studies have provided solutions to problems inherent to the demand mentioned above. The software testing activity plays an essential role in the software quality assurance process. In particular, regression tests are presented as a viable strategy to deal with the complexity and constant evolution of applications since its main objective is to ensure that changes made between versions of a product do not change the system's behavior. Although the literature has devoted efforts to developing new regression testing techniques for Android - the most popular operating system for mobile devices - existing studies do not address how professionals use testing techniques. This investigation aims to carry out a thematic synthesis on the adoption of regression testing techniques in software projects for the Android platform. We organized the research in four steps: (i) carrying out a structured review of the technical literature on regression testing of Android applications, (ii) applying a survey, (iii) carrying out an identifier with professionals from the industry, and (iv) the construction of a thematic synthesis. The survey got 100 responses and provided preliminary insight into how the testing process is performed during and after application maintenance, how automated regression testing of Android applications is in practice, and why the professionals do not perform regression testing after updating applications. In the interview study, we inquired 16 industry professionals. This study contributed to the research as it could unveil the level of knowledge of professionals and its relationship with test automation. In addition, we could identify the most used languages in the development of Android applications and the tools used for testing automation. Furthermore, the study provided us with a preliminary understanding of how professionals perform regression testing in practice. Finally, the thematic synthesis presents a model resulting from the comparison of evidence gathered from different data sources - literature, survey and declares about the use of regression test techniques. These studies bring an insight into the subject and provide possible future investigations.

12
  • OTÁVIO GONÇALVEZ VICENTE RIBEIRO FILHO
  • Uma Nova Arquitetura de Rede Neural Artificial para abordagens end-to-end de classificação de sinais

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • RUBISLEY DE PAULA LEMES
  • MOACIR ANTONELLI PONTI
  • Data: 10/11/2021

  • Mostrar Resumo
  • O aumento da capacidade computacional, a introdução do uso de unidades gráficas de processamento e o crescente aumento na disponibilização de dados favoreceram a utilização de redes neurais artificiais para resolução de problemas em diferentes áreas do conhecimento como visão computacional e processamento de linguagem natural. Aplicações de tais redes em cenários cujos dados são caracterizados pela presença de dependência temporal, como sinais unidimensionais (séries temporais), produzem melhores resultados quando uma etapa de pré-processamento é considerada para extrair informações implícitas entre as observações. No contexto deste mestrado, dentre os diferentes métodos de pré-processamento, observou-se que as transformadas wavelets têm sido amplamente utilizadas devido, de maneira geral, à obtenção de melhores resultados quando comparadas aos demais métodos. No entanto, estas transformadas possuem duas principais limitações na análise de sinais. Primeiro, faz-se necessário definir um conjunto de parâmetros para melhor extrair informações nos diferentes níveis de escala e resolução. Segundo, a aplicação dessas transformadas requerem uma etapa inicial de transformação de todos os sinais em lote (batch) antes do início do treinamento da rede. Neste trabalho, essas limitações foram superadas através da criação de uma nova arquitetura de rede neural artificial que, ao analisar um sinal unidimensional, produz como saída um conjunto de características equivalentes àquelas produzidas pelas transformadas de wavelets. Dessa forma, essa rede pode ser combinada com outras redes para treinamento e classificação de sinais sem a necessidade de execução à priori da etapa de pré-processamento. Para verificação do desempenho da arquitetura desenvolvida, foi utilizada uma rede pré-treinada para classificação de sinais coletados de duas aplicações reais: LFP (local field potential) a partir do monitoramento de sinais cerebrais coletados de macacos, e sinais sísmicos coletados do vulcão Llaima. As acurácias finais produzidas pelos modelos nas duas aplicações usando o pré-processamento tradicional e a arquitetura proposta foram, respectivamente: (i) LFP -- 0.655 e 0.649; (ii) Llaima -- 0.976 e 0.974.


  • Mostrar Abstract
  • The increasing computer power, the introduction of specialized processors designed to accelerate graphics rendering, and the high availability of new data have supported the adoption of artificial neural networks (ANN) to solve real-world problems in different areas, such as computer vision natural language processing. The application of such networks to deal with data characterized by temporal dependencies, as signals (time series), produces better results when a preprocessing stage is considered to extract implicit information. In this work, by taking into account the different preprocessing methods, we have noticed that wavelet transforms have been widely used due to, in general, the remarkable results. However, such transformations have two main drawbacks by modeling signals. Firstly, it is necessary to define a set of parameters to extract better information from different levels of scale and resolution. Secondly, the application of such transformations requires an initial step to convert, in batch, all analyzed signals before starting the network training. In our scenario, such limitations were overcome by our new ANN architecture, which analyzes signals and yields as output a set of characteristics similar to those produced by wavelet transforms. Therefore, our ANN can be combined with others to model signals without requiring an execution a priori of any wavelet transformation. The proposed ANN was assessed against a pre-trained network to classify signals from two real-world applications: local field potential (LFP) from monitoring monkey brains and seismic signals from the Llaima volcano. The final accuracy obtained to model both applications using traditional preprocessing, and our approach were, respectively: (i) LFP -- 0.655 and 0.649, and (ii) Llaima -- 0.976 and 0.974.

13
  • ANDERSON DA SILVA BRITO SACRAMENTO
  • Um método computacional de extração automática de eventos em domínio fechado na língua portuguesa

  • Orientador : MARLO VIEIRA DOS SANTOS E SOUZA
  • MEMBROS DA BANCA :
  • PAULO MIGUEL TORRES DUARTE QUARESMA
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • RENATA VIEIRA
  • Data: 23/11/2021

  • Mostrar Resumo
  • O registro e a publicação digital de textos em linguagem natural faz parte de diferentes domínios da atividade humana. Dentre as informações registradas, os eventos são parte significativa desse conteúdo, visto que, independente do domínio, novos eventos continuam a acontecer, e os que são considerados relevantes são registrados. Com a disseminação de tecnologias de informação, a facilidade de acesso a esses registros fez crescer a oferta de eventos e também a demanda por conhecimento para auxílio à tomada de decisões, derivado de novas aplicações de um grande volume de informação cada vez mais globalizada e instantâneo.  A tarefa de extração de eventos tem o objetivo de automatizar a extração de eventos por meio da identificação do tipo de evento e dos seus participantes e atributos. Essa é uma tarefa de extração de informação, que faz parte da área de processamento de linguagem natural. Não se conhece uma solução com desempenho igual ou superior ao humano para essa tarefa em qualquer linguagem natural. No caso específico da língua portuguesa,  não existe apenas solução, mas carece-se  de propostas de métodos e recursos linguísticos anotados para o desenvolvimento e avaliação de métodos (via aprendizado com dados, aprendizado de máquina). Que saibamos, os poucos trabalhos que foram publicados não realizaram extração de eventos em domínio fechado, i.e. quando se conhece a estrutura dos eventos que busca-se extrair, para língua portuguesa. Neste trabalho é apresentado um método de  extração automática de eventos em domínio fechado em  sentenças da língua portuguesa, baseado em aprendizado de máquina profundo, utilizando word embeddings contextualizados. Além disso, para suportar o desenvolvimento e a avaliação do método proposto, foi construído um corpus em português com anotações de eventos em domínio fechado.


  • Mostrar Abstract
  • The registration and digital publication of texts in natural language is part of different domains of human activity. Among the information recorded, events are a significant part of the content, since, regardless of the domain, new events continue to happen, and those considered relevant are recorded. With the spread of information technologies, the ease of access to these records has increased the supply of registered events and also the demand for knowledge to aid decision making, derived from new applications of a large volume of information increasingly globalized and instantaneous. The task of event extraction aims to automate the extraction of events from text by identifying the event type and its participants and attributes. This is an information extraction task, which is part of the area of natural language processing. There is no known solution with a performance equal or superior to that of a human for this task in any natural language. In the specific case of the Portuguese language, there is not only a lack of a solution, but there is a need  for methods and linguistic resources for the development and evaluation of those methods (via learning from data, i.e. machine learning). To the best of our knowledge, the few works that were published did not perform event extraction in a closed domain configuration, when one knows the structure of the events that one aims to extract. In this research project proposal, we intend to develop a method for automatic event extraction in a closed domain configuration in Portuguese sentences and to build or adapt a corpus in Portuguese that supports the development of this method. This work presents a method for event extraction in a closed domain configuration in Portuguese language sentences based on deep learning using contextualized word embeddings. Furthermore, to support the development and evaluation of the proposed method, we construct a  Portuguese corpus with annotations of events in closed domain.

14
  • JOSELITO MOTA JÚNIOR
  • An evidence-based study on issue labeling in Github-based repositories

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • CLAUDIO NOGUEIRA SANT ANNA
  • JOSÉ AMÂNCIO MACEDO SANTOS
  • Data: 07/12/2021

  • Mostrar Resumo
  • A comunidade de software de código aberto cresceu em tamanho e importância ao longo dos anos. Como consequência, o número de contribuidores em projetos dessa natureza aumentou consideravelmente. A capacidade dos repositórios de projeto de código aberto para acomodar relatórios de problemas em forma de issues é essencial. Uma issue abrange um grande conjunto de dados que descreve as mudanças necessárias que um software deve lidar. Os desenvolvedores precisam de informações detalhadas para reproduzi-los e localizá-los; informações incompletas são um problema grave que pode influenciar a triagem e a detecção de defeitos, levando a atrasos na manutenção do projeto. Rastreadores de defeitos normalmente usam o método de rotulagem para adicionar detalhes extras as issues. Ciente da importância dos rótulos, esta dissertação enfoca a investigação do uso, criação e similaridades no contexto do ciclo de vida do defeito, tanto na manutenção quanto na evolução nos rastreadores de defeitos de repositórios da maior e mais popular plataforma de hospedagem de código, o Github. Além disso, também analisa a quantidade de issues rotuladas e não rotuladas no repositório e a conexão entre os componentes das issues, com análise com foco no ciclo de vida. Os resultados do estudo indicam uma correlação significativa entre os repositórios que possuem muitas issues e a criação de rótulos, mas nem todos os repositórios usam estes rótulos criados. 64,58 \% dos repositórios inserem novos rótulos conforme o projeto evolui. 73,14 \% repositórios aplicam os rótulos padrões providos pelo Github. Os resultados também indicam uma influência entre campos primários de uma issue, tais como título, descrição e comentários na maioria dos casos de rotulação, assumindo um impacto na criação e rotulagem. Esses números mostram que a rotulagem de issues é de importância proeminente para a manutenção e evolução do projeto, pois fornece aos desenvolvedores uma maneira fácil e conveniente de informar sobre um problema reportado nos rastreadores de defeitos pelos usuários dos sistemas.


  • Mostrar Abstract
  • The open-source software community has grown in size and importance over the years. As a consequence, the number of project contributors has increased considerably. The capability of open-source project repositories to accommodate issue reports is essential. An issue report encompasses a large set of data that describes the necessary changes a software should handle. As developers need detailed information to reproduce and find them, incomplete information is a severe problem that may influence triage and defect detection leading to delays in project maintenance. Issue trackers commonly use the labeling method to add extra details to issues. Knowing the importance of labels, this dissertation focus on investigating the usage, creation, and similarities in the context of the issue lifecycle in both maintenance and evolution in the repository issue trackers of the largest and most popular code hosting platform, Github. In addition, it analyzes the number of labeled and unlabeled issues in the repository and the connection between the issues' components, with an analysis focused on the lifecycle. The results indicate a significant correlation between repositories with many issues and the creation of labels, but not all repositories use them. 64.58\% of the repositories insert new labels as the project evolves. 73.14\% repositories applied on issues the Github standard labels. We also found an influence of primary issue fields such as title, description, and comments in most issue labels, impacting the creation and labeling issues. These numbers show that issue labeling is of prominent relevance for project maintenance and evolution. It provides developers with an easy and convenient way to inform about an incoming issue reported by systems users.

15
  • Wallas Fróes de Oliveira
  • ProgLab: Aprovisionamento de QoS por Rótulos Programáveis em Redes Definidas por Resíduos

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • LEOBINO NASCIMENTO SAMPAIO
  • MAYCON LEONE MACIEL PEIXOTO
  • RODOLFO DA SILVA VILLAÇA
  • Data: 09/12/2021

  • Mostrar Resumo
  • Redes Definidas por Resíduos (do inglês, Residues Defined Network - (RDN)), possuem a capacidade de utilizar rótulos para encaminhamentos fim-a-fim em sistemas autônomos. A RDN é caracterizada por dispensar o uso de tabelas de encaminhamento no núcleo da rede. Dessa forma, os pacotes são encaminhados com base no resto da divisão entre o rótulo encontrado no pacote e a chave local encontrada no comutador de núcleo. Inicialmente, a RDN teve como propósito melhorar a latência nas SDNs, uma vez que os comutadores do núcleo da rede não possuem comunicação com o controlador. Por outro lado, uma gama de soluções adotam a Qualidade de Serviço (QoS) baseadas na utilização do MPLS, que permite prover serviços diferenciados a diferentes classes e padrões de tráfego e gerar benefícios consideráveis para as comunicações de rede. Entretanto, tais soluções apresentam altos custos de OPEX e CAPEX. Motivado pela capacidade das RDNs, esta dissertação traz um método alternativo para utilização dos rótulos no núcleo da rede, além de tentar resolver o problema de escalabilidade e flexibilidade encontrado na solução KeyFlow proposta e oferecer novas funcionalidades para esta tecnologia. Através da linguagem P4, foi implementado um novo protocolo flexível, escalável e reprogramável para a RDN, a fim implementar o modelo para aprovisionamento de QoS por rótulos programáveis, ProgLab (Programmable Labels). O ProgLab implementa um novo método para leitura dos rótulos pelos comutadores de núcleo, que utiliza o sistema numérico de resíduos para definir as portas de saídas e a prioridade da fila, assim provendo QoS à RDN. Para validação da proposta, foram realizados testes de emulação com métricas de QoS e Qualidade de Experiência (QoE) para avaliação e demonstração da viabilidade do modelo. Os resultados demonstraram a viabilidade desta proposta para provisão de QoS em redes de núcleo que utilizem o RNS como encaminhamento de pacotes, mostrando que futuramente uma RDN pode vir a ser uma alternativa de baixo custo para encaminhamento de pacotes com serviços de QoS.


  • Mostrar Abstract
  • Residues Defined Network (RDN) have the ability to use labels for end-to-end routing in autonomous systems. RDN is characterized by dispensing with the use of routing tables at the core of the network. In this way, packets are forwarded based on the remainder of the division between the label found in the packet and the local key found in the core switch. Initially, RDN was intended to improve latency in SDNs, since the switches at the core of the network do not communicate with the controller. On the other hand, a range of solutions adopts the Quality of Service (QoS) based on the use of MPLS, which allows providing differentiated services to different traffic classes and patterns and generating considerable benefits for network communications. However, such solutions have high OPEX and CAPEX costs.Motivated by the capacity of RDNs, this dissertation brings an alternative method for using the labels in the core of the network, in addition to trying to solve the problem of scalability and flexibility found in the proposed KeyFlow solution and offer new functionalities for this technology.Through the P4 language, a new flexible, scalable and reprogrammable protocol for an RDN was implemented, in order to implement the model for provisioning QoS by programmable labels, ProgLab {Programmable Labels}.ProgLab implements a new method for reading labels by core switches, which uses the residual number system to define the output ports and queue priority, thus providing QoS to the RDN. To validate the proposal, emulation tests were performed with QoS and Quality of Experience (QoE) metrics to evaluate and demonstrate the feasibility of the model.The results demonstrated the viability of this proposal for the provision of QoS in core networks that use the RNS as packet forwarding, showing that in the future an RDN can become a low-cost alternative for packet forwarding with QoS services.

16
  • CÍNTIA DA COSTA SOUZA
  • DOSN-PROV: Modelo e Serviços para Proveniência de Dados em Redes Sociais Descentralizadas

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • RITA CRISTINA GALARRAGA BERARDI
  • CASSIO VINICIUS SERAFIM PRAZERES
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • Data: 10/12/2021

  • Mostrar Resumo
  • As informações que trafegam em redes sociais nem sempre podem ter a origem verificada, os caminhos descritos e as modificações registradas. Questões como essas geram incerteza e desconfiança aos processos e interações em Redes Sociais Online (do inglês, OSNs). Com o surgimento das Redes Sociais Online Descentralizadas (do inglês, DOSNs) e o aumento da quantidade de usuários ativos nessas redes, torna-se importante desenvolver soluções efetivas referentes à proveniência dos dados descentralizados. A proveniência é um fator de importância considerável, pois, por meio de seus resultados, é possível avaliar a autenticidade, confiabilidade e relevância das informações. Rastreamento e captura de proveniência são tarefas fundamentais para DOSNs, pois produzem respostas sobre as etapas percorridas pelas informações. O grande volume de dados, a velocidade de geração e compartilhamento de informações e a estratégia descentralizada de armazenamento torna a proveniência em DOSNs uma tarefa não trivial. Dessa forma, este trabalho propõe o modelo ontológico de proveniência DOSN-PROV, que é um modelo específico para o domínio de DOSNs, baseado na especificação PROV-O do W3C. Além disso, este trabalho também propõe serviços, baseados no DOSN-PROV, para fornecer suporte à captura e ao rastreamento de proveniência em DOSNs. O DOSN-PROV foi avaliado em duas etapas para demonstrar a conformidade com o domínio proposto. Por fim, os serviços passaram por uma avaliação de desempenho e seus resultados indicaram tempos de resposta aceitáveis para as tarefas de captura e rastreamento.


  • Mostrar Abstract
  • The information on social networks cannot always verify the origin, the paths described, and the registered modifications. Issues such as these generate uncertainty and distrust in processes and interactions in OSNs. With the emergence of DOSNs and the increase in the number of active users in these networks, it becomes essential to develop effective solutions regarding the provenance of decentralized data. The provenance is a factor of considerable importance because it is possible to evaluate the information's authenticity, reliability, and relevance through its results. Tracing and capture of provenance are critical tasks for DOSNs since they produce answers about the steps go through by the information. The large volume of data, the speed of generation and sharing of information, and the decentralized storage strategy make the provenance of DOSNs a non-trivial task. Thus, this work proposes the PROV-DOSN provenance ontological model, a specific model for the DOSNs domain, based on the PROV-O specification from W3C. In addition, this work also proposes services based on the DOSN-PROV to support the capture and tracking of provenance in DOSNs. We evaluated DOSN-PROV in two steps to demonstrate compliance with the proposed domain. Finally, the services underwent a performance evaluation, and their results indicated acceptable response times for the capture and tracking tasks.

17
  • BEATRIZ SANTANA FAGUNDES SOUZA DE LIMA
  • Um Estudo sobre a Influência da Especificidade do Texto na Classificação de Utilidade Percebida de Críticas Online
  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • TATIANE NOGUEIRA RIOS
  • RICARDO MARCONDES MARCACINI
  • THIAGO ALEXANDRE SALGUEIRO PARDO
  • Data: 15/12/2021

  • Mostrar Resumo
  • As avaliações online são fontes valiosas de informação para apoiar o processo de tomada de decisão, tanto para pessoas físicas quanto para empresas. No entanto, o grande volume de revisões de baixa qualidade dificulta o processo de coleta de informações úteis dessas revisões. Os sites de vários varejistas fornecem um sistema de votação para permitir que os clientes avaliem outras avaliações de produtos como úteis ou não. No entanto, esses votos são muitas vezes tendenciosos e a maioria das avaliações não recebe nenhum voto. Além disso, vários sites sequer possuem esse mecanismo de votação ou qualquer outro componente para organizar as avaliações quanto à sua utilidade. Portanto, classificar as avaliações de acordo com sua utilidade é de suma importância para facilitar o acesso a conteúdos verdadeiramente informativos. Nesse contexto, estudos anteriores revelaram vários recursos e arquiteturas que são benéficos para a previsão de utilidade percebida. No presente trabalho, argumentamos que a especificidade do texto, definida como o nível de detalhes expressos em um texto, pode influenciar a percepção de utilidade da revisão e,   consequentemente, também pode ser um novo aspecto linguístico útil para modelar a previsão de utilidade. Propusemos duas abordagens para incorporar o aspecto de especificidade em modelos de classificação de utilidade: i) usando recursos artesanais baseados em especificidade de texto e ii) usando a previsão de especificidade de revisão como uma tarefa auxiliar em um ambiente de Aprendizagem Multitarefa (MTL). Primeiro, conduzimos uma abordagem de adaptação de domínio não supervisionada [Ko, Durrett e Li 2019] para rotular automaticamente pontuações de especificidade de texto em frases de avaliações online. Para avaliar os diferentes modelos treinados usando essa abordagem, propusemos uma medida denominada Avaliação de Predição de Especificidade (SPE), que se baseia na suposição de que, em média, sentenças específicas confiáveis tendem a ser mais longas do que sentenças gerais confiáveis [Li e Nenkova 2015] . Para as 18 coleções de revisões on-line usadas em todos os nossos experimentos, conseguimos obter previsões de especificidade mais confiáveis, de acordo com a SPE, variando apenas o tamanho do conjunto de treinamento e o número de épocas de treinamento. Por fim, realizamos experimentos para avaliar o desempenho dos modelos de classificação de utilidade usando duas arquiteturas neurais: Rede Neural Convolucional (CNN) [Kim 2014] e Representações de Codificador Bidirecional de Transformadores (BERT) [Devlin et al. 2019]. Em resumo, usando conjuntos de dados balanceados, os modelos de classificação de utilidade percebida, incorporados com especificidade de texto - como recursos ou MTL - mostraram resultados de precisão significativamente mais altos em comparação com uma linha de base SVM popular ao usar CNN. Com o BERT, os experimentos mostraram que o MTL superou os modelos de tarefa única para a maioria dos 18 conjuntos de dados e a precisão e a precisão foram aprimoradas em comparação com a linha de base do SVM.


  • Mostrar Abstract
  • Online reviews are valuable sources of information to support the decision-making process, both for individuals and companies. Nevertheless, the large volume of reviews that have a low quality hinders the process of gathering helpful information from those reviews. Several retailers’ websites provide a voting system to allow customers to evaluate other product reviews as helpful or not. However, those votes are often biased and most of the reviews do not receive any votes at all. Besides that, several websites do not even have this voting mechanism or any other component for organizing the reviews in terms of their helpfulness. Therefore, classifying reviews according to their helpfulness has paramount importance in facilitating access to truly informative content. In this context, previous studies have unveiled several features and architectures that are beneficial for the perceived helpfulness prediction. In the present work, we argue that text specificity, defined as the level of details expressed in a text, can influence the perception of review helpfulness and, consequently, can also be a novel useful linguistic aspect for modeling the helpfulness prediction. We proposed two approaches to incorporate the specificity aspect into helpfulness classification models: i) using hand-crafted features based on text specificity and ii) using the review specificity prediction as an auxiliary task in a Multitask Learning (MTL) setting. First, we conducted an unsupervised domain adaptation approach [Ko, Durrett and Li 2019] to label text specificity scores on sentences from online reviews automatically. To evaluate the different trained models using this approach, we proposed a measure named Specificity Prediction Evaluation (SPE), which is based on the assumption that, on average, reliable specific sentences tend to be longer than reliable general sentences [Li and Nenkova 2015]. For the 18 collections of online reviews used in all of our experiments, we could achieve more reliable specificity predictions, according to SPE, by varying only the training set size and the number of training epochs. Finally, we performed experiments to assess the performance of the helpfulness classification models using two neural architectures: Convolutional Neural Network (CNN) [Kim 2014] and Bidirectional Encoder Representations from Transformers (BERT) [Devlin et al. 2019]. In summary, using balanced datasets, the perceived helpfulness classification models, embodied with text specificity- either as features or MTL - showed significantly higher precision results in comparison to a popular SVM baseline when using CNN. With BERT, the experiments showed that MTL outperformed the single-task models for most of the 18 datasets and both accuracy and precision were improved compared to the SVM baseline.

18
  • JOSÉ RONALDO LELES JUNIOR
  • DOSN-PRIV: Modelo e Serviço para Privacidade em Redes Sociais Online Descentralizadas

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • DILVAN DE ABREU MOREIRA
  • CASSIO VINICIUS SERAFIM PRAZERES
  • FREDERICO ARAUJO DURAO
  • Data: 21/12/2021

  • Mostrar Resumo
  • O uso intensivo de Redes Sociais Online (OSNs) tem causado preocupação nos usuários no que tange à privacidade dos dados. Dada a natureza centralizada dessas plataformas, e uma vez que cada uma possui mecanismo próprio de armazenamento, de autenticação e de controle de acesso, seus usuários não possuem o controle e o direito sobre os seus próprios dados. Dessa forma, os usuários não conseguem alternar facilmente entre plataformas semelhantes ou até mesmo transferir dados de uma plataforma para outra. Isso implica, dentre outras coisas, em ameaça à privacidade, dado que esses usuários dependem dos interesses do provedor de serviços responsável pela administração da OSN. Como estratégia para a descentrazalização das OSNs e, consequente, como solução para os problemas de privacidade nesses ambientes, surgiram as chamadas Redes Sociais Online Descentralizadas (DOSNs). Ao contrário das OSNs, as DOSNs são plataformas descentralizadas de gerenciamento de conteúdo, no sentido que não fazem uso de provedores de serviços centralizados. Apesar das DOSNs solucionarem alguns problemas de privacidade encontrados nas OSNs, as DOSNs trazem também desafios importantes a serem considerados como, por exemplo, no que diz respeito ao controle de acesso às informações do perfil do usuário com um menor nível de granularidade. Nesse contexto, este trabalho propõe o desenvolvimento de um modelo ontológico e um serviço para apoio à privacidade em DOSNs. O modelo proposto será formalizado por meio de uma ontologia OWL que deverá descrever os principais conceitos de controle de acesso para privacidade em DOSNs e suas relações, enquanto o serviço deverá consumir o modelo para aplicar o controle de acesso de acordo com as políticas representadas no modelo. O modelo Dosn-Priv foi avaliado em duas fases para verificar sua conformidade com o domínio proposto. Por fim, o serviço de privacidade DosnPrivServ passou por uma avaliação de desempenho e seus resultados se mostraram satisfatórios quanto ao tempo de resposta das requisições de controle de acesso.


  • Mostrar Abstract
  • The intensive use of Online Social Networks (OSNs) has been caused users to worry about data privacy. Given the centralized nature of these platforms, and since each has a particular storage mechanism, authentication, and access control, its users do not have the control and the right over their data. Thus, users can not easily switch between similar platforms or even transfer data from a platform to another. This implies, among other things, in a threat to privacy, since such users depend on the interests of the service provider responsible for OSN's administration. As a strategy for the decentralization of the OSNs and consequently as a solution to the privacy problems in these environments, the so-called Decentralized Online Social Networks (DOSNs) have emerged. Unlike OSNs, DOSNs are decentralized content management platforms in the sense that they do not use of centralized service providers. Although DOSNs address some of the privacy issues encountered in OSNs, the DOSNs also pose important challenges to be considered, for example, with regard to access control to user profile information with a lower level of granularity. In this context, this work proposes the development of an ontological model and a service to support privacy in DOSNs. The proposed model will be formalized through an OWL ontology that should describe the main concepts of access control for privacy in DOSNs and their relationships, while the service will consume the model to apply access control according to the policies represented in the model. The Dosn-Priv model was evaluated in two phases to verify its compliance with the proposed domain. Finally, the DosnPrivServ privacy service underwent a performance evaluation and its results were satisfactory regarding the response time of access control requests.

19
  • LUCINÉIA BATISTA DE SOUZA
  • ORGANIZAÇÃO DE UM CONJUNTO DE DESCOBERTAS EXPERIMENTAIS SOBRE DÍVIDA TÉCNICA RELACIONADA AO TESTE

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • MANOEL GOMES DE MENDONCA NETO
  • JOSÉ AMÂNCIO MACEDO SANTOS
  • THIAGO SOUTO MENDES
  • Data: 23/12/2021

  • Mostrar Resumo
  • Contexto: O termo Dívida Técnica (DT) refere-se às atividades adiadas durante o desenvolvimento do projeto de software. A DT pode ser comparada com uma dívida financeira cujo devedor tem a opção de pagar o valor principal da dívida ou os juros. Várias iniciativas têm buscado identificar as causas e os efeitos associados à DT. Dentre elas, o projeto InsighTD tem executado um survey em vários países para coletar evidencias sobre o estado da prática da DT. Um dos resultados obtidos pelo projeto foi a lista de causas e efeitos da DT reportados pelos profissionais de software. A DT pode incorrer em qualquer fase do desenvolvimento, como no teste de software. Essa atividade tem como objetivo assegurar a qualidade do software que está sendo desenvolvido. Entretanto, tanto o projeto quanto a literatura técnica pouco tem abordado sobre os itens de DT que ocorrem nas atividades de teste de software. Objetivo: Investigar, do ponto de vista dos profissionais de teste de software, os tipos de TD associados à DT relacionada a teste, as causas que levam a ela e os efeitos de sua existência. Método: Foi realizada uma replicação do survey do projeto InsighTD com profissionais de teste de software no Brasil. Além disso, utilizou-se respostas de profissionais de software coletadas na primeira execução do survey. Deste modo, foram coletadas e analisadas, quantitativamente e qualitativamente, 54 respostas de participantes da indústria brasileira de software. Resultado: Este estudo evidencia o ponto de vista dos profissionais de teste sobre DT. Foi percebido que os itens de dívida relacionados a teste estão relacionados a diferentes tipos de DT, como, documentação, código e a própria dívida de teste. Foram identificados 61 causas de DT organizadas em oito categorias. As principais causas identificadas foram prazo, documentação desatualizada/incompleta e planejamento inadequado. Foram identificados 45 efeitos de DT e agrupados em seis categorias. Os principais efeitos são atrasos na entrega, retrabalho e baixa qualidade externa. Conclusão: A lista de causas e efeitos juntamente com as suas categorias foi organizada em um conjunto de diagramas de causa e efeito que podem auxiliar os profissionais de software no gerenciamento da DT. Palavras-chave: Dívida técnica, dívida técnica relacionada a testes, teste de software, causas da dívida técnica, efeitos da dívida técnica, diagramas probabilísticos de causa e efeito.


  • Mostrar Abstract
  • Context: The term Technical Debt (TD) refers to activities deferred during the development of the software project. TD can be compared to a financial debt whose debtor has the option of paying the principal amount of the debt with interest. Several initiatives have sought to identify the causes and effects associated with TD. Among them, the InsightTD project has carried out a survey in several countries to collect evidence on the state of TD practice. One of the results obtained by the project was the list of causes and effects of TD reported by software professionals. TD can be incurred at any stage of development, such as software testing. This activity aims to ensure the quality of the software being developed. However, both the project and the technical literature have not addressed the TD items that occur in software testing activities. Objective: To investigate, from the point of view of software testing professionals, the types of TD associated with test-related TD, the causes that lead to it and the effects of its existence. Method: A replication of the survey of the InsighTD project was carried out with software testing professionals in Brazil. In addition, responses from software professionals collected in the first execution of the survey were used. Thus, 54 responses from participants in the Brazilian software industry were collected and analyzed, quantitatively and qualitatively. Result: This study highlights the point of view of testing professionals on TD. It was noticed that test-related debt items are related to different types of TD, such as documentation, code, and the test debt itself. Sixty-one causes of TD were identified and organized into eight categories. The main causes identified were deadlines, outdated/incomplete documentation and inadequate planning. Forty-five TD effects were identified and grouped into six categories. The main effects are delivery delays, rework and poor external quality. Conclusion: The list of causes and effects along with their categories was organized into a set of cause and effect diagrams that can help software professionals in managing TD. 

Teses
1
  • CLEBER JORGE LIRA DE SANTANA
  • Uma arquitetura baseada em microserviços reativos para o deenvolvimento de aplicações IoT confiáveis

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • NABOR DAS CHAGAS MENDONÇA
  • PAULO DE FIGUEIREDO PIRES
  • THAÍS VASCONCELOS BATISTA
  • Data: 09/03/2021

  • Mostrar Resumo
  • A Internet das Coisas mudou o escopo da Internet e se tornou uma rede que conecta uma grande quantidade de dispositivos de diferentes tipos. A integração desses dispositivos heterogêneos promove novos serviços e aplicações, geram informações de valor agregado e conhecimento para o usuário final. O desenvolvimento de aplicações e serviços IoT e o cumprimento de seus requisitos de qualidade de serviço, como confidencialidade, interoperabilidade, escalabilidade, capacidade de evolução, adaptabilidade e confiabilidade apresentam vários desafios. Esses desafios são impostos principalmente pela larga escala da IoT, a natureza heterogênea das aplicações e dispositivos e o ambiente altamente dinâmico. Hoje em dia, o padrão de microsserviços tem sido aplicado com sucesso por empresas como Netflix e SoundCloud para resolver alguns desses problemas no contexto das acplicações da computação em nuvem. No entanto, no campo da IoT, a ampla adoção desses microsserviços ainda enfrenta alguns obstáculos a serem resolvidos a fim de atingir os benefícios potenciais dessa abordagem. O objetivo deste trabalho é propor uma arquitetura baseada em microsserviços reativos para o desenvolvimento de aplicações IoT. A arquitetura proposta consiste em um conjunto de componentes de software, ajustados para atender aos requisitos típicos de aplicações IoT que demandam alta disponibilidade. Além disso, a proposta inclui uma plataforma de software que materializa vários de seus componentes e auxilia, em tempo de execução, a atender o requisito de disponibilidade das aplicações IoT. Aplicamos nossa proposta em um cenário do mundo real no domínio da smart agriculture e em um cenário simulado no domínio smart water. Os resultados experimentais concluem que nossa abordagem melhora a disponibilidade, minimiza a latência e maximiza a taxa de transferência e aumenta a precisão significativamente, em comparação com outro estudo. Também realizamos uma avaliação de desempenho sob duas perspectivas. A primeira perspectiva está relacionada à avaliação da aplicação IoT por meio de diferentes políticas de implantação, que visavam mostrar como os componentes da arquitetura utilizados em microsserviços podem impactar o uso de recursos computacionais. A segunda perspectiva está relacionada à avaliação da aplicação IoT que utiliza os componentes da arquitetura proposta em um cenário no qual aumentamos o tráfego de dados IoT. Os resultados da avaliação de desempenho nas duas perspectivas mostram que a aplicação IoT permaneceu funcional durante a análise realizada.


  • Mostrar Abstract
  • The Internet of Things has changed the scope of the Internet and it has become a network connecting a myriad of devices of different types. The integration of these heterogeneous devices fosters novel services and applications, generates value-added information and actionable knowledge for the end user.  Developing IoT applications and services and fulfill their quality of service requirements, such as confidentiality, interoperability, scalability, evolvability, adaptability, and reliability pose multiple challenges. These challenges are imposed mainly by the ultra large scale of the IoT, the heterogeneous nature of applications and devices, and the highly dynamic environment. Nowadays, the microservices pattern has been successfully applied by companies such as Netflix and SoundCloud to address some of these issues in the context of cloud computing applications.  However, in the IoT field, the wide adoption of this Microservices still faces some obstacles to be solved in order to achieve the potential benefits of such approach. The goal of this work is to propose an architecture based on reactive Microservices for the development of IoT applications. The proposed architecture consists of a set of software components, tailored to meet the typical requirements of IoT applications that demand high availability. In addition, the proposal includes a software platform that materializes several of its components and help, at runtime, to meet the availability requirement of IoT applications. We applied our proposal in a real-world scenario in the field of Smart Agriculture and in a simulated scenario in the field of Smart Water. The experimental results conclude that our approach improves availability, minimizes latency and maximizes throughput, and increases accuracy significantly, in comparison to another study. We also carried out a performance evaluation from two perspectives. The first perspective is related to the evaluation of the IoT application through different deployment policies, which aimed to show how the architecture components used in microservices can impact the use of computational resources. The second perspective is related to the evaluation of the IoT application that uses the components of the proposed architecture in a scenario in which we increased the traffic of IoT data. The results of the performance evaluation in the two perspectives show that the IoT application remained functional during the analysis performed.

2
  • JOÃO PAULO DIAS DE ALMEIDA
  • Explorando Dados Abertos para Melhoria de Aplicações de Busca Espacial baseado em Palavras-Chave

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • CARLOS ANDRÉ GUIMARÃES FERRAZ
  • CARLOS EDUARDO SANTOS PIRES
  • DANIELA BARREIRO CLARO
  • FREDERICO ARAUJO DURAO
  • VANINHA VIEIRA DOS SANTOS
  • Data: 03/05/2021

  • Mostrar Resumo
  • A popularização das redes sociais e aplicativos para smartphones impulsionam a disponibilidade de dados na Web. Nesta extensa quantidade de dados, existe um tipo de dado específico conhecido como dado espacial. Este dado é a representação de um objeto físico a partir de coordenadas espaciais (e.g. latitude e longitude). Eles são críticos em um grande número de aplicações. Por exemplo, uma usuária pode ser avisada de uma emergência utilizando aplicativos baseados em dados espaciais. Estima-se que 80% de todos os aplicativos baseados em dados possuem dados geo-referenciados. Consultas espaciais são amplamente empregadas para manipular este tipo de dado eficientemente. Entretanto, o usuário tem um papel importante no processo de recuperação dos dados espaciais. Por décadas, pesquisadores propuseram técnicas para auxiliar usuários a expressar as suas necessidades. Dentre estas técnicas, pode-se citar os modelos booleanos, correspondência de padrões e expansão de consulta. Apesar da existência de alternativas importantes, faltam soluções aplicadas às consultas preferenciais por palavras-chave. O top-k Spatial Keyword Preference Query (SKPQ) surge como uma solução potencial para auxiliar usuários a encontrar pontos de interesse (POIs). O SKPQ seleciona POIs considerando a descrição de locais na vizinhança. Em essência, o usuário define uma restrição espacial (i.e. raio) e textual (i.e. palavras-chave) a ser satisfeita. Nesse contexto, esta tese propõe estratégias para melhorar a recuperação de informação proporcionada pela SKPQ e consultas similares. A contribuição desta tese pode ser dividida em três etapas. Na primeira, dois repositórios Linked Open Data (LOD) são explorados para melhorar a descrição dos POIs e suas vizinhanças. A descrição do POI no LOD contém mais informação do que nos bancos de dados espaciais tradicionais, o que leva a uma descrição mais detalhada. Na segunda etapa, os resultados da consulta são personalizados para apresentar os melhores POIs para o usuário nas primeiras posições do ranking. Ao explorar comentários relacionados aos POIs, o sistema identifica o objeto que melhor satisfaz o usuário da consulta e reordena o ranking de acordo com a preferência dele. Na terceira etapa, utilizamos uma função probabilística para descrever a preferência por POIs próximos um do outro. Esta função probabilística é incorporada à função de ranqueamento para que a busca também considere esta preferência. Por fim, avaliamos separadamente cada estratégia proposta nesta tese. A primeira estratégia alcançou melhora de 20% no NDCG ao utilizar palavras-chave aleatórias. Assim como encontrou POIs onde não era possível encontrar com a SKPQ. A segunda estratégia adiciona melhora de 92% no NDCG. Enquanto a terceira estratégia melhora a consistência do rank, alcançando aumento no coeficiente Tau de 52%.


  • Mostrar Abstract
  • Nowadays information is an essential resource in various sectors of the economy. The popularization of social networks, smartphone applications, and online services has increased the volume of data available online. Among this extensive amount of information, there is a specific data type called spatial data. It represents a physical object using its spatial coordinates (e.g. latitude and longitude). Spatial data is critical in a large number of application domains (e.g. land use, transportation plan). For instance, the user can find points of interest (POIs) or be warned of critical situations by spatial data applications like web search engines or emergency response applications. It’s been asserted that 80% of all data business has some locational reference. Spatial queries are widely employed to manipulate spatial data more efficiently. However, the user has a crucial role in the spatial information retrieval process when querying the needed information. For decades, researchers have proposed several techniques to aid users in expressing their information needs, such as Boolean models, pattern matching operators, and query expansion. Despite the existence of relevant alternatives in the field, there is still a lack of solutions applied to keyword preference queries. The Spatial Keyword Preference Query (SKPQ) arises as a potential solution to assist users in finding POIs. SKPQ selects POI based on the description of features in their neighborhood. In essence, the user defines a spatial (i.e. radius) and textual (i.e. query keywords) constraint to be satisfied. In this context, this thesis aims at proposing strategies to improve SKPQ results. The contribution is threefold. First, two Linked Open Data (LOD) repositories (i.e. DBpedia and LinkedGeoData) are exploited to improve the features description. The feature description in LOD contains more information than traditional spatial databases, leading to a more detailed description. Second, the query results are personalized to present the best POIs for the underlying user. By exploiting reviews on POIs, the system identifies the object that best satisfies the user and re-order the rank with respect to the user preference. Third, we model the user preference in visiting locations near to each other using a probabilistic function. This function is incorporated into the ranking function to retrieve POIs considering this user preference. We evaluate each technique employed in this proposal separately. The first technique achieves a relative NDCG improvement of  20% when using random query keywords. Also, it finds POIs where SKPQ is unable to find. The second technique further improves the relative NDCG by 92%. Finally, the third technique improves the rank consistency achieving a Tau performance of 52%.

3
  • JÔNATAS FERREIRA BASTOS
  • UNDERSTANDING TEST EVOLUTION: FROM HIGHLY-CONFIGURABLE SYSTEMS TO SOFTWARE ECOSYSTEMS

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • EDUARDO SANTANA DE ALMEIDA
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • RODRIGO ROCHA GOMES E SOUZA
  • GUSTAVO HENRIQUE LIMA PINTO
  • MARCELO BEZERRA D'AMORIM
  • Data: 04/05/2021

  • Mostrar Resumo
  • Software evolution is inevitable if the systems are planned to survive in the long-term. Equally, well-understood is the necessity of having a good test suite available to ensure the quality of the current state of the software system and to ease future changes. This is especially true in the context of reusable systems since they are planned to attend for a long time a specific market niche and need to support a large number of configuration options. However, developing and maintaining a test suite is time-intensive and costly. This situation is challenging for the projects: on the one hand, tests are essential for the success of software; on the other hand, tests become a severe burden during maintenance. Even though a substantial body of literature has studied testing in reusable environments, test evolution analysis has not been addressed. In general, researchers have looked into analyzing test strategies, dynamic test selection techniques, and co-evolution of tests along with other systems artifacts. This thesis intends to improve the test evolution body of knowledge in reusable systems, investigating characteristics that indicate the effort to develop and maintain the test suite and unveiling how the reusable aspects affect the tests. The set of evidence can help researchers and practitioners to better planning the test development and evolution. This way, we employed a multi-method approach to develop the understanding of test evolution in configurable systems and unveil evidence on the topic from various sources. In the first phase of the research program, we provided an overview of the existing research related to this thesis’s subjects and presented related work to our investigation. The second phase was composed of four empirical studies. First, we performed a case study to analyze the test evolution of a large configurable system. Next, we performed a comparative study to evaluate the test evolution in 18 open-source projects from various sizes and domains in configurable systems and their similarities and differences to 18 Single Systems (SS) projects. Third, we conducted an extended study to analyze the test suite evolution in another category of reusable systems to verify whether some observations are recurring and gather new data that support the findings. Finally, we surveyed test contributors to investigate the test evolution from the development point of view and improve the findings in previous stages. This work collected a set of findings of test evolution, and these findings were strengthened by using different research methods. Our work provided a better understanding of test evolution in configurable systems by documenting evidence observed in open-source projects and test contributors. Moreover, in this Thesis, we synthesized the gathered evidence and identified open issues in this research topic. These findings are an important step to establish guidelines for addressing test evolution in configurable systems.


  • Mostrar Abstract
  • Software evolution is inevitable if the systems are planned to survive in the long-term. Equally, well-understood is the necessity of having a good test suite available to ensure the quality of the current state of the software system and to ease future changes. This is especially true in the context of reusable systems since they are planned to attend for a long time a specific market niche and need to support a large number of configuration options. However, developing and maintaining a test suite is time-intensive and costly. This situation is challenging for the projects: on the one hand, tests are essential for the success of software; on the other hand, tests become a severe burden during maintenance. Even though a substantial body of literature has studied testing in reusable environments, test evolution analysis has not been addressed. In general, researchers have looked into analyzing test strategies, dynamic test selection techniques, and co-evolution of tests along with other systems artifacts. This thesis intends to improve the test evolution body of knowledge in reusable systems, investigating characteristics that indicate the effort to develop and maintain the test suite and unveiling how the reusable aspects affect the tests. The set of evidence can help researchers and practitioners to better planning the test development and evolution. This way, we employed a multi-method approach to develop the understanding of test evolution in configurable systems and unveil evidence on the topic from various sources. In the first phase of the research program, we provided an overview of the existing research related to this thesis’s subjects and presented related work to our investigation. The second phase was composed of four empirical studies. First, we performed a case study to analyze the test evolution of a large configurable system. Next, we performed a comparative study to evaluate the test evolution in 18 open-source projects from various sizes and domains in configurable systems and their similarities and differences to 18 Single Systems (SS) projects. Third, we conducted an extended study to analyze the test suite evolution in another category of reusable systems to verify whether some observations are recurring and gather new data that support the findings. Finally, we surveyed test contributors to investigate the test evolution from the development point of view and improve the findings in previous stages. This work collected a set of findings of test evolution, and these findings were strengthened by using different research methods. Our work provided a better understanding of test evolution in configurable systems by documenting evidence observed in open-source projects and test contributors. Moreover, in this Thesis, we synthesized the gathered evidence and identified open issues in this research topic. These findings are an important step to establish guidelines for addressing test evolution in configurable systems.

4
  • FLAVIA MARISTELA SANTOS NASCIMENTO
  • Uma Abordagem Flexível para Escalonar Tarefas Hard e Soft em Sistemas de Tempo Real Multiprocessados

  • Orientador : GEORGE MARCONI DE ARAUJO LIMA
  • MEMBROS DA BANCA :
  • GEORGE MARCONI DE ARAUJO LIMA
  • VINICIUS TAVARES PETRUCCI
  • DANIEL MOSSÉ
  • KONSTANTINOS BLETSAS
  • LILIANA CUCU-GROSJEAN
  • Data: 28/06/2021

  • Mostrar Resumo
  • O número crescente de aplicações modernas, que dependem da capacidade de CPUs multicore, tem impulsionado a área de sistemas de tempo real para a arquitetura de multiprocessada. Na verdade, tais aplicações podem ser encontradas em diversas áreas, tais como como automotiva, aviação e indústria de eletrônicos, sendo a maioria delas composta por serviços críticos (hard) e não críticos (soft).

    Para sistemas de tempo real multiprocessados, que lidam com tarefas hard e soft, o foco está em minimizar o tempo de resposta das tarefas soft, sem comprometer as restrições temporais das tarefas hard. Diversas abordagens de escalonamento foram propostas para lidar com estes dois tipos de tarefa em um único processador, enquanto para ambientes multiprocessados tais abordagens são menos comuns e são tipicamente extensões dos mecanismos descritos para sistemas monoprocessados.

    Este trabalho descreve uma abordagem de escalonamento flexível, projetada para sistemas de tempo real multiprocessados, compostos por tarefas hard e soft. De acordo com a abordagem proposta, as tarefas hard são atribuídas aos processadores de maneira off-line e não migram durante sua execução. Para tarefas soft duas configurações são possíveis. Elas podem ser alocadas na fila local de cada processador, e neste caso a migração não é permitida, ou podem estar numa fila global, sendo acessada por todos os processadores. A abordagem de escalonamento descrita nesta tese está fortemente ligada ao conceito de servidores, que funcionam como entidades de escalonamento (proxies), sendo responsáveis por escalonar tarefas (ou outros servidores) que estejam associados a ele. Dois servidores especiais são descritos: o single client server e o slack server. Juntos, estes servidores são capazes de (a) encapsular tarefas soft para que sua execução não coloque em risco os requisitos temporais das tarefas hard e (b) reclamar a folga não utilizadas para favorecer a execução de tarefas soft. Com isso, o tempo médio de resposta das tarefas soft é melhorado, sem comprometer os requisitos temporais das tarefas hard.

    O uso das abordagens de escalonamento descritas nesta tese, em ambas as configurações, fornece melhorias nas métricas relacionadas a QoS para tarefas soft, tais como a taxa de perda de deadline e tempo médio de resposta, sem com isso comprometer as garantias temporais das tarefas hard. Os experimentos mostraram uma redução de até 27% na taxa de perda de deadline e uma redução de até 14% no tempo médio de resposta das tarefas soft. Tais resultados indicam que a capacidade de processamento disponível deixada sem uso por tarefas hard pode ser usada efetivamente para executar tarefas soft. Além disso, a abordagem proposta se mostrou flexível, podendo ser adaptada a outras políticas de escalonamento baseadas em EDF de maneira simples.


  • Mostrar Abstract
  • The increasing number of modern applications, that rely on the processor capacity of multicore CPUs, has been pushing the area of real-time systems towards multiprocessor architecture. In fact, such applications are present in a wide variety of areas, such as automotive, avionics and personal electronics industries, most of them being composed of both time critical (hard) and non-critical (soft) services.
    Indeed, for multiprocessor real-time systems that deal with both hard and soft tasks, one is interested in minimizing the response time of the soft tasks, while not jeopardizing timeliness of hard tasks. Several scheduling approaches have been proposed to deal with hard and soft tasks on a single processor, while for a multiprocessor environment such approaches are less common and are typically extensions of the mechanisms described for uniprocessor systems.

    This work describes a flexible scheduling approach designed for multiprocessor real-time systems composed of both hard and soft tasks. According to the proposed approach, hard tasks are assigned to processors in an off-line manner and do not migrate during their execution. As for soft tasks, two main configurations are possible. They may be placed either in each processor's local queue, for which migration is not allowed, or in a global queue, being accessed by all processors. The scheduling approach described in this thesis is strictly linked to the concept of servers, which are scheduling proxies responsible for scheduling the tasks (or other servers) assigned to them. Two special servers are described, whose definition, rules and correctness proof are also presented in this thesis. Together, these servers are able to (a) encapsulate soft tasks so that their execution does not put at risk the timing requirements of hard tasks and to (b) reclaim system unused slack to favor the execution of soft tasks. By doing so, the average response time of soft tasks are improved, without jeopardizing the timeliness of hard tasks.

    It is shown that by using the scheduling approach described in this thesis, in both configurations, improves the QoS-related metrics for soft tasks, such as deadline miss ratio and average response time, without compromising timeliness guarantees for hard tasks. The experiments has shown a reduction of up to $27\%$ in the deadline miss ratio and a reduction of up to $14\%$ in the average response time of the soft tasks.Such results indicate that the available processing capacity left unused by hard tasks can be effectively used for executing soft tasks.Additionally,  the proposed approach has shown to be flexible enough to be adapted to other EDF-based scheduling policies at low cost..
5
  • RAFAEL LIMA COSTA
  • Tactful Networking as a cornerstone for Opportunistic Human-Aware D2D Communication

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • ALINE CARNEIRO VIANA
  • EDUARDO COELHO CERQUEIRA
  • FABIOLA GONCALVES PEREIRA GREVE
  • LEOBINO NASCIMENTO SAMPAIO
  • RICARDO ARAUJO RIOS
  • Data: 03/08/2021

  • Mostrar Resumo
  • Dentre os desafios das redes móveis, há um aumento do tráfego de dados, um número crescente de dispositivos conectados, limitações de espectro e altos custos de atualizações de infraestrutura. Nesse contexto, a comunicação oportunística dispositivo-a-dispositivo (do inglês device-to-device D2D) surge como uma solução para descarregar dados, aumentar a capilaridade, entregar conteúdo em cenários específicos (por exemplo, emergência) e alavancar aplicações e serviços inovadores. Padrões anteriores como LTE discutiram D2D amplamente. Ainda assim, pesquisas recentes reforçam que 5G/6G serão os verdadeiros habilitadores do D2D, dada a possibilidade mais recente de extrair um grande conjunto de dados de comportamento humano através dos dispositivos móveis de usuários. No estado da arte, algoritmos de encaminhamento oportunístico via D2D extraíram características de mobilidade humana para melhorar a relação custo-benefício da entrega de conteúdo. No entanto, a maioria das iniciativas lidou com métricas tradicionais, devido a restrições como disponibilidade limitada de conjuntos de dados reais ou a falta de uma visão de rede centrada no ser humano. As soluções de próxima geração precisam de uma visão mais aprofundada dos aspectos humanos ocultos em conjuntos de dados. Além disso, cenários úteis para as operadoras de celular carecem de avaliação. Para tanto, esta tese~\textit{orienta o leitor em todo o processo de construção de uma nova Estratégia de Comunicação Oportunistística Ciente do Humano (TOOTS)}. TOOTS utiliza padrões de encontros sem fio, consciência temporal, espacial, geográfica e de direção para melhorar o custo-benefício da entrega de conteúdo em um cenário de redes móveis. A proposta consiste em: aprender as melhores práticas do estado da arte do aspecto humano; obter ideias para melhorar o desempenho da estratégia; usar, propor e analisar métricas ciente do humano; combinar métricas e percepções sobre a estratégia visando um desempenho aprimorado em um cenário móvel mais realista, e, finalmente, avaliar a estratégia por meio de seus pontos fortes e fracos. Esta tese mostra que ao seguir esse processo, TOOTS melhorou o desempenho de um cenário de entrega de conteúdo oportunístico em termos de sobrecarga, taxa de entrega e latência. Primeiro, para alcançar os resultados, fazemos um levantamento do aspecto humano nas soluções de rede há mais de uma década. Descobrimos que há uma evolução na forma como os humanos se relacionam com os desafios da rede. Essa visão mais ampla da consciência humana culmina na perspectiva do Tactful Networking, paradigma que apresentamos a seguir, incluindo discussões sobre exemplos de aplicações e ideias. Concluímos a revisão da literatura discutindo estratégias de encaminhamento oportunístico de última geração, incluindo suas contribuições, lacunas e questões em aberto. Em segundo lugar, discutimos uma estrutura para extrair dados humanos brutos ocultos em conjuntos de dados. Um estudo de caso com o conjunto de dados MACACO valida a estrutura por meio de resultados e análises de caracterização do trace (i.e., conjunto de dados). A seguir, caracterizamos os traces MACACO, NCCU e GRM para trazer ideias e validar a TOOTS. As métricas da estratégia apresentada e analisada vêm dos resultados e percepções da caracterização de tais conjuntos de dados. Terceiro, apresentamos o TOOTS, visando custo-benefício na entrega de conteúdo em um cenário móvel. Posteriormente, apresentamos a definição formal para a escolha do problema dos nós disseminadores (1ª fase do TOOTS). Como motivação, analisamos a sobrecarga e a latência do encaminhamento Epidêmico. Posteriormente, apresentamos as duas fases do TOOTS: uma Política de Disseminação Ciente do Humano e um algoritmo de encaminhamento. Finalmente, comparamos a eficácia do TOOTS em suas duas fases com algoritmos aprimorados Store-wait-forward, Epidêmico e Bubble Rap por meio de conjuntos de dados reais e sintéticos. Entre os principais resultados, em um cenário com um alcance de comunicação de 30~m, TOOTS atingiu taxa de entrega de 100\% com 28\% e 73\% menos latência; e com sobrecarga (i.e., overhead) reduzida de 16\% e 27\%, respectivamente, no conjunto de dados reais e sintético. Com um alcance restrito (10~m), TOOTS foi a estratégia mais rápida e a única que entregou 100\% do conteúdo dentro do conjunto de dados real. Consequentemente, esta tese contribui para abordar o problema de entrega oportunística de conteúdo em redes celulares, fornecendo uma solução ciente do humano com custo x benefício. A estratégia pode ser aplicada em diferentes cenários para auxiliar a operadora na entrega de conteúdo sem necessariamente usar sua rede legada, por exemplo, explorando a capilaridade de seus usuários móveis, para descarregamento de dados e outras aplicações.


  • Mostrar Abstract
  • Among the mobile network challenges, there is data traffic growth, an increasing number of connected devices, spectrum limitations, and costly infrastructure updates. In this context, opportunistic D2D communication appears as a solution to offload data, increase capillarity, deliver content in specific scenarios (e.g., emergency) and foster innovative applications and services. Previous standards like LTE discussed D2D broadly. Still, recent research remarks that 5G/6G will be D2D's real enablers, given the possibility of using human-behavior big data from users' devices. Previous opportunistic D2D forwarding algorithms extracted mobility characteristics for improving content delivery cost-effectiveness. Nevertheless, most initiatives dealt with traditional metrics due to constraints, such as limited availability of real traces or the lack of a human-centered networking vision. Next-generation solutions need a more in-depth vision of human aspects hidden into datasets. Moreover, scenarios practical to mobile carriers lack evaluation. To this end, this thesis~\textit{guides the reader through the whole process for building a novel Tactful Opportunistic COmmunicaTion Strategy (TOOTS)}. TOOTS leverages wireless encounter patterns, temporal, spatial, geographic, and direction awareness to improve cost-effectiveness content delivery in a mobile networks scenario. The proposal consists of: learning human-aspect state-of-art best practices; achieving insights to improve strategy's performance; using, proposing, and analyzing human-aware metrics; combining metrics and insights into the strategy targeting an improved performance in a more realistic mobile scenario; and finally, evaluating the strategy through its strengths and shortcomings. This thesis shows that TOOTS improved the performance of an opportunistic content delivery scenario in terms of overhead, delivery rate, and latency by following this process. First, to achieve the results, we survey the human aspect in networking solutions for over a decade. We found that there is an evolution in how the human links to networking challenges. This broader human-aware vision culminates into the Tactful Networking perspective, which we introduce to follow, including discussions concerning application examples and insights. We complete the literature review by discussing state-of-art opportunistic forwarding strategies, including contributions, gaps, and open issues. Second, we discuss a framework for enhancing raw human data hidden into datasets. A case study with the MACACO dataset validates the framework through trace characterization results and analysis. Following, we characterize MACACO, NCCU, and GRM datasets to bring insights and to validate TOOTS. The presented and analyzed strategy's metrics come from such datasets' characterization results and insights. Third, we introduce TOOTS, targeting cost-effective content delivery in a mobile scenario. Afterward, we present the formal definition for choosing the disseminator nodes problem (TOOTS' 1st phase). As motivation, we analyze the overhead and latency of the Epidemic forwarding. Subsequently, we introduce TOOTS' two phases: a Tactful Dissemination Policy and a forwarding algorithm. Finally, we compare TOOTS' effectiveness on its phases with enhanced Store-wait-forward, Epidemic, and Bubble Rap algorithms through real and synthetic traces. Among the main outcomes, in a scenario with a 30~m range, TOOTS reached a 100\% delivery ratio with 28\% and 73\% reduced delivery latency, and with 16\% and 27\% reduced overhead, respectively, in the real and synthetic datasets. With a restricted (10~m) range, TOOTS was the fastest strategy and the only one that delivered 100\% of the contents within the real trace. Consequently, this thesis contributes to addressing the opportunistic content delivery problem in cellular networks by providing a cost-effective human-aware opportunistic solution. The strategy can be applied in different scenarios to assist the operator in delivering content without not necessarily using their legacy network, e.g., by exploring the capillarity of their mobile users, for data offloading and other applications.

6
  • MARCOS BARBOSA DÓSEA
  • Valores Limiares de Métricas Sensíveis a Design baseados em Papéis de Design

  • Orientador : CLAUDIO NOGUEIRA SANT ANNA
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • MANOEL GOMES DE MENDONCA NETO
  • MAURÍCIO FINAVARO ANICHE
  • MARCELO DE ALMEIDA MAIA
  • Data: 16/08/2021

  • Mostrar Resumo
  • O estado da arte das técnicas para identificação de anomalias de código são baseadas na análise de métricas do código. Entretanto, muitas dessas técnicas possuem baixa acurácia. Uma possível razão é porque os elementos do código-fonte, tais como métodos, implementados com diferentes decisões de design, são avaliados usando os mesmos valores limiares para cada métrica. Outra possível razão é que estes valores limiares são geralmente derivados de classes que foram desenvolvidas usando decisões de design distintas. Usar valores limiares genéricos e que não consideram o contexto de design de cada classe avaliada pode gerar muitos falsos positivos e falsos negativos para os desenvolvedores de software. Nosso objetivo é considerar o papel de design desempenhado por cada classe do sistema como contexto para derivar valores limiares e detectar anomalias de código. Nossa principal hipótese é que valores limiares que consideram o papel de design da classe como contexto, podem apontar anomalias de código mais relevantes para os desenvolvedores de software. Nós conduzimos alguns estudos experimentais para definição de duas técnicas que consideram o papel de design como contexto. Primeiro, nós executamos uma survey de larga escala que mostrou que profissionais possuem dificuldades para ajustar ferramentas de análise estática de código nos seus processos de desenvolvimento de software. Uma possível razão reconhecida pelos profissionais é que muitas dessas ferramentas usam um valor limiar genérico para cada métrica que pode não ser adequado para avaliar todas as classes do sistema. Segundo, nós definimos uma heurística para identificar o principal papel de design de cada classe e conduzimos um estudo empírico para investigar a influência de algumas decisões de design na distribuição dos valores das métricas de software. Nossas descobertas mostram que as decisões de design que mais influenciaram na distribuição dos valores das métricas foram: (i) papel de design de classe (ii) bibliotecas utilizadas, (iii) estilo de codificação, (iv) estratégia de codificação usada para tratamento de exceção, e (v) estratégia para realizar log e depuração do código. Portanto, essa decisões de design poderiam ser consideradas como contexto para derivar valores limiares. Nós usamos essas descobertas para propor duas novas técnicas para derivar valores limiares sensíveis ao design do sistema usando os papéis de design da classe como contexto. Em seguida, realizamos dois estudos experimentais para avaliar as técnicas propostas. O primeiro estudo mostrou que as técnicas melhoraram a precisão de acordo com as percepções dos desenvolvedores. Como é impossível e cansativo fazer uma avaliação completa da qualidade do código-fonte com os desenvolvedores, conduzimos um segundo estudo explorando a evolução dos projetos de software de domínios arquiteturais populares. Descobrimos que nossas técnicas melhoraram o \emph{recall} para apontar métodos efetivamente refatorados durante a evolução do software.


  • Mostrar Abstract
  • State-of-the-art techniques and Automated Static Analysis Tools (ASATs) for identifying code smells rely on metric-based assessment. However, most of these techniques have low accuracy. One possible reason is that source code elements, such as methods implemented according to different design decisions, are assessed through the same generic threshold for each metric. Other possible reason is that these metric thresholds are usually derived from classes driven by different design decisions. Using generic metric thresholds that do not consider the design context of each evaluated class can generate many false positives and false negatives for software developers. Our goal is to propose design-sensitive techniques to derive contextual metric thresholds. Our primary hypothesis is that using the design role played by each system class to define this context may point out more relevant code smells to software developers. We conducted some empirical studies to define the proposed techniques. Firstly, we performed a large-scale survey that showed that practitioners recognize difficulties in fitting ASATs into the software development process. They also claim that there is no routine for application. One possible reason practitioners recognize that most of these tools use a single metric threshold, which might not be adequate to evaluate all system classes. Secondly, we conducted an empirical study to investigate whether fine-grained design decisions also influence the distribution of software metrics and, therefore, should be considered to derive metric thresholds. Our findings show that the distribution of metrics is sensitive to the following design decisions: (i) design role of the class (ii) used libraries, (iii) coding style, (iv) exception handling, and (v) logging and debugging code mechanisms. We used these findings to propose two new techniques to derive design-sensitive metric thresholds using the class design role as context. Then, we carried out two large-scale empirical studies to evaluate them. The first study showed that our proposed techniques improved precision according to developers' perceptions. Since it is impossible and tiring to perform a complete source code quality assessment with developers, we conducted a second study mining the evolution of software projects from popular architectural domains. We found that our techniques improved recall to point out methods effectively refactored during software evolution.

7
  • ERIC BERNARDES CHAGAS BARROS
  • Jemadar-AI: um framework baseado na névoa para o gerenciamento de energia de uma Microgrid

  • Orientador : MAYCON LEONE MACIEL PEIXOTO
  • MEMBROS DA BANCA :
  • MAYCON LEONE MACIEL PEIXOTO
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • LEOBINO NASCIMENTO SAMPAIO
  • LUIZ FERNANDO BITTENCOURT
  • EDWARD DAVID MORENO ORDONEZ
  • Data: 23/09/2021

  • Mostrar Resumo
  • O constante aumento da demanda de energia elétrica e a redução dos meios convencionais de produção apontam para uma futura crise energética. Um dos fatores que impacta na crescente demanda é o consumo descontrolado, gerando um despacho de energia cada vez maior para atender as necessidades do consumidor. Dessa forma, a produção precisa utilizar uma maior quantidade das fontes de energia, principalmente nos horários de pico de consumo. Para controlar a demanda, técnicas de gerenciamento da demanda estão sendo usadas pelos consumidores a fim de reduzir os períodos de pico e as contas de energia. Do mesmo modo, a produção de energia pode combinar o uso de fontes de energia renováveis e não-renováveis com foco na redução da produção de energia não-renovável. Nesse cenário, a produção inteligente de energia necessita de um controle automatizado para evitar as perdas de energia. Atualmente, diversas pesquisas propõem o uso de algoritmos de otimização para o escalonamento de equipamentos elétricos como uma solução do gerenciamento da demanda, de forma que o uso dos equipamentos são escalonados para evitar os períodos de pico de energia. Também têm sido propostas pesquisas sobre o uso do controle Proporcional-Integral-Derivativo - (PID) para equilíbrio da produção renovável e não-renovável. Entretanto, poucas pesquisas consideram a utilização da névoa com o auxílio da nuvem para realizar o processamento desses algoritmos. Dessa forma, este trabalho propõe o framework JEMADAR-AI para lidar com o tráfego de dados das redes elétricas. JEMADAR-AI realiza o treinamento de duas redes neurais baseadas em aprendizado por reforço: (i) a primeira faz o escalonamento de energia; (ii) a segunda ajusta o controlador PID dinamicamente. Para isso, JEMADAR-AI utiliza uma arquitetura que combina a computação em névoa com a computação em nuvem com o objetivo de reduzir tempos de respostas das solicitações. Os resultados obtidos por meio da avaliação de desempenho mostraram que a utilização do JEMADAR-AI reduz em até 19% a potência elétrica nos horários de pico e 21,6% os valores das contas de energia quando comparados com cenários que não realizam nenhuma otimização.


  • Mostrar Abstract
  • The constant increase in demand for electricity and the reduction of conventional means of production point to a future energy crisis. One of the factors that impact the growing demand is uncontrolled consumption, generating an increasing energy dispatch to meet the consumer's needs. Thus, production needs to use a greater amount of energy sources, especially during peak consumption hours. To control demand, demand management techniques are being used by consumers to reduce peak periods and energy bills. Likewise, energy production can combine the use of renewable and non-renewable energy sources with a focus on reducing non-renewable energy production. In this scenario, intelligent energy production requires automated control to avoid energy losses. Currently, several researchers propose the use of optimization algorithms for electrical equipment scheduling as a demand management solution, so the use of equipment be displaced to avoid peak energy periods. Research has also been proposed on the use of the Proportional-Integral-Derivative (PID) control to balance renewable and non-renewable production. However, few researchers consider fog computing with the help of the cloud to perform the processing of these algorithms. Thus, this work proposes the JEMADAR-AI framework to deal with the data traffic of electrical networks. JEMADAR-AI trains two neural networks based on reinforcement learning: (i) the first one to performs equipment scheduling; (ii) the second adjusts the PID controller dynamically. For this, JEMADAR-AI uses an architecture that combines fog computing with cloud computing to reduce request response times for equipment scheduling and power adjustment requests. The results obtained through the performance evaluation showed that the use of JEMADAR-AI reduces up to 19% the electrical power at peak hours and 21.6% the values of the energy bills when compared with scenarios that do not perform any optimization.

8
  • LAECIO ARAUJO COSTA
  • SapeS: Uma arquitetura de avaliação do desempenho acadêmico na Educação à Distância baseada em Learning Analytics e Ontologias

  • Orientador : MARLO VIEIRA DOS SANTOS E SOUZA
  • MEMBROS DA BANCA :
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • ECIVALDO DE SOUZA MATOS
  • FREDERICO LUIZ GONÇALVES DE FREITAS
  • LEÔNIDAS DE OLIVEIRA BRANDÃO
  • PAULEANY SIMOES DE MORAIS
  • Data: 28/09/2021

  • Mostrar Resumo
  • A Educação a Distância, acompanhada pela evolução das Tecnologias de Informação e Comunicação, vem apresentando índices de matrículas superiores às matrículas no ensino tradicional presencial. Aliado a este crescimento, educadores passaram a gerenciar turmas com um número maior de alunos geograficamente distribuídos e, ainda assim, não conseguem aplicar os mesmos mecanismos de avaliação, observação e acompanhamento do aluno utilizados no ensino presencial. Desta forma, surgem desafios aos professores quanto ao acompanhamento do progresso acadêmico dos estudantes pautado no cumprimento dos objetivos educacionais planejados e na avaliação do desempenho acadêmico supervisionando a aquisição de conhecimento. Acompanhar as experiências de aprendizagem dos alunos nos Sistemas de Gerenciamento da Aprendizagem (SGA) para avaliar o desempenho acadêmico e o progresso dos estudantes é um dos desafios mais intensos e exaustivos para os educadores devido a quantidade de dados educacionais produzidos e aos diversos indicadores da aprendizagem disponíveis no SGA. Assim, esta pesquisa objetiva investigar como uma abordagem de monitoramento e avaliação de dados educacionais sobre o percurso acadêmico do aluno no SGA, chamada SapeS, pode impactar positivamente no processo de ensino e aprendizagem na Educação a Distância. A solução proposta processa dados educacionais provenientes do SGA, extrai conhecimento útil e disponibiliza informações para educadores e alunos baseado em técnicas de Learning Analytics e Ontologias Computacionais, norteados por Taxonomia dos Objetivos Educacionais. A solução foi desenvolvida baseada na metodologia Design Science Research (DSR) e aplicada em um contexto real para avaliação junto à população (n=24). Por meio dos dados coletados e análises realizadas, foi verificado que houve uma forte adesão ao uso da ferramenta SapeS proposta e uma diferença significativamente positiva entre os dados coletados em diferentes momentos da investigação. Foram verificados maior engajamento, motivação e participação nas atividades acadêmicas do curso investigado e maior atenção dos docentes quanto a avaliação do percurso do aluno, além da verificação e adequação do planejamento pedagógico em relação à situação dos discentes face aos objetivos educacionais. Este trabalho apresenta contribuições para professores e alunos da Educação a Distância oferecendo suporte ferramental, frente ao grande volume de dados educacionais oriundos do SGA.


  • Mostrar Abstract
  • Distance Learning, along with the evolution of Information and Communication Technology (ICT), has higher enrollment rates than traditional education. With this growth, educators started to manage classes with a more significant number of geographically distributed students. Challenges arise for teachers regarding how to monitor academic progress based on the fulfillment of planned educational objectives and assessing students' academic performance, supervising the acquisition of knowledge. Tracking students' learning experiences in Learning Management Systems (LMS) to assess academic performance and student progress is one of the most intense and exhausting challenges for educators due to the amount of educational data produced and the various learning indicators available on the LMS. Thus, this research aims to investigate how an approach to monitoring and evaluating the student's academic trajectory in the LMS, called SapeS, can positively impact the teaching and learning process in Distance Learning. The proposed solution aims to process educational data from the LMS, extract useful knowledge, and make information available to educators and students with techniques of Learning Analytics and Computational Ontologies, guided by Taxonomy of Educational Objectives. The solution was developed based on the Design Science Research (DSR) methodology and applied in a real context for evaluation with the population (n=24). Through the analysis carried out it was verified that there was a strong adherence to the use of the proposed tool and a significant difference between the data collected at different moments of the investigation. There was a greater engagement, motivation, and participation in the academic activities of the investigated course and greater attention from the teachers regarding the evaluation of the student's trajectory, in addition to checking and adapting the pedagogical planning in relation to the student's situation, and the planned educational objectives.

9
  • JEAN CLEMISSON SANTOS ROSA
  • A Coordenação da Colaboração no SPIDe: mecanismos e práticas de apoio ao codesign de interação

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • ECIVALDO DE SOUZA MATOS
  • DUARTE NUNO JARDIM NUNES
  • RODRIGO FREESE GONZATTO
  • LUCIANA APARECIDA MARTINEZ ZAINA
  • TAYANA UCHÔA CONTE
  • Data: 25/11/2021

  • Mostrar Resumo
  • A criação de artefatos computacionais interativos deve refletir as necessidades, interesses, restrições, modos de trabalho e, sempre que possível, aspectos culturais dos seus potenciais usuários. O SPIDe (Semio-Participatory Interaction Design) foi concebido com a intenção de refletir esses aspectos no produto computacional desenvolvido, por meio de práticas colaborativas de design (codesign). Nesse sentido, a literatura indica que as práticas de codesign favorecem a construção da identidade do produto em relação aos seus potenciais usuários. O codesign manifesta uma perspectiva colaborativa para o design, no sentido em que as pessoas influenciadas na criação e uso de tecnologias devem colaborar na sua criação e desenvolvimento. A colaboração tem três dimensões bem definidas na literatura, conforme o Modelo 3C: cooperação, comunicação e coordenação. A cooperação diz respeito à operação conjunta dos usuários em um espaço compartilhado fazendo uso da comunicação; por sua vez, a comunicação consiste na troca de mensagens para a construção mútua e compartilhada a partir do gerenciamento realizado pela coordenação; já a coordenação define as atividades e o conjunto de objetos que serão manipulados, além de também definir a mídia e o modo de transmissão das mensagens. Ainda que o SPIDe se caracterize como um processo de codesign de interação, há diversos aspectos a serem investigados e melhorados. Um deles diz respeito à coordenação. Portanto, nesta pesquisa buscamos identificar como promover a coordenação da colaboração no SPIDe, de modo a aprimorar a condução e promover a articulação dos seus mecanismos e práticas. Para isso, investigou-se mecanismos e práticas de apoio e promoção da coordenação da colaboração no SPIDe. Metodologicamente, foram conduzidos múltiplos estudos com diversas abordagens de coleta de dados, como revisão sistemática e narrativa da literatura, entrevistas semi-estruturadas, diários de bordo, roda de conversa e Technology Acceptance Model questionnaire e Design Science Research. A análise temática a partir dos dados produzidos fundamentaram os aprimoramentos realizados no SPIDe e relatados neste relatório de tese, como as diretrizes para a condução da técnica braindraw, a construção da ferramenta epistêmica SPIDe\_Canvas e a construção de uma plataforma para a condução online e distribuída do SPIDe. Os resultados desta pesquisa, além de aprimorar o SPIDe, podem auxiliar profissionais e pesquisadores a construírem artefatos computacionais interativos em colaboração com os potenciais usuários de modo divertido, dinâmico e eficaz.


  • Mostrar Abstract
  • The creation of interactive computational artifacts should reflect the needs, interests, restrictions, ways of working, and cultural aspects of their potential users whenever possible. SPIDe (Semio-Participatory Interaction Design) was conceived to reflect these aspects in the developed computational product through collaborative design practices (codesign). In this sense, the literature indicates that codesign practices favor the product's identity concerning its potential users. Codesign expresses a collaborative perspective for design, in the sense that people influenced by the creation and use of technologies must collaborate in its creation and development. Collaboration has three well-defined dimensions in the literature, according to the 3C Model: cooperation, communication, and coordination. The cooperation concerns the joint operation of users in a shared space making use of communication; in turn, communication consists of the exchange of messages for mutual and shared construction based on the management carried out by the coordination; coordination defines the activities and the set of objects that will be manipulated, in addition to defining the media and the mode of transmission of messages. Although SPIDe is characterized as an interaction codesign process, several aspects are to be investigated and improved. One of them concerns coordination. Therefore, in this research, we seek to identify how to promote the coordination of collaboration in SPIDe. To this, we investigated mechanisms and practices to support and promote the coordination of collaboration in SPIDe. Methodologically, we conducted multiple case studies with different data collection approaches, such as systematic review and narrative of literature, semi-structured interviews, logbooks, conversation, and Technology Acceptance Model questionnaire and Design Science Research. The thematic analysis based on the data produced supported the improvements made in SPIDe and reported in this thesis report, such as the guidelines for conducting the braindraw technique, the construction of the epistemic tool SPIDe\_Canvas and the construction of a platform for conducting online and distributed from SPIDe. In addition to improving SPIDe, the results of this research can help professionals and researchers build interactive computational artifacts in collaboration with potential users in a fun, dynamic, and effective way.

10
  • JEFFERSON FONTINELE DA SILVA
  • Prestando atenção aos limites na segmentação semântica de imagens.
  • Orientador : LUCIANO REBOUCAS DE OLIVEIRA
  • MEMBROS DA BANCA :
  • LUCIANO REBOUCAS DE OLIVEIRA
  • MICHELE FÚLVIA ANGELO
  • ALEXANDRE DA COSTA E SILVA FRANCO
  • FLAVIO DE BARROS VIDAL
  • RICARDO DA SILVA TORRES
  • Data: 20/12/2021

  • Mostrar Resumo
  • A segmentação de imagens consiste em atribuir um rótulo a cada pixel da imagem de forma que os pixels pertencentes aos mesmos objetos da imagem tenham os mesmos rótulos. A área segmentada de um objeto deve abranger todos os pixels até os limites (limites) com os demais objetos. A região de fronteira pode fornecer informações úteis para o processo de segmentação, pois marca uma descontinuidade que pode definir um limite de segmento. No entanto, métodos de segmentação comumente sofrem para explorar informações de fronteira e consequentemente segmentar esta região. Isso se deve principalmente à proximidade entre regiões da imagem contendo rótulos diferentes. Diante disso, propomos investigar como levar em conta as informações de fronteira ao segmentar semanticamente um objeto de imagem. Nossa primeira contribuição é um segmentador de imagens baseado em grafos, chamado de expansão de programação dinâmica interativa (IDP). Este é um método fracamente supervisionado que requer uma semente em cada objeto alvo para ser segmentado na imagem, minimizando posteriormente uma função de energia para obter os rótulos da imagem. A expansão IDP explora a programação dinâmica para inicializar um algoritmo de expansão alfa sobre superpixels para melhorar as informações de limite em um processo de segmentação. Sobre o conjunto de dados de segmentação de Berkeley, nossos experimentos mostraram que a expansão IDP é 51,2% mais rápida do que uma segmentação baseada em expansão alfa tradicional. Embora a expansão do IDP tenha se mostrado mais rápida, ela sofre de dois problemas: uma inicialização obrigatória da semente e a falta de informações semânticas. Isso nos levou ainda a desenvolver uma arquitetura de rede neural convolucional supervisionada para explorar semanticamente informações de limite. Nosso novo método, chamado DS-FNet, usa dois fluxos integrados em uma rede convolucional de ponta a ponta para combinar informações de segmentação e limite com base em um mecanismo de atenção. Para avaliar o DS-FNet, inicialmente realizamos experimentos em conjuntos de dados de imagens de propósito geral (Pascal Context) e tráfego (Cityscapes, CamVid e Mapillary Vistas), tendo a interseção média sobre união (mIoU) como métrica de referência. O DS-FNet superou dez redes de segmentação nos conjuntos de dados Pascal Context, Cityscapes e CamVid. No conjunto de dados Mapillary Vistas, o DS-FNet alcançou o segundo lugar quando comparado a outros cinco métodos.


  • Mostrar Abstract
  • Image segmentation consists of assigning a label to each pixel in the image in such a way that pixels belonging to the same objects in the image must have the same labels. The segmented area of an object must span all pixels up to the limits (boundaries) with the other objects. The boundary region can provide helpful information for the segmentation process, as it marks a discontinuity that can define a segment limit. However, segmentation methods commonly suffer to explore boundary information and consequently to segment this region. This is so mainly due to the proximity between image regions containing different labels. In view of that, we propose to investigate how to take into account the boundary information when semantically segmenting an image object. Our first contribution is a graph-based image segmenter, called interactive dynamic programming (IDP)-expansion. This is a weakly-supervised method that requires a seed into each object targeted to be segmented in the image, subsequently minimizing an energy function to obtain the image labels. IDP-expansion explores dynamic programming to initialize an alpha expansion algorithm over superpixels to improve boundary information in a segmentation process. Over the Berkeley segmentation data set, our experiments showed that IDP-expansion is 51.2% faster than a traditional alpha-expansion based segmentation. Although IDP-expansion has shown to be faster, it suffers from two matters: A mandatory seed initialization and the lack of semantic information. This further led us to develop a supervised convolutional neural network architecture to semantically explore boundary information. Our novel method, called DS-FNet, uses two streams integrated in an  end-to-end convolutional network to combine segmentation and boundary information based on an attention-aware mechanism. To evaluate DS-FNet, we initially conducted experiments on general-purpose (Pascal Context) and traffic (Cityscapes, CamVid, and Mapillary Vistas) image data sets, having the mean intersection over union (mIoU) as the reference metric. DS-FNet outperformed ten segmentation networks in the Pascal Context, Cityscapes, and CamVid data sets. In the Mapillary Vistas data set, DS-FNet achieved second place when compared to five other methods. A second round of experiments was performed to evaluate the generalization of our proposed method on challenging medical imaging data sets, containing several kidney biopsy whole slide images (WSIs). The data sets used to evaluate the second version of our network were HubMAP, WSI Fiocruz, and a subset of Neptune data set, all considering glomerulus segmentation. After training DS-FNet only over HubMAP data set, containing periodic acid-Schiff (PAS)-stained WSIs with only non-injured glomeruli, we found that our network was capable to segment glomeruli on WSIs stained by other methods (hematoxylin-eosin (HE), periodic acid-methenamine silver (PAMS), trichrome (TRI), and silver (SIL)). The results of these latter experiments show that our model is more robust than other models based on U-Net architecture. All the experiments and analyses presented in this work demonstrated that the explicit and adequate consideration of boundary information improves the results over non-boundary segmentation methods.

2020
Dissertações
1
  • MATHEUS MAGALHÃES BATISTA DOS SANTOS
  • Autenticação Contínua de Indivíduos baseada em Algoritmos de Detecção de Anomalias

  • Orientador : MAURICIO PAMPLONA SEGUNDO
  • MEMBROS DA BANCA :
  • MAURICIO PAMPLONA SEGUNDO
  • RUBISLEY DE PAULA LEMES
  • FILLIPE DIAS MOREIRA DE SOUZA
  • Data: 22/01/2020

  • Mostrar Resumo
  • Métodos de autenticação como senhas e cartões de acesso se tornaram comuns no dia-a-dia da sociedade. Devido a
    uma preocupação cada vez maior com a segurança, a biometria passou a ser uma forma de controle de acesso comum. Porém,
    assim como outros métodos de controle de acesso, eles só realizam a verificação da identidade do usuário apenas uma vez.
    Nenhuma verificação adicional é realizada posteriormente e com isso, não há garantia que o usuário permitido é o mesmo a
    utilizar um sistema ou recurso durante toda a sua utilização. Para resolver esse problema, a autenticação contínua realiza a
    verificação constantemente, garantindo assim que o usuário autorizado seja o mesmo durante toda a utilização do sistema.
    Inúmeros esforços foram feitos para melhorar o desempenho da verificação na autenticação contínua, como o uso de biometrias
    cada vez mais seguras, mas não há muitos trabalhos que visam melhorar o método de autenticação contínua em si. Devido as
    similaridades entre os objetivos das técnicas de detecção de anomalias e da autenticação contínua, este trabalho se propõe a
    utilizar uma técnica de detecção de anomalias na autenticação contínua para torná-la segura independentemente do tipo de
    biometria utilizada. Após os experimentos com 4 características biométricas diferentes, o trabalho proposto se mostrou equivalente
    ao estado-da-arte em autenticação contínua com a vantagem de não precisar de treinamento.



  • Mostrar Abstract

  • Authentication methods such as passwords and access cards have become commonplace in society's day-to-day life. Because an increasing concern with security, biometrics has become a common form of access control. However, like other access control methods, they only verify the user's identity only once. No further verification is carried out at a later date and therefore there is no guarantee that the permitted user is the same as use a system or resource throughout its use. To solve this problem, continuous authentication performs the checking constantly, thus ensuring that the authorized user is the same during the entire use of the system. Numerous efforts have been made to improve the performance of verification in continuous authentication, such as the use of biometrics increasingly secure, but there are not many jobs that aim to improve the continuous authentication method itself. Because of similarities between the objectives of anomaly detection techniques and continuous authentication, this work proposes to use an anomaly detection technique in continuous authentication to make it secure regardless of the type of biometrics used. After the experiments with 4 different biometric characteristics, the proposed work proved to be equivalent state-of-the-art in continuous authentication with the advantage of not requiring training.

2
  • RICARDO BARROS DUARTE D'OLIVEIRA
  • Uma abordagem procedural para geração de terrenos planetários em multi-escala baseada em ruído fractal Browniano e tesselação

  • Orientador : ANTONIO LOPES APOLINARIO JUNIOR
  • MEMBROS DA BANCA :
  • ANTONIO LOPES APOLINARIO JUNIOR
  • RODRIGO LUIS DE SOUZA DA SILVA
  • VINICIUS MOREIRA MELLO
  • Data: 29/01/2020

  • Mostrar Resumo
  • A geração de terrenos planetários, no contexto de jogos eletronicos, apresenta diversos desafios. Dentre eles o principal é o gerenciamento dos dados em multi-escala. Um jogador pode estar orbitando o planeta em um instante e depois descer para batalhar na sua superfĩcie. Para lidar com este desafio, apresentamos um método de geração procedural de planetas com suporte a múltiplas escalas, fazendo uso de funções de ruído fractal Browniano com derivadas parciais analíticas. Através de várias iterações deste ruído fractal conseguimos simular diversos tipos de terreno. O modelo de terreno em multiescala é gerenciado por uma quadtree indexada com tabelas hash. Essa mesma estrutura da suporte ao processo de view-frustum culling, que otimiza o processo de renderização. Além disso, nossa abordagem é capaz de grenciar níveis de detalhe baseado no ponto de vista do observador e a introdução de detalhes em alta resolução através do uso do processo de tesselação na GPU. Os resultados mostram que nosso método é capaz de gerar corpos planetários realísticos, com coerência temporal e diversidade de composições geológicas em tempo real, e, portanto, sendo aplicavél ao domínio de jogos eletrônicos.


  • Mostrar Abstract
  • The generation of planetary terrains, in the context of electronic games, presents several challenges. Among them, the main one is the management of multi-scale data. A player may be orbiting the planet in an instant and then descend to battle on its surface. To deal with this challenge, we present a method of procedural generation of planets with support for multiple scales, making use of Brownian fractal noise functions with analytical partial derivatives. Through several iterations of this fractal noise we can simulate different types of terrain. The multiscale terrain model is managed by an indexed quadtree with hash tables. This same structure supports the view-frustum culling process, which optimizes the rendering process. In addition, our approach is able to manage levels of detail based on the observer's point of view and the introduction of high resolution details through the use of the GPU tessellation process. The results show that our method is capable of generating realistic planetary bodies, with temporal coherence and diversity of geological compositions in real time, and, therefore, being applicable to the domain of electronic games.

3
  • FABRICIO DE FREITAS CARDIM
  • Utilizando aprendizado de máquina e métricas de código fonte para identificação de dívida técnica

  • Orientador : CLAUDIO NOGUEIRA SANT ANNA
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • RODRIGO OLIVEIRA SPINOLA
  • TATIANE NOGUEIRA RIOS
  • Data: 04/02/2020

  • Mostrar Resumo
  • "Utilizar dívida técnica como instrumento para avaliar a manutenibilidade do software ainda é um desafio. Isso porque as ferramentas existentes para detecção de dívida técnica geram muitos falsos positivos por não levarem em consideração informações relacionadas ao contexto, ao domínio, ao tamanho e ao design do sistema analisado. Além disso, a maioria das ferramentas de detecção de dívidas detectam apenas code smells previamente catalogados na literatura. Embora a crença de que code smells afetam negativamente a manutenibilidade seja amplamente aceita, existem resultados experimentais que contradizem essa teoria. Indo mais além, desenvolvedores podem ter opiniões divergentes sobre o impacto de code smells na manutenção do software. Por outro lado, construir uma solução universal levando em consideração as características específicas de cada projeto pode ser humanamente inviável. Diante desse contexto, nós avaliamos a eficácia da utilização de algoritmos de aprendizado de máquina em conjunto com métricas de código para detectar dívidas técnicas que possam afetar negativamente a manutenibilidade do software, levando em consideração a opinião dos desenvolvedores. Para atingir este objetivo, nós realizamos três estudos experimentais, no contexto da indústria, com a participação de desenvolvedores. Os resultados mostraram que algoritmos de aprendizado de máquina, utilizados em conjunto com métricas de código, podem ser uma opção viável para avaliar a manutenibilidade do código. Como contribuição lateral, nós implementamos uma ferramenta para detecção automática de dívida técnica de código para a linguagem VB.NET, denominada CodeAnalyzerVB, e aplicamos essa ferramenta na Agência

    de Fomento do Estado da Bahia (DESENBAHIA)."


  • Mostrar Abstract
  •  

     

    "Using technical debt as an instrument to assess the maintainability of the software is still a challenge. This is because the existing tools for detecting technical debt generate many false positives because they do not take into account information related to the context, domain, size and design of the software. In addition, most debt detection tools only detect code smells previously cataloged in the literature. Although the belief that code smells negatively affect maintainability is widely accepted, there are experimental results that contradict this theory. developers may have differing opinions on the impact of code smells on software maintenance, on the other hand, building a universal solution taking into account the specific characteristics of each project may be humanly unviable. In this context, we evaluate the effectiveness of using algorithms machine learning in co together with code metrics to detect technical debts that may negatively affect the maintainability of the software, taking into account the opinion of the developers. To achieve this goal, we have carried out three experimental studies, in the context of the industry, with the participation of developers. The results showed that machine learning algorithms, used in conjunction with code metrics, can be a viable option to assess code maintainability. As a side contribution, we implemented a tool for automatic detection of technical code debt for the VB.NET language, called CodeAnalyzerVB, and applied this tool at the Agency

    Promotion of the State of Bahia (DESENBAHIA). "

     
    Utilizar dívida técnica como instrumento para avaliar a manutenibilidade do software ainda é um desafio. Isso porque as ferramentas existentes para detecção de dívida técnica geram muitos falsos positivos por não levarem em consideração informações relacionadas ao contexto, ao domínio, ao tamanho e ao design do sistema analisado. Além disso, a maioria das ferramentas de detecção de dívidas detectam apenas code smells previamente catalogados na literatura. Embora a crença de que code smells afetam negativamente a manutenibilidade seja amplamente aceita, existem resultados experimentais que contradizem essa teoria. Indo mais além, desenvolvedores podem ter opiniões divergentes sobre o impacto de code smells na manutenção do software. Por outro lado, construir uma solução universal levando em consideração as características específicas de cada projeto pode ser humanamente inviável. Diante desse contexto, nós avaliamos a eficácia da utilização de algoritmos de aprendizado de máquina em conjunto com métricas de código para detectar dívidas técnicas que possam afetar negativamente a manutenibilidade do software, levando em consideração a opinião dos desenvolvedores. Para atingir este objetivo, nós realizamos três estudos experimentais, no contexto da indústria, com a participação de desenvolvedores. Os resultados mostraram que algoritmos de aprendizado de máquina, utilizados em conjunto com métricas de código, podem ser uma opção viável para avaliar a manutenibilidade do código. Como contribuição lateral, nós implementamos uma ferramenta para detecção automática de dívida técnica de código para a linguagem VB.NET, denominada CodeAnalyzerVB, e aplicamos essa ferramenta na Agência
    de Fomento do Estado da Bahia (DESENBAHIA).
4
  • ALINE MEIRA ROCHA
  • Anotações Semânticas em Repositórios Acadêmicos: um estudo de caso com o RI da UFBA

  • Orientador : LAIS DO NASCIMENTO SALVADOR
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • FLAVIA GOULART MOTA GARCIA ROSA
  • LAIS DO NASCIMENTO SALVADOR
  • Data: 03/03/2020

  • Mostrar Resumo
  • Repositórios Institucionais (RI) são repositórios acadêmicos que possibilitam o armazenamento e a divulgação das produções científicas de universidades e centros de pesquisa. Estes repositórios permitem o auto-arquivamento, onde o próprio pesquisador pode efetuar o depósito de sua publicação. As informações sobre cada item depositado são armazenadas em seus metadados, mas como usualmente isso é feito de maneira manual pelo próprio pesquisador nem sempre os termos escolhidos ajudam nessa descrição, o que leva à intervenção dos bibliotecários no processo. A sugestão de keywords durante a validação dos metadados certamente ajudaria os bibliotecários pois identificaria termos representativos de cada publicação e enriqueceria semanticamente esses metadados, favorecendo a recuperação dos itens em um RI. Já métodos de aprendizagem de máquina de classificação textual binária podem sugerir que uma publicação também seja associada a outra coleção caso seja identificado que se trata de trabalho multidisciplinar. Também é possível auxiliar na classificação de publicações ainda não depositadas no RI e que não estejam organizadas por coleção mas por outro critério, como por exemplo data de entrega ao colegiado ou data da defesa. Dessa forma baseado nos termos representativos de cada comunidade e sub-comunidade, é possível treinar um classificador multi-hierárquico para identificar a qual comunidade e sub-comunidade cada trabalho deve pertencer. Por outro lado, a anotação semântica de metadados referentes a coleções e keywords permite o enriquecimento das descrições de itens do RI, além de facilitar o processo de recuperação. Nesse contexto o objetivo deste trabalho é anotar semanticamente os itens de um repositório acadêmico no Dspace de maneira semi-automática utilizando o padrão RDF do Dublin Core a partir dos resultados obtidos na classificação textual e validação das sugestões de keywords. Adicionalmente foi realizado um estudo de caso no RI da UFBA, onde as keywords extraídas passaram pela validação de especialistas de domínio, no caso as bibliotecárias do SIBI (Sistema de Bibliotecas da UFBA). Com isso, foi realizada a anotação semântica dos resultados obtidos no experimento da classificação textual e no estudo de caso. As principais contribuições desse projeto dizem respeito ao estudo exploratório de métodos de validação e classificação de depósitos das publicações, além do método de descrição e enriquecimento semânticos dos itens de um RI.


  • Mostrar Abstract
  • Institutional Repositories (IR) are academic repositories that enable the storage and dissemination of scientific productions from universities and research centers. These repositories allow self-archiving, where the researcher himself can deposit his publication. The information about each deposited item is stored in its metadata, but as the researcher himself usually does this manually, the terms chosen do not always help in this description, which leads to the intervention of librarians in the process. Suggesting keywords during metadata validation would certainly help librarians as it would identify representative terms of each publication and semantically enrich these metadata, favoring the retrieval of items in an IR. Binary textual classification machine learning methods may suggest that a publication is also associated with another collection if it is identified that it is multidisciplinary work. You can also help classify publications not yet filed with IR that are not organized by collection but by other criteria, such as collegiate date or date of defense. Based on the representative terms of each community and sub-community, it is possible to train a multi-hierarchical classifier to identify which community and sub-community each job should belong to. On the other hand, semantic annotation of metadata referring to collections and keywords enables the enrichment of RI item descriptions and facilitates the retrieval process. In this context, the objective of this paper is to semantically annotate the items of an academic repository in Dspace semi-automatically using the Dublin Core RDF standard from the results obtained in the textual classification and validation of keyword suggestions. Additionally, a case study was conducted at the UFBA IR, where domain specialists validated the extracted keywords, in this case, the SIBI (UFBA Library System) librarians. Thus, the semantic annotation of the results obtained in the textual classification experiment and the case study were performed. The main contributions of this project relate to the exploratory study of publication deposit validation and classification methods, as well as the semantic description and enrichment method of an IR item.

5
  • TÁSSIO GUERREIRO ANTUNES VIRGÍNIO
  • Avaliação empírica da geração automatizada de testes de software sob a perspectiva de Test Smells

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • HEITOR AUGUSTUS XAVIER COSTA
  • IVAN DO CARMO MACHADO
  • Data: 13/03/2020

  • Mostrar Resumo
  • A constante busca pela qualidade sempre está em destaque na área de Engenharia de Software. Dentre as diversas disciplinas dedicadas a essa temática, o teste de software tem se estabelecido como uma das mais importantes, dado sua eficácia na identificação de defeitos, em momento prévio à liberação de sistemas de software para o mercado. O teste de software é atividade-chave para o desenvolvimento de software de qualidade. Entretanto, desenvolver testes é tão ou mais custoso do que desenvolver o código de produção. Uma alternativa para a redução dos custos associados ao teste de software se dá pelo uso intensivo de ferramentas de automação de testes. A proposta dessas ferramentas é reduzir o tempo de produção sem afetar a qualidade do código. Apesar dessa premissa, não é comum encontrar abordagens que incluam uma camada de verificação de qualidade dos testes gerados automaticamente, o que pode reduzir a confiabilidade da eficácia desses testes. Neste cenário, a proposta dessa dissertação é analisar empiricamente massas de dados de teste, sob a perspectiva de test smells, no sentido de avaliar a qualidade dos testes produzidos por ferramentas de geração automatizada de testes de software. Test smells são más escolhas no design dos testes e tem características sintomáticas e podem acarretar diminuição na qualidade dos sistemas. Considerando os test smells em código de teste, o estudo analisa os testes gerados por duas ferramentas amplamente aceitas pela comunidade de testes: Evosuite e Randoop. Um conjunto de vinte e um projetos de software de código aberto, disponíveis na plataforma Github foram considerados no estudo. A análise considerou a dispersão de test smells no código de teste desses projetos, bem como a existência de potenciais correlações entre test smells e as relações com as métricas estruturais. Como principais resultados, encontramos fortes correlações entre os test smells e as métricas de cobertura do código, diferenças significativas entre os dados encontrados nas suítes de testes geradas automaticamente e com os testes pré-existentes nos projetos avaliados.


  • Mostrar Abstract
  • The constant search for quality is always highlighted in the Software Engineering field. Among the various disciplines dedicated to this theme, software testing has been established as one of the most important, given its effectiveness in identifying defects, prior to the release of software systems to the market. Software testing is a key activity for the development of quality software. However, developing tests is just as or more expensive than developing the production code. An alternative for reducing the costs associated with software testing is the intensive use of test automation tools. The purpose of these tools is to reduce production time without affecting the quality of the code. Despite this premise, it is not common to find approaches that include a quality check layer of the automatically generated tests, which can reduce the reliability of the effectiveness of these tests. In this scenario, the purpose of this dissertation is to empirically analyze masses of test data, from the perspective of test smells, in order to assess the quality of the tests produced by automated software test generation tools. Test smells are poor choices in the design of tests and have symptomatic characteristics and can lead to a decrease in the quality of systems. Considering the test smells in test code, the study analyzes the tests generated by two widely accepted tools by the software testing community: Evosuite and Randoop. A set of twenty-one open source software projects, available on the Github platform, were considered in the study. The analysis considered the dispersion of test smells in the test code of these projects, as well as the existence of potential correlations between test smells and the relationships with structural metrics. As main results, we found strong correlations between the test smells and the code coverage metrics, significant differences between the data found in the test suites generated automatically and with the pre-existing tests in the evaluated projects.

6
  • LEILA KARITA DOS ANJOS DO ESPÍRITO SANTO
  • Caracterização de sustentabilidade na engenharia de software por meio de uma abordagem multi-método

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • RITA SUZANA PITANGUEIRA MACIEL
  • MONALESSA PERINI BARCELLOS
  • Data: 26/03/2020

  • Mostrar Resumo
  • O interesse da comunidade de Tecnologia da Informação e Comunicação (TIC) sobre sustentabilidade tem crescido consideravelmente nos últimos anos. Embora ainda em estágio inicial, a temática tornou-se de grande relevância uma vez que nos força a pensar sobre o que temos feito para garantir a continuidade do planeta e das gerações futuras. No contexto da Engenharia de Software (ES), quando pensamos no desenvolvimento de software sustentável nos deparamos com lacunas, uma vez que esse assunto ainda é nebuloso para os engenheiros de software e desenvolvedores, bem como para a comunidade de pesquisa em ES. Para que o software seja produzido de forma sustentável, os engenheiros de software precisam entender como os conceitos de sustentabilidade estão incorporados ao desenvolvimento de software, de forma que possam ter uma compreensão clara, comum e compartilhada desse conhecimento. No entanto, o desenvolvimento de um estudo recente sobre o estado-da-arte das abordagens de software que apoiam a ES sustentável mostrou que ainda há uma lacuna sobre o que, de fato, vem a ser o desenvolvimento de software sustentável. A falta de tal entendimento pode impedir a indústria de construir software com consciência sustentável. Dada a questão, esta pesquisa tem como objetivo caracterizar a Engenharia de Software Sustentável destacando as preocupações sustentáveis presentes no ciclo de vida de desenvolvimento do software. Para alcançar este objetivo, esta dissertação adotou uma abordagem multi-método e produziu uma série de estudos qualitativos. A abordagem multi-método é uma estratégia de pesquisa metodológica que combina dois ou mais métodos de pesquisa qualitativos ou dois ou mais métodos quantitativos de coleta e análise de dados. Foram elaborados: (1) um estudo de mapeamento sistemático na intenção de conhecer o domínio de ES sustentável; (2) um survey para obter uma percepção da indústria de software sobre a adoção de práticas sustentáveis; e (3) uma grounded theory, com o objetivo de gerar uma teoria para prover aos leitores um entendimento sobre o desenvolvimento de software sustentável. A teoria foi organizada em torno das dimensões da sustentabilidade. Esta dissertação concluiu que o desenvolvimento de software sustentável pode ser explicado através das seguintes proposições: (a) preocupações técnicas, ambientais e sociais estão presentes em todas as fases do desenvolvimento de software sustentável. Isso significa que os pesquisadores e os engenheiros de software estão preocupados em considerar a longevidade do software produzido, bem como os recursos ambientais, além do bemestar social; (b) a identificação de requisitos sustentáveis deve ocorrer na fase inicial do projeto (c) com o apoio de especialistas engajados com a sustentabilidade, os quais devem fazer parte do grupo de stakeholders; e (d) o uso de preocupações sustentáveis pode gerar trade-offs no projeto. Assim sendo, os resultados contribuem com uma maior compreensão à respeito do desenvolvimento de software sustentável, a partir das perspectivas da literatura e praticantes de software; e, consequentemente, com a evolução do estado da arte em ES Sustentável.


  • Mostrar Abstract
  • The interest of the Information and Communication Technology community on sustainability has grown considerably in recent years. Although still at an early stage, the theme has become of great relevance since it forces us to think about what we have done to ensure the planet and future generations' continuity. In the Software Engineering context, when we think about sustainable software development, we face gaps, since this subject is still nebulous for software engineers and developers, as well as for the research community in Software Engineering. For software to be produced in a sustainable way, software engineers need to understand how sustainability concepts are incorporated into software development, so that they can have a clear, common and shared understanding of that knowledge. However, the development of a recent study on the state-of-the-art about software approaches that support sustainable Software Engineering showed that there is still a gap about what is sustainable software development, in fact. The lack of such an understanding can prevent the industry from building software with sustainable awareness. Given the question, this research aims to characterize sustainable software engineering by highlighting the sustainable concerns present in the software development life-cycle. To achieve this goal, this dissertation adopted a multi-method approach and produced a series of qualitative studies. The multi-method approach is a methodological research strategy that combines two or more qualitative research methods or two or more quantitative data collection and analysis methods. We elaborated: (1) a systematic mapping study with the intention of knowing the Sustainable Software Engineering domain; (2) a survey to obtain the software industry perception on the adoption of sustainable practices; and (3) a grounded theory, with the aim of generating a theory to provide an understanding of sustainable software development to readers. The theory was organized around the sustainability dimensions. This dissertation concluded that sustainable software development is explained through the following propositions: (a) technical, environmental and social concerns are present in all phases of sustainable software development. This means that researchers and software engineers are concerned with considering the longevity of the software produced, as well as environmental resources, in addition to social welfare; (b) the sustainable requirements identification must occur in the project initial phase (c) with the support of experts engaged in sustainability, who must be part of the group of stakeholders; and (d) the use of sustainable concerns can generate trade-offs in the project. Therefore, the results contribute to a greater understanding of sustainable software development, from the literature and software practitioners' perspectives; and, consequently, with the evolution of the state-of-the-art in Sustainable Software Engineering.

7
  • PÉTALA GARDÊNIA DA SILVA ESTRELA TUY
  • Sobre o uso de agrupamento fuzzy para construção de sistemas baseado em regras fuzzy para lidar com Big Data.

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • TATIANE NOGUEIRA RIOS
  • MARCOS ENNES BARRETO
  • MATHEUS GIOVANNI PIRES
  • Data: 15/04/2020

  • Mostrar Resumo
  • Big Data é um tópico de tendência que vem ganhando atenção em ambientes empresariais e acadêmicos. O termo se refere à enorme quantidade de dados gerados todos os dias em uma variedade de fontes e formatos. Uma parte expressiva do Big Data está no formato do texto que pode ser usado para resolver vários problemas da vida real, como detecção de spam, identificação de autoria, classificação de páginas da web e análise de sentimento. Os conjuntos de dados de texto são especialmente complicados, pois sua alta dimensionalidade pode se estender da alta dimensionalidade vertical (alto número de instâncias) à alta dimensionalidade horizontal (alto número de atributos). Para extrair valor de tais conjuntos de dados dimensionais elevados, as técnicas de análise de dados devem ser capazes de lidar com seus novos desafios: volume, velocidade, variedade e variabilidade. Os Sistemas de Classificação Baseados em Regras Fuzzy (FRBCS) demonstraram lidar efetivamente com a incerteza, a imprecisão e o ruído inerentes aos dados. No entanto, o desempenho dos FRBCSs é altamente afetado pelo número crescente de instâncias e atributos presentes no Big Data. Abordagens propostas anteriormente tentam adaptar FRBCSs para Big Data distribuindo o processamento de dados com o paradigma MapReduce, pelo qual os dados são processados em duas etapas: Mapear e Reduzir. No estágio de Mapa, os dados são divididos em vários blocos e distribuídos entre os nós de processamento que processam cada bloco de dados independentemente. No estágio Reduce, os resultados provenientes de cada nó no estágio Map são agregados e um resultado final é retornado. Esta metodologia aborda a alta dimensionalidade vertical, mas não aborda conjuntos de dados com alta dimensionalidade vertical e horizontal simultânea, como é o caso dos conjuntos de dados de texto. A redução horizontal de alta dimensionalidade pode ser feita usando técnicas de seleção de recursos comuns, como MI e Qui-quadrado. No entanto, usar essas técnicas de seleção de recursos pode não ser a melhor alternativa, uma vez que a precisão do modelo pode ser afetada pela perda de informações ao manter apenas um subconjunto de atributos. Neste trabalho, lidamos com as desvantagens mencionadas, propondo o Summarizer, uma abordagem para a construção de espaços de recursos reduzidos para dados de dimensões horizontais altas. Para tanto, realizamos um estudo empírico que compara um conhecido classificador proposto para conjuntos de dados verticais de alta dimensionalidade com e sem o processo de redução de dimensionalidade horizontal proposto por Summarizer. Nossos resultados mostram que os classificadores existentes que lidam com problemas verticais de Big Data podem ser melhorados adicionando a abordagem Summarizer ao processo de aprendizagem, o que sugere que um algoritmo de aprendizagem unificado para conjuntos de dados com um grande número de instâncias, bem como um grande número de atributos pode ser possível.


  • Mostrar Abstract
  • Big Data is a trending topic that has gained attention in the business and academic environments. The term refers to the huge amount of data being generated every day in a variety of sources and formats. An expressive part of Big Data is in the format of text that can be used to solve various real life problems, such as spam detection, author identification, web pages classification and sentiment analysis. Text datasets are specially complicated since its high dimensionality can extend from vertical high dimensionality (high number of instances) to horizontal high dimensionality (high number of attributes). In order to extract useful knowledge from such high dimensional datasets, data analysis techniques must be able to cope with its new challenges: volume, velocity, variety and variability. Fuzzy Rule-Based Classification Systems (FRBCS) have shown to effectively deal with the uncertainty, vagueness, and noise inherent to data. However, the performance of FRBCSs is highly affected by the increasing number of instances and attributes present in Big Data. Previously proposed approaches try to adapt FRBCSs to Big Data by distributing data processing with the MapReduce paradigm, by which the data is processed in two stages: Map and Reduce. In the Map stage, the data is divided into multiple blocks and distributed among processing nodes that process each block of data independently. In the Reduce stage, the results coming from every node in the Map stage are aggregated and a final result is returned. This methodology tackles vertical high dimensionality, but it does not approach datasets with simultaneous vertical and horizontal high dimensionality, as it is the case of text datasets. Horizontal high dimensionality reduction could be done by using common feature selection techniques, such as MI and Chi-squared. However, using such feature selection techniques may not be the best alternative since model accuracy might be affected by the loss of information when keeping only a subset of attributes. In this work, we deal with the aforementioned drawbacks by proposing Summarizer, an approach for building reduced feature spaces for horizontally high dimensional data.  To this end, we carry out an empirical study that compares a well-known classifier proposed for vertical high dimensionality datasets with and without the horizontal dimensionality reduction process proposed by Summarizer. Our findings show that existing classifiers that tackles vertical Big Data problems can be improved by adding the Summarizer approach to the learning process, which suggests that an unified learning algorithm for datasets with a high number of instances as well as a high number of attributes might be possible.

8
  • FERNANDA SILVA EUSTÁQUIO
  • Sobre índices de validação de agrupamento fuzzy para agrupamento soft subspace de bases de dados de alta dimensionalidade.

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • TATIANE NOGUEIRA RIOS
  • HELOISA DE ARRUDA CAMARGO
  • RICARDO MARCONDES MARCACINI
  • Data: 16/04/2020

  • Mostrar Resumo
  • A maioria dos algoritmos de clustering convencionais conhecidos e amplamente utilizados, como k-Means e Fuzzy c-Means (FCM), foram projetados assumindo que, na maioria dos casos, o número de objetos em um conjunto de dados será maior que o número de dimensões (recursos). No entanto, essa suposição falha quando um conjunto de dados consiste em documentos de texto ou microarranjos de DNA, nos quais o número de dimensões é muito maior que o número de objetos. A maioria dos estudos revelou que o FCM e os índices de validade de cluster difuso (CVIs) apresentam desempenho fraco quando usados com dados de alta dimensão, mesmo quando é usada uma medida de similaridade ou dissimilaridade adequada para esse tipo de dados. Os problemas enfrentados pela alta dimensionalidade são conhecidos como \ textit {maldição da dimensionalidade} e algumas abordagens como transformação de recursos, seleção de recursos, ponderação de recursos e agrupamento de subespaços foram definidas para lidar com milhares de dimensões. Para estar convencido de que o número de dimensões deve ser mantido para aprender o máximo possível de um objeto e saber que apenas um subconjunto de recursos pode não ser suficiente para todos os clusters, a técnica de agrupamento por subespaço flexível foi usada no trabalho proposto. Além do FCM, três algoritmos de subespaço suave, Clustering Simultâneo e Discriminação de Atributos (SCAD), c-Meios Fuzzy Ponderados com Regularidade Máxima com Entropia (EWFCM) e Clustering Subespacial Melhorado (ESSC) foram realizados para agrupar três tipos de dados de alta dimensão ( Mistura gaussiana, texto, microarray) e foram avaliados empregando CVIs nebulosas em vez de usar medidas externas como Clustering Accuracy, Rand Index, Normalized Mutual Information, que usam informações de rótulos de classe, como geralmente é feito na maioria dos estudos. A partir dos resultados experimentais, em uma avaliação geral, todos os algoritmos de agrupamento tiveram desempenhos semelhantes, destacando que o ESSC apresentou o melhor resultado e o FCM foi melhor que os demais algoritmos do subespaço suave. Além do uso da técnica de subespaço suave, na busca pela causa do baixo desempenho das técnicas convencionais para dados de alta dimensão, investigou-se qual medida de distância ou valor do expoente difuso de ponderação ($ m $) produzia o melhor agrupamento resultado. Além disso, o desempenho de dezenove CVIs nebulosas foi avaliado verificando se algumas tendências e problemas relacionados a pesquisas anteriores são mantidos ao validar os resultados do agrupamento suave do subespaço. A partir da análise feita neste trabalho, ficou claro que o tipo de dados era determinante para o desempenho dos algoritmos de cluster e CVIs difusos.


  • Mostrar Abstract
  • Most of the well-known and widely used conventional clustering algorithms, as k-Means and Fuzzy c-Means (FCM), were designed by assuming that, in most cases, the number of objects in a dataset will be greater than its number of dimensions (features). However, this assumption fails when a dataset consists of text documents or DNA microarrays, in which the number of dimensions is much bigger than the number of objects. Most studies have revealed that FCM and the fuzzy cluster validity indices (CVIs) perform poorly when they are used with high-dimensional data even when a similarity or dissimilarity measure suitable to this type of data is used. The problems faced by high dimensionality are known as the \textit{curse of dimensionality} and some approaches such as feature transformation, feature selection, feature weighting, and subspace clustering were defined to deal with thousands of dimensions. To be convinced that the number of dimensions should be maintained to learn as much as possible from an object and to know that just one subset of features might not be enough to all clusters, the soft subspace clustering technique was used in the proposed work. Besides FCM, three soft subspace algorithms, Simultaneous Clustering and Attribute Discrimination (SCAD), Maximum-entropy-regularized Weighted Fuzzy c-Means (EWFCM) and Enhanced Soft Subspace Clustering (ESSC) were performed to cluster three types of high-dimensional data (Gaussian mixture, text, microarray) and they were evaluated employing fuzzy CVIs instead of using external measures like Clustering Accuracy, Rand Index, Normalized Mutual Information, that use information from class labels, as usually done in most research studies. From the experimental results, in a general evaluation, all the clustering algorithms had similar performances highlighting that ESSC presented the best result and FCM was better than the remaining soft subspace algorithms. Besides the use of the soft subspace technique, in the search for the cause of the poor performance of the conventional techniques for high-dimensional data, it was investigated which distance measure or value of weighting fuzzy exponent ($m$) produced the best clustering result. Furthermore, the performance of nineteen fuzzy CVIs was evaluated by verifying if some tendencies and problems related to previous research studies are maintained when validating soft subspace clustering results. From the analysis made in this work, it was clear that the type of data was determinant to the performance of the clustering algorithms and fuzzy CVIs.

9
  • AILTON SANTOS RIBEIRO
  • VISHNU: Uma abordagem de apoio à customização de avatares em aplicações móveis

  • Orientador : VANINHA VIEIRA DOS SANTOS
  • MEMBROS DA BANCA :
  • CRISTIANO MACIEL
  • LYNN ROSALINA GAMA ALVES
  • VANINHA VIEIRA DOS SANTOS
  • Data: 27/05/2020

  • Mostrar Resumo
  • Avatar é um personagem que representa uma pessoa em particular em um ambiente virtual. Ao permitir a interação em aplicações, o avatar tornou-se bastante popular em games e está também se tornando uma realidade em outros domínios como forma de favorecer a autoexpressão. Construído a partir de informações contextuais do usuário, o uso de avatar fornece imersão e senso de presença em aplicações. Pesquisas indicam que o comportamento das pessoas pode ser influenciado pelas características do seu avatar. A depender do contexto, o avatar pode customizar-se utilizando informações contextuais do usuário (e.g. preferências, fatores antropomórficos; Fatores dinâmicos - local, condições climáticas; aspectos relativos a interação - expressões faciais, gestos, expressões corporais e outros). Uma lacuna encontrada na literatura sugere a necessidade de auxiliar os desenvolvedores a criarem seus avatares ao contexto do usuário. Para permitir a criação de avatares autoexpressivos são necessários mecanismos que capturem, processem e expressem as informações presentes no contexto do usuário junto à aplicação. Muitas aplicações móveis que utilizam avatares como forma de interação com o usuário ainda desconsideram fatores contextuais. Os desenvolvedores dessas aplicações se beneficiariam de uma abordagem para guiar essas customizações. O objetivo dessa pesquisa é avaliar se a sensibilidade ao contexto pode favorecer a autoexpressão em aplicações móveis baseadas em avatares. Para isso, apresentamos a abordagem VISHnu, um modelo de customização de avatares para auxiliar os desenvolvedores de aplicações móveis. Para avaliar a abordagem proposta foi realizado um grupo focal com sete especialistas e um estudo de casos com duas aplicações móveis baseadas em avatares. Os resultados indicaram sua utilidade e aplicabilidade ao processo de criação de avatares, permitindo uma discussão ampliada sobre a influencia dos fatores humanos, culturais e contextuais na customização de avatares. Esse pensamento favorece a criação e customização dos avatares e a percepção que a interação humana com esse avatar passa por aspectos, que a depender do contexto, converge para uma simbiose entre o seres virtuais e reais.


  • Mostrar Abstract
  • Avatar is a character that represents a particular person in a virtual environment. By allowing interaction in applications, the avatar has become quite popular in games and is also becoming a reality in other domains as a way to favor self-expression. Built from contextual user information, the use of an avatar provides immersion and a sense of presence in applications. Research indicates that people's behavior can be influenced by the characteristics of their avatar. Depending on the context, the avatar can be customized using contextual information from the user (e.g. preferences, anthropomorphic factors; Dynamic factors - location, climatic conditions; aspects related to interaction - facial expressions, gestures, body expressions and others). A gap found in the literature suggests the need to assist developers in creating their avatars in the context of the user. To allow the creation of self-expressive avatars, mechanisms are needed to capture, process and express the information present in the user's context with the application. Many mobile applications that use avatars as a way of interacting with the user still disregard contextual factors. Developers of these applications would benefit from an approach to guide these customizations. The aim of this research is to assess whether context sensitivity can favor self-expression in mobile applications based on avatars. For that, we present the VISHnu approach, a model of customization of avatars to assist the developers of mobile applications. To evaluate the proposed approach, a focus group with seven experts and a case study with two mobile applications based on avatars were carried out. The results indicated its usefulness and applicability to the avatars creation process, allowing an extended discussion about the influence of human, cultural and contextual factors in the customization of avatars. This thought favors the creation and customization of avatars and the perception that human interaction with this avatar goes through aspects, which, depending on the context, converges to a symbiosis between virtual and real beings.

10
  • RAILANA SANTANA LAGO
  • RAIDE: uma abordagem semi-automatizada para Identificação e Refatoração de Test Smells

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • PIERRE YVES FRANCOIS MARIE JOSEPH SCHOBBENS
  • VANIA DE OLIVEIRA NEVES
  • Data: 03/07/2020

  • Mostrar Resumo
  • Teste de unidade é um tipo específico de teste que lida com as menores unidades do sistema. Ele representa o primeiro teste após a implementação de um componente. Quando a implementação dos testes de unidade não segue boas práticas, é provável que anti-padrões sejam introduzidos no código. Anti-padrões nos testes, também conhecidos como test smells, são más decisões para projetar e implementar código de teste. Os test smells prejudicam a qualidade do código de teste e reduzem a capacidade de os desenvolvedores interagirem com o código de teste, o que dificulta a compreensão, leitura e, consequentemente, a manutenibilidade e evolução do sistema. Uma estratégia para remover test smells é a refatoração do código de teste. Poucos estudos na literatura oferecem suporte automatizado para a detecção e refatoração de test smells. Assim, o presente estudo fornece uma abordagem semi-automática para identificar test smells e sugerir refatorações para o código de teste. Nossa abordagem é apoiada pela ferramenta RAIDE (RefActorIng test Design Errors). Desenvolvemos a RAIDE integrada com à uma IDE de desenvolvimento para ajudar os engenheiros de teste a refatorar código de teste. RAIDE oferece suporte a dois test smells, Assertion Roulette e Duplicate Assert. Apesar de existir outras ferramentas capazes de identificar test smells, até onde sabemos, ainda não há evidências de ferramentas que fornecem suporte automatizado a refatoração de test smells. Além disso, nenhuma ferramenta fornecem uma interface amigável e integrada a uma IDE para a identificação de test smells. Para avaliar como nossa abordagem pode ajudar a melhorar a qualidade do código de teste, também realizamos um estudo experimental. Comparamos nossa ferramenta com o estado da arte e verificamos que os participantes que usaram RAIDE conseguiram identificar os test smells de forma mais fácil e rápida. Além disso, RAIDE também se mostrou eficiente na refatoração de métodos de teste. Como RAIDE é uma ferramenta integrada à IDE Eclipse, os processos de identificação e refatoração são mais rápidos e intuitivos em comparação com o estado da arte e a refatoração manual.


  • Mostrar Abstract
  • Unit testing is a specific type of test that deals with the smallest units in the system. It represents the first test after the implementation of a component. When the implementation of unit tests does not follow good practices, anti-standards are likely to be introduced in the code. Anti-patterns in tests, also known as test smells, are poor decisions for designing and implementing test code. Test smells impair the quality of the test code and reduce the ability of developers to interact with the test code, which makes it difficult to understand, read and, consequently, maintainability and evolution of the system. One strategy for removing test smells is to refactor the test code. Few studies in the literature offer automated support for the detection and refactoring of test smells. Thus, the present study provides a semi-automatic approach to identify test smells and suggest refactorings for the test code. Our approach is supported by the RAIDE tool (RefActorIng test Design Errors). We developed the RAIDE integrated with a development IDE to help test engineers refactor test code. RAIDE supports two test smells, Assertion Roulette and Duplicate Assert. Although there are other tools capable of identifying test smells, as far as we know, there is still no evidence of tools that provide automated support for refactoring test smells. In addition, no tool provides a user-friendly interface integrated with an IDE for the identification of test smells. To assess how our approach can help improve the quality of the test code, we also conducted an experimental study. We compared our tool with the state of the art and found that participants who used RAIDE were able to identify test smells more easily and quickly. In addition, RAIDE also proved to be efficient in refactoring test methods. Since RAIDE is a tool integrated with the Eclipse IDE, the identification and refactoring processes are faster and more intuitive compared to the state of the art and manual refactoring.
11
  • PATRICK HERBETH GUIMARÃES AZEVEDO
  • Um Sistema de Recomendação Baseado em Análise de Relações Semânticas entre Tags

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • DANILO BARBOSA COIMBRA
  • ANA LIZ SOUTO OLIVEIRA DE ARAÚJO
  • Data: 23/07/2020

  • Mostrar Resumo
  • Sistemas de Recomendação têm como principal característica sugerir itens de acordo com preferências de um determinado usuário. Na Web, Sistemas de Recomendação auxiliam usuários na descoberta de conteúdos de interesse e estão presentes em diversos sistemas da Web Social como o Youtube.com, Netflix.com, Amazon.com etc. No escopo deste trabalho, o foco serão tags, palavras-chave associadas a recursos na Web. Em geral, tags são associadas por usuários para descrever recursos, por exemplo: filmes, livros, músicas tornando-se verdadeiras fontes explícitas de preferência, porém sem restrição quanto à sintaxe das palavras. Os Sistemas de Recomendação baseados em similaridade entre tags tem o desafio de superar tais problemas e objetivam avaliar a similaridade entre tags a fim de indicar itens relevantes para os usuários. No entanto, semanticamente  analisar tags é uma tarefa que possui diversos desafios, como a polissemia e a existência de sinônimos. Neste trabalho, é proposto a avaliação de links semânticos entre as tags associadas a páginas na Web, com intuito de aumentar a precisão das recomendações. Logo, objetivo deste trabalho é propor também um sistema que realize análise semântica entre tags a fim de encontrar similaridades negligenciadas apenas pela análise sintática. Pretende-se avaliar inicialmente o sistema no contexto de filmes dado a disponibilização de um conjunto de tags associadas aos mesmos, utilizando métricas de precisão em diferentes posições de ranqueamento. A ideia da proposta nesse escopo de pesquisa diferencia-se de trabalhos existentes, pois o sistema utiliza um algoritmo que mescla o coeficientes de similaridade de Jaccard com cálculo de similaridade semântica utilizando fontes de dados diversas como WordNet e Linked Open Data de modo transparente ao usuário.


  • Mostrar Abstract
  • Recommendation systems have the main characteristic of suggesting items according to the preferences of a specific user. On the Web, Recommendation Systems assist users in discovering content of interest and are present in several Social Web systems such as Youtube.com, Netflix.com, Amazon.com etc. In the scope of this work, the focus will be on tags, keywords associated with resources on the Web. In general, tags are associated by users to describe resources, for example: films, books, music becoming true explicit sources of preference, but without restriction on the syntax of words. Recommendation Systems based on similarity between tags have the challenge of overcoming such problems and aim to evaluate the similarity between tags in order to indicate relevant items for users. However, semantically analyzing tags is a task that has several challenges, such as polysemy and the existence of synonyms. In this work, it is proposed to evaluate semantic links between tags associated with web pages, in order to increase the accuracy of the recommendations. Therefore, the objective of this work is also to propose a system that performs semantic analysis between tags in order to find similarities neglected only by syntactic analysis. It is intended to initially evaluate the system in the context of films given the availability of a set of tags associated with them, using precision metrics in different ranking positions. The idea of the proposal in this research scope differs from existing works, since the system uses an algorithm that mixes Jaccard's similarity coefficients with semantic similarity calculation using different data sources such as WordNet and Linked Open Data in a transparent way to the user .

12
  • MARCOS VINICIUS DOS SANTOS FERREIRA
  • Modelagem Fuzzy de Componentes Determinísticos para Previsão de Séries Temporais

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • TATIANE NOGUEIRA RIOS
  • HELOISA DE ARRUDA CAMARGO
  • RODRIGO FERNANDES DE MELLO
  • Data: 27/07/2020

  • Mostrar Resumo
  • A modelagem de dados no domínio temporal tem sido aplicada em diferentes sistemas como meteorologia, engenharia, medicina e economia. Neste sentido, a área de Séries Temporais Fuzzy tem se destacado devido à sua capacidade de aproximar funções matemáticas e variáveis linguísticas para criação de regras, que são mais fáceis de serem interpretadas por especialistas. Como consequência dessa capacidade, pode-se obter modelos mais precisos para compreender o comportamento de sistemas e, por exemplo, realizar previsões de observações futuras. Desde o surgimento de modelos de séries temporais fuzzy, pesquisadores vêm propondo melhorias visando, por exemplo, reduzir erros na tarefa de previsão. Em geral, tais tarefas são compostas de três etapas: i) fuzzificação; ii) relacionamento lógico fuzzy; e iii) defuzzificação. De acordo com a literatura, um dos pontos mais estudados por pesquisadores é a etapa de fuzzificação, com foco no particionamento do universo do discurso para modelagem dos conjuntos fuzzy. No entanto, poucos trabalhos na literatura consideram a separação de influências dos componentes estocásticos e determinísticos presente com o objetivo de auxiliar no processo de modelagem dos conjuntos fuzzy. Visando superar essa limitação, o presente trabalho apresenta duas abordagens que realizam melhorias na modelagem dos conjuntos fuzzy na etapa de fuzzificação, considerando influências de componentes estocásticos e determinísticos presentes em séries temporais. Na primeira abordagem, realizou-se inicialmente a decomposição da série separando seus componentes em diferentes monocomponentes. Em seguida, monocomponentes com alta frequência foram removidos, resultando em uma nova série suavizada cuja combinação com a série original permite gerar um novo gráfico de dispersão. A segunda abordagem foi desenvolvida para modelar séries com comportamento caótico. Nesse sentido, ao invés de modelar a série como um gráfico de dispersão, utilizou-se ferramentas da área de Sistemas Dinâmicos e Teoria do Caos para reconstruir a série no espaço fase. Embora utilizem métodos distintos, as duas abordagens fazem a remoção da dependência temporal entre as observações para auxiliar no processo de modelagem dos conjuntos fuzzy modelagem, o qual é conduzido considerando o método de agrupamento Fuzzy C-Means e índices de validação de agrupamento, para estimar a quantidade e a função dos conjuntos fuzzy. Nos experimentos, utilizou-se séries temporais com influências de componentes estocásticos e determinísticos para validar e testar a generalização da abordagem. Os resultados atingidos foram promissores e superiores em comparação com o estado da arte.


  • Mostrar Abstract
  • Data modeling in the temporal domain has been applied to different systems such as meteorology, engineering, medicine and economics. In this sense, the Fuzzy Time Series area has stood out due to its ability to approximate mathematical functions and linguistic variables to create rules, which are easier to be interpreted by specialists. As a consequence of this capacity, more accurate models can be obtained to understand the behavior of systems and, for example, to make predictions of future observations. Since the appearance of fuzzy time series models, researchers have been proposing improvements aiming, for example, to reduce errors in the forecasting task. In general, such tasks are composed of three stages: i) fuzzification; ii) fuzzy logical relationship; and iii) defuzzification. According to the literature, one of the points most studied by researchers is the fuzzification stage, with a focus on partitioning the universe of discourse for modeling fuzzy sets. However, few studies in the literature consider the separation of influences from the stochastic and deterministic components present in order to assist in the modeling process of fuzzy sets. In order to overcome this limitation, the present work presents two approaches that make improvements in the modeling of fuzzy sets in the fuzzification stage, considering influences of stochastic and deterministic components present in time series. In the first approach, the series was initially decomposed, separating its components into different monocomponents. Then, single components with high frequency were removed, resulting in a new smoothed series whose combination with the original series allows to generate a new scatter plot. The second approach was developed to model series with chaotic behavior.
    In this sense, instead of modeling the series as a scatter plot, tools from the field of Dynamic Systems and Chaos Theory were used to reconstruct the series in phase space. Although using different methods, the two approaches remove the temporal dependence between the observations to assist in the modeling process of the fuzzy modeling sets, which is conducted considering the Fuzzy C-Means clustering method and cluster validation indexes, to estimate the quantity and function of fuzzy sets. In the experiments, time series with influences of stochastic and deterministic components were used to validate and test the generalization of the approach. The results achieved were promising and superior compared to the state of the art.
13
  • ROSANA GUIMARÃES RIBEIRO
  • Novo índice interno de validação de agrupamento de dados temporais

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • MARCELO KEESE ALBERTINI
  • MARCOS ENNES BARRETO
  • RICARDO ARAUJO RIOS
  • Data: 29/07/2020

  • Mostrar Resumo
  • Técnicas de Aprendizado de Máquina não-supervisionado foram desenvolvidas visando encontrar estruturas e padrões em conjuntos de dados sem considerar qualquer informação prévia fornecida, por exemplo, por um especialista. Essa ausência de informação impacta diretamente no processo de validação devido à dificuldade em mensurar o conhecimento obtido por meio destas técnicas. Visando solucionar este problema, diversas pesquisas têm sido publicadas na literatura propondo critérios que integram diferentes áreas do conhecimento como Ciência da Computação e Estatística. Esses critérios são comumente divididos em $3$ categorias: relativo, externo e interno. Em geral, tais critérios são desenvolvidos com base em índices com diferentes objetivos e vieses de análise. Entretanto, grande parte desses índices são aplicados sobre dados caracterizados por serem independentes e identicamente distribuídos. A realização de uma Revisão Sistemática da Literatura demonstrou que há um número reduzido de pesquisas que investigam índices de validação de agrupamento para dados com dependência temporal entre suas observações. Este número é ainda mais reduzido quando se trata de índices que utilizam critério interno de validação. Neste sentido, este trabalho de mestrado apresenta um novo índice interno de validação baseado na adaptação da Estatística GAP (Gap Statistic) comumente utilizado na literatura. O índice apresentado foi desenvolvido com o objetivo de mensurar e validar informações extraídas de dados temporais a partir da aplicação de técnicas de Aprendizado de Máquina não-supervisionado. Dessa forma, resultados experimentais demonstram a eficiência do novo índice interno de validação para dados com dependência temporal e confirmam a importância do mesmo para o estado da arte.

     


  • Mostrar Abstract
  • Técnicas de Aprendizado de Máquina não-supervisionado foram desenvolvidas visando encontrar estruturas e padrões em conjuntos de dados sem considerar qualquer informação prévia fornecida, por exemplo, por um especialista. Essa ausência de informação impacta diretamente no processo de validação devido à dificuldade em mensurar o conhecimento obtido por meio destas técnicas. Visando solucionar este problema, diversas pesquisas têm sido publicadas na literatura propondo critérios que integram diferentes áreas do conhecimento como Ciência da Computação e Estatística. Esses critérios são comumente divididos em $3$ categorias: relativo, externo e interno. Em geral, tais critérios são desenvolvidos com base em índices com diferentes objetivos e vieses de análise. Entretanto, grande parte desses índices são aplicados sobre dados caracterizados por serem independentes e identicamente distribuídos. A realização de uma Revisão Sistemática da Literatura demonstrou que há um número reduzido de pesquisas que investigam índices de validação de agrupamento para dados com dependência temporal entre suas observações. Este número é ainda mais reduzido quando se trata de índices que utilizam critério interno de validação. Neste sentido, este trabalho de mestrado apresenta um novo índice interno de validação baseado na adaptação da Estatística GAP (Gap Statistic) comumente utilizado na literatura. O índice apresentado foi desenvolvido com o objetivo de mensurar e validar informações extraídas de dados temporais a partir da aplicação de técnicas de Aprendizado de Máquina não-supervisionado. Dessa forma, resultados experimentais demonstram a eficiência do novo índice interno de validação para dados com dependência temporal e confirmam a importância do mesmo para o estado da arte.

     

14
  • VICTOR MACIEL GUIMARÃES DOS SANTOS
  • Quantificação da novidade temporal: um novo método para quantificar a novidade temporal nas redes sociais
  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • DANIELA BARREIRO CLARO
  • ANGELO CONRADO LOULA
  • Data: 30/07/2020

  • Mostrar Resumo
  • Atualmente, existe um número expressivo de redes sociais utilizadas para diversos fins, como conectar pessoas com um interesse comum em pesquisa, ofertas de emprego, preferências musicais e conteúdos em geral. Essas redes ganharam popularidade significativa nos últimos anos. Para demonstrar esse fenômeno, a pesquisa mostra que 71% dos jovens adultos americanos usam uma rede social pelo menos uma vez por dia. Com esse acesso frequente e a liberdade proporcionada pelas redes, os usuários passaram a publicar inúmeras informações, desde fotos pessoais até textos com opiniões sobre diversos temas como política, entretenimento e saúde. Nesse sentido, um novo volume de informações passou a ser produzido, uma vez que, antes das redes sociais, apenas profissionais especializados com acesso às mídias convencionais conseguiam publicar suas opiniões. Do ponto de vista científico, diversas técnicas têm sido propostas na literatura com o objetivo de analisar o conteúdo produzido nessas redes sociais. Especificamente relacionado ao comportamento dos usuários, é comum observar sua modelagem por meio de gráficos ou séries temporais, no entanto, esses métodos tendem a ignorar aspectos desse comportamento, por exemplo, a relação temporal ou a dependência entre os termos usados nas publicações. Considerando essas limitações, este projeto de pesquisa foi desenvolvido com base na hipótese de que a adoção de grafos temporais, em conjunto com ferramentas das áreas de Mineração de Texto e Séries Temporais, permite detectar mudanças no comportamento dos usuários de redes sociais. Para validar essa hipótese, uma nova abordagem foi desenvolvida para identificar pontos de mudança no comportamento dos usuários e associá-los a eventos reais que influenciaram a opinião pública. Este procedimento utiliza técnicas de Text Mining para encontrar termos, que serão utilizados posteriormente na criação de grafos temporais, mantendo suas relações nos textos originais e suas dependências temporais. Uma nova medida também foi desenvolvida para quantificar como as opiniões dos usuários evoluem com o tempo. Por fim, é apresentado um método para detecção automática de mudança de comportamento, que visa identificar os pontos em que ocorrem mudanças. Essa abordagem foi avaliada considerando um evento histórico no Brasil: as eleições presidenciais de 2018. Esse período foi escolhido devido ao volume de publicações que efetivamente estabeleceram as redes sociais como principal mecanismo de ativismo político. Os resultados obtidos enfatizam a importância da abordagem proposta e abrem novas possibilidades, por exemplo, para a identificação de bots que propagam notícias falsas.

  • Mostrar Abstract
  • Currently, there is an expressive number of social networks used for different purposes, such as connecting people with a common interest in research, job offers, musical preferences, and general content.  These networks have gained significant popularity in recent years.  To demonstrate this phenomenon,  research shows that 71% of young American adults use a social network at least once a day.  With this frequent access and the freedom given by the networks, users started to publish numerous information, from personal photos to texts with opinions on different topics such as politics, entertainment, and health. In this sense, a new volume of information started to be produced, since, before social networks, only specialized professionals with access to conventional media were able to publish their opinions.  From a scientific point of view, several techniques have been proposed in the literature aiming at analyzing the content produced in such social networks. Specifically related to the users’ behavior, it is common to observe their modeling through graphs or time series,  however,  these methods tend to ignore aspects of this behavior, for example, the temporal relationship or the dependence between terms used in publications.  Considering these limitations, this research project was developed based on the hypothesis that the adoption of temporal graphs, together with tools from the areas of text Mining and Time Series, allows the detection of changes in the behavior of users of social networks.  To validate this hypothesis, a new approach was developed to identify points of change in users’ behavior and to associate them with real events that influenced public opinion.   This procedure uses  Text  Mining techniques to find terms,  which will be used later in the creation of temporal graphs, maintaining their relationships in the original texts and their temporal dependencies.  A new measure has also been developed, to quantify how users’ opinions evolve with time.  Finally, a method for automatic detection of behavior change is presented, which aims to identify points when changes occur. This approach was evaluated considering a historic event in Brazil:  the 2018 presidential elections.  This period was chosen due to the volume of publications that effectively established social networks as the main mechanism for political activism.   The results obtained emphasize the importance of the proposed approach and open new possibilities, for example, for the identification of bots that propagate fake news.

15
  • ILA MASCARENHAS MUNIZ
  • Os múltiplos papéis da Interação Humano-Computador: entendendo as mensagens de metacomunicação sob a ótica da Dialética Hegeliana

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • ECIVALDO DE SOUZA MATOS
  • INGRID TEIXEIRA MONTEIRO
  • LEOBINO NASCIMENTO SAMPAIO
  • SUZI MARIA CARVALHO MARINO
  • SÍLVIA AMÉLIA BIM
  • Data: 07/08/2020

  • Mostrar Resumo
  • Artefatos computacionais estão cada vez mais integrados ao nosso cotidiano, influenciando nas mais variadas atividades. Por isso, o estudo da interação entre humanos e sistemas computacionais ganhou importância nos últimos anos, permitindo a construção e o aperfeiçoamento das tecnologias interativas. Para solucionar problemas de interação tem-se articulado conhecimentos de diferentes espaços/campos científicos. A popularização da colaboração web intensificou esses problemas, especialmente ao abrir a possibilidade de o usuário atuar com o papel de "projetista/designer". Apesar de oferecer maior autonomia ao usuário, o papel de designer pode exigir conhecimentos técnicos em computação que, provavelmente, o usuário não tenha. Sem conhecimento especializado, podem ocorrer rupturas na interpretação das mensagens da interface, especialmente quando o usuário assume, alternadamente, os papéis de designer e usuário durante a interação. Com isso, esta pesquisa verificou a existência de conflitos de interpretação durante o movimento dialético de sujeitos com múltiplos papéis de interação em um sistema computacional e analisou essas rupturas na comunicação utilizando os princípios da Dialética Hegeliana. Para isso, foi realizado um estudo de caso com os métodos da Engenharia Semiótica e análise dialética dos dados. Os resultados obtidos indicam possibilidades de reflexão e ação sobre potenciais conflitos de interpretação nas mensagens de metacomunicação da interface quando o usuário alterna entre os papéis de designer e usuário em tempo de interação.


  • Mostrar Abstract
  • Computational artifacts are increasingly integrated into our daily lives, influencing the
    most varied activities. For this reason, the study of the interaction between humans and
    computer systems has gained importance in recent years, allowing the construction and
    improvement of interactive technologies. To solve interaction problems, knowledge of
    different scientific spaces/fields was articulated. The popularization of collaboration on
    the web has intensified these problems, mainly opening up the possibility for the user to
    act in the role of ”designer”. Despite offering greater autonomy to the user, the role of
    the designer may require technical knowledge in computing that, probably, the average
    user does not have. Without specialized knowledge, interruptions in the interpretation
    of interface messages can occur, especially when the user alternately assumes the roles of
    designer and user during the interaction. With this, this research verified the existence of
    conflicts of interpretation during the dialectical movement of subjects with multiple roles
    of interaction in a computer system and analyzed these disruptions in communication
    using the principles of Hegelian Dialectic. For this, a case study was carried out with
    the methods of Semiotic Engineering, MIS and MAC, followed by a dialectical analysis
    of the results. The results obtained open possibilities for reflection on the possibility of
    conflicts of interpretation in the metacommunication messages of the interface when the
    user switches between the roles of designer and user at the moment of interaction.

16
  • DANIEL ARAÚJO DE MEDEIROS
  • Escalonamento de frequência orientado por perfil para cargas de trabalho de pesquisa
  • Orientador : VINICIUS TAVARES PETRUCCI
  • MEMBROS DA BANCA :
  • DANIEL MOSSÉ
  • GEORGE MARCONI DE ARAUJO LIMA
  • VINICIUS TAVARES PETRUCCI
  • Data: 12/08/2020

  • Mostrar Resumo
  • O escalonamento de frequências é uma técnica essencial para maximizar a eficiência dos recursos computacionais existentes, especialmente em sistemas com arquiteturas capazes de executar tais tarefas em núcleos de frequência variável. Um dos fatores mais críticos capazes de afetar a experiência do usuário em serviços como busca ou redes sociais é a latência de cauda, definida como sendo a latência no 95 ou 99-percentil. Esta latência pode ser fortemente influenciada pela resposta mais lenta de um núcleo de baixo desempenho de um sistema, com seu impacto largamente amplificado quão mais núcleos de baixo desempenho estejam hospedados neste mesmo sistema. Do lado corporativo, reduzir a latência de cauda para a meta desejada é tão necessário quanto a diminuição do gasto energético, haja vista que este é diretamente proporcional aos custos financeiros para a operação do serviço e consequentemente ao lucro. Trabalhos anteriores em escalonamento de frequências para núcleos com capacidade de variação de frequência são de granulometria grossa, no sentido que se observa o estado de toda a aplicação para a tomada de decisões (sem distinção entre aplicação, threads ou funções). Tais trabalhos também muitas vezes dependem de um processo externo rodando em paralelo para coletar o comportamento dinâmico de determinada tarefa.


  • Mostrar Abstract
  • O escalonamento de frequências é uma técnica essencial para maximizar a eficiência dos recursos computacionais existentes, especialmente em sistemas com arquiteturas capazes de executar tais tarefas em núcleos de frequência variável. Um dos fatores mais críticos capazes de afetar a experiência do usuário em serviços como busca ou redes sociais é a latência de cauda, definida como sendo a latência no 95 ou 99-percentil. Esta latência pode ser fortemente influenciada pela resposta mais lenta de um núcleo de baixo desempenho de um sistema, com seu impacto largamente amplificado quão mais núcleos de baixo desempenho estejam hospedados neste mesmo sistema. Do lado corporativo, reduzir a latência de cauda para a meta desejada é tão necessário quanto a diminuição do gasto energético, haja vista que este é diretamente proporcional aos custos financeiros para a operação do serviço e consequentemente ao lucro. Trabalhos anteriores em escalonamento de frequências para núcleos com capacidade de variação de frequência são de granulometria grossa, no sentido que se observa o estado de toda a aplicação para a tomada de decisões (sem distinção entre aplicação, threads ou funções). Tais trabalhos também muitas vezes dependem de um processo externo rodando em paralelo para coletar o comportamento dinâmico de determinada tarefa.

17
  • DANIEL AMADOR DOS SANTOS
  • Noções básicas sobre os desafios da replicação: uma visão sobre múltiplas replicações de um experimento de sistemas altamente configuráveis.
  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • EDUARDO SANTANA DE ALMEIDA
  • MANOEL GOMES DE MENDONCA NETO
  • RAFAEL PRIKLADNICKI
  • Data: 02/09/2020

  • Mostrar Resumo
  • Conforme a Engenharia de Software Empírica cresce em maturidade e número de publicações, mais as replicações são necessárias para fornecer uma base sólida para as evidências encontradas por meio de pesquisa. No entanto, estudos de replicação são escassos em geral e alguns tópicos sofrem mais do que outros. Além disso, os desafios associados à replicação de estudos empíricos não são bem entendido. Neste estudo, pretendemos preencher essa lacuna, investigando dificuldades emergentes. ao replicar um experimento. Usamos um método inovador em que os sujeitos com antecedentes distintos desempenham o papel de um grupo de pesquisa que tenta replicar um experimento estude. Oito replicações no total foram realizadas. Usamos a Grounded Theory's Método de comparação constante para análise qualitativa. Vimos em nossas replicações que a maioria dos resultados mantém em comparação com os experimentos originais. No entanto, os assuntos relataram muitas dificuldades, principalmente relacionadas à clareza das instruções e à qualidade dos artefatos de replicação. Com base em nossa experiência, também oferecemos recomendações que pode ajudar a mitigar problemas relacionados à replicação de experimentos.

  • Mostrar Abstract
  • As Empirical Software Engineering grows in maturity and number of publications, more

    replications are needed to provide a solid grounding to the evidence found through prior

    research. However, replication studies are scarce in general and some topics suer more

    than others. On top, the challenges associated with replicating empirical studies are not

    well understood. In this study we aim to ll this gap by investigating diculties emerging

    when replicating an experiment. We used an innovative method in which subjects with

    distinct background play the role of a research group attempting to replicate an experimental

    study. Eight replications in total were performed. We used Grounded Theory's

    Constant Comparison method for qualitative analysis. We have seen in our replications

    that most results hold comparing with the original experiments. However, the subjects

    reported many diculties, mostly related to the clarity of the instructions and the quality

    of the replication artifacts. Based on our experience, we also provide recommendations

    that can help mitigating issues related to experiment replication.

     

18
  • LEONARDO THOMAS TORRES SANTOS
  • Uma Proposta de Simulação Computacional 3D em Tempo Real para Pintura Hidrográfica

  • Orientador : KARL PHILIPS APAZA AGUERO
  • MEMBROS DA BANCA :
  • ANTONIO LOPES APOLINARIO JUNIOR
  • ESTEBAN WALTER GONZALEZ CLUA
  • KARL PHILIPS APAZA AGUERO
  • Data: 03/09/2020

  • Mostrar Resumo
  • A Pintura Hidrográfica, também chamada de Hidrografia é um método viável para colorir objetos criados com a impressão 3D. Entretanto, a técnica da hidrografia envolve uma complexa interação entre um filme e um objeto impresso em 3D. Primeiramente uma imagem é impressa em um filme, que é posto a flutuar na água. Em seguida, por reação com uma solução ativadora, o filme torna-se uma película adesiva com os pigmentos da imagem. Ao imergir um objeto 3D, o filme adere ao objeto, projetando a imagem 2D na superfície do objeto 3D. A projeção resultante de uma pintura hidrográfica é difícil de ser prevista de maneira precisa, visto que a operação ocorre na medida em que o filme vai aderindo ao objeto, considerando que o filme sofre um esticamento variável e um clareamento da cor nos pontos de maior esticamento. Para lidar com a dificuldade de se prever o resultado final da pintura hidrográfica, este trabalho propõe uma solução computacional que possibilita gerar uma imagem planificada de uma textura arbitrária, que impressa em um filme hidrográfico, permita colorir um objeto 3D. A proposta permite mapear fisicamente uma textura a um objeto, através de um processo com etapas computacionais e físicas. Para isto, foi criada uma simulação computacional em 3D que usa PBD (Position-Based Dynamics), uma técnica conhecida para simular corpos deformáveis e utilizada em bibliotecas para simulação de física. Esta técnica foi utilizada para executar em paralelo uma simulação na GPU (Graphics Processing Unit) com uma performance adequada. Então, foi simulado o comportamento do filme e a sua interação com o objeto impresso em 3D, como uma interação entre um corpo rígido em colisão com um corpo deformável. Para avaliar a performance alcançada de forma consistente, foram feitos testes variando o número de vértices e a quantidade de voxels nos corpos envolvidos e foi observado que a simulação continuou executando em tempo real. Além disso, a técnica de pintura hidrográfica foi executada em alguns modelos reais e estes resultados foram comparados com os modelos simulados.


  • Mostrar Abstract
  • Hydrographic Printing, also called Hydrographics, is a viable method for coloring objects created with 3D printers. However, executing the hydrographic technique leads to a complex interaction between a thin film and a 3D printed object. First, an image is printed on a film, which is put in the water. Then, by chemical reaction with an activator, the film becomes an adhesive sheet that carries the image pigment. When the 3D object dip, the film adheres to the object, projecting the 2D image to the object 3D surface. The hydrographic printing resultant projection is hard to predict precisely, because of the variable stretch in the film and the color whitening in the regions with high stretch. To address the difficulty of predicting the final result of hydrographic printing, we propose a computational solution that enables the generation of a flatted image of an arbitrary texture. Printing this image in a hydrographic film, it is possible to color a 3D object. The proposal allows executing a physical texture mapping in an object, with computational and physical steps. We propose a 3D computational simulation that uses Position-Based Dynamics, a popular technique for simulating deformable bodies and widely used in physics engines. We take advantage of this technique running in parallel a GPU-based simulation with suitable performance. We simulate the film behavior and its interaction with the 3D printed object, as an interaction between a soft-body colliding with a rigid one. To evaluate the achieved performance consistency, we made tests varying the number of vertices and voxels in the bodies involved and observed that the simulation kept running in real-time. We also execute the hydrographic technique in different printed models and compare these results with the simulated models.

19
  • ÍTALO DE CRISTO TEIXEIRA
  • Análise de estruturas de vizinhanças: um estudo de caso sobre o problema de programação de tarefas em ambiente job shop

  • Orientador : TIAGO DE OLIVEIRA JANUARIO
  • MEMBROS DA BANCA :
  • TIAGO DE OLIVEIRA JANUARIO
  • DANILO BARBOSA COIMBRA
  • MAYRON CESAR DE OLIVEIRA MOREIRA
  • Data: 17/10/2020

  • Mostrar Resumo
  • Uma das características mais importantes da busca local, amplamente utilizada em problemas de otimização, é a definição de sua estrutura de vizinhança. Uma vizinhança é um mapeamento que atribui para cada solução $s$ $\in$ $S$ um conjunto de soluções vizinhas $N(s)$. Procedimentos de busca local usam o conceito de vizinhanças para mover-se de uma solução $s$ para uma outra solução vizinha $s’ \in N(s)$. Nesta dissertação realizamos uma análise experimental do desempenho de seis estruturas de vizinhança para o Problema de Programação de Tarefas em ambiente \textit{Job Shop}. O objetivo desse problema consiste em planejar a execução de tarefas considerando um conjunto limitado de recursos e respeitando as restrições estabelecidas. Para uma análise efetiva das estruturas de vizinhança, foram utilizados quatro critérios de avaliação:  Eficiência, Convergência, Força e Aprimoramento. Neste trabalho, as vizinhanças foram apresentadas a partir da utilização de conceitos de teoria dos grafos. Os procedimentos de busca local aplicados foram desenvolvidos com base nas heurísticas \textit{Hill Climbing} e \textit{Variable Neighborhood Descent}, a última com o objetivo de estudar as interferências entre buscas realizando combinações de vizinhanças. A partir da análise dos resultados obtidos, foi possível correlacionar desempenhos das vizinhanças e obter informações úteis para entender por que certas vizinhanças apresentam desempenhos melhores que outras nos critérios de avaliação definidos.


  • Mostrar Abstract
  • One of the most crucial characteristics of local search, widely used in optimization problems, is the definition of its neighbourhood. A neighbourhood is a mapping that assigns to each schedule $s \in S$, a set of schedules $ N(s) $ that are neighbours of $s$. Local search procedures use the concept of a neighbourhood to move from one schedule $s$ to a neighbour schedule $s' \in N(s) $. In this project, we performed an experimental performance analysis of six neighbourhood structures for the Job Shop Scheduling Problem. The objective of this problem is to plan the execution of jobs considering a limited set of resources and respecting the established restrictions. For effective analysis of the neighbourhood structures, four evaluation criteria were considered: Efficiency, Convergence, Strength and Improvement. In this work, the neighbourhoods were created from graph theory concepts. The local search procedures were developed based on Hill Climbing and Variable Neighborhood Descent methods, the latter to study the interferences in local search procedures by performing combinations of neighbourhoods. From the analysis of the results obtained, it was possible to demonstrate correlations of performance between the neighbourhoods and obtain useful information to understand why some neighbourhoods perform better than others in the defined evaluation criteria.

20
  • WILLIAN CARLOS SOUZA MARTINHO
  • Uma nova metaheurística iterated local search baseada em simulação para o problema do projeto de redes de distribuição de água abastecidas por gravidade

  • Orientador : RAFAEL AUGUSTO DE MELO
  • MEMBROS DA BANCA :
  • DANIEL ALOISE
  • RAFAEL AUGUSTO DE MELO
  • TIAGO DE OLIVEIRA JANUARIO
  • Data: 19/10/2020

  • Mostrar Resumo
  • O problema de otimização do projeto de redes de distribuição de água (WDND, do inglês water distribution network design) alimentadas por gravidade  consiste em determinar os diâmetros dos tubos de uma rede de água de forma que as restrições hidráulicas sejam satisfeitas e o custo total seja minimizado. Tradicionalmente, essas decisões de design são feitas com base na experiência de especialistas. Quando as redes aumentam de tamanho, no entanto, as regras práticas raramente levam a decisões quase ideais. Nos últimos trinta anos, um grande número de técnicas foram desenvolvidas para resolver o problema de projetar de forma otimizada uma rede de distribuição de água. Este trabalho aborda o problema NP-difícil de otimização do projeto de redes de distribuição de água  em um cenário multiperíodo no qual ocorrem padrões de demanda variáveis no tempo. É proposta uma nova metaheurística de busca local iterada (ILS, do inglês iterated local search) baseada em simulação aprimorada que explora ainda mais a estrutura do problema na tentativa de obter soluções de alta qualidade.
    Mais especificamente, quatro novidades são propostas: (a) uma estratégia de busca local para dimensionar de forma inteligente tubos nos caminhos mais curtos entre os reservatórios e os nós com maiores demandas; (b) uma técnica para acelerar a convergência com base em um esquema de redução agressiva do diâmetro do tubo; (c) um novo mecanismo de perturbação concentrada que permite escapar de soluções ótimas locais muito restritas; e (d) um conjunto de soluções para alcançar um bom compromisso entre intensificação e diversificação.
    Experimentos computacionais mostram que a abordagem é capaz de melhorar uma metaheurística estado da arte para a maioria dos testes realizados. Além disso, converge muito mais rápido para soluções de baixo custo e demonstra um desempenho mais robusto na medida em que obtém menores desvios das melhores soluções encontradas.


  • Mostrar Abstract
  • The gravity fed water distribution network design (WDND) optimization problem consists in determining the pipe diameters of a water network such that hydraulic constraints are satisfied and the total cost is minimized. Traditionally, such design decisions are made on the basis of expert experience. When networks increase in size, however, rules of thumb will rarely lead to near optimal decisions.
    Over the past thirty years, a large number of techniques have been developed to tackle the problem of optimally designing a water distribution network. This work tackles the NP-hard water distribution network design (WDND) optimization problem in a multi-period setting where time varying demand patterns occur. A new enhanced simulation-based iterated local search (ILS) metaheuristic is proposed which further explores the structure of the problem in an attempt to obtain high quality solutions. More specifically, four novelties are proposed: (a) a local search strategy to smartly dimension pipes in the shortest paths between the reservoirs and the nodes with highest demands; (b) a technique to speed up convergence based on an aggressive pipe diameter reduction scheme; (c) a novel concentrated perturbation mechanism to allow escaping from very restrained local optima solutions; and (d) a pool of solutions to achieve a good compromise between intensification and diversification. Computational experiments show that the proposed approach is able to improve over a state-of-the-art metaheuristic for most of the performed tests. Furthermore, it converges much faster to low cost solutions and demonstrates a more robust performance in that it obtains smaller deviations from the best known solutions.

21
  • BRENNO DE MELLO ALENCAR
  • Aprendizado de Máquina para Redução do Tráfego de Dados e da Latência na Névoa das Coisas
  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • FLÁVIA COIMBRA DELICATO
  • MANOEL GOMES DE MENDONCA NETO
  • RICARDO ARAUJO RIOS
  • Data: 26/10/2020

  • Mostrar Resumo
  • A Internet of Things tem produzido infraestruturas/aplicações que geram grande volume de dados. Esses dados são geralmente fluxos de dados que têm a característica de serem contínuos e infinitos, e também apresentam a particularidade de modificar o seu comportamento ao longo do tempo. Devido a grande capacidade de armazenamento, processamento de dados e provisionamento de recursos, esses dados, em geral, são processados/analisados em ambientes de Cloud Computing. Embora a Cloud Computing forneça à infraestrutura IoT o tratamento adequado sob aspectos relacionados à escalabilidade e centralização dos recursos, a distância entre os dispositivos e a nuvem pode impor limitações para atingir baixa latência no tráfego de dados. Visando manter a escalabilidade, obter baixa latência e diminuir o tráfego de dados entre os dispositivos IoT e a Nuvem, a Fog Computing foi proposta. Apesar da Fog Computing estabelecer a disponibilização dos recursos na borda da rede, as tecnologias/técnicas utilizadas atualmente para processamento e análise de dados IoT podem não ser suficientes para suportar os fluxos contínuos e ilimitados de dados que as plataformas/aplicações IoT produzem. Além disso, as aplicações de fluxo de dados na Fog devem ser suportadas pelos dispositivos computacionalmente limitados empregados na Fog. Dessa forma, este trabalho apresenta uma abordagem para processamento e análise de fluxos de dados da Internet das Coisas em tempo real na Fog. Essa abordagem tem como objetivo principal reduzir a quantidade de dados transmitidos na infraestrutura de rede, o que permite, como consequência, realizar uma modelagem de dados online, detectando mudanças no comportamento do fluxo de dados e redução do uso da Internet. Por fim, avaliamos a proposta a partir da perspectiva de desempenho num cenário de objetos inteligentes na borda da rede.

  • Mostrar Abstract
  • The Internet of Things (IoT) has produced infrastructures/applications that generate large amounts of data. These data are usually data streams, that have the characteristic of being continuous and infinite and also have the peculiarity of modifying their behavior over time. Due to the large capacity of storage, data processing and provisioning of resources, this data is generally processed/analyzed in cloud computing environments. Although Cloud Computing provides the IoT infrastructure with adequate scalability and resource centric features, the distance between devices and the cloud can impose limitations to achieve low latency in data traffic. In order to maintain scalability, achieve low latency and reduce data traffic between the IoT devices and the Cloud, the Fog Computing was proposed. Although the Fog Computing paradigm establishes resource availability at the edge of the network, the technologies and techniques currently used for IoT data processing and analysis may not be sufficient to support the continuous and unlimited data stream that IoT platforms produce. In this way, this work presents an approach for processing and analyzing data stream from the Internet of Things in real time in Fog. The main advantage of using our approach is the possibility of reducing the amount of data transmitted on the network infrastructure, which allows, as a consequence, to perform an online data modeling, by detecting changes in data behavior, and a reduction of the Internet usage. In addition, the proposed platform does not require a constant Internet connection. Finally, we evaluate the proposal from the perspective of performance in a scenario of intelligent objects at the edge of the network.

22
  • JUNOT FREIRE DOS SANTOS NETO
  • Heurísticas e metaheurísticas para um problema restrito de corte bidimensional guilhotinado

  • Orientador : RAFAEL AUGUSTO DE MELO
  • MEMBROS DA BANCA :
  • BRUNO DE ATHAYDE PRATA
  • RAFAEL AUGUSTO DE MELO
  • TIAGO DE OLIVEIRA JANUARIO
  • Data: 27/11/2020

  • Mostrar Resumo
  • Problemas de corte bidimensional (2BP, do inglês 2-Dimensional bin packing problem) são problemas clássicos de otimização combinatória pertencentes à classe NP-Difícil e tem aplicações em diversos setores como a indústria têxtil, metalúrgica e de vidro. Estes problemas consistem em alocar um conjunto de itens retangulares em placas retangulares maiores com tamanho padronizado, a fim de minimizar o desperdício de matéria-prima. Nesta dissertação é estudado um problema restrito de corte bidimensional guilhotinado associado à produção de vidro considerado no ROADEF/EURO Challenge 2018, no qual existe a possibilidade de rotacionar itens em 90° e as placas retangulares de matéria-prima podem possuir defeitos como rachaduras e trincos. São propostas como técnicas para este problema duas heurísticas gulosas randomizadas e um método de aprimoramento de soluções baseado em uma modelagem de programação lógica por restrições combinada com uma heurística gulosa randomizada. As técnicas foram combinadas em metaheurísticas Multistart e GRASP (do inglês, Greedy Randomized Adaptive Search Procedure) a fim de se obterem melhores soluções. Os experimentos realizados mostram que o uso do método de aprimoramento de soluções é vantajoso, e que algumas combinações de técnicas se mostram mais eficazes para determinados tipos de instâncias. Uma versão preliminar deste trabalho foi qualificada para a etapa final do ROADEF/EURO Challenge 2018.




  • Mostrar Abstract
  • Two-Dimensional bin packing problems (2BP) are classic combinatorial optimization problems belonging to the NP-Hard class and have applications in several sectors such as the textile, metallurgical and glass industries. 2BP consists in allocating a set of rectangular items in larger rectangular plates with a standardized size in order to minimize the waste of raw material. In this dissertation, we approach a restricted version of the 2BP with guillotine cuts presented in the ROADEF/EURO Challenge 2018, in which there is a possibility to rotate items in 90° and soma itens have a order of precedence to be produced, and the rectangular plates may present defects in certain points. We propose two randomized greedy heuristics and a method for improving solutions based on a constraint programming model combined with a random greedy heuristic. The techniques are combined in Multistart and Greedy Randomized Adaptative Search Procedure (GRASP) metaheuristics in order to obtain better solutions. Computational experiments show that the use of the solution improvement method is advantageous, and that some combinations of the proposed techniques are more effective for certain types of instances. A preliminary version of this work was qualified for the final phase of the ROADEF/EURO Challenge 2018.

23
  • GRAZIENO BARBOSA PELLEGRINO RIBEIRO
  • OGUM: Um Framework para Cobertura de Área Utilizando um Conjunto Dinâmico de VANTs

  • Orientador : FLAVIO MORAIS DE ASSIS SILVA
  • MEMBROS DA BANCA :
  • ALLAN EDGARD SILVA FREITAS
  • DANIELA BARREIRO CLARO
  • FLAVIO MORAIS DE ASSIS SILVA
  • Data: 11/12/2020

  • Mostrar Resumo
  • A coordenação de Veículos Aéreos Não Tripulados (VANTs) cooperativos tornou-se uma área ativa de pesquisa. As abordagens para coordenar esses enxames geralmente incluem uma solução para uma classe de problemas chamada Cobertura de Área. Os problemas de Cobertura de Área consistem na obtenção de informações sobre uma determinada área de interesse (comumente um polígono ou um poliedro) por meio de um conjunto de VANTs, geralmente com coordenação descentralizada e mínima intervenção humana. Problemas de Cobertura de Área representam os requisitos de diferentes tipos de aplicações, como no caso de emergências e desastres, deteccção de vazamento de gás, resgate de pessoas perdidas, entre muitos outros. As soluções existentes para estes problemas normalmente consideram um conjunto fixo de VANTs. Nesta dissertação, descreve-se uma estratégia para coordenar conjuntos dinâmicos de VANTs para resolver um problema específico de Cobertura de Área. Em conjuntos dinâmicos, os VANTs podem entrar ou sair do conjunto. Para implementar a estratégia, um framework foi desenvolvido utilizando ROS e Gazebo. O framework Robotic Operating System (ROS) é um conjunto de bibliotecas e ferramentas para robôs. As missões de Cobertura de Área são reproduzidas no ambiente de simulação Gazebo. O framework facilita a implementação de diferentes estratégias para a coordenação de múltiplos VANTs. Como forma de avaliação da estratégia adotada, foram adotados mapas de calor que representam o movimento dos VANTs no plano.


  • Mostrar Abstract
  • The coordination of cooperative unmanned aerial vehicles (UAVs) has become an active area of research. Approaches to coordinating these swarms often include a solution to a class of problems called Area Coverage. Problems in this class consist of obtaining information about a specific area of interest (usually a polygon or polyhedron) through a set of UAVs, usually with decentralized coordination and minimal human intervention. Area coverage problems model the requirements of different types of applications, such as in the case of emergencies and disasters, gas leak detection, rescue of lost people, among many others. Existing solutions to these problems usually consider a fixed set of UAVs. In this dissertation, a strategy to coordinate dynamic sets of UAVs to solve a specific Area Coverage problem is described. In these dynamic sets, UAVs can enter or leave the set. To implement the strategy, a framework was developed using ROS and Gazebo. The framework ROS is a set of libraries and tools for robots. Area Coverage missions are executed in the Gazebo simulation environment. The framework facilitates the implementation of different strategies for coordinating multiple UAVs. We introduced heat maps to assess the quality of the adopted strategy. A heat map represents the movement of UAVs in the plan.

24
  • Carlos Fernando Silva Fernandes de Abreu Neto
  • MODELO DE AGRUPAMENTO DINÂMICO DE MÚLTIPLOS FLUXOS DE DADOS UTILIZANDO VER EM REDES ÓPTICAS TRANSLÚCIDAS

     

  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • HELDER MAY NUNES DA SILVA OLIVEIRA
  • JULIANA DE SANTI
  • Data: 15/12/2020

  • Mostrar Resumo
  • Com o grande crescimento da demanda de tráfego nas redes de computadores, as Redes Ópticas Elásticas surgiram como uma promissora evolução tecnológica das redes ópticas para o desenvolvimento de soluções com foco na utilização eficiente dos recursos de rede. Diferentemente das tradicionais redes WDM, que trabalham com alocação de recursos de grade fixa, nas EONs a largura de banda de um caminho óptico é escalável, podendo variar de acordo com a necessidade de cada conexão, adaptando-se dinamicamente a cada demanda de tráfego, garantindo o uso mais eficiente dos recursos espectrais. Neste contexto, o uso dos recursos torna-se cada vez mais equilibrado, possibilitando maior redução de custos em diversos fatores tecnológicos. No entanto, com a popularização da internet e a busca por atender uma maior gama de possibilidades tecnológicas com eficiência, pesquisadores vem concentrando seus esforços para uma utilização ainda mais estratégica destes recursos de rede. As Redes Ópticas Elásticas Translúcidas, através de estratégicas eficientes, utiliza fortemente o conceito de elasticidade e adaptabilidade com o uso de equipamentos de regeneração do sinal. Os Regeneradores Elásticos Virtualizados são equipamentos capazes de se adaptar dinamicamente de acordo com a demanda de tráfego, onde a medida que não são mais necessários, o VER é liberado para utilização de novas demandas. Desta forma é possível atender um número maior de conexões ópticas e atingir maiores distâncias com eficiência energética e redução de custo.
    Essas novas tecnologias de transmissão apresentam características complementarem, que as utilizando combinados a outros conceitos, trás grandes benefícios a empresas e usuários. O estabelecimento de conexões orientadas por prazo, pode ser adiado até o momento em que se tenha recursos disponíveis para atender ao prazo exigido. A possibilidade de programar uma requisição pode trazer benefícios tantos para usuários quanto para as empresas provedoras de serviços. Se não houver recursos disponíveis, o estabelecimento de uma nova conexão poderá ser adiado, desta forma é possível atender um maior número de requisições evitando aumento na taxa de bloqueios. Em conjunto com o provisionamento agendado das requisições, a criação de lotes de requisições, contribui para a flexibilização na hora de estabelecer novas conexões. Um lote é um conjunto de requisições que chegam em um determinado momento e que não são provisionadas de imediato, ou seja, cada requisição receberá um determinado deadline onde seu estabelecimento deverá ser atendido dentro deste prazo. Caso não haja recursos, ao final do deadline a conexão deverá ser bloqueada. O agendamento em lotes permitem maiores combinações aproveitando ao máximo os recursos disponíveis de rede, evitando assim aumento do consumo energético e redução do número de bloqueios das requisições.
    Diante disso, este trabalho apresenta uma nova metodologia para enfrentar o problema do aumento exponencial de tráfego na rede de comunicação, considerando a redução de custo naturalmente prioritária. Para atingir tais expectativas, a metodologia proposta consiste no desenvolvimento de um modelo de agrupamento e compartilhamento dinâmico de recursos de equipamentos de regeneração, além da combinação de tecnologias na criação de lotes de requisição com provisionamento agendado. 
    Os resultados obtidos através de simulações por software implementado pelo próprio autor, indicam que o modelo se mostrou eficaz, e foi capaz de reduzir consideravelmente a taxa de bloqueio, a quantidade de recursos com VER utilizado e consequentemente gerou maior eficiência energética, quando comparado aos mesmos métodos sem a utilização desta metodologia de agrupamento, criação de lotes de requisição e provisionamento agendado.


  • Mostrar Abstract
  • With the growth in the demand for traffic on computer networks, Elastic Optical Networks emerged as a promising technological evolution of optical networks for the development of solutions focused on the efficient use of network resources. Unlike traditional WDM networks, which work with allocation of fixed grid resources, in EONs the bandwidth of an optical path is scalable and can vary according to the need for each connection, adapting dynamically to each traffic demand, ensuring the most efficient use of spectral resources. In this context, the use of resources is becoming more and more balanced, enabling greater cost reduction in several technological factors. However, with the popularization of the internet and the search to serve a greater range of technological possibilities with efficiency, researchers have been focusing their efforts towards an even more strategic use of these network resources. Translucent Elastic Optical Networks, through efficient strategies, strongly use the concept of elasticity and adaptability with the use of signal regeneration equipment. The Virtualized Elastic Regenerators are devices capable of adapting dynamically according to the traffic demand, where as they are no longer needed, VER is released to use new demands. In this way it is possible to serve a greater number of optical connections and reach greater distances with energy efficiency and cost reduction. These new transmission technologies have complementary characteristics, which using them combined with other concepts, brings great benefits to companies and users. The establishment of term-oriented connections can be postponed until such time as resources are available to meet the required term. The possibility of scheduling a requisition can bring benefits to both users and service providers. If there are no resources available, the establishment of a new connection may be postponed, so it is possible to handle a greater number of requests, avoiding an increase in the blocking rate. In conjunction with the scheduled provisioning of requisitions, the creation of requisition batches contributes to flexibility when establishing new connections. A batch is a set of requests that arrive at a certain time and that are not immediately provisioned, that is, each request will receive a certain deadline where your establishment must be attended to within this period. If there are no resources, at the end of the deadline the connection must be blocked. Scheduling in batches allows for greater combinations, making the most of the available network resources, thus avoiding increased energy consumption and reducing the number of blocking requests. Therefore, this work presents a new methodology to face the problem of exponential increase in traffic on the communication network, considering cost reduction naturally a priority. In order to achieve these expectations, the proposed methodology consists of the development of a dynamic pooling and resource sharing model for regeneration equipment, in addition to the combination of technologies in the creation of requisition batches with scheduled provisioning. The results obtained through simulations by software implemented by the author himself, indicate that the model proved to be effective, and was able to considerably reduce the blocking rate, the amount of resources with VER used and consequently generated greater energy efficiency, when compared to them methods without using this grouping methodology, creating requisition batches and scheduled provisioning.

25
  • VIRGÍNIA DE SOUSA VENEGA
  • REQUISITOS DE SOFTWARE PARA

    ADAPTAÇÃO DE AMBIENTES MOOC PARA

    A ABORDAGEM CONECTIVISTA

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • PAULEANY SIMOES DE MORAIS
  • IVAN DO CARMO MACHADO
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 16/12/2020

  • Mostrar Resumo
  • Massive Open Online Courses (MOOC) são cursos online abertos, em geral gratuitos, sem

    exigência de conhecimento pr evio para participa c~ao e quantidade inde nida de participantes.

    MOOC podem ser divididos em dois grupos: xMOOC e cMOOC. Os ambientes

    xMOOC são considerados extensões de ambientes de cursos online tradicionais pois preservam

    caracter  sticas pedag ogicas muito pr oximas, como o suporte assíncrono mínimo,

    avaliações gen ericas e foco em recrutamento contínuo. Essa modalidade de curso, apesar

    de ser o tipo mais comum de MOOC e possuir suporte ao desenvolvimento bem defi

    nido, enfrenta percalços, como as altas taxas de evasãoo dos estudantes e dificuldades no

    processo de avalia c~ao de aprendizagem. No caso dos ambientes cMOOC, MOOC sob a

    perspectiva da abordagem conectivista, ainda n~ao h a um consenso sobre os requisitos de

    software para este domínio. Considerando MOOC como um tipo de Software Educacional

    (SE), diversos estudos exploram a problem atica da construção de SE sob a perspectiva

    de teorias e abordagens pedagógicas especícas para direcionar o desenvolvimento do

    software. Essas teorias, m etodos e abordagens pedag ogicos podem auxiliar na compreens~

    ao dos processos de aprendizagem & avaliação, bem como na concepção de cursos e

    MOOC. Observa-se ent~ao, que s~ao raros os projetos de softwares que consideram teorias

    ou m etodos de aprendizagem espec   cas desde sua idealização. Nesse sentido este

    trabalho buscou identi car quais s~ao os requisitos de software necess arios para o desenvolvimento

    de ambientes cMOOC. Para alcan car este objetivo, surveys foram aplicados

    a estudantes de computação de diferentes cursos e a pro ssionais da  area de Inform atica

    e Educação a  m de capturar, os requisitos desej aveis para o desenvolvimento de MOOC

    conforme o conectivismo. Dois surveys foram realizados com estudantes e educadores.

    Como resultado, 853 potenciais requisitos foram inicialmente identi cados e ap os sucessivos

    ciclos de coding,  fltrados e sintetizados. Os requisitos identicados e catalogados

    foram alicer cados nas dimens~oes Abertura, Interatividade, Autonomia e Diversidade, balizadoras

    do conectivismo. Como resultado deste trabalho, um cat alogo de requisitos de

    software para o desenvolvimento de cMOOC foi concebido. Com isso espera-se poder

    apoiar o processo de engenharia de requisitos para domínios pedagógicos específicos e o

    desenvolvimento de cMOOC.


  • Mostrar Abstract
  • ABSTRACT

    Massive Open Online Course (MOOC) are open online courses, generally free, with

    no prior knowledge required for participation and an inde nite number of participants.

    MOOC can be divided into two groups: xMOOC and cMOOC. XMOOC environments

    are considered extensions of traditional online course environments as they preserve very

    similar pedagogical characteristics, such as minimal asynchronous support, generic assessments,

    and a focus on continuous recruitment. This course modality, despite being

    the most common type of MOOC and having well-de ned development support, faces

    problems, such as high student dropout rates and di culties in the learning assessment

    process. For cMOOC environments MOOCs from the perspective of the connectivist approach,

    there is still no consensus on the software requirements for this domain. Considering

    MOOC as a type of Educational Software (SE), several studies explore the problem

    of building SE under the perspective of speci c theories and pedagogical approaches to

    direct the development of the software. These theories, methods, and pedagogical approaches

    can help to understand the learning & evaluation processes as well as in the design

    of courses and MOOCs. It is observed, then, that few software projects consider speci c

    theories or learning methods since their conception. In this sense, this work aimed to

    identify what are the software requirements needed for the development of cMOOC environments.

    To achieve this objective, surveys were applied to computer students from

    di erent courses and professionals in the area of Informatics and Education to capture,

    the desirable requirements for the development of MOOC according to connectivism.

    Two surveys were carried out with students and educators. As a result, 853 potential

    requirements were initially identi ed and after successive coding cycles,  ltered and

    synthesized. The identified and cataloged requirements were based on the dimensions of

    Openness, Interactivity, Autonomy, and Diversity, beacons of connectivism. As a result

    of this work, a catalog of software requirements for the development of cMOOC was designed.

    With this expected to be able to support the requirements engineering process

    for speci c educational  elds and the development of cMOOC.

26
  • RAPHAEL ALVES DE JESUS LIMA
  • Comparando Técnicas de Extração de Valores Limiares para Métricas de Código Fonte: Um Estudo com Desenvolvedores Web

  • Orientador : CLAUDIO NOGUEIRA SANT ANNA
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • EDUARDO MARTINS GUERRA
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 17/12/2020

  • Mostrar Resumo
  • Métricas de código fonte permitem medir diferentes atributos do software e têm potencial para apoiar a identificação de problemas de design que podem interferir na compreensibilidade e na manutenibilidade do software. A identificação de problemas de design pode revelar partes do código fonte que precisam ser monitoradas com mais atenção. No entanto, um dos principais desafios na utilização de métricas em atividades de monitoramento da qualidade do código fonte é a definição de valores limiares que sejam capazes de identificar partes do código que realmente sejam consideradas problemáticas pelos desenvolvedores. Embora exista uma série de técnicas de extração de valores limiares, percebe-se que os valores limiares obtidos por meio delas geram muitos falso-positivos. Isto é, existem muitos elementos de código (ex.: classes ou métodos) cujos valores de métricas ultrapassam os valores limiares, mas que, ao serem avaliados por desenvolvedores, não são considerados como problemáticos. Portanto, a participação de desenvolvedores é importante para avaliar a efetividade de valores limiares. Poucos estudos, no entanto, avaliam a efetividade de diferentes técnicas de extração de valores limiares com base na percepção de desenvolvedores. Esse trabalho tem como objetivo, portanto, investigar qual é a percepção de desenvolvedores sobre os problemas de design detectados com valores limiares obtidos por meio de cinco técnicas diferentes que extraem valores limiares a partir de benchmarks de sistemas. Diante deste cenário, realizamos dois estudos, um preliminar em que analisamos dois sistemas e dois desenvolvedores, e um outro estudo em que analisamos quatro sistemas e oito desenvolvedores. Os resultados indicam que técnicas de extração de valores limiares que levam em consideração alguma informação de contexto, como sistemas de referência ou papéis de design, tem potencial para reduzir o número de falso-positivos.  

  • Mostrar Abstract
  • Source code metrics quantify di erent software attributes and have the potential to support
    the identi cation of design problems that may a ect software comprehensibility and
    maintainability. Identifying design problems can reveal parts of the source code that
    need to be monitored more closely. However, one of the major challenges in using metrics
    in source code quality monitoring activities is the de nition of threshold values that are
    capable of identifying design problems that are actually considered problems according
    to developers' perceptions. Although there are a number of techniques for extracting
    threshold values, the threshold values obtained by means of them generate many false
    positives. That is, there are many of code elements (e.g., classes or methods) whose
    metric values exceed threshold values that, when evaluated by developers, are not considered
    to be problematic. Therefore, the participation of developers is important to
    analyze threshold value e ectiveness. Few studies evaluate the e ectiveness of di erent
    threshold extraction techniques based on the perception of developers. Therefore, the
    goal of this work was to conduct an experimental study to evaluate the perception of
    developers about design problems detected with threshold values obtained by means of
    ve di erent techniques that extract threshold values from system benchmarks. In this
    scenario, we conducted two studies, a preliminary one in which we analyzed two systems
    and two developers' perception, and a second study in which we analyzed four systems
    and eight developers. The results indicate that developers use design roles to assess
    whether or not design problems exist, and techniques that take into account some contextual
    information, such as reference systems or design papers to derive thresholds may
    reduce the number of false-positives.

27
  • ANDRE LUIZ ROMANO MADUREIRA
  • IOTP: On Supporting IoT Data Aggregation Through Programmable Data Planes

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • LEOBINO NASCIMENTO SAMPAIO
  • RODOLFO DA SILVA VILLAÇA
  • Data: 23/12/2020

  • Mostrar Resumo
  • IoT devices generate large continuous data streams, which causes congestion that compromises the scalability of IoT systems. To face this problem, techniques for data aggregation propose to reduce recurring packet headers, through the assembly of packet data coming from different sources. Due to the energy constraints and limitation of computational resources of devices, most proposals adjust data aggregation according to their features following multilayered-based approaches or coupling the solution to a given network protocol, but overlooking the properties of the communication link. In this dissertation, we introduce the Internet of Things Protocol (IoTP). An L2 communication protocol for IoT programmable data planes that supports the implementation of data aggregation algorithms inside hardware switches, at the network level. Through these features, IoTP provides support for the design of efficient and adaptable aggregation schemes that can function according to network status and based on the different communication technologies used by IoT devices. We implemented IoTP using the P4 language and conducted emulation-based experiments through the Mininet environment. Our findings show that IoTP accomplishes a 78% improvement in network efficiency, as well as allowing control over the average delay generated by data aggregation techniques. Besides that, it was able to reduce the number of packets sent over the network, while also reducing the consumption of network devices computational resources.


  • Mostrar Abstract
  • IoT devices generate large continuous data streams, which causes congestion that compromises the scalability of IoT systems. To face this problem, techniques for data aggregation propose to reduce recurring packet headers, through the assembly of packet data coming from different sources. Due to the energy constraints and limitation of computational resources of devices, most proposals adjust data aggregation according to their features following multilayered-based approaches or coupling the solution to a given network protocol, but overlooking the properties of the communication link. In this dissertation, we introduce the Internet of Things Protocol (IoTP). An L2 communication protocol for IoT programmable data planes that supports the implementation of data aggregation algorithms inside hardware switches, at the network level. Through these features, IoTP provides support for the design of efficient and adaptable aggregation schemes that can function according to network status and based on the different communication technologies used by IoT devices. We implemented IoTP using the P4 language and conducted emulation-based experiments through the Mininet environment. Our findings show that IoTP accomplishes a 78% improvement in network efficiency, as well as allowing control over the average delay generated by data aggregation techniques. Besides that, it was able to reduce the number of packets sent over the network, while also reducing the consumption of network devices computational resources.

Teses
1
  • NICOLLI SOUZA RIOS ALVES
  • Organização De Um Conjunto De Descobertas Experimentais Sobre Causas E Efeitos Da Dívida Técnica Através De Uma Família De Surveys Globalmente Distribuída

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • CLAUDIO NOGUEIRA SANT ANNA
  • EMILIA MENDES
  • MANOEL GOMES DE MENDONCA NETO
  • TAYANA UCHÔA CONTE
  • Data: 26/05/2020

  • Mostrar Resumo
  • Contexto: O conceito de dívida técnica (DT) contextualiza o problema das tarefas de desenvolvimento pendentes como um tipo de dívida que traz um benefício a curto prazo para o projeto, mas que poderão ter de ser pagas com juros mais tarde no processo de desenvolvimento. É comum que um projeto de software incorra em dívida durante o processo de desenvolvimento, no entanto, sua presença traz riscos para o projeto e dificulta sua gestão. Diferentes estratégias de gerenciamento da DT têm sido propostas, contudo, considerar ações que possam evitar sua inserção e monitorar seus efeitos ainda não é uma prática comum. Este é um ponto que merece ser melhor investigado por diferentes motivos: (i) conhecer as causas da DT pode auxiliar as equipes de desenvolvimento na definição de ações que possam ser tomadas para evitar sua ocorrência e (ii) conhecer os possíveis os efeitos da DT pode apoiar na realização de análises de impacto mais precisas e também na definição de ações corretivas para minimizar possíveis consequências negativas da dívida inserida. Dessa forma, enquanto o gerenciamento da DT é um tópico de pesquisa importante, também é necessário entender as causas que podem levar equipes de desenvolvimento a incorrer em diferentes tipos de dívida, bem como os efeitos de sua presença em projetos de software.
    Objetivo: O objetivo desta tese é investigar, através da replicação contínua e independente de surveys distribuídos globalmente, o estado da prática e tendências da indústria sobre DT incluindo causas que levam à sua ocorrência, efeitos de sua existência e como esses problemas se manifestam no processo de desenvolvimento de software. A partir da organização das causas e efeitos identificados, estruturar diagramas de causa e efeito probabilísticos que possam ser utilizados no apoio a atividades de gestão da DT.
    Método: As atividades realizadas nesta tese são fundamentadas no paradigma da engenharia de software experimental. Inicialmente, foi realizado um estudo terciário com o objetivo de investigar o estado atual da pesquisa sobre DT identificando quais tópicos de pesquisa têm sido considerados, organizando direcionamentos de pesquisa e conhecimentos práticos que já foram definidos, identificando os tipos conhecidos de DT, e mapeando quais atividades, estratégias e ferramentas têm sido propostas para apoiar o gerenciamento da DT. Em seguida, foi planejado InsighTD, uma família de surveys globalmente distribuída. InsighTD foi planejado de forma cooperativa com pesquisadores da área de DT de diferentes instituições ao redor do mundo. Trata-se do primeiro estudo em larga escala realizado na área. Ele busca organizar um conjunto aberto e generalizável de dados experimentais sobre causas e efeitos da DT em projetos de software. Por fim, os diagramas probabilísticos de causa e efeito da DT propostos foram avaliados através de estudo de caso executado na academia.
    Resultados: Esta tese apresenta os resultados do estudo terciário executado e as análises realizadas sobre a primeira execução de InsighTD no Brasil e sua primeira replicação nos Estados Unidos. Ao total, 107 profissionais da indústria brasileira e 99 da indústria estadunidense de software responderam ao questionário. Os resultados indicam que há uma ampla familiaridade com o conceito de DT. Prazos, planejamento inadequado, falta de conhecimento e falta de um processo bem definido estão entre as 10 causas mais citadas e mais prováveis de levar à ocorrência da DT em projetos de software. Por outro lado, baixa qualidade, atraso na entrega, baixa manutenibilidade, retrabalho e perdas financeiras estão entre os 10 efeitos mais citados e de maior impacto em um projeto com a presença da DT. Diagramas probabilísticos de causa e efeito da DT para os diferentes tipos de DT foram elaborados. Os resultados também indicaram que o tipo de modelo de processo (ágil, híbrido ou tradicional) impacta nos efeitos da DT sentidos por equipes de desenvolvimento.
    Conclusão: Com InsighTD, pretende-se reduzir o problema de investigações isoladas em DT que ainda não são representativas e, assim, construir um conjunto aberto e generalizável de dados experimentais para a compreensão de problemas práticos e desafios da área. Parte do conhecimento organizado será estruturado em diagramas probabilísticos de causa e efeito que permitem apoiar atividades de gestão da DT.


  • Mostrar Abstract
  • Contexto: O conceito de dívida técnica (DT) contextualiza o problema das tarefas de desenvolvimento pendentes como um tipo de dívida que traz um benefício a curto prazo para o projeto, mas que poderão ter de ser pagas com juros mais tarde no processo de desenvolvimento. É comum que um projeto de software incorra em dívida durante o processo de desenvolvimento, no entanto, sua presença traz riscos para o projeto e dificulta sua gestão. Diferentes estratégias de gerenciamento da DT têm sido propostas, contudo, considerar ações que possam evitar sua inserção e monitorar seus efeitos ainda não é uma prática comum. Este é um ponto que merece ser melhor investigado por diferentes motivos: (i) conhecer as causas da DT pode auxiliar as equipes de desenvolvimento na definição de ações que possam ser tomadas para evitar sua ocorrência e (ii) conhecer os possíveis os efeitos da DT pode apoiar na realização de análises de impacto mais precisas e também na definição de ações corretivas para minimizar possíveis consequências negativas da dívida inserida. Dessa forma, enquanto o gerenciamento da DT é um tópico de pesquisa importante, também é necessário entender as causas que podem levar equipes de desenvolvimento a incorrer em diferentes tipos de dívida, bem como os efeitos de sua presença em projetos de software.
    Objetivo: O objetivo desta tese é investigar, através da replicação contínua e independente de surveys distribuídos globalmente, o estado da prática e tendências da indústria sobre DT incluindo causas que levam à sua ocorrência, efeitos de sua existência e como esses problemas se manifestam no processo de desenvolvimento de software. A partir da organização das causas e efeitos identificados, estruturar diagramas de causa e efeito probabilísticos que possam ser utilizados no apoio a atividades de gestão da DT.
    Método: As atividades realizadas nesta tese são fundamentadas no paradigma da engenharia de software experimental. Inicialmente, foi realizado um estudo terciário com o objetivo de investigar o estado atual da pesquisa sobre DT identificando quais tópicos de pesquisa têm sido considerados, organizando direcionamentos de pesquisa e conhecimentos práticos que já foram definidos, identificando os tipos conhecidos de DT, e mapeando quais atividades, estratégias e ferramentas têm sido propostas para apoiar o gerenciamento da DT. Em seguida, foi planejado InsighTD, uma família de surveys globalmente distribuída. InsighTD foi planejado de forma cooperativa com pesquisadores da área de DT de diferentes instituições ao redor do mundo. Trata-se do primeiro estudo em larga escala realizado na área. Ele busca organizar um conjunto aberto e generalizável de dados experimentais sobre causas e efeitos da DT em projetos de software. Por fim, os diagramas probabilísticos de causa e efeito da DT propostos foram avaliados através de estudo de caso executado na academia.
    Resultados: Esta tese apresenta os resultados do estudo terciário executado e as análises realizadas sobre a primeira execução de InsighTD no Brasil e sua primeira replicação nos Estados Unidos. Ao total, 107 profissionais da indústria brasileira e 99 da indústria estadunidense de software responderam ao questionário. Os resultados indicam que há uma ampla familiaridade com o conceito de DT. Prazos, planejamento inadequado, falta de conhecimento e falta de um processo bem definido estão entre as 10 causas mais citadas e mais prováveis de levar à ocorrência da DT em projetos de software. Por outro lado, baixa qualidade, atraso na entrega, baixa manutenibilidade, retrabalho e perdas financeiras estão entre os 10 efeitos mais citados e de maior impacto em um projeto com a presença da DT. Diagramas probabilísticos de causa e efeito da DT para os diferentes tipos de DT foram elaborados. Os resultados também indicaram que o tipo de modelo de processo (ágil, híbrido ou tradicional) impacta nos efeitos da DT sentidos por equipes de desenvolvimento.
    Conclusão: Com InsighTD, pretende-se reduzir o problema de investigações isoladas em DT que ainda não são representativas e, assim, construir um conjunto aberto e generalizável de dados experimentais para a compreensão de problemas práticos e desafios da área. Parte do conhecimento organizado será estruturado em diagramas probabilísticos de causa e efeito que permitem apoiar atividades de gestão da DT.

2
  • CLÍCIA DOS SANTOS PINTO
  • Explorando Técnicas de Computação Heterogênea para Suporte à Vinculação de Grandes Volumes de Dados

  • Orientador : MARCOS ENNES BARRETO
  • MEMBROS DA BANCA :
  • ESBEL TOMÁS VALERO ORELLANA
  • GEORGE MARCONI DE ARAUJO LIMA
  • MARCOS ENNES BARRETO
  • MAYCON LEONE MACIEL PEIXOTO
  • RODRIGO DA ROSA RIGHI
  • Data: 28/07/2020

  • Mostrar Resumo
  • Embora a computação heterogênea seja uma poderosa abordagem para a resolução de problemas computacionalmente intensivos, o seu desempenho e eficiência estão profundamente atrelados às propriedades da carga de trabalho a que são submetidos. O gerenciamento de grandes volumes de dados em ambientes heterogêneos implica na escolha de algoritmos dinâmicos de escalonamento e particionamento que minimizem o tempo de resposta e o volume de comunicação entre as unidades de processamento, ao mesmo tempo em que assegurem escalabilidade. Esta exigência tem se tornado mais urgente à medida que os dispositivos que compõem as plataformas heterogêneas se tornam mais numerosos e diversificados. Este trabalho apresenta uma metodologia para a exploração de técnicas de computação heterogênea em ambientes compostos por CPUs e GPUs para aplicações de vinculação probabilística de grandes volumes de dados, bem como propõe a integração deste método à ferramenta AtyImo, desenvolvida parcialmente durante esta pesquisa. A metodologia proposta permite uma distribuição de dados e tarefas adequada às aplicações que manipulam grandes conjuntos de dados, mais especificamente aplicações de vinculação de registros (data linkage). Como prova de conceito, a solução implementada foi utilizada para integrar dados socioeconômicos em larga escala (100 milhões de registros) com dados de saúde pública armazenados em diferentes fontes governamentais brasileiras. Através da metodologia proposta foi possível vincular 1x10ˆ12 pares de registros em um tempo total próximo a uma hora, o que pode ser considerado um resultado promissor em relação às ferramentas de vinculação de dados existentes. Estes resultados demonstram que a solução desenvolvida possui bom desempenho e se apresenta como alternativa viável para resolver problemas comuns de escalabilidade relacionados à vinculação de registros. A possibilidade de vinculação probabilística de grandes volumes de dados sobre arquiteturas híbridas, explorando a natureza heterogênea dos recursos disponíveis e com tempo de execução extremamente eficiente, constituem as principais contribuições deste trabalho. 


  • Mostrar Abstract
  • Although heterogeneous computing is a powerful approach to solve computationally intensive problems, its performance and efficiency highly depend on the workload to which they are exposed. Managing large volumes of data in heterogeneous environments involves choosing efficient scheduling and partitioning algorithms that minimize the response time and the volume of communication among processing units while ensuring scalability. This requirement has become more urgent as the devices composing such heterogeneous platforms become more numerous and diversified. This work presents a methodology for using heterogeneous computing techniques over hybrid CPU+GPU environments to allow for data and task distribution within big data linkage applications. This methodology was integrated into the AtyImo tool, which was partially developed during this research to provide probabilistic record linkage. As proof of concept, the implemented solution was used to integrate a large-scale (100 million records) socioeconomic database with public health data from disparate governmental sources. The proposed methodology is able to perform 1x10ˆ12 pairwise comparison in around one hour, which is a quite prominent result amongst existing data linkage tools. Observed results evidence that the developed solution achieves good performance and can be an alternative to solve scalability issues in data linkage contexts. The possibility of probabilistically linking massive datasets using hybrid architectures and exploring the heterogeneous nature of available resources with an efficient execution time are the main contributions of this work.

3
  • MICHELLE LARISSA LUCIANO CARVALHO
  • ToffA-DAS: An Approach to conduct Trade-off Analysis for Dynamically Adaptable Software

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • EDUARDO SANTANA DE ALMEIDA
  • RAFAEL AUGUSTO DE MELO
  • RITA SUZANA PITANGUEIRA MACIEL
  • CECILIA MARY FISCHER RUBIRA
  • PAULO CESAR MASIERO
  • ROSSANA MARIA DE CASTRO ANDRADE
  • Data: 24/09/2020

  • Mostrar Resumo
  • The Dynamic Software Product Lines (DSPL) engineering processes aim to design Dynamically Adaptable Software (DAS) by increasing the flexibility for the generation of a huge number of configurations. It results in a software configuration space explosion making the analysis more difficult and complicating the developer’s work. In this sense, software engineers need to find a combination of systems features that can simultaneously satisfy constraints specified in feature and context models, Non-functional Requirements (NFRs), and stakeholder’s preferences. It means that they have to measure many configurations until finding the optimal ones, characterizing the product configuration process in a complex optimization problem. Most of the existing studies do not focus on the interactions between contextual information and NFRs when dealing with feature selection to meet the desired quality objectives in DAS. In addition, such studies do not use any planning strategy to support the configuration selection process. Based on these research gaps, we propose an approach that (i) manages the system’s features and contexts; (ii) facilitates the understanding of how DSPL applications can behave from a certain context change, and (iii) enables to conduct trade-off analysis in order to find valid and optimal configurations, which meet the constraints and the interactions between contextual information and NFRs. Aiming to support the context variability modeling of DAS, we proposed the Extended Context-aware Feature Modeling (eCFM) technique to deal with constraints among contexts. Next, we defined the DAS Trade-off Analysis (ToffA-DAS) approach to deal with the configuration selection process embracing interactions between contextual information and NFRs. We also proposed a strategy to analyze context changes in order to define adaptation models for each prioritization of the system’s features, contexts, and NFRs. Finally, we evolved our approach and named it as DAS Trade-off Analysis PLUS (ToffA-DAS+). ToffA-DAS is based on the integer linear programming technique, whereas ToffA-DAS+ uses a genetic algorithm. We performed a set of empirical studies in order to evaluate the proposal for this thesis. First, we conducted a survey to evaluate eCFM from the viewpoint of expressiveness to model the context constraints and easiness of use. Indeed, the analysis was focused on the comprehensibility of contextual variability modeling. Next, we performed a study based on simulations to gather initial evidence about the feasibility of using ToffA-DAS. It is based on how to conduct trade-off analysis and define adaptation models from optimal configurations found in the analysis. We also conducted an exploratory study to evaluate how the configurations obtained by the execution of ToffA-DAS affect the overall satisfaction level of NFRs. Finally, we evaluated the evolution of our approach in comparison with the previous release. As a result of the first study, the eCFM was considered a technique with a great expressiveness to represent adaptation rules among contexts and system features, besides the easiness of use and organization with the grouping of contexts. Therefore, we argue that the software engineers may take into account the use of eCFM technique to model DAS. In the second study, ToffA-DAS presented consistent results in accordance with the real-world scenarios and satisfied the estimated utility values and model constraints. The third study showed that the set of configurations generated by ToffA-DAS execution provide high satisfaction levels of NFRs. In the last study, we collected evidence that ToffA-DAS+ suggests more solutions from then possible valid configurations of the model. Based on the aforementioned studies, we evidenced that our approach can be handy when software engineers need assistance in the understanding of how to design a variety of configurable options for DSPL applications. It is based on the principle that each configuration option must be optimal to meet certain contextual changes without losing service quality. With the usage of our approach, software engineers can exhaustively analyze and simulate a solution before implementing it.


  • Mostrar Abstract
  • The Dynamic Software Product Lines (DSPL) engineering processes aim to design Dynamically Adaptable Software (DAS) by increasing the flexibility for the generation of a huge number of configurations. It results in a software configuration space explosion making the analysis more difficult and complicating the developer’s work. In this sense, software engineers need to find a combination of systems features that can simultaneously satisfy constraints specified in feature and context models, Non-functional Requirements (NFRs), and stakeholder’s preferences. It means that they have to measure many configurations until finding the optimal ones, characterizing the product configuration process in a complex optimization problem. Most of the existing studies do not focus on the interactions between contextual information and NFRs when dealing with feature selection to meet the desired quality objectives in DAS. In addition, such studies do not use any planning strategy to support the configuration selection process. Based on these research gaps, we propose an approach that (i) manages the system’s features and contexts; (ii) facilitates the understanding of how DSPL applications can behave from a certain context change, and (iii) enables to conduct trade-off analysis in order to find valid and optimal configurations, which meet the constraints and the interactions between contextual information and NFRs. Aiming to support the context variability modeling of DAS, we proposed the Extended Context-aware Feature Modeling (eCFM) technique to deal with constraints among contexts. Next, we defined the DAS Trade-off Analysis (ToffA-DAS) approach to deal with the configuration selection process embracing interactions between contextual information and NFRs. We also proposed a strategy to analyze context changes in order to define adaptation models for each prioritization of the system’s features, contexts, and NFRs. Finally, we evolved our approach and named it as DAS Trade-off Analysis PLUS (ToffA-DAS+). ToffA-DAS is based on the integer linear programming technique, whereas ToffA-DAS+ uses a genetic algorithm. We performed a set of empirical studies in order to evaluate the proposal for this thesis. First, we conducted a survey to evaluate eCFM from the viewpoint of expressiveness to model the context constraints and easiness of use. Indeed, the analysis was focused on the comprehensibility of contextual variability modeling. Next, we performed a study based on simulations to gather initial evidence about the feasibility of using ToffA-DAS. It is based on how to conduct trade-off analysis and define adaptation models from optimal configurations found in the analysis. We also conducted an exploratory study to evaluate how the configurations obtained by the execution of ToffA-DAS affect the overall satisfaction level of NFRs. Finally, we evaluated the evolution of our approach in comparison with the previous release. As a result of the first study, the eCFM was considered a technique with a great expressiveness to represent adaptation rules among contexts and system features, besides the easiness of use and organization with the grouping of contexts. Therefore, we argue that the software engineers may take into account the use of eCFM technique to model DAS. In the second study, ToffA-DAS presented consistent results in accordance with the real-world scenarios and satisfied the estimated utility values and model constraints. The third study showed that the set of configurations generated by ToffA-DAS execution provide high satisfaction levels of NFRs. In the last study, we collected evidence that ToffA-DAS+ suggests more solutions from then possible valid configurations of the model. Based on the aforementioned studies, we evidenced that our approach can be handy when software engineers need assistance in the understanding of how to design a variety of configurable options for DSPL applications. It is based on the principle that each configuration option must be optimal to meet certain contextual changes without losing service quality. With the usage of our approach, software engineers can exhaustively analyze and simulate a solution before implementing it.

4
  • LUIS PAULO DA SILVA CARVALHO
  • Identificando e analisando interesses de software a partir de metadados de componentes de terceiros

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • CLAUDIO NOGUEIRA SANT ANNA
  • LAIS DO NASCIMENTO SALVADOR
  • MANOEL GOMES DE MENDONCA NETO
  • PAULO CAETANO DA SILVA
  • SÉRGIO CASTELO BRANCO SOARES
  • Data: 16/11/2020

  • Mostrar Resumo
  • Modularidade é um conceito chave no desenvolvimento de sistemas de software. Sistemas bem modularizados são mais fáceis de manter e evoluir. No entanto, não é fácil atingir uma boa modularidade em sistemas de software. Sistemas devem ser modularizados sob diversas perspectivas e, frequentemente, existem interesses importantes que ficam espalhados ou entrelaçados entre vários módulos, os chamados interesses transversais.
    Logging, Acesso a Banco de Dados e Automação de Testes são exemplos de interesses transversais. Apesar de serem importantes, eles geralmente não são centrais às regras de negócio e, por esta razão, não são foco de modularização.
    A análise de interesses transversais tende a se tornar trabalhosa e complexa quando realizada em larga escala. Os estudos sobre interesses frequentemente recorrem à identificação manual dos mesmos. Infelizmente, a identificação manual tende a ser subjetiva e imprecisa, além de exigir muito esforço. Documentos de Arquitetura de Software (SADs) podem ser usados como recursos auxiliares na análise de interesses, mas os SADs não são comuns. E, quando disponíveis, não há garantia de que contenham informações relevantes sobre os interesses sendo investigados. Como consequência, idealmente, os desenvolvedores precisam confiar na automação para identificar e processar informações sobre interesses transversais a partir de código fonte. Abordagens automáticas são essenciais quando a base de código é extensa e necessita-se analisar como estes interesses evoluiram ao longo do histórico do sistema. Nesse contexto, este trabalho utiliza a injeção de componentes em projetos de software para definir um método de localização de informações sobre interesses transversais em projetos de software.
    Em sistemas modernos, os desenvolvedores implementam módulos para lidar com as regras de negócios centrais, mas geralmente injetam componentes de terceiros na base de código para materializar interesses relacionados aos aspectos secundários do sistema. Por exemplo, os anteriormente citados, Logging, Acesso ao Banco de Dados e Automação de Testes são interesses que geralmente são implementadas com a ajuda de componentes
    externos. Por serem estes os tipos de interesse que mais se dispersam e se entrelaçaam nos módulos dos sistemas, vimos a oportunidade de propor um método para apoiar a sua identificação e análise através dos dados e meta-dados de sua injeção no sistema.
    Nosso método, primeiramente, identifica os interesses a partir dos metadados que os desenvolvedores usam para injetar componentes de terceiros em seus sistemas. Em seguida, ele avalia como estes interesses se espalham e evoluem ao longo do tempo na base de código. Desenvolvemos uma ferramenta chamada Architectural Knowledge Suite (AKS) para automatizar o metodo. Usamos essa ferramenta para conduzir um estudo de
    pesquisa-ação com a ajuda de especialistas em desenvolvimento de software para avaliar a confiabilidade de nosso método e refiná-lo. Também executamos três outros estudos processando o código-fonte de sistemas de informação reais para caracterizar e entender como os desenvolvedores implementam interesses no mundo real.
    Entre os resultados obtidos, destacamos que o método correspondeu moderadamente às expectativas dos especialistas. Notamos que é possível otimizar a captura de interesses a partir do código fonte de sistemas, se eles forem agrupados considerando similaridades entre seus contextos de uso. Percebemos que, durante a evolução dos sistemas, artefatos de código tendem a não se dedicar à implementação de interesses específicos. Identificamos oportunidades de adaptação do método para tornar possível sua aplicação sob diferentes cenários de utilização de tecnologias de desenvolvimento.


  • Mostrar Abstract
  • Modularity is a key concept in software development. Well-modularized systems are easier to maintain and evolve. However, it is difficult to achieve good modularity in software systems, because developers must keep systems modular with respect to several perspectives. Frequently, this involves dealing with concerns that scatter and tangle through several modules, the crosscutting concerns as they are called. Logging, Database Access, and Testing Automation are examples of crosscutting concerns. They are important, but many of them are not central to the systems' business rules. As a consequence, often, they are not subject to modularization. Additionally, the analysis of crosscutting concerns tends to be effort-intensive and rapidly grows in complexity in large systems.

    Studies on concerns often resort to manual identification of interests. Unfortunately, manual identification tends to be subjective, imprecise, and effort-intensive. Software Architecture Documents (SADs) can be used as auxiliary resources to identify and analyze concerns, but SADs are not common assets. And, when they are available, there is no guarantee that they contain relevant information about concerns of particular interest. As consequence, ideally, developers should rely on automation to identify and process information about concerns over the source code. Automatic approaches are a must have when the codebase is extensive and one wants to analyze how concerns evolve throughout the system's history. In this context, this work takes advantage of the injection of components in software projects to define a method for locating information about crosscutting concerns in software projects.

    On modern systems, developers implement modules to address central business rules, but they usually inject third-party components in the codebase to materialize concerns related to secondary aspects of the system. For instance, the previously mentioned, Logging, Database Access, and Tests Automation are concerns that are often implemented with the help of external components. As these are the type of concerns that most scatter and interrelate through systems' modules, we saw an opportunity to propose a method to identify and analyzed them using injection data and metadata.

    Our method first identifies concerns from the metadata that developers use to inject third-party components in their systems. Then, it evaluates how those concerns spreads, and evolve through time, over the codebase. We developed a tool named Architectural Knowledge Suite (AKS) to automate the method. We used this tool to conduct an action research study with the help of software development specialists to evaluate the reliability of our method and to refine it. We also ran three other studies using our method to process real information systems' source code, characterizing and analyzing how developers implement concerns in the real world.

    Among our findings, we highlight that our method met the expectations of the specialists to a moderate degree. We perceived that grouping software projects according to their contexts of use can optimize the identification and analyses of concerns. We noticed that developers tend to mix concerns by joining references to different components through the lines of source code artifacts, but we spotted some exceptional cases. We also saw opportunities to adapt our method to expand the identification of concerns toward varied contexts of adopted software development technologies.

5
  • ERASMO LEITE MONTEIRO
  • UMA PROPOSTA DE MODELO DE  MATURIDADE PARA A

    INTEROPERABILIDADE EM SISTEMAS: DO

    SINTATICO AO ORGANIZACIONAL

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • IVAN DO CARMO MACHADO
  • JOSÉ MARIA NAZAR DAVID
  • PAULO CESAR MASIERO
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 04/12/2020

  • Mostrar Resumo
  • Interoperabilidade ´e a capacidade de sistemas heterogˆeneos de se comunicarem de forma transparente e pode ser alcan¸cada por meio de n´ıveis, tais como: (i) sint´atico, (ii) semˆantico, (iii) pragm´atico e (iv) organizacional. No entanto, h´a v´arios desafios para os sistemas fornecerem interoperabilidade, como quais requisitos s˜ao necess´arios para atingir a interoperabilidade desejada. V´arias propostas tˆem sido feitas para resolver aspectos de um determinado n´ıvel especifico de interoperabilidade ou para um determinado dom´ınio. Contudo, a interoperabilidade de um sistema ´e um aspecto que pode evoluir ao longo do seu ciclo de vida, sendo ent˜ao necess´ario apoio para auxiliar este processo. Os modelos de maturidade podem ajudar neste cen´ario pois tˆem sido usados em v´arios dom´ınios para avaliar a maturidade do sistema de acordo com aspectos espec´ıficos (interoperabilidade, por exemplo).Este trabalho apresenta o AMortisse (mAturity Model fOR inTeroperability In Software SystEms), um modelo de maturidade para avaliar a interoperabilidade em sistemas de software que se utiliza de uma metodologia previamente especificada para sua defini¸c˜ao. Esta metodologia visa auxiliar os desenvolvedores de modelos de maturidade, apresentando um ciclo de vida de desenvolvimento aplic´avel a diferentes dom´ınios. Nosso objetivo foi sistematizar as tarefas envolvidas no desenvolvimento destes modelos, como os requisitos de dom´ınio, relacionados em n´ıveis, dimens˜oes e o caminho para a maturidade, alavancando assim a qualidade de um modelo de maturidade produzido. Apesar de sua popularidade, os modelos de maturidade tˆem sido criticados devido `a falta de valida¸c˜ao emp´ırica e m´etodos eficazes para auxiliar em sua defini¸c˜ao. Uma valida¸c˜ao foi realizada por meio da aplica¸c˜ao em um sistema de uma organiza¸c˜ao para atestar a capacidade do Amortisse em indicar a maturidade do sistema.O Amortisse foi capaz de mensurar o n´ıvel de interoperabilidade dos sistemas e indicar quais requisitos devem ser alcan¸cados a fim de evoluir entre os n´ıveis de maturidade. Os resultados desta investiga¸c˜ao mostram que o Modelo de Maturidade Amortisse e a metodologia s˜ao vi´aveis. Esperamos que a metodologia apresentada forne¸ca clareza na obten¸c˜ao deste modelo e possa auxiliar no desenvolvimento de novos modelos de maturidade em diferentes dom´ınios. Esperamos tamb´em, que o Amortisse seja capaz de indicar o n´ıvel de interoperabilidade e indicar os requisitos ausentes.


  • Mostrar Abstract
  • Interoperability is the ability of heterogeneous systems to communicate transparently and

    can be achieved through levels, such as: (i) syntactic, (ii) semantic, (iii) pragmatic, and

    (iv) organizational. However, there are several challenges for systems to provide interoperability

    such as what requirements are necessary to achieve the desire interoperability.

    Several proposals have been made to discuss aspects of a specific level of interoperability

    or for a given domain. However, the interoperability of a system is an aspect that can

    evolve throughout its life cycle, so support is needed to aid this process. Maturity models

    can help in this case as they have been used in several domains to assess the maturity of

    the system according to specific aspects (e.g, interoperability). This work presents AMortisse

    (mAturity Model fOR inTeroperability In Software SystEms), a maturity model to

    check interoperability in software systems towards the specification of a methodology for

    maturity model definition. This methodology aims to aid the Maturity Model (MM) developers

    by presenting a MM development life-cycle applicable for different domains. We aim

    to systematize tasks involved in MM development, such as MM domain requirements,

    organization of related concepts into levels, dimensions, and the path to maturity, therefore

    leveraging the produced MM quality. Despite their popularity, maturity models

    have been criticized due to lack of empirical validation and effective methods to aid in

    their definition. A validation was performed by applying it to an organization's system to

    attest Amortisse's ability to indicate the system's maturity. As a result, Amortisse was

    able to measure the level of interoperability of the system and show which requirements

    must be met to evolve between levels of maturity. The results of this investigation show

    that the Amortisse and the methodology are feasible. We hope the presented methodology

    provides clarity while obtaining this model and may help the development of new

    maturity models in different domains. We hope that Amortisse will be able to show

    systems interoperability level and indicate missing requirements.

6
  • ELIVALDO LOZER FRACALOSSI RIBEIRO
  • Definindo e Provendo a Interoperabilidade Pragmática - O caso do Middleware MIDAS

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • ELISA YUMI NAKAGAWA
  • FRANK AUGUSTO SIQUEIRA
  • IVAN DO CARMO MACHADO
  • LAIS DO NASCIMENTO SALVADOR
  • Data: 10/12/2020

  • Mostrar Resumo
  • Sistemas de informação modernos estão se tornando cada vez mais complexos. Essa complexidade está relacionada com a necessidade de combinar softwares heterogêneos. Uma vez que um sistema pode conter diversos softwares, e cada software pode ser desenvolvido de maneira independente, não é uma tarefa trivial prover uma comunicação transparente entre sistemas distintos. A falta de padronização ocasiona um problema conhecido como lock-in. Situações de lock-in ocorrem quando usuários se tornam dependentes de um sistema devido à falta de interoperabilidade entre os provedores distintos. A interoperabilidade é a capacidade de um sistema se comunicar de forma transparente com outro sistema e tem sido classificada em três níveis: sintático, semântico e pragmático. O nível sintático permite que informações sejam trocadas entre sistemas a partir de uma codificação comum. A interoperabilidade semântica está relacionada com a capacidade dos sistemas compartilharem o mesmo significado dos dados. Por fim, a pragmática tem a intenção da mensagem que deve ser entendida pelos sistemas, de modo que o resultado produzido esteja dentro das expectativas comuns. Apesar dos diversos níveis, as soluções para interoperabilidade entre sistemas focam apenas em uma camada específica. A ausência de um modelo para a interoperabilidade pragmática dificulta a comunicação transparente entre sistemas, pois as informações necessárias para interoperar não são explícitas. Além disso, o nível pragmático requer o nível semântico que, por sua vez, necessita do nível sintático. Além da necessidade de interoperar sistemas heterogêneos, as tecnologias atuais apresenta os desafios de armazenar, processar e disponibilizar os dados gerados por essa comunicação. A computação em nuvem tem o objetivo de atender alguns desses requisitos. A computação em nuvem é um paradigma que permite acesso a uma rede ubíqua de aplicações, plataformas e hardware como serviços. Esses serviços são organizados em níveis e acessados sob demanda com uma política de pagamento baseado no uso. Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS) e Data as a Service (DaaS) são exemplos de serviços em nuvem. Assim, essa tese apresenta um framework conceitual para interoperabilidade pragmática (CAPITAL) que considera os níveis sintático e semântico. Com o intuito de validar o framework CAPITAL, o modelo sintático fornece uma descrição detalhada da interoperabilidade sintática do middleware MIDAS (Middleware for DaaS and SaaS). O modelo semântico auxilia a interoperabilidade semântica do MIDAS e formaliza a comunicação entre SaaS e DaaS. O framework CAPITAL descreve o modelo para interoperabilidade pragmática. Três estudos foram realizados para avaliar nosso framework CAPITAL. No primeiro estudo, o framework CAPITAL foi simulado em quatro cenários distintos com o objetivo de fornecer um guia de modelagem e codificação. O segundo estudo é um experimento controlado que investiga se nosso framework auxilia a compreensão do conceito e interpretação de cenários com interoperabilidade pragmática. No terceiro estudo, nosso framework foi incorporado ao MIDAS como prova de conceito com o objetivo de discutir e apresentar uma versão do middleware para interoperabilidade pragmática. Nossos estudos sugerem que o CAPITAL framework influencia positivamente no entendimento, modelagem e padronização de cenários com interoperabilidade pragmática. Os resultados alcançados fornecem evidências que os modelos para interoperabilidade sintática, semântica e pragmática descrevem os elementos necessários para prover uma comunicação transparente.


  • Mostrar Abstract
  • Modern information systems are becoming increasingly complex. This complexity is related to the need to combine heterogeneous software. Since a system may contain many software programs, and each software may be developed independently, providing transparent communication between heterogeneous systems is not a trivial task. The lack of standardization causes a problem known as lock-in. Lock-in situations occur when users are dependent on a system due to the lack of interoperability among different providers. Interoperability is heterogeneous systems’ ability to communicate transparently, and it is classified into three levels: syntactic, semantic, and pragmatic. The syntactic level enables systems to exchange information based on standard coding. Semantic interoperability is concerned with ensuring that systems to share the same data meaning. Finally, pragmatic interoperability ensures that systems understand the message intention so that the result is within common expectations. Despite the various levels, solutions for interoperability among systems focus on a specific layer. The absence of a pragmatic interoperability model hinders transparent communication among systems because the mandatory information to interoperate is not explicit. The pragmatic level requires the semantic level that, in turn, requires the syntactic level. In addition to the need to interoperate heterogeneous systems, current technologies evidence the challenges of storing, processing, and making available the data generated by this communication. Cloud Computing aims to fulfill some of these requirements. Cloud Computing is a new paradigm that enables access to a ubiquitous network of applications, platforms, and hardware as services. These services are organized in levels, and they are accessed with a pay-per-use policy. Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS), and Data as a Service (DaaS) are examples of cloud services. Therefore, this work presents a Conceptual frAmework for Pragmatic InTeroperAbiLity (CAPITAL). Although focused on pragmatic interoperability, the CAPITAL framework considers the syntactic and semantic levels. We performed experiments on each model to validate our CAPITAL framework. The syntactic model provides a detailed description of the syntactic interoperability of MIDAS (Middleware for DaaS and SaaS). The semantic model provides an ontology to formalize the communication between SaaS and DaaS. This ontology assists the semantic interoperability of MIDAS. The CAPITAL framework describes the model for pragmatic interoperability. We perform three studies to evaluate our CAPITAL framework. In the first study, we simulated the CAPITAL framework in four distinct scenarios that aim to provide a modeling and coding guide. The second study is a controlled experiment that investigates whether our framework eases to understand the concept and interpret scenarios with pragmatic interoperability. In the third study, we incorporated our framework into MIDAS as a proof of concept to discuss and present a middleware version for pragmatic interoperability. The three studies suggest that the CAPITAL framework positively influences the understanding, modeling, and standardization of scenarios with pragmatic interoperability. Our findings evidence that models for syntactic, semantic, and pragmatic interoperability describe mandatory elements to provide transparent communication. 

7
  • LEANDRO JOSE SILVA ANDRADE
  • Data Interplay: um modelo para melhorar a eficiência do desempenho nos dados da Internet das Coisas

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • DANILO BARBOSA COIMBRA
  • FLÁVIA COIMBRA DELICATO
  • MAYCON LEONE MACIEL PEIXOTO
  • PAULO DE FIGUEIREDO PIRES
  • Data: 11/12/2020

  • Mostrar Resumo
  • A Internet das Coisas (Internet of Things - IoT) tem desempenhado um papel importante no cenário tecnológico devido ao seu alto potencial e impacto nos diversos segmentos da sociedade. As estimativas sugerem uma tendência de aumento no número de dispositivos IoT nos próximos anos. Como consequência, o volume de dados produzidos pelos dispositivos IoT seguirá essa perspectiva de crescimento, e haverá uma demanda por sistemas que sejam capazes de processar, armazenar e promover o acesso a grandes quantidades de dados. Em um sistema IoT típico, os dados coletados dos sensores são armazenados e processados em servidores em nuvem; no entanto, algumas soluções IoT usam dispositivos de borda para executar ações, como processamento, armazenamento e acesso, usando apenas infraestrutura local para requisitos de baixa latência. A Fog Computing tem sido usada para melhorar as soluções de IoT com o objetivo de transferir parte da complexidade da nuvem para a borda da rede, ou seja, mais perto de dispositivos, aplicativos e/ou usuários, funcionando como uma espécie de ``nuvem local e privada''. A cooperação de dispositivos e aplicativos entre borda e nuvem criam a necessidade de uma interação para permitir o fluxo de dados entre as camadas dos sistemas IoT implantados na borda e na nuvem. Assim, é necessário suportar o ciclo de vida dos dados desde que coleta, análise e uso. A eficiência de desempenho é um fator de qualidade da engenharia de sistemas e software, que mede ``o desempenho em rela\c{c}ão à quantidade de recursos usados nas condições estabelecidas''. Em especial, em sistemas IoT,que envolvem um grande volume de dados, a eficiência de desempenho em dados é um requisito relevante. Esta tese  propõe um modelo de interação de dados da IoT, o Data Interplay model, para fornecer a definição e implantação do ciclo de vida dos dados da IoT, nas etapas de coleta, análise e uso de dados. Esta proposta de interação de dados visa melhorar a eficiência de desempenho nas operações no que diz respeito ao ciclo de vida de dados IoT: coleta, análise e acesso entre dispositivos e aplicativos em infraestruturas de borda e nuvem.


  • Mostrar Abstract
  • The Internet of Things (IoT) has been playing an important role in the technology scenario due to its high potential and impact on different society segments. Estimates suggest a trend for an increase in the number of IoT devices connected to the Internet for the next few years. As a consequence, the volume of data produced by IoT devices will follow this growth perspective, and there will be a demand for systems that are able to process, store and promote access to large amounts of data. In the typical IoT system, the data collected from sensors is stored and processed in cloud servers; however, some IoT solutions use edge devices to perform actions, such as processing, storage and access, using only local infrastructure for low latency requirements. Fog Computing has been used to improve IoT solutions with the aim to transfer some of the complexity from the cloud to the edge of the network, i.e., closer to devices, applications and/or users, working as a kind of ``local and private cloud''. The cooperation of devices and applications between edge and cloud creates a need for an interplay to allow data flow among the layers of IoT systems deployed in the edge and the cloud. Thus, it is necessary to support the data life cycle since its collection, analysis and use. Performance efficiency is a quality factor of systems and software engineering, which measures ``performance relative to the amount of resources used under stated conditions''. In special, in IoT systems which involve a large volume of data, the performance efficiency of data interplay is a relevant requirement. This thesis proposes a data interplay model of Internet of Things to provide the definition and deployment of the IoT data life cycle, in collection, analytics and data use stages. This data interplay proposal aims to improve performance efficiency in the operations regarding the IoT data life cycle: collection, analytics and use among devices and applications in edge and cloud infrastructures.

8
  • FLAVIO DUSSE
  • Um modelo de referência computacional para apoiar a tomada de decisões para gerenciamento de emergência com base em analítica visual

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • JOSÉ CARLOS MALDONADO
  • LAIS DO NASCIMENTO SALVADOR
  • MANOEL GOMES DE MENDONCA NETO
  • MARCOS ROBERTO DA SILVA BORGES
  • VANINHA VIEIRA DOS SANTOS
  • Data: 15/12/2020

  • Mostrar Resumo
  • Contexto: Emergências vêm aumentando nos últimos anos. Nenhuma emergência é igual à anterior e à próxima. Gestão de Emergência (GE) refere-se à capacidade de lidar com tarefas relacionadas a emergência em diferentes fases e iterações. Quem trabalha em uma emergência geralmente está sob estresse para tomar decisões certas no momento oportuno. Precisa processar uma quantidade muito grande de dados e assimilar as informações recebidas de forma intuitiva e visual. Foi identificado que sobrecarga de informação, assim como a negligência de tipos de informação são problemas na GE. Visual Analytics (VA) é potencialmente útil para analisar os dados produzidos. Contudo, seu potencial não está sendo aproveitado. Objetivo: Foram investigados quais temas são poucos explorados para atacar esses problemas. Essa tese de doutorado propõe um novo modelo de referência computacional, baseado em VA, para suportar tomadas de decisões na GE. O objetivo do modelo é dar suporte aos projetistas de visualizações na criação de interfaces de VA que por sua vez darão suporte aos gestores de emergência em tomar decisões rápidas e assertivas por meio dessas interfaces. Métodos: Foi conduzido um longo estudo in-vivo com vários métodos. Primeiramente, foi realizado um mapeamento sistemático para conhecer as ferramentas de visualização de informação disponíveis e suas aplicações em GE. Para complementar, foram estudados documentos oficiais e foram realizados estudos etnográficos, questionários e grupos focais durante grandes eventos sediados no Brasil nos últimos anos (e.g., Copa do Mundo de Futebol e Jogos Olímpicos). Em seguida, foram comparadas ferramentas atuais que visualizam informações da emergência e foram entrevistados profissionais experientes em GE. Por fim, esses dados de pesquisa foram cruzados e analisados qualitativamente. Foi possível identificar as relações entre necessidades visuais e fatores-chave de GE. Com essas descobertas alinhadas com os conceitos de VA foi desenvolvido um modelo para aprimorar visualizações durante a GE. Resultados: O modelo foi avaliado em um estudo exploratório verificando as ferramentas disponíveis na atualidade contra nossa proposta em um Centro de Comando e Controle do Brasil. As visualizações desenvolvidas com o suporte do modelo obtiveram 73,4% das pontuações maiores que as visualizações desenvolvidas sem o modelo, 25% foram iguais e apenas 1,6% menor. A principal contribuição deste trabalho é o modelo para conceber e avaliar a eficácia de visualizações em cenários reais de GE. O resultado da disseminação deste modelo permitirá a evolução da pesquisa sobre a utilização de VA e melhoria das tarefas em GE. Há também impactos econômicos e sociais claros. Espera-se que Centros incorporem em suas rotinas o modelo; se auxiliar à tomada de decisão rápida e assertiva, a qualidade do serviço prestado à sociedade deve aumentar. A principal contribuição do trabalho é, portanto, a redução das perdas financeiras e, sobretudo, das perdas de vidas humanas em emergências.


  • Mostrar Abstract
  • Background: The number of emergencies around the world has been increasing in recent years. No emergency is the same as the previous and the next. Emergency Management (EM) refers to the activity of dealing with emergency tasks in different phases and iterations. People working in an emergency are generally under stress to make the right decision at the right time. They have to process large amounts of data and to assimilate the received information in an intuitive and visual way. We found that information overload as well as non-dedicated information are problems in Emergency Management (EM). Visual Analytics (VA) is potentially useful to analyze and understand the huge amount of data produced in an emergency. However, we found that the full potential of VA is not being exploited in EM. Objective: We seek to develop a conceptual model for using VA in EM. This model incorporates themes that are currently under-exploited, to better support decision-making in EM. The model aims to help visualization designers to create effective VA interfaces that in turn help emergency managers to make quick and assertive decisions with these interfaces. Methods: We performed a long-term multi-method study. First, we carried out a systematic mapping study to analyze the available visualization tools and their applications in EM. To complement this information, we carried out appraisal of official documents, ethnographic studies, questionnaires and focus groups during large events held in Brazil (e.g., Soccer World Cup and Olympics Games). Then, we analyzed actual tools that produces emergency information visualization and we interviewed professionals experienced in EM. We crosschecked and analyzed this data qualitatively using the coding technique. We identified the relationships between the visual needs and other major themes of influence for EM. We used our findings aligned with VA concepts to develop our model for EM visualization. Results: We evaluated our proposal using an exploratory study in a Brazilian Command and Control Center, comparing the available tools against our model. The visualizations that were designed with the support of the model had 73.4\% higher scores, 25\% equal scores and only 1.6\% lower scores than the ones designed without it. We believe that the main contribution of this work is to introduce the model to conceive and evaluate the effectiveness of VA in EM scenarios. The results of the dissemination of this model will foment the research on the use of VA in EM. We hope that C2 Centers incorporate the use of the proposed model in their routine; if it helps in timely and assertive decision-making, the quality of the service provided to society will improve. The ultimate contribution of our work is the potential reduction of financial and, above all, human losses in emergencies.

9
  • KALYF ABDALLA BUZAR LIMA
  • "From modeling perceptions to evaluating video summarizers"

     
  • Orientador : LUCIANO REBOUCAS DE OLIVEIRA
  • MEMBROS DA BANCA :
  • GECYNALDA SOARES DA SILVA GOMES
  • JOAO PAULO PAPA
  • LUCIANO REBOUCAS DE OLIVEIRA
  • PAULO JORGE CANAS RODRIGUES
  • RICARDO DA SILVA TORRES
  • Data: 18/12/2020

  • Mostrar Resumo
  • Horas de vídeo são enviadas para plataformas de streaming a cada minuto, com sistemas de recomendação sugerindo vídeos populares e relevantes que podem ajudar os usuários a economizar tempo no processo de pesquisa. Os resumos de vídeo foram desenvolvidos para detectar as partes mais relevantes do vídeo, condensando-as automaticamente em um vídeo mais curto. Atualmente, a avaliação desse tipo de método é desafiadora, pois as métricas não avaliam critérios subjetivos das anotações do usuário, como a concisão. Para abordar o critério de concisão, propomos uma nova métrica para avaliar sumarizadores de vídeo em taxas de compressão múltiplas. Nossa métrica, chamada de nível de compressão de anotação do usuário (CLUSA), avalia o desempenho dos resumidores de vídeo combinando as pontuações de relevância previstas diretamente. Para isso, CLUSA gera resumos de vídeo descartando gradualmente segmentos de vídeo das pontuações de relevância anotadas pelos usuários. Depois de agrupar os resumos de vídeo gerados pelas taxas de compressão, CLUSA os combina com as pontuações de relevância previstas. Para preservar informações relevantes em resumos de vídeo concisos, CLUSA pesa o desempenho dos resumidores de vídeo em cada faixa de compressão para calcular uma pontuação geral de desempenho. Como CLUSA pesa todas as faixas de compressão, mesmo que as anotações do usuário não abrangem algumas taxas de compressão, a linha de base muda com cada conjunto de dados de resumo de vídeo. Portanto, a interpretação da pontuação de desempenho dos resumidores de vídeo não é tão direta quanto outras métricas.


  • Mostrar Abstract
  • Hours of video are uploaded to streaming platforms every minute, with recommender systems suggesting popular and relevant videos that can help users save time in the searching process. Video summarizers have been developed to detect the video's most relevant parts, automatically condensing them into a shorter video. Currently, the evaluation of this type of method is challenging since the metrics do not assess user annotations' subjective criteria, such as conciseness. To address the conciseness criterion, we propose a novel metric to evaluate video summarizers at multiple compression rates. Our metric, called Compression Level of USer Annotation (CLUSA), assesses the video summarizers' performance by matching the predicted relevance scores directly. To do so, CLUSA generates video summaries by gradually discarding video segments from the relevance scores annotated by users. After grouping the generated video summaries by the compression rates, CLUSA matches them to the predicted relevance scores. To preserve relevant information in concise video summaries, CLUSA weighs the video summarizers' performance in each compression range to compute an overall performance score. As CLUSA weighs all compression ranges even that user annotations do not span some compression rates, the baseline changes with each video summarization data set. Hence, the interpretation of the video summarizers' performance score is not as straightforward as other metrics.

10
  • BABACAR MANE
  •  Evoluindo a interoperabilidade do SaaS e DaaS/DbaaS: o caso do MIDAS

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • GLAUCO DE FIGUEIREDO CARNEIRO
  • JOSÉ MARIA NAZAR DAVID
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • VANINHA VIEIRA DOS SANTOS
  • Data: 21/12/2020

  • Mostrar Resumo
  • O provedor de dados como servico (DaaS) e banco de dados como servico (DBaaS) armazena
    e gerencia um grande volume de dados heterogêneos. Esses dados são produzidos
    por computaçãao movel, dispositivos onipresentes, redes sociais e são distribuídos geograficamente e disponíveis para consumidores e organizações como serviços por meio de uma
    API. Os usuários enfrentam um desa o ao acessar dados distribuídos semelhantes de
    provedores de DaaS/DBaaS distintos devido à falta de uma API e ferramentas padrão.
    Consequentemente, os usuários da nuvem enfrentam problemas de interoperabilidade e
    integração para recursos de consumo, provisionamento, gerenciamento e supervisão entre
    nuvens distintas. Em um ambiente tão heterogêneo, as organizações que desejam trocar
    seus dados entre nuvens ou mover seus aplicativos para nuvens distintas enfrentarão
    uma situação de bloqueio devido à falta de uma solução padrão. O middleware tem sido
    empregado para lidar com problemas de interoperabilidade para minimizar o esforço de
    contornar problemas de bloqueio. Assim, esta tese apresenta o middleware MIDAS para
    minimizar o esforço de interoperar SaaS e DaaS. Podemos resumir três contribuições principais
    deste trabalho. Inicialmente, o MIDAS Middleware fornece (i) interoperabilidade
    sintática entre SaaS e DaaS. O MIDAS permite uma consulta na nuvem de SaaS para
    solicitar dados de DaaS/DBaaS distintos. Atributos e condições de dados são descritos
    em consultas SQL ou MongoDB. Portanto, uma solicitação SaaS pode ser afetada pela
    evolução dos atributos DaaS. Como uma segunda contribuição, o MIDAS foi desenvolvido
    para fornecer (ii) interoperabilidade sem^antica para garantir a consistência do DaaS e
    manter a consulta original do SaaS. Atualmente, as implementações de tempo de execução
    MIDAS contam com os provedores Cloud Foundry, Amazon Web Services, OpenShift e
    Heroku. Algumas diversidades de ambiente de tempo de execução e desenvolvimento em
    nuvem (por exemplo, estrutura de aplicativo e linguagens de programação) impedem a
    implementação, execução ou implantação de aplicativos em grande escala. Para evitar
    ambiguidade no desenvolvimento e implantação perfeita de MIDAS em diferentes provedores
    de nuvem, apresentamos a terceira contribuição desta tese, uma Domain-Speci fic
    Modeling Language (DSML), que é (iii) o metamodelo da arquitetura MIDAS e uma
    Uni ed Modeling Language (UML). Este metamodelo deve guiar a instanciação de
    modelos independentes de plataforma MIDAS e outras implementações. Ele é validado
    executando três tipos de consultas do usuário para medir os níveis de cobertura do construtor
    para de nir o middleware e implementá-lo em um provedor de nuvem específico.


  • Mostrar Abstract
  • The provider of both Data as a Service (DaaS) and Database as a Service (DBaaS) stores and manages a high volume of heterogeneous data. Such data are produced by mobile computing, ubiquitous devices, social networks, and they are distributed geographically

    and available to consumers and organizations as services through an API. Users face a
    challenge when accessing similar distributed data from distinct DaaS/DBaaS providers due to the lack of a standard API and tools. Consequently, cloud users face interoperability and integration issues for consumption, provisioning, management, and supervision resources among distinct clouds. In such a heterogeneous environment, organizations desiring to exchange their data among clouds or move their applications to distinct clouds will face a lock-in situation due to the lack of a standard solution. Middleware has been employed to deal with interoperability issues to minimize the effort to overpass lock-in problems. Thus, this thesis introduces the middleware MIDAS to minimize the effort to interoperate SaaS and DaaS. We can summarize three main contributions from this work. Initially, the MIDAS Middleware provides (i) syntactic interoperability among SaaS and DaaS. MIDAS allows a cloud query from SaaS to request data from distinct DaaS/DBaaS. Data attributes and conditions are described in SQL or MongoDB queries. Therefore, a SaaS request may be affected by the evolution of the DaaS attributes. As a second contribution, MIDAS was evolved to provide (ii) semantic interoperability to ensure DaaS consistency and maintain SaaS’s original query. Currently, MIDAS runtime implementations rely on Cloud Foundry, Amazon Web Services, OpenShift, and Heroku providers. Some cloud development and runtime environment diversities (.e.g., application framework and programming languages) prevent implementing, running, or deploying applications on a large scale. To avoid ambiguity in the development and seamless deployment of MIDAS in different cloud providers, we present the third contribution of this thesis, a Domain-Specific Modeling Language (DSML), which is (iii)  the metamodel of MIDAS architecture and a Unified Modeling Language (UML) profile. This metamodel should guide the instantiation of MIDAS platform-independent models and other implementations. It is validated by executing three types of user queries to measure the constructor’s coverage levels to define the middleware and implement it in a specific cloud provider.


2019
Dissertações
1
  • DIEGO ZABOT
  • ((SPIDe Kids): adapting an interaction codesign process for deaf or hard of hearing children participation

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • ECIVALDO DE SOUZA MATOS
  • LYNN ROSALINA GAMA ALVES
  • SORAIA SILVA PRIETCH
  • Data: 22/03/2019

  • Mostrar Resumo
  • Em 2006, a Sociedade Brasileira de Computação (SBC) propôs cinco grandes desafios na pesquisa de computadores no Brasil. O quarto desafio, "Acesso participativo e universal do cidadão brasileiro ao conhecimento", envolveu Interação Humano-Computador (IHC). O objetivo deste desafio era superar as barreiras que impediam o acesso e a interação, projetando sistemas, ferramentas, modelos, métodos, procedimentos e teorias capazes de dar aos cidadãos brasileiros acesso ao conhecimento. Além disso, as tecnologias interativas estão penetrando em todos os aspectos da vida cotidiana. Nesse contexto, o design de interação levanta questões sobre como projetar sistemas adequados a todos os usuários. Esta pesquisa teve como objetivo compreender como adaptar um processo de codesign de interação para pessoas surdas ou com deficiência auditiva (D / HH). O ponto de partida foi a análise de um processo de codesign participativo, SPIDe, com o objetivo de identificar, adaptar e avaliar soluções de design para a participação de D / HH em todo o processo. Um estudo de caso foi realizado em uma faculdade estadual de surdos com um grupo de estudantes de seis anos para testar o processo adaptado. Neste estudo de caso, foi criado um jogo educativo por meio de codesign com as crianças. Como resultado, as crianças produziram dois videogames, criados por e para as crianças D / HH, cujos objetivos eram ajudar a alfabetização de crianças surdas, ensinar sistemas de números e o alfabeto. Além disso, as crianças se reconhecem como produtoras e os jogos estão imbuídos de elementos de sua cultura. A partir desses resultados, foram definidas diretrizes e indicações sobre como conduzir um processo de codesign com crianças D / HH e também sobre possíveis extensões deste processo.


  • Mostrar Abstract
  • In 2006 the Brazilian Computer Society (Sociedade Brasileira de Computação - SBC) proposed five major challenges in computer research in Brazil. The fourth challenge, "Participatory and universal access of the Brazilian citizen to knowledge", involved Human-Computer Interaction (HCI). The objective of this challenge was to overcome the barriers that impeded access and interaction by designing systems, tools, models, methods, procedures and theories capable of giving Brazilian citizens access to knowledge. In addition, interactive technologies are penetrating into every aspect of daily life. In this context, interaction design raises questions about how to design systems that are suitable for all users. This research aimed to understand how to adapt an interaction codesign process for people who are deaf or hard of hearing (D/HH) participate. The starting point was the analysis of a participatory codesign process, SPIDe, with the objective of identifying, adapting and evaluating design solutions for the participation of D/HH in the entire process. A case study was conducted at a state college for deaf people with a group of six year old students to test the adapted process. In this case study, it was created an educational game by codesign with the children. As result, the children produced two video games, created by e for D/HH childrens, whose goals were to help deaf children’s alphabetization, teaching numbers systems and the alphabet. In addition, the children recognized themselves as producers and the games are imbued with elements of their culture. From this results, guidelines and indications were defined on how to conduct a codesign process with D/HH children and also about possible extensions of this process.

2
  • PAULO ROBERTO DE SOUZA
  • RecTwitter: Um Sistema de Recomendação Semântico Para Usuários do Twitter

  • Orientador : FREDERICO ARAUJO DURAO
  • MEMBROS DA BANCA :
  • DANILO BARBOSA COIMBRA
  • FREDERICO ARAUJO DURAO
  • JOÃO BATISTA DA ROCHA JÚNIOR
  • Data: 25/03/2019

  • Mostrar Resumo
  • O Twitter é um dos serviços de microblog mais populares atualmente, permitindo aos usuários compartilharem imagens, links, textos, etc., bem como seguir ou deixar de seguir contas desua preferência, essas gerenciadas também por outros usuários. Considerando que usuários possuem interesses distintos e o volume detweets publicados tende a crescer ao se seguir mais contas, torna-se praticamente inviável monitorar quem publica ou não conteúdo relevante. Em vista disso, faz-se necessário a adoção de métodos inteligentes para identificar e filtrar contas que publiquem conteúdo similar aos interesses do usuário alvo. Esta dissertaçãode mestrado propõe um sistema derecomendação semântico baseado em regrasdenominado RECTWITTER, o qual analisa contas seguidas por um usuário, e recomenda quais devem ser descontinuadas e outras novas a serem seguidas. As regras funcionam como motores da recomendação, e levam em consideração diversos tipos de interação entre usuários no Twitter, as quais são modeladas através de uma ontologia de domínio. Para avaliar o modelo proposto, foram realizados experimentos com usuários reais e avaliações comparativas com trabalhos relacionados do estado da arte. Os resultados dos experimentos online apontam que 76% dos usuários avaliados aprovaram as recomendações obtidas. Em relação aos resultados obtidos nos experimentos offline, a precisão do modelo proposto supera em 30% importantes modelos do estado da arte.


  • Mostrar Abstract
  • Twitter is one of the most popular microblogging services today, which allows users to share images, links, texts, etc., as well as follow or not to follow preferred accounts, which are also managed by other users. Public opinion has to do with the differences in volume and volume of publication. In view of this, it is necessary to adopt intelligent schemas to identify and filter accounts that publish content similar to the interests of the target user. This dissertation offers a comment system for a subject with rules of conversation, which leads us to analyze the accounts of a user, and recommends those that are discontinued and new ones that are followed in a row. As rules work as recommendation engines, people are shaped through an interaction between Twitter users as they are modeled through a domain ontology. To evaluate the proposed model, experiments were carried out with real users and comparisons with works related to the state of the art. The results of the online experiments indicate that 76% of users were approved as a reference. In relation to the results obtained in the off-line experiments, one of the best models of the state of the art.

     

3
  • EUDES DIÔNATAS SILVA SOUZA
  • Uma Arquitetura para Autoria e Publicação na Web de Dados

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • ARTUR HENRIQUE KRONBAUER
  • RENATO DE FREITAS BULCÃO NETO
  • Data: 27/03/2019

  • Mostrar Resumo
  • Por um lado, a simplicidade do padrão de documentos HTML foi um requisito inicial de projeto, com o objetivo de expandir rapidamente a Web, por meio da criação de diversas ferramentas de autoria HTML. Por outro lado, essa mesma simplicidade gera limitações para o uso da Web por máquinas, dado a falta de estruturação e de semântica dos documentos HTML. Nesse contexto, a Web Semântica visa estender a Web atual, ou Web de Documentos, de modo que a Web seja passível de interpretação e utilização por máquinas (por exemplo, agentes de software). Nessa direção, a Web de Dados tem por objetivo descrever os dados da Web atual por meio de documentos estruturados, contendo metadados e semântica explícita. Além disso, foram propostas regras para autoria e publicação de dados, estruturados e com semântica explícita, na Web de Dados chamadas de Linked Data (Dados Ligados). Entretanto, os padrões de documentos propostos na Linked Data vão contra o objetivo inicial de simplicidade do padrão HTML. Dessa forma, o processo de autoria, mencionado anteriormente, agora deve levar em consideração que a simplicidade dos documentos da Web não é mais um pré-requisito válido. Como consequência, alguns trabalhos na literatura estão propondo métodos e ferramentas para: geração automática de Linked Data a partir de bases de dados; extração semiautomática de Linked Data de páginas HTML; autoria Linked Data para usuários comuns gerarem e publicarem dados para a Web de Dados, da mesma forma que o faziam na Web de Documentos. Porém, em relação à autoria e publicação por usuários comuns, esses métodos e ferramentas ainda são realizados de forma ad hoc. Ou seja, os trabalhos da literatura apresentam soluções específicas para domínios específicos, tais como, redes sociais, gerenciadores de conteúdo, wikis, blogs, dentre outros. Nesse contexto, este trabalho apresenta um framework para autoria e publicação de dados na Web de Dados, seguindo as regras do padrão Linked Data e com foco em usuários comuns.


  • Mostrar Abstract
  • On the one hand, the simplicity of the HTML document standard was an initial design requirement, with the goal of rapidly expanding the Web by creating various HTML-authoring tools. On the other hand, this same simplicity also generates limitations for the use of the Web by machines due to the lack of structuring and semantics of HTML documents. In this context, the Semantic Web aims at extending the current Web, or the Web of Documents, such that the Web has become susceptible to interpretation and use by machines (e.g. software agents). To that end, the Web of Data attempts to describe the current Web’s data through structured documents that contain metadata and explicit semantics. In addition, rules for authoring and publication of structured and explicitly semantic data called Linked Data have been proposed for the Web of Data. However, the proposed document patterns in the Linked Data seems to undermine the initial goal of the HTML standard, i.e. simplicity. Thus, the aforementioned authoring process must now take into account that such simplicity is no longer a valid prerequisite for Web documents. Therefore, to generate and publish data for the Wed of Data just as it was for the Web of Documents, some studies have proposed methods and tools for the following: automatic generation of Linked Data from databases; semiautomatic extraction of Linked Data from HTML pages; and authored Linked Data for ordinary users. However, in relation to authoring and publication by ordinary users, these methods and tools are still being used in an ad hoc manner. That is, the previously mentioned studies present solutions that are domain specific such as social networks, content managers, wikis, blogs, etc. In this context, this work proposes a framework for data authoring and publication in the Web of Data according to the rules of the Linked Data standard while still focusing on ordinary users.

4
  • JÚLIA MADALENA MIRANDA CAMPOS
  • Uma Abordagem Baseada em Programação Lógica por Restrições para o Problema de Escalonamento e Roteamento de Enfermeiras.

     

     

     

  • Orientador : TIAGO DE OLIVEIRA JANUARIO
  • MEMBROS DA BANCA :
  • TIAGO DE OLIVEIRA JANUARIO
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • MAYRON CESAR DE OLIVEIRA MOREIRA
  • Data: 26/04/2019

  • Mostrar Resumo
  • O Serviço de Atenção Domiciliar caracteriza-se como uma modalidade de assistência à saúde composta por um conjunto de ações de prevenção, reabilitação e tratamento de doenças, prestadas em domicílio. Esse serviço tem se tornado cada vez mais presente como ação de saúde complementar, substituindo a internação hospitalar, pois oferece uma nova modalidade de atendimento as pessoas com quadro clínico estável que necessitam de cuidados médicos. O Problema de Escalonamento e Roteamento de Enfermeiras consiste em determinar deforma integrada a atribuição de profissionais de saúde a pacientes, juntamente com os percursos dos veículos que transportarão os profissionais. Em geral, esse problema é resolvido de forma manual, tornando o processo ineficiente e muitas vezes gerando resultados insatisfatórios.

    Esta dissertação apresenta um estudo de caso realizado junto à equipe de Serviço de Atenção Domiciliar do Hospital Geral do Estado em Salvador, com o objetivo de propor um modelo de Programação Lógica por Restrições para o Problema de Escalonamento e Roteamento de Enfermeiras de modo a maximizar o número de pacientes atendidos e minimizar a distância total percorrida pelos profissionais de saúde.


  • Mostrar Abstract
  • The Home Care Service is characterized as a health care modality composed of a set of actions for prevention, rehabilitation and treatment of diseases, provided at home. This service has become increasingly present as a complementary health action, replacing hospitalization, as it offers a new modality of care to people with stable clinical conditions that require medical care. The Nursing Scheduling and Routing Problem is to determine in an integrated way the assignment of health professionals to patients, along with the routes of the vehicles that will transport the professionals. This problem is often resolved manually, making the process inefficient and often yielding unsatisfactory results. This dissertation presents a case study carried out with the Home Care Service team of the General Hospital of the State of Salvador, in order to propose a Constrained Logic Programming Model for the Nursing Scheduling and Routing Problem in order to maximize the number of patients attended and minimize the total distance traveled by health professionals.


5
  • BRAIAN VARJÃO GAMA BISPO
  • Xangô: um framework para seleção de atributos robusto ao problema do desbalanceamento entre classes em tarefas de classificação de textos

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • TATIANE NOGUEIRA RIOS
  • Ricardo Cerri
  • RICARDO MARCONDES MARCACINI
  • Data: 03/05/2019

  • Mostrar Resumo
  • A seleção de atributos é uma técnica de redução de dimensionalidade amplamente utilizada para lidar com as dificuldades associadas à "maldição da dimensionalidade'' em tarefas de classificação de textos. A abordagem de seleção de atributos mais comum para bases de dados textuais consiste em ponderar a relevância de cada atributo para o processo de aprendizado e selecionar os N melhor avaliados, onde N é, em geral, um número definido empiricamente. Embora essa estratégia seja largamente aplicada, ela pode levar à exclusão parcial ou completa de atributos essenciais para o aprendizado de certas classes. Esse fenômeno é ainda mais comum em conjuntos dedados desbalanceados, característica que impõe uma série de dificuldades no processo de aprendizagem de classificadores. Neste sentido, a pesquisa apresentada neste trabalho tem como meta fomentar a geração de classificadores de textos mais confiáveis através do aprimoramento do processo de seleção de atributos. Para tanto, propõe-se o Xangô, um framework para seleção de atributos em tarefas de classificação de textos, cujo processo de seleção busca construir um espaço dimensional reduzido onde todas as classes são representadas de forma equilibrada pelos seus termos mais discriminativos. Resultados experimentais realizados indicam que o Xangô é um framework adaptável a diferentes métodos de seleção de atributos do estado da arte, superando seus desempenhos individuais em tarefas de aprendizado realizadas sob condições variadas, incluindo problemas multi-classe, desbalanceamento entre classes, diferentes algoritmos de classificação e reduções drásticas dedimensionalidade.


  • Mostrar Abstract
  • Attribute selection is a widely used dimensionality reduction technique to deal with the difficulties associated with the "dimensionality curse" in text classification tasks. The most common attribute selection approach for textual databases is to weigh the relevance of each attribute to the learning process and to select the best-valued N's, where N is generally an empirically defined number. Although this strategy is widely applied, it can lead to the partial or complete exclusion of attributes essential for learning In this sense, the research presented in this paper aims to foster the generation of more reliable text classifiers through the improved Xangô, a framework for selecting attributes in tasks of classifying texts, whose selection process seeks to construct a reduced dimensional space where all classes are represented in a balanced way by the its most discriminatory terms. Experimental results indicate that Xangô is a framework that is adaptable to different state-of-art attribute selection methods, surpassing its individual performances in learning tasks performed under varied conditions, including multi-class problems, imbalance between classes, different classification algorithms and drastic dimensionality reductions.

6
  • Emilayne Feitosa Corlett
  • A construção do conceito de algoritmo em livros didáticos de Computação por meio da Transposição Didática Externa

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • AYLA DÉBORA DANTAS DE SOUZA REBOUÇAS
  • ECIVALDO DE SOUZA MATOS
  • MARIA CAROLINA DE SOUZA SAMPAIO
  • Data: 21/05/2019

  • Mostrar Resumo
  • Na Educação Básica brasileira, o livro didático na maioria das vezes é o principal recurso pedagógico utilizado pelo professor no estímulo à construção dos conhecimentos pelos alunos. Isso se deve ao fato de o livro didático caracterizar-se como um objeto direcionador do trabalho do professor e importante referencial de estudos para o estudante, além de ser um objeto que não requer infraestrutura física específica para ser utilizado, passível de reutilização e distribuição gratuita nas redes públicas de ensino. Ademais, o livro didático é elaborado com a intencionalidade de ser uma versão didatizada do conhecimento científico para fins educacionais, destinado ao público escolar. A esse processo de didatização dá-se o nome de Transposição Didática Externa - abordagem proposta por Yves Chevallard para transformação de saberes acadêmicos/científicos em objetos de ensino adequados ao âmbito escolar em que se insere. Tendo em vista o movimento nacional para inserção do ensino de computação na escola brasileira, a escassez de livros didáticos específicos para o ensino de computação, bem como a escassez de estudos sobre os processos de didatização do conhecimento científico de computação, esta pesquisa teve por objetivo investigar a construção do conceito de algoritmo em livros de computação (usados na escola) por meio da Transposição Didática Externa. Esta investigação seguiu uma abordagem qualitativa, na perspectiva documental, por meio da técnica de análise de conteúdo realizada em três obras: dois livros didáticos e um livro acadêmico utilizado como referência conceitual. Foram verificadas manifestações de transposição didática externa do conceito de algoritmo nos dois planos de análise viabilizados na pesquisa, tanto no domínio do “saber sábio” quanto no “saber a ensinar”. O estudo mostrou que a transposição do conhecimento científico em “saber a ensinar” exigiu cuidados especiais para que esse conhecimento não se tornasse apenas um resumo do conceito original, pois foram encontradas mudanças e simplificações do saber científico quando transpostos para os livros didáticos de computação.

     


  • Mostrar Abstract

  • In Brazilian Basic Education, the textbook is most often the main pedagogical resource used by the teacher in stimulating the construction of the knowledge by the students. This is due to the fact that the textbook is characterized as an object that directs the work of the teacher and important reference of studies for the student, besides being an object that does not require specific physical infrastructure to be used, reusable and free distribution in public education networks. In addition, the didactic book is elaborated with the intention of being a didatized version of the scientific knowledge for educational purposes, destined to the school public. This process of didatization is called External Teaching Transposition - an approach proposed by Yves Chevallard for the transformation of academic / scientific knowledge into teaching objects appropriate to the school context in which it is inserted. Considering the national movement for the insertion of the teaching of computation in the Brazilian school, the shortage of specific didactic books for the teaching of computation, as well as the scarcity of studies on the processes of didatization of the scientific knowledge of computation, this research had as objective to investigate the construction of the algorithm concept in computer books (used in school) through the External Didactic Transposition. This research followed a qualitative approach, in the documentary perspective, through the technique of content analysis carried out in three works: two textbooks and an academic book used as conceptual reference. Demonstrations of external didactic transposition of the algorithm concept were verified in the two plans of analysis made possible in the research, both in the field of "knowing wise" and in "knowing how to teach". The study showed that the transposition of scientific knowledge into "knowing to teach" required special care so that this knowledge did not become just a summary of the original concept, because changes and simplifications of scientific knowledge were found when transposed to computer textbooks.

7
  • ALBERTO PIETRO SIRONI
  • “INTEGRAÇÃO E MINERAÇÃO VISUAL DEDADOS DE SAÚDE PÚBLICA: ESTUDO DECASO EM MALÁRIA

  • Orientador : MARCOS ENNES BARRETO
  • MEMBROS DA BANCA :
  • DANILO BARBOSA COIMBRA
  • MARCOS ENNES BARRETO
  • VANDERSON DE SOUZA SAMPAIO
  • Data: 29/05/2019

  • Mostrar Resumo
  • Nas últimas décadas, a necessidade de se armazenar e processar grandes volumes de dados, gerados diariamente sob as mais variadas fontes e comumente referenciados como big data, cresceu de forma significativa.
    A importância destes dados aumenta à medida que eles são integrados para possibilitar a execução de estudos e análises, embasar processos de tomada de decisões e gerar informação abrangente sobre um determinado domínio.
    A integração e o processamento de grandes volumes de dados impõem uma complexidade considerável do ponto de vista computacional. A análise destes dados, por exemplo, requer técnicas de aprendizado de máquina e de visualização para permitir a correta identificação da informação presente nestes dados, nem sempre facilmente percebida. Na Saúde Pública, especificamente no contexto da malária, existe um esforço mundial para a erradicação da doença, uma vez que ela ainda apresenta altos índices de incidência.
    Esta pesquisa enquadra-se num projeto que versa sobre técnicas de integração e mineração visual de dados aplicadas num ecossistema de vigilância da malária na construção de uma base de dados integrada compreendendo notificações, mortes, controle de vetores e dados climáticos.
    Esta base de dados é acessada através do Malaria-VisAnalytics, uma plataforma de mineração para análise descritiva, preditiva e visual, ajudando a tomada de decisão de políticas públicas por parte dos agentes governamentais e de saúde.
    Nossos resultados experimentais e de validação favorecem a interação e exploração visual permitindo uma vigilância eficaz. Por fim, nosso estudo pode ser facilmente estendido com novas funcionalidades e fontes de dados para acomodar cenários mais complexos.


  • Mostrar Abstract

  • In the last decades, the need to store and process large volumes of data, generated daily under the most varied sources and commonly referred to as big data, has grown significantly. The importance of these data increases as they are integrated to enable the execution of studies and analyzes, to support decision-making processes and to generate comprehensive information about a particular domain. The integration and processing of large volumes of data impose considerable computational complexity. The analysis of these data, for example, requires machine learning and visualization techniques to allow the correct identification of the information present in these data, not always easily perceived. In public health, specifically in the context of malaria, there is a worldwide effort to eradicate the disease, since it still has high incidence rates. This research is part of a project that deals with integration techniques and visual data mining applied in a malaria surveillance ecosystem in the construction of an integrated database comprising notifications, deaths, vector control and climatic data. This database is accessed through Malaria-VisAnalytics, a mining platform for descriptive, predictive and visual analysis, assisting public policy decision-making by government and health stakeholders. Our experimental and validation results favor interaction and visual exploration allowing effective surveillance. Finally, our study can be easily extended with new features and data sources to accommodate more complex scenarios.

8
  • NILTON FLÁVIO SOUSA SEIXAS
  • PRIMO: Um Modelo ICN de Prevenção a Ataques de Negação de Serviço por Inundação de Interesses Falsos

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • LEOBINO NASCIMENTO SAMPAIO
  • MAYCON LEONE MACIEL PEIXOTO
  • ANTONIO AUGUSTO DE ARAGÃO ROCHA
  • Data: 06/06/2019

  • Mostrar Resumo
  • A arquitetura atual da Internet foi projetada para compartilhar os recursos disponíveis pelas comunidades. Todavia, a forma com que a Internet é utilizada hoje, tornou a arquitetura incompatível com a explosiva demanda por distribuição e obtenção de dados. Os usuários da rede estão interessados no conteúdo e não no seu hospedeiro. A Rede de Dados Nomeados (do inglês, Named Data Networking - NDN) é uma arquitetura de Internet que se adequa a essa nova demanda, reduzindo o tráfego da rede causado pela necessidade de obtenção de um mesmo conteúdo e muda a orientação da segurança dos dados, que atualmente assegura as conexões pelos quais eles serão transportados, para os próprios dados, tornando a arquitetura resiliente a muitos problemas recorrentes e difíceis de serem tratados na arquitetura atual, tal como o ataque de negação de serviço. Entretanto, esses ataques foram adaptados para essa arquitetura e é necessário mitigá-los para que a arquitetura seja considerada segura. Nesse contexto, é proposto o PRIMO, um modelo baseado em NDN que forja uma colaboração roteador-produtor para detectar, mitigar e prevenir os ataques de negação de serviço por inundação de interesses falsos (do inglês, Interest Flooding attack - IFA). Os componentes do modelo PRIMO cooperam para: i) detectar um ataque IFA em curso, ii) mitigar o ataque fazendo distinção entre interesses legítimos e falsos, iii) impedir que o ataque chegue ao núcleo da rede após mitigação e por fim, iv) prevenir a rede de novas instâncias de ataques com prefixos já utilizados. Os resultados experimentais mostram que o PRIMO é eficaz em:detectar o ataque, mitigá-lo fazendo distinção entre os interesses legítimos e falsos, preservando o desempenho da rede e prevenir novas ocorrências de um ataque em curso. As contribuições dessa dissertação são: i) um modelo com mecanismos colaborativos de detecção, mitigação e prevenção de IFA e ii) um mecanismo de identificação de interesses falsos.


  • Mostrar Abstract
  • The current Internet architecture is designed to share resources available to communities. However, the way the Internet is used today has made the architecture incompatible with the explosive demand for distribution and data collection. Network users are interested in the content and not in their host. The Named Data Networking (NDN) is an Internet architecture that adapts to this new demand, reducing network traffic caused by the need to obtain the same content, and changes the orientation of data security , which currently secures the connections by which they will be transported, into the data itself, making the architecture resilient to many recurring problems and difficult to treat in the current architecture, such as the denial of service attack. However, these attacks have been adapted to this architecture and it is necessary to mitigate them so that the architecture is considered safe. In this context, PRIMO is proposed, an NDN-based model that forges a router-producer collaboration to detect, mitigate and prevent Denial of Service attacks by Flood of Interests (IFA). The components of the PRIMO model cooperate to: (i) detect an ongoing IFA attack, (ii) mitigate the attack by distinguishing between legitimate and false interests, (iii) prevent attack from reaching the core of the network after mitigation, and the network of new instances of attacks with prefixes already used. The experimental results show that PRIMO is effective in: detecting the attack, mitigating it by distinguishing between legitimate and false interests, preserving network performance and preventing further occurrences of an ongoing attack. The contributions of this dissertation are: i) a model with collaborative mechanisms for the detection, mitigation and prevention of IFA and ii) a mechanism for identifying false interests.

9
  • ANTONIO BATISTA DE OLIVEIRA NETO
  • Prototyping and validating the CORA ontology and its reference architecture

  • Orientador : MARCOS ENNES BARRETO
  • MEMBROS DA BANCA :
  • MARCOS ENNES BARRETO
  • LAIS DO NASCIMENTO SALVADOR
  • FLAVIO MORAIS DE ASSIS SILVA
  • Data: 12/06/2019

  • Mostrar Resumo
  • Ontologies play an important role across several domains as they represent and define categories, properties and relationships among concepts, data and entities existing in those domains. Specially in Robotics, ontologies can be used as a standard way to represent and share knowledge and reasoning among autonomous agents. CORA (core ontology for robotics and automation) is a standard ontology developed by the IEEE ORA working group mapping main concepts and axioms from the robotics and automation (R&A) domain. After CORA has been approved as an official IEEE standard, ORA was split in different sub-groups addressing, among other topics, task representation (RTR) and autonomous robots architectures (AuR). This work presents a simulation study on a multi-robot reconnaissance application intended to serve as proof-of-concept on the feasibility of the CORA ontology and its related architecture. We show how robots and tasks are represented and dynamically mapped into the ontology, as well discuss some technical aspects of our simulation when dealing with the proposed architecture. Our results show the proposed ontology (CORA) and its associated reference architecture (ROA) are able to be correctly mapped during application runtime.


  • Mostrar Abstract
  • Ontologies play an important role across several domains as they represent and define categories, properties and relationships among concepts, data and entities existing in those domains. Specially in Robotics, ontologies can be used as a standard way to represent and share knowledge and reasoning among autonomous agents. CORA (core ontology for robotics and automation) is a standard ontology developed by the IEEE ORA working group mapping main concepts and axioms from the robotics and automation (R&A) domain. After CORA has been approved as an official IEEE standard, ORA was split in different sub-groups addressing, among other topics, task representation (RTR) and autonomous robots architectures (AuR). This work presents a simulation study on a multi-robot reconnaissance application intended to serve as proof-of-concept on the feasibility of the CORA ontology and its related architecture. We show how robots and tasks are represented and dynamically mapped into the ontology, as well discuss some technical aspects of our simulation when dealing with the proposed architecture. Our results show the proposed ontology (CORA) and its associated reference architecture (ROA) are able to be correctly mapped during application runtime.

10
  • ANTONIO MATEUS DE SOUSA
  • GERENCIAMENTO DE MOBILIDADE EM REDES VEICULARES DE DADOS NOMEADOS BASEADO NA ESTABILIDADE DO ENLACE

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • ANTONIO ALFREDO FERREIRA LOUREIRO
  • LEOBINO NASCIMENTO SAMPAIO
  • MAYCON LEONE MACIEL PEIXOTO
  • Data: 19/06/2019

  • Mostrar Resumo
  • As Redes Ad hoc Veiculares (VANETs) são redes cooperativas que visa proporcionar
    a motorista, passageiros e pedestres maior segurança e conforto ao mesmo tempo. No
    entanto, o cenário móvel dessas redes ainda são complexos para os protocolos atuais,
    dificultando o fornecimento do serviço de comunicação. As Redes Veiculares de Dados
    Nomeados (VNDN) surgem como uma alternativa às VANETs convencionais, que persistem na utilização do esquema de endereçamento baseado em IPs para localizar e consumir
    serviços. Pesquisas extensivas já comprovaram a ineficiência da arquitetura TCP/IP em
    cenários de mobilidade como o de VANETs, caracterizado pela imprevisibilidade, dinamicidade e comunicação intermitente. Dessa forma, as VNDNs visam sobrepor as limitações
    relacionadas a arquitetura TCP/IP ao introduzir um novo modelo de requisição e consumo centralizado no conteúdo ao invés do produtor do mesmo. Tais características são
    inerentes ao paradigma de Redes de Dados Nomeados (NDN), que apresentam um suporte
    nativo à mobilidade. No entanto, as NDNs não lidam com o escopo temporal intrínseco às
    VANETs em que os conteúdos e conexões são de duração limitada assim como não tratam
    a inundação de pacotes. Neste contexto, este trabalho propõe duas novas estratégias (i.e.
    LSIF e NESTS) de encaminhamento de interesses em VNDN que faz uso da característica
    nativa das VANETs, tempo de vida do enlace, para mitigar inundação de pacotes bem
    como seus efeitos adversos. Nas estratégias, o encaminhamento de interesses é realizado
    de forma controlada e seletiva, no qual apenas nós classificados como aptos a serem encaminhadores agem como tal. Esse comportamento é determinado através do uso do
    tempo de vida do enlace no processo de tomada de decisão no encaminhamento. Com
    base nisso, pode-se resumir as contribuições deste trabalho da seguinte forma: i) propor
    estratégias de encaminhamento eficientes para VNDN; ii) mitigação da inundação de pacotes interesses/dados; iii) avaliação experimental sobre a eficácia do tempo de vida do
    enlace no encaminhamento. Os resultados obtidos evidenciam que as estratégias propostas reduzem significativamente o número de retransmissões de interesses e em decorrência
    disso o número de pacotes de dados também diminui quando comparado às demais estratégias. Adicionalmente, tanto os níveis de satisfação de interesses quanto os atrasos
    mantiveram-se estáveis.


  • Mostrar Abstract
  • Vehicular Ad Hoc Networks are cooperative networks that focus on provide to drivers,
    passengers and pedestrians more security and comfort at the same time. On the other
    hand, the mobility scenario of such networks are still complex to the current protocols,
    which difficult the communication service providing. Vehicular Named Data Networking (VNDN) emerges as an alternative to the conventional Vehicular Ad hoc Networks
    (VANETs) which persist in using the IP-based addressing scheme to locate and consume services. Several studies have already demonstrated the inefficiency of the TCP/IP
    architecture in mobility scenarios such as VANETs, characterized by unpredictability,
    dynamicity, and intermittent communication. In this way, VNDNs aim to overcome the
    limitations related to TCP/IP architecture by introducing a new demand and consumption model that is centralized in content rather than in the producer of it. Such features
    are inherent in the Named Data Networking (NDN) architecture, which present a native
    support for mobility. However, NDNs do not cope with the temporal scope related to VANETs, where both the contents and connections are of limited duration as well as do not
    handle the broadcast storm of packets. Therefore, this work proposes two new interest
    forwarding strategies for VNDN that make use of the native characteristic of VANETs,
    estimated link lifetime, to mitigate the broadcast storm of interest packets as well as its
    side effects. In our strategies, the routing of interests is carried out in a controlled and
    selective manner, which only those who are classified as able to be forwarders will forward
    the packets. This behavior is determined by the use of link lifetime in the forwarding
    decision-making process. Based on this, we can summarize the contributions of this work
    as follows: i) propose a new efficient routing strategies for VNDN; ii) mitigation of broadcast storm of interest/data packets; iii) experimental evaluation on the effectiveness of
    link life in routing. The results show that the proposed strategies reduces significantly
    the number of interest retransmissions, which also alleviates the number of data packets
    when compared to the other strategies. Additionally, both levels of interests satisfaction
    and delays remained stable.

11
  • MARIA CLARA PESTANA SARTORI
  • Using Context to Support Task Distribution in Mobile Crowdsourcing.

  • Orientador : VANINHA VIEIRA DOS SANTOS
  • MEMBROS DA BANCA :
  • ARTUR HENRIQUE KRONBAUER
  • FREDERICO ARAUJO DURAO
  • VANINHA VIEIRA DOS SANTOS
  • Data: 27/06/2019

  • Mostrar Resumo
  • No Mobile Crowdsourcing, as tarefas são distribuídas aos trabalhadores de acordo com os dados do sensor, com o objetivo de resolver problemas usando a inteligência coletiva. Os solicitantes criam tarefas e distribuem aos trabalhadores da multidão para resolver coletivamente um determinado problema. A correspondência de uma tarefa ao trabalhador apropriado é um problema em aberto na área. Essa distribuição de tarefas influencia a qualidade da resposta dos trabalhadores ou a taxa de aceitação da tarefa. Nesta pesquisa, investigamos o uso do contexto no crowdsourcing móvel e propomos o ConTask, uma abordagem sensível ao contexto para dar suporte à distribuição de tarefas. O ConTask compreende um modelo de contexto e um aplicativo móvel, que estende o modelo de tarefa proposto por Mrazovic e Matskin (2015) implementando as cinco dimensões de contexto propostas por Zimmermann et al (2007): Individualidade, Tempo, Relação, Atividade e Localização. Além disso, o ConTask apresenta uma arquitetura de distribuição de tarefas, instanciada no protótipo do aplicativo ConTask, que visa oferecer suporte à correspondência de tarefas para os trabalhadores da multidão de acordo com os requisitos contextuais da tarefa, conforme definido pelos solicitantes. O aplicativo ConTask foi implementado de acordo com o modelo e a arquitetura propostos, usando sensores populares para cada dimensão de contexto. Experimentos foram realizados com diferentes usuários em uma universidade e forneceram algumas informações sobre o uso de sensores; a precisão da distribuição de tarefas implementadas foi de 63%, com 73% de precisão e 63% de revogação. Para avaliar o modelo ConTask, instanciamos e realizamos uma investigação com usuários no domínio Administração da Universidade. Este experimento teve como objetivo obter idéias sobre como as dimensões do contexto influenciam a aceitação das tarefas do ponto de vista dos trabalhadores da multidão. Os resultados ilustraram algumas tendências na influência do uso do contexto na disposição do trabalhador em executar a tarefa; como quanto maior a distância entre o trabalhador e o local da tarefa, menor a disposição do trabalhador em executar a tarefa; a atividade que o trabalhador está executando quando recebe a solicitação de tarefa influencia sua aceitação, como as atividades de "espera" ou "conversa", em contraste com "no celular" e "trabalho"; a hora do dia em que o trabalhador recebeu a tarefa, como manhã versus noite; a experiência do trabalhador em relação aos requisitos da tarefa; e a relação social entre o trabalhador e o solicitante de tarefas.



  • Mostrar Abstract
  • In Mobile Crowdsourcing, tasks are distributed to workers according to sensor data, aiming to solve problems using collective intelligence. Requesters create tasks and distribute to the crowd workers in order to solve collectively a certain issue. Matching a task to the appropriate worker is an open issue in the area. This task distribution influences the quality of the workers’ response or the task acceptance rate. In this research we investigate the usage of context on mobile crowdsourcing, and propose ConTask, a context-aware approach to support task distribution. ConTask comprises a context model and a mobile app, which extends the task model proposed by Mrazovic and Matskin (2015) implementing the five context dimensions proposed by Zimmermann et al (2007): Individuality, Time, Relation, Activity, and Location. Additionally, ConTask presents a task distribution architecture, instantiated in the ConTask app prototype, which aims to support task matching to crowd workers according to the task's contextual requirements as defined by the requesters. The ConTask App was implemented according to the proposed model and achitecture, using popular sensors for each context dimension. Experiments were performed with different users in a University, and provided some insights regarding sensors usage; the accuracy of the implemented task distribution was 63%, with 73% precision and 63% revocation. To evaluate the ConTask model, we instantiated an performed an investigation with users in the University Administration domain. This experiment aimed to get insights about how the context dimensions influence tasks' acceptance from the crowd workers point of view. The results illustrated some tendencies in the influence of context usage in the worker willingness to perform the task; such as the higher the distance between the worker and the task location the lower the willingness of the worker on performing the task; the activity the worker is performing when receive the task request influences its acceptance, such as the activities of "waiting" or "talking" in contrast to "on cellphone" and "working"; the time of the day the worker received the task, such as morning versus night; the worker expertise regarding the task requirements; and the social relation between the worker and the task requester.

12
  • KARLA MALTA AMORIM DA SILVA
  • The Lehman's Laws in Highly-Configurable Systems: An Empirical Study on the Linux Kernel Variable Features

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • EDUARDO SANTANA DE ALMEIDA
  • LEOPOLDO MOTTA TEIXEIRA
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 30/07/2019

  • Mostrar Resumo
  •  Background: Highly-configurable systems (HCS) provide a set of features which can be combined in order to generate a family of different products. These features can be either common to all products or variable features - present only in some of the generated products. When evolving this kind of system, we have to deal with the modification of both common and variable features, which may be different regarding their evolutionary behavior. Thus, the Lehman's Laws of software evolution may not hold in all cases.

    Objective: In this study, our objective is to evaluate the validity of Lehman's Laws in the context of variable features of an open source HCS - the Linux kernel.

    Methods: Our approach consists of a replication of an empirical study, where we reused the original design but modified the type of subject in order to observe if the results hold in a different context. We analyzed bug reports, commits, and source code of 47 releases of the Linux kernel launched over a period of 23 years of evolution.

    Results: Results show that half of the laws evaluated were supported, namely, Continuing Change, Continuing Growth and Conservation of Familiarity laws. Conversely, the laws Increasing Complexity, Declining Quality and Conservation of Organizational Stability were not supported for the variable features of the Linux kernel.

    Conclusions: This study brings together the available evidence of the validity of the Lehman's Laws in an HCS and discusses how its open source nature and domain of application influence the results. We reflect upon the implications of our results and propose a set of recommendations to the HCS community in order to help improving the evolution of variable features.

     


  • Mostrar Abstract
  •  Background: Highly-configurable systems (HCS) provide a set of features which can be combined in order to generate a family of different products. These features can be either common to all products or variable features - present only in some of the generated products. When evolving this kind of system, we have to deal with the modification of both common and variable features, which may be different regarding their evolutionary behavior. Thus, the Lehman's Laws of software evolution may not hold in all cases.

    Objective: In this study, our objective is to evaluate the validity of Lehman's Laws in the context of variable features of an open source HCS - the Linux kernel.

    Methods: Our approach consists of a replication of an empirical study, where we reused the original design but modified the type of subject in order to observe if the results hold in a different context. We analyzed bug reports, commits, and source code of 47 releases of the Linux kernel launched over a period of 23 years of evolution.

    Results: Results show that half of the laws evaluated were supported, namely, Continuing Change, Continuing Growth and Conservation of Familiarity laws. Conversely, the laws Increasing Complexity, Declining Quality and Conservation of Organizational Stability were not supported for the variable features of the Linux kernel.

    Conclusions: This study brings together the available evidence of the validity of the Lehman's Laws in an HCS and discusses how its open source nature and domain of application influence the results. We reflect upon the implications of our results and propose a set of recommendations to the HCS community in order to help improving the evolution of variable features.

     

13
  • ELTON FIGUEIREDO DA SILVA
  • INTEGRACÃO DE PRÁTICAS DO DDM AO PROCESSO ÁGIL : AVALIANDO ASPECTOS DE EVOLUCÃO DE SOFTWARE

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • ANA PATRICIA FONTES MAGALHÃES MASCARENHAS
  • LEONARDO GUERREIRO AZEVEDO
  • RODRIGO ROCHA GOMES E SOUZA
  • Data: 06/08/2019

  • Mostrar Resumo
  • Em desenvolvimento de software que utiliza algum método ágil, o artefato principal e mais atualizado é o código fonte em detrimento à documentação. Contrapondo-se a esta realidade, a abordagem de Desenvolvimento Dirigido por Modelo (DDM) tem o modelo como principal artefato do processo de desenvolvimento. Objetivando extrair as vantagens de ambas as abordagens, (SALES, 2017) desenvolveu o metaprocesso (MDD ágil) ScrumDDM que adicionou práticas de modelagem e transformação de modelos oriundas do desenvolvimento dirigido por modelo ao framework Scrum. Diferenciando do trabalho de (SALES, 2017), neste trabalho será investigado se a adição de práticas DDM ao framework Scrum antem a agilidade do processo e se foi possível instanciar outro processo com a utilização do metaprocesso ScrumDDM, este novo processo continuou sendo ágil e se foi possível evoluir um software existente através das estórias dos usuários e da documentação provida pelo ScrumDDM, bem como se este metaprocesso é efetivo na instanciação de novos processos que integrando-os ao SCRUM e ao DDM. Para avaliar o metaprocesso quanto a capacidade de evoluir o software a partir das estórias dos usuários e a agilidade no desenvolvimento do software, foi desenvolvido um experimento controlado. Para avaliar a generalização do metaprocesso, por sua vez, um novo processo de software oriundo da literatura acadêmica foi instanciado a partir deste metaprocesso. No experimento controlado desenvolvido neste trabalho, foi possível demostrar que o metaprocesso avaliado apoiou a evolução do software através da documentação oriunda do ScrumDDM. Também demostrou que a agilidade do desenvolvimento foi aperfeiçoada através das transformações e dos modelos da abordagem DDM. Além dos resultados citados, ao final do processo de desenvolvimento, observou-se que, tanto o código do projeto quanto a documentação do software estavam atualizados de acordo com a especificação realizada no início do projeto, evidenciando assim, que a inclusão de práticas de DDM no processo ágil pode ser uma alternativa de hibridização viável para aumentar a produtividade sem abrir mão da documentação do projeto.


  • Mostrar Abstract
  • In software development that uses some agile method, the source code, rather than documentation, is the main and most up-to-date artifact. In contrast to this reality, the Model Driven Development (DDM) approach has the model as the main artifact of the development process. Intending to get th advantages of both approaches, (SALES, 2017) developed the ScrumDDM meta-process (agile MDD) that added modeling and model transformation practices coming from model driven development to the Scrum framework. Unlike the work of (SALES, 2017), this paper will investigate whether the ScrumDDM metaprocess preserves the characteristic agility of SCRUM, supports software evolution through user stories and documentation provided by DDM using for that aexisting software and developed by ScrumDDM, as well as whether this metaprocess is effective in creating new processes that integrate SCRUM and DDM. To evaluate the metaprocess regarding its ability to evolve user stories and the agility in software development, a controlled experiment was developed. To evaluate the generalization of metaprocess, in turn, a new software process from the academic literature was instantiated from this metaprocess. Through the controlled experiment developed in this work, it was possible to demonstrate that the evaluated metaprocess supported the software evolution through DDM documentation. It has also been shown that development agility has been enhanced through the transformations and models of the DDM approach. In addition to the results cited, at the end of the development process, it was observed that, both the project code and documentation, were up to date.

14
  • RAFAEL HENRIQUE TIBÃES
  • RECONHECIMENTO DE IMPRESSÕES DIGITAIS SOB VARIAÇÕES DE ESCALA PARA A
    IDENTIFICAÇÃO DE CRIANÇAS DESAPARECIDAS

  • Orientador : MAURICIO PAMPLONA SEGUNDO
  • MEMBROS DA BANCA :
  • LEONARDO GOMES
  • MAURICIO PAMPLONA SEGUNDO
  • RODRIGO MINETTO
  • Data: 20/08/2019

  • Mostrar Resumo
  • Dado que a impressão digital de um indivíduo recém-nascido cresce até a vida adulta, a impressão digital deste
    indivíduo apresentará diferentes escalas quando capturadas ao longo do tempo. Os métodos de comparação da literatura não
    compreendem uma variação robusta de escala da imagem, inviabilizando a comparação automática de impressões digitais de um
    mesmo indivíduo coletadas quando recém-nascido e após o seu crescimento. Por esta razão, neste trabalho é apresentada uma
    solução para calcular as espessuras de cristas e vales da impressão digital, e consequentemente calcular a sua frequência média.
    A razão de escala entre duas imagens de impressão digital é estimada com base na frequência média de cada imagem,
    permitindo o redimensionamento destas imagens para uma frequência comum, o que viabiliza o uso de algoritmos de comparação
    da literatura para realizar o reconhecimento ao longo do tempo. Nos experimentos utilizando uma base de dados sintética, nossa
    abordagem obteve a taxa de EER de 0.09 para uma razão de escala de 4 vezes, enquanto o mesmo algoritmo de comparação
    sem o redimensionamento das imagens obtém a taxa de EER de 0.5, i.e. similar a um acerto por aleatoriedade.


  • Mostrar Abstract
  • Since the fingerprint of a newborn individual grows to adulthood, the fingerprint of this

    individual will present different scales when captured over time. The literature comparison methods do not

    They comprise a robust range of variation of the image, preventing automatic comparison of fingerprints of a

    same individual collected when newborn and after its growth. For this reason, this paper presents a

    solution to calculate the thickness of the ridges and valleys of the fingerprint, and thus calculate their average frequency.

    The ratio scale between two fingerprint images is estimated based on the average frequency for each image,

    allowing resizing these images to a common frequency, which enables the use of comparison algorithms

    of literature to perform recognition over time. In experiments using a synthetic database, our

    approach EER rate obtained for a 0.09 ratio scale 4 times, while the same comparison algorithm

    without resizing the images you get the EER rate of 0.5, i.e. similar to a random hit.

     

15
  • MICHELL FELIPPE FERNANDES MACEDO QUEIROZ
  • Matheuristics para o problema do conjunto de vértices de retroalimentação de peso mínimo e para o problema da b-coloração

  • Orientador : RAFAEL AUGUSTO DE MELO
  • MEMBROS DA BANCA :
  • CARLOS EDUARDO DE ANDRADE
  • CELSO DA CRUZ CARNEIRO RIBEIRO
  • MARCIO COSTA SANTOS
  • RAFAEL AUGUSTO DE MELO
  • TIAGO DE OLIVEIRA JANUARIO
  • Data: 24/09/2019

  • Mostrar Resumo

  • Nesta dissertação de mestrado, propõe-se novas \textit{matheuristics} para dois problemas NP-difíceis de otimização combinatória em grafos. O primeiro problema estudado é o problema do conjunto de vértices de retroalimentação de peso mínimo (MWFVS, do inglês \textit{minimum weighted feedback vertex set}). Dado um grafo valorado $G=(V,E)$, o MWFVS consiste em obter um subconjunto de peso mínimo $F\subseteq V$ cuja remoção torna o grafo acíclico. Diferentemente de outras abordagens na literatura, este trabalho trata o problema através da floresta induzida de peso máximo (MWIF, do inglês \textit{maximum weighted induced forest problem}). Primeiramente, propõe-se duas novas formulações compactas de programação inteira mista (MIP, do inglês \textit{mixed integer programming}), que utilizam um número polinomial de variáveis e restrições. Em seguida, desenvolve-se uma \textit{matheuristic} que combina uma metaheurística \textit{multi-start} baseada em busca local iterativa com um procedimento de busca local baseado em MIP. Esta dissertação também considera o problema da $b$-coloração. Dado um grafo $G=(V,E)$, o mesmo consiste em atribuir cores à cada vértice em $V$ tal que vértices adjacentes recebam cores diferentes, todas as cores possuam um $b$-vértice, e o número de cores seja máximo. Um $b$-vértice é um vértice adjacente a vértices coloridos com todas as cores exceto a sua própria. O número $b$-cromático de $G$, denotado $\rchi_b$, é determinado pela solução ótima do problema da $b$-coloração. Apresenta-se uma formulação de programação inteira e uma heurística gulosa randomizada que é altamente efetiva quando usada de forma \textit{multi-start}. Além disso, uma \textit{matheuristic} é proposta combinando a heurística com a formulação de programação inteira. Experimentos computacionais mostram que as técnicas propostas para ambos os problemas superam as metaheurísticas estado da arte para a maioria das instâncias testadas.


  • Mostrar Abstract

  • In this thesis, we propose new matheuristics for two NP-hard graph optimization problems. The first studied problem is denoted the minimum weighted feedback vertex set problem (MWFVS), for which given a weighted graph $G=(V,E)$ it consists in obtaining a minimum weight subset $F\subseteq V$ of the vertex set whose removal makes the graph acyclic. Differently from other approaches in the literature, we tackle this problem via the maximum weighted induced forest problem (MWIF). First, we propose two new compact mixed integer programming (MIP) formulations, using a polynomial number of variables and constraints. Next, we develop a matheuristic that hybridizes a multi-start iterated local search metaheuristic with a MIP-based local search procedure. This thesis also studies the $b$-coloring problem, for which given a graph $G=(V,E)$ it consists in attributing a color to every vertex in $V$ such that adjacent vertices receive different colors, every color has a $b$-vertex, and the number of colors is maximized. A $b$-vertex is a vertex adjacent to vertices colored with all used colors but his own. The optimal solution of the $b$-coloring problem determines the $b$-chromatic number of $G$, denoted $\rchi_b$. We present an integer programming formulation and a very effective multi-greedy randomized heuristic which can be used in a multi-start fashion. Furthermore, a matheuristic is proposed combining the heuristic with the integer programming formulation. Extensive computational experiments show that the proposed techniques for both problems outperform the state-of-art metaheuristics for the majority of tested instances.

16
  • DIEGO BARBOSA ARIZE SANTOS
  • UM ESTUDO SOBRE A PREDIÇÃO DE ENERGIA UTILIZANDO DADOS INCERTOS DE SMART GRIDS

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • MARCOS ENNES BARRETO
  • MATHEUS GIOVANNI PIRES
  • TATIANE NOGUEIRA RIOS
  • Data: 14/10/2019

  • Mostrar Resumo
  • O gerenciamento da geração de energia e seu consumo é geralmente uma tarefa difícil para as redes de energia elétrica, uma vez que os dados obtidos com esse sistema estão atrelados à incerteza ocasionada pela sazonalidade e diversas interferências externas. Sendo assim, a construção de Smart Grids, ou seja, redes elétricas inteligentes, vem sendo uma ideia constantemente adotada em diversas cidades. Em Smart Grids, a combinação de Inteligência Computacional com a rede elétrica busca melhorar o equilíbrio entre geração de energia e seu consumo. As redes inteligentes exigem controladores poderosos para manter tal equilíbrio. Esses controladores precisam estar cientes das cargas futuras e a previsão desses dados deve ser muito precisa para fornecer suporte à decisão de forma eficiente. Como os dados de geração e consumo de energia do Smart Grid variam ao longo do tempo, em uma distribuição de séries temporais, os métodos de previsão de séries temporais podem produzir previsões para apoiar tais controladores no processo de tomada de decisão. No entanto, a previsão de dados vinculados à natureza incerta dos mesmos pode ter alguns distúrbios ocasionando a má distribuição de energia. Para superar essas questões, neste trabalho, investigamos métodos de previsão de séries temporais, mapeados em uma revisão sistemática da literatura, com o objetivo de fornecer previsões mais precisas, mesmo para esses dados incertos. Buscando um método apropriado para isso, apresentamos um estudo comparativo sobre diferentes métodos de previsão de séries temporais para avaliar qual deles alcançaria melhor precisão nas predições de distribuição de energia. Os métodos comparados foram: Rede Neural Adaptativa Fuzzy (ANFIS), Redes Neurais Recorrentes (RNN), Regressores de Vetores de Suporte (SVR), \textit{Random Forest} e \textit{SARIMAX}. O algoritmo ANFIS superou as demais abordagens, fornecendo resultados mais precisos. A partir desses resultados, propomos a combinação da abordagem de fuzzificação do ANFIS com os métodos de predição comparados para melhorar o desempenho destes na predição sob dados incertos de energia.


  • Mostrar Abstract
  • Managing energy generation and its consumption is usually a difficult task for electric power grids systems, given the great volume of data. Moreover, the data obtained from these systems is tied to uncertainty occasioned by seasonality and natural environment disturbances. Therefore, efforts have been made on the construction of Smart Grids, i.e. intelligent energy networks, which combine Computational Intelligence with the electricity power grids, in order to improve the balance between energy generation and its consumption. Smart Grids require powerful controllers to keep the balance of energy generation and its demand. Those controllers have to be aware of future loads, and the prediction of this data must be very accurate to provide efficient decision support. Since Smart Grid's energy generation and consumption data varies over time, following a time series distribution, time series forecasting methods can yield predictions to support those controllers on the decision-making process. Nevertheless, forecasting over data that tied to uncertainty may have some disturbances. In order to overcome those issues, on this work, we investigate time series forecasting methods, mapped in a systematic literature review, aiming to deliver accurate forecasts even for uncertain data. Towards finding a method for that, we present a comparison study over different time series forecasting methods to evaluate which one would achieve better accuracy in energy distribution. The compared methods were the Adaptive Fuzzy Neural Network (ANFIS), Recurrent Neural Networks (RNN), Support Vector Regression (SVR), Random Forest and SARIMAX. The ANFIS algorithm had outperformed the other approaches, delivering more accurate results. From that comparison, we have proposed a framework that combines the ANFIS' fuzzification step with well-known forecasting methods to improve their performances on forecasting under uncertain energy data.

17
  • JOÃO ALBERTO CASTELO BRANCO OLIVEIRA
  • Fuzzy Software Analyzer (FSA): Uma nova abordagem para interpretação de repositórios de versionamento de código-fonte

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • CLAUDIO NOGUEIRA SANT ANNA
  • TATIANE NOGUEIRA RIOS
  • CRISTIANO HORA DE OLIVEIRA FONTES
  • Data: 31/10/2019

  • Mostrar Resumo
  • O uso de métricas de software é uma importante etapa no processo de desenvolvimento de códigos, permitindo gerenciar projetos com maior qualidade por meio da quantificação de diferentes características que podem impactar, por exemplo, no custo do projeto e no planejamento das atividades necessárias em cada fase de execução. De maneira geral, essas métricas podem ser divididas em diretas e indiretas. Medidas diretas, amplamente utilizadas no desenvolvimento e na manutenção do software são essencialmente extraídas dos códigos-fonte como, por exemplo, o número de linhas escritas e o total de erros coletados em um determinado instante de tempo. As medidas indiretas, por outro lado, são obtidas a partir de uma interpretação do projeto, podendo incluir métricas diretas, a fim de avaliar a qualidade e a funcionalidade do software desenvolvido. Essas medidas foram desenvolvidas para serem aplicadas de maneira geral sobre diferentes projetos de software. Entretanto, a interpretação dessas métricas depende da experiência do gerente responsável pelo projeto (especialista de domínio) e deve considerar características específicas que estão relacionadas à equipe de desenvolvedores. Neste projeto de mestrado, utilizou-se técnicas de extração de características e padrões temporais em repositórios de versionamento de código-fonte visando: i) auxiliar o especialista na interpretação das \textit{releases}, principalmente ao trabalhar com grandes volumes de códigos-fonte; ii) a partir da interpretação das \textit{releases}, o especialista poderá melhorar a qualidade do código-fonte e do software em si; iii) monitorar a evolução do software à medida que novas \textit{releases} são submetidas aos repositórios. Para alcançar esses objetivos, uma nova abordagem foi desenvolvida, chamada \textit{Fuzzy Software Analyzer} (FSA), a qual permite organizar automaticamente \textit{releases} em repositórios de versionamento de código-fonte e, consequentemente, auxiliar especialistas de engenharia de software em interpretações de código-fonte mesmo sem grandes conhecimentos prévios do software produzido. A abordagem proposta foi validada ao analisar o repositório \textit{Linux Test Project}, comprovando sua utilidade e aplicabilidade em grandes repositórios de versionamento de código-fonte.


  • Mostrar Abstract
  • Software metrics have been widely adopted during the process of developing source code, allowing to manage projects with higher quality by quantifying different characteristics that may impact, for example, the project costs and the planned activities. In general, such metrics can be divided into direct and indirect. The direct ones are commonly used in software development and maintenance. Those measures are directly extracted from source codes such as, for instance, the number of written lines and the total number of errors collected in a given time instant. The indirect measures, on the other hand, are obtained after performing some interpretation of the project. They may also include direct metrics and were developed to be generally applied to different software projects. However, the interpretation of these metrics depends on the experience of the project manager (domain specialist) and must consider specific characteristics related to the team of developers. In this project, we present a new approach, referred to as Fuzzy Software Analyzer -- FSA, designed to automatically extract characteristics and patterns in software repositories, aiming at: i) assisting the expert during the task of interpreting metrics, especially by working on large volumes of source codes; and ii) monitoring the evolution of the software as new releases are submitted to the repositories. The proposed approach was assessed by analyzing the Linux Test Project repository, demonstrating its usefulness and applicability.

18
  • EDISON DE JESUS SANTOS
  • Process Smell : Um Catálogo de Bad Smells para Processos de Software.

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • ANA PATRICIA FONTES MAGALHÃES MASCARENHAS
  • IVAN DO CARMO MACHADO
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 28/11/2019

  • Mostrar Resumo
  • O uso sistemático de processo de software favorece a qualidade do produto gerado e orienta os passos para a construção do software aderente a qualidade esperada. Processos são comumente especificados e representados por linguagens de modelagem de processo de software conhecidas como Software Process Modeling Language (SPML). Dentre essas linguagens, a Software & Systems Process Engineering Metamodel (SPEM) se destaca por ser um perfil Unified Modeling Language (UML) para modelagem de processo de software e sistemas. Processos de software evoluem junto as necessidades da instituição e profissionais que o utilizam, necessitando serem monitorados e avaliados constantemente para manter as suas qualidades. Atualmente quatro formas de avaliações de processo são mais conhecidas entre as práticas da indústria e a literatura da engenharia de software, são elas: (i) avaliação do produto frente ao processo, (ii) verificações associadas a modelos de avaliação, (iii) validação através especificações formais e a (vi) visão sistêmica da engenharia de software centrada no ser humano. Embora seja possível aplicar qualquer uma das quatro formas de avaliações citados anteriormente para garantir a evolução e qualidade do processo de software, estas contam com algumas características que podem ser inconvenientes. Primeiramente estas formas de avaliações não realizam uma detecção precisa dos elementos do processo que potencialmente mais impactam negativamente a sua qualidade. Segundo estas avaliações se utilizam de dados obtidos após a execução do processo, assim só é possível verificar problemas no processo após a execução do mesmo, o que já pode acarretar alguns possíveis prejuízos.  Mais especificamente quando estas formas de avaliação são realizadas pelo uso de simulação requerem um conhecimento específico para a execução dos procedimentos da simulação e o uso de dados simbólicos que simulem os dados do processo após a sua execução. Apesar de SPML como o SPEM serem usadas para melhorar o entendimento de um processo, a especificação de um processo pode ser feita de forma inadequada ferindo fatores de qualidade do processo. Este fenômeno pode ser comparado ao conceito de bad smells que são problemas de design em código de software e neste trabalho será apresentado como process smell por se observar problemas no design do processo. Assim, um process smell na especificação de um processo pode gerar impactos negativos a qualidade do processo e por consequência afetar a qualidade do produto de software


  • Mostrar Abstract
  • The systematic use of the software process favors the quality of the generated product and guides the steps for the construction of the adherent software to the expected quality. Processes are commonly specified and represented by software process modeling languages known as Software Process Modeling Language (SPML). Among these languages, Software & Systems Process Engineering Metamodel (SPEM) stands out for being a Unified Modeling Language (UML) profile for modeling software processes and systems. Software processes evolve together with the needs of the institution and professionals who use it, needing to be monitored and evaluated constantly to maintain its qualities. Currently, four forms of process assessments are best known among industry practices and the software engineering literature, namely: (i) product assessment against the process, (ii) checks associated with assessment models, (iii) validation through formal specifications and (vi) systemic view of human-centered software engineering. Although it is possible to apply any of the four forms of assessments mentioned above to guarantee the evolution and quality of the software process, they have some characteristics that can be inconvenient. Firstly, these forms of evaluation do not accurately detect the elements of the process that potentially have the most negative impact on their quality. According to these evaluations, data obtained after the execution of the process are used, so it is only possible to verify problems in the process after the execution of the same, which may already cause some possible losses. More specifically, when these forms of evaluation are carried out using simulation, they require specific knowledge for the execution of the simulation procedures and the use of symbolic data that simulate the process data after its execution. Although SPML like SPEM are used to improve the understanding of a process, the specification of a process can be done inappropriately hurting factors of quality of the process. This phenomenon can be compared to the concept of bad smells, which are design problems in software code and in this work it will be presented as a process smell for observing problems in the process design. Thus, a process smell in the specification of a process can negatively impact the quality of the process and consequently affect the quality of the software product.

19
  • LUIS EMANUEL NEVES DE JESUS
  • FEATURE INTERACTION EM AMBIENTES INTELIGENTES: UMA ABORDAGEM BASEADA NA ANÁLISE DOS DADOS

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • IVAN DO CARMO MACHADO
  • CELIA GHEDINI RALHA
  • Data: 16/12/2019

  • Mostrar Resumo
  • O crescimento da Internet das Coisas (Internet of Things (IoT)) tem permitido que diversos dispositivos estejam conectados diariamente. Cada dispositivo isoladamente tem as suas regras de atua¸c˜ao e as suas peculiaridades que podem ser definidas por um especialista do dom´ınio. Muitos destes dispositivos s˜ao tamb´em configurados para atuarem em conjunto com outros dispositivos em ambientes controlados. O avan¸co da IoT torna mais dif´ıcil gerenciar quais destes dispositivos se conectam e/ou desconectam do ambiente. Mais ainda, quando na presen¸ca de um novo dispositivo, as regras previamente definidas para um ambiente controlado, podem ser violadas causando um comportamento inesperado no ambiente. Estes casos s˜ao chamados de intera¸c˜ao de caracter´ısticas (feature interaction). As features interactions ocorrem quando dois ou mais dispositivos/servi¸cos geram uma instabilidade no ambiente devido `a entrada ou sa´ıda de um dispositivo. Em ambientes dinˆamicos como a IoT, a inclus˜ao e exclus˜ao de dispositivos inviabiliza a manuten¸c˜ao destas regras por um especialista. De acordo com o mapeamento sistem´atico realizado, a maioria dos trabalhos utilizam regras definidas pelo especialista, sendo necess´ario um m´etodo que permita detectar estas features interactions automaticamente. Neste sentido, o presente trabalho tem por principal objetivo detectar as features interactions baseada na an´alise dos dados. Conjuntos de dados contendo feature interaction foram anotados com o intuito de obter um modelo para identificar as regras automaticamente. Experimentos foram realizados e os resultados demonstraram ind´ıcios sobre a detec¸c˜ao autom´atica de feature interaction em dom´ınios similares ou complementares.


  • Mostrar Abstract
  • The growth of the Internet of Things has allowed many devices to be daily connected. Each device has its own action rules and its peculiarities that can be monitored by a domain expert. Many of these devices are also configured to work in conjunction with other devices in controlled environments. With the advancement of the Internet of Things, it becomes more difficult to manage when devices are connected and/or disconnected from the environment. Moreover, with the presence of a new device, such as restricted usage rules for a controlled environment, may be violated and cause unexpected behavior in the environment. These cases are related to feature interaction. Feature Interaction occur when two or more devices/services generate instability in the environment due to input or output of a device. In dynamic environments such as IoT, device inclusion and exclusion makes it impossible for an expert to maintain these rules. According to the systematic mapping review performed, most works use the rules applied by the expert, requiring a method that allows to detect these feature interactions automatically. In this sense, the main objective of the present work is to detect features interacionista based on data analysis. Feature interaction data sets were annotated to obtain a model for automatically identifying rules. Experiments were performed and the results showed evidence of automatic detection of resource interactions in similar or complementary domains.

20
  • RUIVALDO AZEVEDO LOBÃO NETO
  • Uso de Redes de Função de Base Radial e Cadeias de Markov para detecção online de mudanças de conceito em fluxos contínuos de dados

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • GLORIA MILLARAY JULIA CURILEM SALDIAS
  • MARCELO MAGALHAES TADDEO
  • RICARDO ARAUJO RIOS
  • Data: 16/12/2019

  • Mostrar Resumo
  • A quantidade de informações produzidas por sistemas computacionais tem crescido de forma acentuada nas últimas décadas. Uma parcela expressiva dessas informações é produzida na forma de fluxos contínuos, que são sequências constantes e potencialmente infinitas de dados.
    Esses fluxos são, em sua maioria, não-estacionários, podendo sofrer alterações na distribuição dos dados ou no contexto do processo gerador. Estas alterações são denominadas mudanças de conceito e podem impactar negativamente a performance de modelos de aprendizado aplicados. Para mitigar este problema, pesquisadores vêm desenvolvendo métodos especializados na detecção de mudanças de conceito. Entretanto, os métodos propostos apresentam limitações ao serem aplicados em alguns cenários de fluxos contínuos como, por exemplo, a necessidade de rotulação por especialistas e a incapacidade de atender às restrições de tempo de processamento e de uso dos recursos computacionais desses cenários. Visando superar essas limitações, este trabalho apresenta um novo método de detecção de mudança de conceito, denominado RBFChain, baseado em Redes de Função de Base Radial (RBF) e Cadeias de Markov. Resumidamente, as redes RBF realizam, em sua camada intermediária, um processo de ativação que, implicitamente, produz grupos a partir das observações recebidas ao longo do tempo. De maneira complementar, as cadeias de Markov permitem modelar as transições de centro ocorridas em tais grupos de observações. Mudanças de conceito são, então, detectadas quando o centro ativo do agrupamento é alterado e a probabilidade da transição, no modelo markoviano, excede um limiar. O método apresentado se diferencia dos trabalhos existentes por detectar mudanças em tempo de execução, de forma computacionalmente eficiente e independente de rótulos. Para avaliar o método RBFChain como um detector de mudanças de conceito viável, uma análise de sensibilidade, precisão e tolerância ao ruído foi realizada usando conjuntos de dados sintéticos, e seus resultados foram comparados com os principais algoritmos disponíveis na literatura. Além disso, a técnica foi aplicada a um problema real de classificação de fixações e sacadas na atividade de rastreamento ocular. Com essa aplicação, foi possível investigar e propor uma solução para um problema relevante que envolve a área de Neurociência e Computação. Os resultados obtidos com os conjuntos de dados sintéticos sugerem que o RBFChain é estatisticamente melhor ou equivalente aos principais detectores presentes na literatura. Ademais, a técnica desenvolvida apresentou bons resultados quando aplicada ao problema de monitoramento ocular, sendo capaz de classificar fixações e sacadas em tempo real e com precisão equivalente ao estado da arte.


  • Mostrar Abstract
  • The amount of information produced by computer systems has grown dramatically in recent decades. A significant portion of this information is produced as continuous streams, which are constant and potentially infinite sequences of data.
    These flows are mostly non-stationary and may change in the distribution of data or in the context of the generating process. These changes are called concept changes and can negatively impact the performance of applied learning models. To mitigate this problem, researchers have been developing specialized methods for detecting concept changes. However, the proposed methods have limitations when applied in some continuous flow scenarios, such as the need for expert labeling and the inability to meet the processing time and computational resource constraints of these scenarios. Aiming to overcome these limitations, this paper presents a new concept change detection method called RBFChain, based on Radial Base Function Networks (RBF) and Markov Chains. Briefly, RBF networks perform, in their middle layer, an activation process that implicitly produces groups from the observations received over time.

    In addition, Markov chains allow us to model the center transitions that occur in such observation groups. Concept changes are then detected when the active center of the cluster changes and the probability of transition in the Markov model exceeds a threshold. The presented method differs from existing works by detecting changes in runtime, computationally efficient and independent of labels. To evaluate the RBFChain method as a viable concept change detector, a sensitivity, precision and noise tolerance analysis was performed using synthetic data sets, and their results were compared with the main algorithms available in the literature. In addition, the technique was applied to a real fixation and saccade classification problem in eye tracking activity. With this application, it was possible to investigate and propose a solution to a relevant problem involving the area of Neuroscience and Computation. The results obtained with the synthetic data sets suggest that the RBFChain is statistically better or equivalent to the main detectors present in the literature. Moreover, the developed technique presented good results when applied to the ocular monitoring problem, being able to classify fixations and balconies in real time and with precision equivalent to the state of the art.

21
  • WITÃ DOS SANTOS ROCHA
  • SIMILARIDADE SEMÂNTICA DE ATRIBUTOS PARA DADOS EM NUVEM: UM ESTUDO DE CASO NO MIDAS

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • FRANK AUGUSTO SIQUEIRA
  • LAIS DO NASCIMENTO SALVADOR
  • Data: 16/12/2019

  • Mostrar Resumo
  • Grande quantidade de dados heterogêneos produzidos pelas redes sociais, dispositivos conectados na Internet e aplicações web vem sendo gerados, armazenados e gerenciados em formato diferentes nos níveis de serviços Data-as-a-Service (DaaS ou Dado como um Serviço) e Database-as-a-Service (DBaaS ou Bancos de Dados como um Serviço) distintos. Tais soluções fornecem os dados como serviços sob demanda via Application Programming Interface (API). Para acessar esses serviços distribuídos entre as nuvens, os usuários enfrentam, na maioria dos casos, problemas de ambiguidade de dados. Nesse sentido é necessário prover uma solução automática que sirva como camada intermediária para estabelecer a comunicação entre os níveis de serviços SaaS e DaaS/DBaaS, de modo que resolva esses problemas evitando a execução de tarefas complexas e trabalhosas para acessar esses dados. Esta solução permite que os consumidores no nível de serviço SaaS acessem seus dados armazenados em diferentes níveis de serviços DaaS por meio de uma única consulta. A camada intermediária denominada Middleware for Interoperability Between SaaS and DaaS (MIDAS) fornece essa solução aos usuários de uma forma transparente. Com o tempo, as atualizações dos parâmetros dos níveis de serviços DaaS podem afetar semanticamente os termos das consultas configurados (automaticamente ou não) nos aplicativos nos níveis de serviços SaaS. Para garantir que os consumidores da nuvem continuem acessando os dados do DaaS, recomenda-se uma abordagem que garanta semelhança semântica entre os parâmetros do DaaS para manter a confiabilidade da solicitação original. Este trabalho propõe um método com duas avaliações de similaridade: (i) a contagem de arestas (Cosseno e Jaccard) para medir a semelhança entre dois parâmetros e a Information Content (IC) para medir a semelhança com base no conhecimento dos parâmetros no corpus da WordNet. O método IC é utilizado no modelo com o objetivo de completar as limitações do método de contagem de arestas. Para escolher os métodos de contagem de arestas (Cosseno e Jaccard), um ambiente com oito algoritmos de medida de distância, vinte e dois parâmetros autênticos de onze provedores de DaaS e cinco situações possíveis de alteração de parâmetros foram simulados. Como prova de conceito, este modelo é implementado no MIDAS para avaliar três critérios: sobrecarga, desempenho e corretude. Os resultados dos experimentos mostraram que há uma primeira direção para fornecer interoperabilidade semântica entre SaaS e DaaS no MIDAS.


  • Mostrar Abstract
  • Large amounts of heterogeneous data produced by social networks, Internet-connected devices, and web applications has been stored and managed in different formats at distinct service levels Data-as-a-Service (DaaS) and Database-as-a-Service (DBaaS). This solutions provides on demand services via Application Programming Interface (API). To access these distributed cloud services, users in most cases face data ambiguity issues. To solve these problems and to avoid performing complex and laborious tasks to access this data, an automated solution that serves as an intermediate layer for establishing communication between SaaS and DaaS / DBaaS service levels is required. This solution allows SaaS service level consumers to access their data stored at different DaaS service levels through a single query. The middleware layer called Middleware for Interoperability Between SaaS and DaaS (MIDAS) provides this solution to users in a transparent way. Over time, DaaS service level parameter updates can semantically affect query terms (that are automatically or not automatically) configured for applications at SaaS service levels. To ensure that cloud consumers continue to access DaaS data, an approach that ensures semantic similarity between DaaS parameters to maintain the reliability of the original request is recommended. Our work proposes a method (SM) with two similarity ways: (i) edge counting (Cosine and Jaccard) to measure the similarity between two attributes and the Information Content(IC) to measure similarity based on knowledge through a WordNet corpus. The IC method is used in the model to fill the limitations of the edge counting method. To choose the edge count methods (Cosine and Jaccard), an environment with eight distance measurement algorithms, twenty-two authentic parameters from eleven DaaS providers, and five possible parameter change situations was simulated. As a proof of concept, our model is implemented in MIDAS to evaluate three criteria: overload, performance and correctness. The results of our experiments showed that we are in the first direction to provide semantic interoperability between SaaS and DaaS in MIDAS.

22
  • ROSELANE SILVA FARIAS
  • DESIGNING SMART CITY MOBILE APPLICATIONS: A GROUNDED THEORY

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • EDUARDO SANTANA DE ALMEIDA
  • ELISA YUMI NAKAGAWA
  • Data: 20/12/2019

  • Mostrar Resumo
  • A comunidade de arquitetura de software tem desempenhado um papel fundamental no desenvolvimento de software móvel. Muitas das ideias utilizadas no design destes sistemas vieram da arquitetura de software tradicional e têm contribuído para o que a computação móvel tem se tornado: uma tendência poderosa, adaptável, pervasiva e robusta. Ao mesmo tempo, aplicações móveis no domínio de cidades inteligentes é uma área muito desafiadora pois precisam lidar com limitações de recursos dos dispositivos móveis, um conjunto de requisitos críticos para o domínio de cidade inteligentes, além de um ambiente em constante mudança, que nem sempre pode ser confiável. Uma vez que não existe um modelo de design sistemático para este tipo de software, eles recorrem a decisões de design alternativas que atendam a todas as demandas, o que requer tempo e experiência. For esta razão, este estudo tem como objetivo investigar os aspectos mais importantes da arquitetura de software de aplicações móveis no domínio de cidades inteligentes. Visando mitigar a falta de informações verificadas sobre o design de aplicativos móveis, realizamos um estudo de caso múltiplo com 9 aplicativos de 4 grupos de desenvolvimento diferentes para construir uma teoria fundamentada. Desses aplicativos, 6 foram submetidos a uma engenharia reversa para expor a arquitetura de cada aplicativo. Com base em todos os dados, uma teoria fundamentada foi construída para explicar o processo de design dos aplicativos selecionados constrói um aplicativo com características desejadas. A teoria fundamentada desenvolvida através desta pesquisa e o processo pelo qual ela foi construída foram submetidos a um processo de avaliação baseado na literatura de teoria fundamentada em Engenharia de Software. Essa avaliação validou o processo experimental e verificou que os resultados seguiram o uso correto do processo experimental. Na avaliação da teoria também foi abordada algumas das ameaças `a validade, como a influência do pesquisador. Para mitigar ainda mais as ameaças, esse processo incluiu uma coleta de dados de projetos adicionais. A teoria resultante oferece explicações sobre como as equipes de engenharia de software tem projetado aplicativos móveis para o domínio de cidades inteligentes. Esse conhecimento servirá como base para uma melhor compreensão dos fenômenos e avanços para definições de processos de desenvolvimento e design mais eficazes.


  • Mostrar Abstract
  • The software architecture community has played a crucial role in the development of mobile software. Many of the ideas used in the design of these systems came from traditional software architecture and those ideas have contributed to mobile computing becoming ubiquitous. Mobile applications in the context of smart cities are very challenging since they need to operate within the power, processor, and capacity limitations of mobile devices, the exacting demands of life critical smart city requirements, and the constantly changing and exposed environment which may not always be trusted. Since there are no widely accepted design models for this type of software, developers must resort to primitive design decisions to meet all the needs of these applications, which takes additional time and expertise. For this reason, this study aims to investigate the design process for mobile applications in the context of smart cities. In order to address the lack of verified information about designing mobile apps, we conducted a multi-case study with 9 applications from 4 different development groups to build a grounded theory. The applications were reverse engineered to expose the architecture of each application. Based on all the data, an emergent grounded theory was constructed to explain how the selected design process produces an app with the desired characteristics. The grounded theory developed through this research, and the process by which the theory was developed, were subjected to an evaluation process developed from the grounded theory literature. That evaluation validated the experimental process and verified that the experimental results followed from the correct use of the experimental process. The evaluation also addressed some of the threats to validity such as investigator influence. To further ensure validity this process included gathering data from additional projects using the experimental process. The resulting theory offers explanations for how software engineering teams design mobile apps for smart cities. This knowledge will serve as a basis to further understand the phenomena and advances towards more effective design and development process definitions.

23
  • JURACY BERTOLDO SANTOS JÚNIOR
  • DESENVOLVIMENTO E VALIDAÇÃO DE MODELOS PREDITIVOS PARA EPIDEMIA DE MALÁRIA.

  • Orientador : MARCOS ENNES BARRETO
  • MEMBROS DA BANCA :
  • MARCOS ENNES BARRETO
  • TATIANE NOGUEIRA RIOS
  • VANDERSON DE SOUZA SAMPAIO
  • Data: 20/12/2019

  • Mostrar Resumo
  • As técnicas de mineração de dados permitem extrair relações e características presentes nos dados que não são facilmente perceptíveis, especialmente em cenários envolvendo grandes volumes de dados. Estas técnicas permitem agrupar e classificar os dados, identificar padrões e exceções, bem como estabelecer relações de associação entre dados distintos. A análise preditiva é uma sub-área da mineração de dados que utiliza técnicas de aprendizado de máquina para a implementação de modelos analíticos de predição. Tais modelos baseiam-se no conhecimento prévio dos dados (análise descritiva) para projetar possíveis futuros acontecimentos acerca do contexto sendo analisado. Este trabalho é parte integrante de um projeto de pesquisa que objetiva integrar dados de notificação de malária presentes em diferentes fontes de informação e desenvolver modelos de análise preditiva sobre estes dados. Especificamente, este trabalho envolve o estudo de diferentes técnicas de predição baseadas em modelos e em dados e, a partir deste estudo, o desenvolvimento de modelos preditivos para o cenário epidemiológico da malária no Brasil. Quatro estudos de casos envolvendo dados socioeconômicos e epidemiológicos são discutidos como prova de conceito dos modelos propostos. Os resultados mostram que os modelos desenvolvidos possuem acurácia variável entre 60% e 85% para os cenários testados, com janelas de predição de até 3 semanas e considerando a grande variação observada nos casos de malária nos últimos quatro anos


  • Mostrar Abstract
  • Data mining techniques allow extracting relationships and features present in data that are not easily noticeable, especially in scenarios involving large volumes of data. These techniques allow grouping and classify data, identify patterns and exceptions, as well as establish association relationships between different data. THE Predictive analytics is a sub-area of data mining that uses machine learning techniques to implement of predictive analytical models. Such models are based on prior knowledge of the data (descriptive analysis) to design possible future events about the context being analyzed. This work is an integral part of a research project which aims to integrate malaria reporting data from different sources of information and develop models of predictive analysis on these data. Specifically, this work involves the study of different prediction techniques based on in models and data and, based on this study, the development of predictive models for the epidemiological scenario of malaria in Brazil. Four case studies involving socioeconomic and epidemiological data are discussed as evidence of concept of the proposed models. The results show that the models developed have an accuracy variable between 60% and 85% for the tested scenarios, with prediction windows of up to 3 weeks and considering the large variation observed in the malaria cases in the last four years

24
  • RICARDO BRASIL TEIXEIRA
  • Recursos Compartilhados em Sistemas de Tempo Real Multiprocessados Escalonados por RUN

  • Orientador : GEORGE MARCONI DE ARAUJO LIMA
  • MEMBROS DA BANCA :
  • ALIRIO SANTOS DE SA
  • ERNESTO DE SOUZA MASSA NETO
  • GEORGE MARCONI DE ARAUJO LIMA
  • PAUL DENIS ETIENNE REGNIER
  • Data: 20/12/2019

  • Mostrar Resumo
  • Um sistema de tempo real crítico é aquele para o qual todas as suas tarefas devem cumprir seus prazos de execução (deadlines) enquanto o sistema estiver executando. Este requisito faz do algoritmo de escalonamento um elemento chave para a correção do sistema. Idealmente, o algoritmo de escalonamento deve ser efciente, para não causar sobrecargas adicionais, e ótimo, garantindo que nenhum deadline de suas tarefas seja perdido sempre que isso puder ser assegurado por algum algoritmo de escalonamento. RUN (Reduction to Uniprocessor) é um algoritmo capaz de escalonar efcientemente e de maneira ótima um conjunto de tarefas periódicas em uma plataforma com múltiplos processadores, quando as tarefas não compartilham outros recursos que não os processadores. Embora já tenha sido demonstrado que o RUN é compatível com o compartilhamento de recursos, a única solução existente impede preempções no acesso aos recursos compartilhados. Ao contrário desta abordagem, que pode ser considerada muito restritiva devido à sua baixa escalonabilidade, utilizamos o MrsP (Multiprocessor resource sharing Protocol) como um mecanismo de compartilhamento de recursos mais fexível. Fazer as regras do RUN e MrsP compatíveis entre si foi, portanto, nosso principal objetivo. A solução derivada foi implementada no Linux Textbed for Multiprocessor scheduling in Real-Time systems (LitmusRT), um sistema operacional de tempo real baseado em Linux. Propusemos uma nova heurística para empacotamento das tarefas e realizamos avaliações experimentais comparando nossa solução com a existente. Os resultados obtidos mostraram que a solução proposta apresentou melhores resultados em escalonabilidade e no número de migrações e preempções.


  • Mostrar Abstract
  • A hard real-time system can be de􏰌ned as the one for which all its tasks must meet their deadlines whenever the system runs. This requirement makes the scheduling algorithm a key element for system correctness. Ideally, the scheduling algorithm employed must both exhibit low overhead (e􏰎ciency) and ensure that no task deadline is missed whenever this can be ensured by some scheduling algorithm (optimality). RUN (Reduction to Unipro- cessor) is an algorithm capable of e􏰎ciently and optimally scheduling a set of strictly periodic tasks on a multiprocessor platform when tasks do not share any resources but processors. Although it has already been shown that RUN is compatible with resource sharing, the only existing solution prevents preemptive access to shared resources. Unlike this approach, which can be considered too restrictive due to its poor schedulability, we used MrsP (Multiprocessor resource sharing Protocol) as a more 􏰍exible resource sharing mechanism. Making the rules of both RUN and MrsP compatible to each other was thus our main goal. The derived solution was implemented on Linux Textbed for Multi- processor Scheduling in Real-Time systems (LitmusRT), namely a Linux-based real-time operating system. We proposed a new task packaging heuristic and performed experi- mental evaluations comparing our solution with the existing one. The results showed that the proposed solution presented better results in terms of schedulability and number of migrations and preemptions.

Teses
1
  • CRESCENCIO RODRIGUES LIMA NETO
  • An Approach for Recovering Architectural Variability from Source Code

  • Orientador : CHRISTINA VON FLACH GARCIA CHAVEZ
  • MEMBROS DA BANCA :
  • ALESSANDRO FABRICIO GARCIA
  • CLAUDIO NOGUEIRA SANT ANNA
  • IVAN DO CARMO MACHADO
  • MANOEL GOMES DE MENDONCA NETO
  • THELMA ELITA COLANZI
  • Data: 19/02/2019

  • Mostrar Resumo
  • Software Product Line Engineering (SPLE) has been widely adopted for applying systematic reuse in families of systems. Given the high upfront investment required for SPLE adoption, organizations commonly start with more opportunistic reuse approaches (e.g., a single system that they clone and modify). However, maintenance problems appear when managing a large number of similar systems where each of them implements and evolves particular characteristics. One viable solution to solve this issue is to migrate to SPLs using an extractive approach. This initiative, in its early phases, includes the definition of a Product Line Architecture (PLA) to support the derivation of product variants and also to allow customization according to customers' needs. In this way, the systematic use of Software Architecture Recovery (SAR) techniques enables PLA recovery and keeps the PLA aligned with development. Our objective is to provide an automatic approach to recover PLAs and guidelines to support the PLA recovery. We gathered knowledge by means of literature reviews and exploratory studies to characterize the state-of-the-art and identify research gaps on SAR techniques and tools that support the recovery of architectural variability information from source code for a family of products. The use of SAR techniques and tools to recover a PLA that documents variability information at the architecure level may address issues related to SPL adoption, design and evolution. Unfortunately, few studies investigate PLA recovery and also provide empirical evaluation. One of the main issues in the extractive approach is the explosion of the variability in the PLA representation. Our approach is based on identifying variability on architectural level by extracting information from variants' source code. To evaluate our approach, we performed a set of empirical studies.


  • Mostrar Abstract
  • Software Product Line Engineering (SPLE) has been widely adopted for applying systematic reuse in families of systems. Given the high upfront investment required for SPLE adoption, organizations commonly start with more opportunistic reuse approaches (e.g., a single system that they clone and modify). However, maintenance problems appear when managing a large number of similar systems where each of them implements and evolves particular characteristics. One viable solution to solve this issue is to migrate to SPLs using an extractive approach. This initiative, in its early phases, includes the definition of a Product Line Architecture (PLA) to support the derivation of product variants and also to allow customization according to customers' needs. In this way, the systematic use of Software Architecture Recovery (SAR) techniques enables PLA recovery and keeps the PLA aligned with development. Our objective is to provide an automatic approach to recover PLAs and guidelines to support the PLA recovery. We gathered knowledge by means of literature reviews and exploratory studies to characterize the state-of-the-art and identify research gaps on SAR techniques and tools that support the recovery of architectural variability information from source code for a family of products. The use of SAR techniques and tools to recover a PLA that documents variability information at the architecure level may address issues related to SPL adoption, design and evolution. Unfortunately, few studies investigate PLA recovery and also provide empirical evaluation. One of the main issues in the extractive approach is the explosion of the variability in the PLA representation. Our approach is based on identifying variability on architectural level by extracting information from variants' source code. To evaluate our approach, we performed a set of empirical studies.

2
  • LARISSA ROCHA SOARES
  • Feature Interactions in Highly Configurable Systems: A Dynamic Analysis Approach with Varxplorer

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • RODRIGO ROCHA GOMES E SOUZA
  • EDUARDO SANTANA DE ALMEIDA
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • MARCIO DE MEDEIROS RIBEIRO
  • EDUARDO MAGNO LAGES FIGUEIREDO
  • Data: 21/02/2019

  • Mostrar Resumo
  • Sistemas altamente configuráveis (também conhecidos como linhas de produtos de software) fornecem oportunidades significativas de reuso, uma vez que eles adaptam variantes do sistema com base em um conjunto de features. Essas features podem interagir de formas indesejadas, resultando em falhas. Além disso, a maioria das interações não é facilmente detectável, já que especificações de interações entre features geralmente não são definidas, especificadas e documentadas em um projeto de software.O problema da interação entre features tem sido um assunto desafiador por anos. Apesar da existência de estudos que mapeiam essas interações, ainda não há muitos trabalhos sobre a compreensão de estratégias, atividades, artefatos e lacunas de pesquisa para interações em sistemas configuráveis. Desta forma, esta tese provê inicialmente um mapeamento sistemático de estudos por meio da análise de 40 trabalhos, os quais foram classificados de acordo com os estágios do ciclo de vida de desenvolvimento e a solução de interação apresentada (detecção ou resolução de interações). Análises recentes têm focado na detecção de erros de interação de features a partir de especificações globais, ou seja, especificações que todas as configurações de um sistema configurável precisam cumprir. No entanto, especificações no nível de features ou interações são geralmente negligenciadas e raramente documentadas. Neste cenário, muitas abordagens não conseguem detectar todos os problemas de comportamento do sistema, especialmente erros não cobertos por especificações globais e erros que não resultam em uma falha ou outro comportamento facilmente observável.Ao invés de partir de um conjunto de especificações como a maioria das abordagens, propomos inspecionar as interações de features `a medida que são detectadas e classificá-las gradativamente como benignas ou problemáticas. Nossa abordagem e ferramenta, VarXplorer, fornece um processo de inspeção que ajuda os desenvolvedores a distinguir as interações intencionais das interações que podem levar a bugs. Usamos a execução variacional para observar interações internas ao fluxo de controle e fluxo de dados de sistemas altamente configuráveis e propomos gráficos de interação de features como uma representação concisa de todas as interações entre pares de features. Por fim, realizamos dois estudos empíricos para avaliar como o processo de inspeção e os gráficos de interação de features podem ajudar os desenvolvedores a identificar e entender interações suspeitas. O primeiro é um experimento controlado que investiga e compara a capacidade dos desenvolvedores ao identificar interações suspeitas com e sem o VarXplorer. O segundo foca no processo iterativo de execução de casos de teste e como ele proporciona uma análise de interações mais rápida e objetiva.


  • Mostrar Abstract
  • Highly configurable systems (as known as software product lines) provide significant reuse opportunities by tailoring system variants based on a set of features. Those features can interact in undesired ways which may result in faults. However, most interactions are not easily detectable as specifications of feature interactions are usually missing. The feature interaction problem has been a challenging subject for years. Despite the existence of studies to map out available evidence on feature interaction for single systems development, there is a lack of understanding on common strategies, activities, artifacts and research gaps for interactions in configurable systems. Thus, this thesis initially gathered systematic mapping study evidence by analyzing 40 feature interaction primary studies, which were classified according to development lifecycle stages and the feature interaction solution presented, either detection, resolution or general analysis. Recent analyses focused on detecting feature interaction bugs from global specifications, i.e., specifications that all configurations of a configurable system need to fulfill, such as requiring that each configuration does not crash. However, specifications at the feature level are usually missing and, then, many approaches may not detect all incorrect system behavior, specially bugs not covered by global specifications and bugs that do not result in a crash or other easily observable behavior. Instead of starting from a set of specifications like most approaches, we propose to inspect feature interactions as they are detected and incrementally classify them as benign or problematic. We aim to provide an inspection process that helps developers to distinguish intended interactions from interactions that may lead to bugs. We use variational execution to observe internal interactions on control and data flow of highly configurable systems. To help developers understand these interactions, we propose feature-interaction graphs as a concise representation of all pairwise interactions. We provide two analyses that provide additional details about interactions, namely suppress and require interactions. Our approach and tool, VarXplorer, provide an iterative analysis of feature interactions allowing developers to focus on suspicious cases. Finally, we perform two empirical studies to evaluate the inspection process and how feature interaction graphs can help users identify suspicious interactions. The first study is a controlled experiment to investigate and compare the ability of users when identifying suspicious interactions with and without VarXplorer, in a setting composed of different systems, performing different tasks. The second study focuses on the iterative process of test cases execution and how it can be used for a faster and more objective feature interaction analysis.

    Sistemas altamente configuráveis (também conhecidos como linhas de produtos de software) fornecem oportunidades significativas de reuso, uma vez que eles adaptam variantes do sistema com base em um conjunto de features. Essas features podem interagir de formas indesejadas, resultando em falhas. Além disso, a maioria das interações não é facilmente detectável, já que especificações de interações entre features geralmente não são definidas, especificadas e documentadas em um projeto de software.O problema da interação entre features tem sido um assunto desafiador por anos. Apesar da existência de estudos que mapeiam essas interações, ainda não há muitos trabalhos sobre a compreensão de estratégias, atividades, artefatos e lacunas de pesquisa para interações em sistemas configuráveis. Desta forma, esta tese provê inicialmente um mapeamento sistemático de estudos por meio da análise de 40 trabalhos, os quais foram classificados de acordo com os estágios do ciclo de vida de desenvolvimento e a solução de interação apresentada (detecção ou resolução de interações). Análises recentes têm focado na detecção de erros de interação de features a partir de especificações globais, ou seja, especificações que todas as configurações de um sistema configurável precisam cumprir. No entanto, especificações no nível de features ou interações são geralmente negligenciadas e raramente documentadas. Neste cenário, muitas abordagens não conseguem detectar todos os problemas de comportamento do sistema, especialmente erros não cobertos por especificações globais e erros que não resultam em uma falha ou outro comportamento facilmente observável.Ao invés de partir de um conjunto de especificações como a maioria das abordagens, propomos inspecionar as interações de features `a medida que são detectadas e classificá-las gradativamente como benignas ou problemáticas. Nossa abordagem e ferramenta, VarXplorer, fornece um processo de inspeção que ajuda os desenvolvedores a distinguir as interações intencionais das interações que podem levar a bugs. Usamos a execução variacional para observar interações internas ao fluxo de controle e fluxo de dados de sistemas altamente configuráveis e propomos gráficos de interação de features como uma representação concisa de todas as interações entre pares de features. Por fim, realizamos dois estudos empíricos para avaliar como o processo de inspeção e os gráficos de interação de features podem ajudar os desenvolvedores a identificar e entender interações suspeitas. O primeiro é um experimento controlado que investiga e compara a capacidade dos desenvolvedores ao identificar interações suspeitas com e sem o VarXplorer. O segundo foca no processo iterativo de execução de casos de teste e como ele proporciona uma análise de interações mais rápida e objetiva.

3
  • ROBESPIERRE DANTAS DA ROCHA PITA
  • CLUSTERING CATEGORICAL DATA USING THE FREQUENCY FACTOR

  • Orientador : MARCOS ENNES BARRETO
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • MARCOS ENNES BARRETO
  • MAYCON LEONE MACIEL PEIXOTO
  • PAULO HENRIQUE FERREIRA DA SILVA
  • SPIROS DENAXAS
  • Data: 11/12/2019

  • Mostrar Resumo
  • Agrupamento de dados (clustering) refere-se a um método de aprendizado de máquina não-supervisionado geralmente usado quando não há dados rotulados disponíveis. Essa classe de modelos de aprendizado de máquina é usada para recuperar informações dividindose os dados em grupos coerentes e distintos. Os algoritmos de agrupamento de dados particional e hierárquico mais populares são o K-means e o AGNES, respectivamente. Contudo, novas medidas de similaridade e sumarização de dados devem ser utilizadas para garantir que estes algoritmos consigam lidar com dados categóricos. Variáveis categóricas reúnem várias escalas com um conjunto finito e moderado de valores, tais como variáveis nominais, variáveis ordinais, variáveis de intervalo discreto e variáveis contínuas agrupadas em poucas categorias. Como uma extensão de K-means, o K-modes visa agrupar dados categóricos usando a moda para atualizar os centróides dos grupos (clusters), bem como uma medida de sobreposição para definir a distância entre objetos e centróides. A mesma lógica pode ser utilizada para estender o AGNES. Este trabalho propõe o fator de frequência como uma nova medida baseada em probabilidade para atualizar os centróides em algoritmos de agrupamento. Os algoritmos K-modes e AGNES foram adaptados para usar o Fator de Frequência, resultando no K-fact e no MARI, respectivamente. O esquema de validação empregado usou o índice Rand do critério externo de validação para mensurar o desempenho do particionamento alcançado pelos algoritmos. Os algoritmos estendidos pelo fator de frequência conseguiram empatar ou superar os algoritmos Kmodes, AGNES e ROCK. Além disso, eles podem ser considerados como alternativas competitivas para o agrupamento de dados categóricos.


  • Mostrar Abstract
  • Data clustering refers to an unsupervised machine learning method, often used when no labeled data is available. This class of machine learning models is used to retrieve information by splitting the data into coherent and contrasted groups. The most popular partitional and hierarchical clustering algorithms are K-means and AGNES, respectively. Nevertheless, to make either K-means and AGNES suitable to categorical data, some extensions are required in terms of similarity measures to be used and central position measures to update centroids. Categorical variables bring together several scales with a finite and moderate set of values, such as nominal variables, ordinal variables, discrete interval variables, and continuous variables grouped into few categories. As an extension of K-means, K-modes aims to cluster categorical data by using the mode to update clusters’ centroids, as well as an overlap measure to define the distance between objects and centers. The extension of AGNES can follow the same logic. This work proposes the Frequency Factor, a new probability-based measure, specifically forged to update the centroids on clustering algorithms. The use of Frequency Factor to edit both K-means and AGNES yielded two proposed alternatives, K-fact and MARI, respectively. In our validation scheme, we used the Rand index from external validity criteria to measure the clustering performance and compare both algorithms. Those algorithms extended by Frequency Factor outperform or tie with K-modes, AGNES, and ROCK and can be used as a competitive alternative to cluster nominal-categorical variables.

2018
Dissertações
1
  • NAILTON VIEIRA DE ANDRADE JUNIOR
  • Uma Plataforma para Descoberta, Implantação e Autoconfiguração de Serviços na Web das Coisas

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • FREDERICO ARAUJO DURAO
  • ARTUR HENRIQUE KRONBAUER
  • Data: 12/01/2018

  • Mostrar Resumo
  • A evolução da computação embarcada permitiu o surgimento de dispositivos que se conectam à Internet, fomentando a Internet das Coisas. Nessa mesma direção, a Web das Coisas propõe disponibilizar esses dispositivos como recursos direcionados ao desenvolvimento de aplicações, utilizando os protocolos e os padrões da Web. A variedade de dispositivos que podem se conectar à Web das Coisas demanda tanto esforçode implementação de serviços específicos para acesso a cada dispositivo, como métodos que permitam a sua utilização por humanos e por máquinas. Nesse contexto, este trabalho propõe a configuração e a implantação automáticas de dispositivos que figurem como recursos na Web das Coisas, por meio de modelos que mapeiem suas funcionalidades. As soluções existentes expõem Serviços Web RESTFul embutidos em dispositivos físicos, tornando a estratégia não agnóstica em relação ao protocolo de aplicação e comprometendo a manutenibilidade do serviço. A solução proposta neste trabalho relaciona os padrões e as tecnologias da Web já existentes para o desenvolvimento de uma plataforma livre e integrada, com as seguintes funcionalidades: a descoberta dinâmica dos dispositivos ao se conectarem a uma rede local, utilizando-se de protocolo de descoberta de serviço de rede; a geração automática de Serviços Web RESTFul para implantação de dispositivos na Web das Coisas; e uma abordagem para implementação prática de descrição semântica em dispositivos físicos, com o objetivo de prover a publicação de dispositivos semanticamente enriquecidos no contexto da Web das Coisas. Por fim, são realizadas avaliações em nível de rede, de serviço de aplicação da plataforma desenvolvida.


  • Mostrar Abstract
  • The evolution of embedded computing has enabled the emergence of devices that connect to the Internet, fostering the Internet of Things. In the same direction, the Web of Things proposes to make these devices available as resources directed to the development of applications, using the protocols and the Web standards. The variety of devices that can connect to the Web of Things demands both the effort of implementation of specific services for access to each device, as methods that allow its use by humans and machines. In this context, this work proposes the automatic configuration and deployment of devices that appear as resources in the Web of Things, through models that map their functionalities. Existing solutions expose RESTFul Web Services built into physical devices, making the strategy non-agnostic over the application protocol and compromising service maintainability. The solution proposed in this work relates the existing Web standards and technologies for the development of a free and integrated platform, with the following functionalities: the dynamic discovery of the devices when connecting to a local network, using discovery protocol of network service; the automatic generation of RESTFul Web Services for deployment of devices in the Web of Things; and an approach to practical implementation of semantic description in physical devices, in order to provide the publication of semantically enriched devices in the context of the Web of Things. Finally, network-level assessments are carried out, from application service of the developed platform.
2
  • GEORGE CAIQUE GOUVEIA BARBOSA
  • Utilizando Features Linguísticas Genéricas para Classificação de Triplas Relacionais em Português, Inglês e Espanhol

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • VLÁDIA CÉLIA MONTEIRO PINHEIRO
  • Data: 06/02/2018

  • Mostrar Resumo
  • O aumento da quantidade de textos gerados diariamente na web tem tornado mais difcil
    a analise e extrac~ao de informac~oes desses dados. Alem disso, a in nidade de formas com
    que as pessoas podem se expressar utilizando linguagem natural aumenta a complexidade
    do desenvolvimento de ferramentas computacionais para extrair informac~ao util de textos.
    A Extrac~ao da Informac~ao (EI) tem o papel de automatizar a transformac~ao de corpus
    textual em informac~oes estruturadas. Informac~oes extradas de textos s~ao estruturadas
    de diversas formas. A tripla relacional do tipo (sujeito-predicado-objeto) e a estrutura
    mais utilizada na EI. A tarefa de EI pode ser classi cada em tradicional e aberta. A
    EI tradicional faz extrac~oes a partir de um conjunto limitado de predicados. Ja na
    Extrac~ao de Informac~ao Aberta (EIA), as relac~oes n~ao s~ao limitadas por um conjunto
    fechado de predicados, pois, um dos objetivos dessa tarefa e a independ^encia de domnio.
    A EIA pode ser divida em duas etapas: (i) extrac~ao e (ii) classi cac~ao. Metodos de
    EIA presentes na literatura utilizam func~oes lingusticas espec cas do idioma alvo em
    suas etapas de classi cac~ao. Recursos lingusticos para o Ingl^es s~ao mais so sticados do
    que para os demais idiomas, aumentando consequentemente o desa o da OIE para estes
    idiomas. A maior parte desses metodos e baseado no ingl^es. Assim, a proposta desse
    trabalho e, na etapa de classi cac~ao, utilizar um conjunto de features multi-idioma para
    classi cac~ao de triplas relacionais, contribuindo para independ^encia de idioma na EIA.
    Experimentos foram realizados para comparar as features multi-idioma com as propostas
    pelo ReVerb. Os resultados obtidos evidenciaram que, ao nvel de 5% de signi c^ancia, as
    features multi-idioma apresentaram desempenho superior para o ingl^es (p<0.01). Apos
    traduzir o parte das features do ReVerb, ambos os conjuntos obtiveram desempenho
    semelhante em Espanhol (p=0.76) e Portugu^es (p=0.07).


  • Mostrar Abstract
  • The increase in the amount of text generated daily on the web has made it more difficult the analysis and extra information of these data. In addition, the number of forms with that people can express themselves using natural language increases the complexity the development of computational tools to extract useful information from texts. Extra Information (EI) has the role of automating the transformation of corpus textual information in structured information. Extra informations of texts are structured in different ways. The relational triple of the type (subject-predicate-object) and structure most used in IE. The EI task can be classified as traditional and open. THE The traditional one makes extra cations from a limited set of predicates. Haha In addition to Open Information (EIA), the relationships are not limited by a set of therefore, one of the objectives of this task and the independence of the domain. The EIA can be divided into two stages: (i) extra and (ii) classi cation. M etodos of EIA present in the literature use spe- cific language functions of the target language in their stages of classi - cation. Language resources for English are more the other languages, thereby increasing the OIE's languages. Most of these methods are based on English. Therefore, the work, and in the classi cation stage, use a set of multi-language features to classi cation of relational triples, contributing to language independence in EIA. Experiments were performed to compare the multi-language features with the proposals by ReVerb. The results obtained showed that, at the 5% level of significance, the multi-language features presented superior performance for English (p <0.01). After the to translate the part of the ReVerb features, both sets achieved similar in Spanish (p = 0.76) and Portuguese (p = 0.07)..

3
  • MADSON RODRIGUES DE ARAUJO
  • Predictive-based DBA algorithms to enable LR-PONs to support fronthaul traffic in C-RAN deployments.
  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • DIVANILSON RODRIGO DE SOUZA CAMPELO
  • ANDRE COSTA DRUMMOND
  • Data: 20/04/2018

  • Mostrar Resumo
  • O tráfego de dados de dispositivos móveis aumentou continuamente nos últimos anos e a previsão de crescimento é de cerca de 50% ao ano até 2021. Esse crescimento na demanda de dados gerou muitos problemas de custo e receita para as operadoras de rede manterem e ampliarem essas redes. A literatura abordou as redes de acesso por rádio em nuvem (C-RAN) como uma arquitetura de grande potencial para as operadoras de rede serem capazes de oferecer altas taxas de dados e reduzir gastos de capital (CAPEX) e despesas operacionais (OPEX). A principal ideia da C-RAN é centralizar o processamento de banda básica de estações rádio base na nuvem. Dessa forma, o C-RAN pode gerar economias de CAPEX e OPEX, implantando estações base mais simples, facilitando a atualização de dispositivos porque a maioria dos equipamentos está em um local central, gerando melhor balanceamento de tráfego e reduzindo os custos de ociosidade ao ligar / desligar o equipamento. No entanto, é necessário encaminhar o tráfego da estação base, que será processado na nuvem, por uma rede de fronthaul de baixa latência e jitter e alta capacidade. Estes requisitos são devidos aos requisitos de desempenho restritos dos protocolos CPRI e LTE-A. Este trabalho enfoca os desafios relacionados à implantação de fronthaul em uma arquitetura LTE-A baseada em C-RAN, mais especificamente no uso de uma rede de longo alcance como fronthaul neste tipo de C-RAN. Propomos as Redes Ópticas Passivas de Longo Alcance (LR-PON) como a solução para fronthaul devido à sua capacidade de oferecer altas taxas de dados (40 Gbps) e um CAPEX e OPEX mais baixos em comparação com outras tecnologias de redes ópticas. Além disso, introduzimos duas alocações de largura de banda dinâmica baseadas em predição (DBA), a saber, Predictive-DBA (PD-DBA) e Mobile Predictive-DBA (MPD-DBA), que são capazes de obter menor atraso em comparação com seus algoritmos similares na literatura. Além disso, o MPD-DBA, fornece atrasos médios sob o limite de atraso de fronthaul em alcance de 100 km e CPRI 1 até 4 cenários.

     


  • Mostrar Abstract
  •  Mobile devices data traffic has increased continuously in the last years and the growth prediction is about 50% per year until 2021. This growth in data demand has created many problems of cost and revenue to network operators to maintain and enlarge these networks. Literature has approached the Cloud Radio Access Networks (C-RAN) as an architecture of great potential to network operators being able to offer high data rates while reducing capital expenditure (CAPEX) and operational expenditures (OPEX). C- RAN main idea is to centralize the baseband processing of radio base stations in the cloud. This way C-RAN can generate CAPEX and OPEX economies, by deploying simpler base stations, making devices upgrade easier because most of the equipments are in one central place, generating better traffic balancing and reducing idleness costs by turning equipment on/off. However, its necessary to forward the base station traffic, which will be processed in the cloud, by a fronthaul network of low latency and jitter and high capacity. These requirements are due to the restrict performance requirements of CPRI and LTE-A protocols. This work focuses on the challenges related to the fronthaul deployment in a C-RAN based LTE-A architecture, more specifically in utilize a long reach network as fronthaul in this kind of C-RAN. We propose the Long Reach Passive Optical Networks (LR-PON) as the solution to fronthaul because of its capacity to offer high data rates (40 Gbps) and a lower CAPEX and OPEX compared to other optical network technologies. Furthermore, we introduce two prediction-based dynamic bandwidth allocation (DBA), namely Predictive-DBA (PD-DBA) and Mobile Predictive-DBA (MPD-DBA), which are able to achieve lower delay compared to their similar algorithms in literature. Moreover, The MPD-DBA, provides average delays under the fronthaul delay limit in 100 km reach and CPRI 1 up to 4 scenarios.

4
  • ALAN DOS SANTOS SOARES
  • Análise de Classificadores para Reconhecimento de Gestos 3D Dinâmicos da Mão Baseado em Descritores Geométricos

  • Orientador : ANTONIO LOPES APOLINARIO JUNIOR
  • MEMBROS DA BANCA :
  • ANTONIO LOPES APOLINARIO JUNIOR
  • KARL PHILIPS APAZA AGUERO
  • THALES MIRANDA DE ALMEIDA VIEIRA
  • Data: 20/04/2018

  • Mostrar Resumo
  • Nos últimos anos surgiram muitas abordagens para lidar com os desafios de sistemas de reconhecimento de gestos dinâmicos da mão. Estes sistemas utilizam em sua maioria técnicas de visão computacional baseadas em imagens RGB, sujeitos a limitações como variação de iluminação e cores. O surgimento de sensores RGB-D permitiu incorporar informação geométrica a imagem, tornando os sistemas de reconhecimento mais robustos. Porém ainda existem diferentes desafios relacionados ao problema da classificação dos gestos como invariância à aspectos físicos e localização, escolha de características e de classificadores robustos que permitam a classificação em tempo real. Este trabalho propõe uma análise de classificadores para gestos dinâmicos 3D da mão aplicados a descritores geométricos que representam a curva 3D gerada pela mão do usuário ao longo o tempo. Duas abordagens foram analisadas, o Dynamic Time Warping (DTW) e a Decision Tree (DT). Para a avaliação dos resultados foram utilizados dois datasets: MSR Action3D e GRUFBA 3D, este construido pelo autor. Os classificadores foram avaliados para identificar a importância das etapas de ajuste da curva que compõem o gesto, e extração e seleção das características da curva, analisando seu impacto na taxa de reconhecimento dos gestos. Os resultados alcançados mostram que essa abordagem é competitiva com as demais técnicas do estado da arte para abordagens similares


  • Mostrar Abstract
  • Many approaches have emerged in the last few years to address the challenges of dynamic
    hand gesture recognition systems. These systems use mostly computer vision techniques
    based on RGB images, subject to limitations such as variation of light and color. The
    emergence of RGB-D sensors allowed to incorporate geometric information into the image,
    making recognition systems more robust. However, there are still di erent challenges
    related to the problem of the classi cation of gestures as invariance to physical aspects
    and location, choice of characteristics and robust classi ers that allow classi cation in
    real time. This work proposes an analysis of classi ers for dynamic 3D hand gestures
    applied to geometric descriptors that represent the 3D curve generated by the hand of
    the user over time. Two approaches were analyzed, Dynamic Time Warping (DTW) and
    Decision Tree (DT). Two datasets were used to evaluate the results: MSR Action3D and
    GRUFBA 3D, which was built by the author. The classi ers were evaluated to identify
    the importance of the curve tting steps, and the extraction and selection of the curve
    characteristics, analyzing their impact on the gesture recognition rate. The obtained
    results show that this approach is competitive with the other techniques of the state of
    the art for similar approaches, being invariant to physical aspects and lighting with an
    average rate of 97:2% and 97:6% with the textit DTW and textit DT, respectively, in
    one of the analyzed datasets.

5
  • LUIZ OTÁVIO RAMOS GAVAZA
  • Estudo sobre motivação e aprendizagem estudantes de teoria da computação em uma abordagem baseada em problemas.

  • Orientador : LAIS DO NASCIMENTO SALVADOR
  • MEMBROS DA BANCA :
  • LAIS DO NASCIMENTO SALVADOR
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • ROBERTO ALMEIDA BITTENCOURT
  • Data: 25/04/2018

  • Mostrar Resumo
  • A disciplina de Teoria da Computação é uma das bases da área de computação, por este motivo, de fundamental importância na formação dos estudantes da área. Seu conteúdo possui um alto nível de abstração e exige um grande esforço dos estudantes e dos educadores no processo de ensino e aprendizagem. A percepção por parte de estudantes de que não estão compreendendo os conceitos e a desmotivação destes são os principais desafios nesse processo. Por sua vez o uso de metodologias ativas de aprendizagem, como a abordagem PBL (Problem Based Learning) tem sido apresentada como uma alternativa para reduzir problemas relativos à motivação e aprendizagem dos estudantes. Nesse sentido o objetivo dessa dissertação é descrever a implementação de PBL em turmas de Teoria da Computação no curso de Sistemas de Informação na UFBA. Para avaliação dos resultados e validação das hipóteses, esse trabalho realizou uma pesquisa descritiva na forma de pesquisa de opinião, onde os estudantes foram convidados a responder questionários com caracterização de perfil, afirmativas em escala Likert e espaço aberto relativos à abordagem adotada. Os resultados deste estudo sugerem que a utilização de PBL é promissora como alternativa metodológica para disciplinas teóricas de Computação.


  • Mostrar Abstract
  • The discipline of Computer Theory is one of the bases of the area of computing, for this reason, of fundamental importance in the formation of the students of the area. Its content has a high level of abstraction and requires a great effort from students and educators in the teaching and learning process. Students' perception that they are not understanding the concepts and their lack of motivation are the main challenges in this process. In turn, the use of active learning methodologies such as the Problem Based Learning (PBL) approach has been presented as an alternative to reduce problems related to student motivation and learning. In this sense, the purpose of this dissertation is to describe the implementation of PBL in Computer Theory classes in the Information Systems course at UFBA. To evaluate the results and validate the hypotheses, this work conducted a descriptive survey in the form of an opinion survey, where students were asked to answer questionnaires with profile characterization, Likert scale and open space statements related to the adopted approach. The results of this study suggest that the use of PBL is promising as a methodological alternative to theoretical disciplines of Computing.


6
  • JOÃO PEDRO DANTAS BITTENCURT DE QUEIROZ
  • MODELAGEM DE SERVIÇOS A PARTIR DE PROCESSOS DE NEGÓCIO: UMA ABORDAGEM DIRIGIDA A MODELOS

  • Orientador : RITA SUZANA PITANGUEIRA MACIEL
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • RITA SUZANA PITANGUEIRA MACIEL
  • LEONARDO GUERREIRO AZEVEDO
  • Data: 15/05/2018

  • Mostrar Resumo
  • As organizações estão cada vez mais conscientes da importância do mapeamento de seus processos de negócio. A modelagem dos processos de negócio ajuda a identificar e entender as atividades realizadas pelos participantes de uma organização, além de fornecer subsídios para a especificação de requisitos de sistemas e definição de serviços que os apoiem. Neste sentido é importante definir metodologias que facilitem a reutilização dos modelos de processos de negócio da organização, objetivando identificar serviços relevantes para o desenvolvimento de aplicações orientadas a serviço. Várias propostas encontradas na literatura seguem nesta direção, entretanto, ainda não existe um consenso que defina qual a melhor maneira de usar estes modelos para identificar os serviços, pois a transferˆencia de informações entre modelos de diferentes níveis de abstração ainda é um desafio em aberto. Um dos problemas identificados nestas propostas é o fato da derivação ocorrer a partir do processo de negócio diretamente para o nível de serviços, sem considerar, por exemplo, requisitos de sistemas que apoiam os serviços. Consequentemente, a derivação gera serviços mais genéricos que necessitam de mais informações para corresponder a um projeto arquitetural que possa gerar código adequadamente. Na tentativa de buscar uma solução para o problema citado, esta dissertação de mestrado propõe o processo DERIVA (Service Derivation on Bussiness Process), que se baseia na abordagem Model Driven Development para a derivação de serviços que considera não apenas os processos de negócio, mas também os requisitos funcionais dos sistemas que os apoiam. O processo DERIVA realiza a derivação de serviços candidatos a partir de processos de negócio e através de uma cadeia (semi) automática de transformações, onde os modelos de processos são transformados em modelos menos abstratos até a geração do código do serviço na linguagem Java. A cadeia de transformações deste processo é baseada em heurísticas que serviram de base para a codificação dos mapeamentos. Este processo foi avaliado através de um estudo de caso e de um experimento controlado com desenvolvedores com diferentes níveis de conhecimento em Service-Oriented Architecture e Model Driven Development. Os resultados deste estudo evidenciaram que estes profissionais, a partir de um modelo de processo e utilizando o processo DERIVA, conseguiram realizar todo o processo contemplando a derivação de uma arquitetura de serviços, a especificação de parâmetros e tipos de dados destes, até a geração do código Java, evidenciando assim a viabilidade e a eficácia da proposta. A derivação de serviços, a partir do processo de negócio, pode ser facilitada através do desenvolvimento dirigido a modelos. Além disso, a inclusão da modelagem de requisitos de sistemas, como parte do processo de derivação, favorece a especificação de uma arquitetura de serviços mais detalhada.


  • Mostrar Abstract
  • Organizations are increasingly aware of the importance of mapping their business processes. Business process modeling helps to identify and understand the activities performed by participants of an organization, as well as providing support for specifying system requirements and defining services that support them. In this sense, it is important to define methodologies that facilitate the business process models reuse to identify relevant services for the development of service-oriented applications. Several proposals in the literature follow in this direction, however, there is still no consensus on which it is the best way to use these models to identify the services, because the transference of information between models of different levels of abstraction is an arduous task. One of the problems found in these proposals is that the derivation occurs straight from business level to service level, without considering, for instance, system requirements that support them. Therefore, it generates basic services that requires more information to reach an architectural level that can properly generate code. To find a solution to this problem, this dissertation proposes DERIVA (Service Derivation on Business Process), which is a process based on Model-Driven Development approach, and considers not only business processes, but also system requirements that support them to achieve service derivation. The DERIVA process performs service derivation through a semiautomatic transformations’ chain, where process models are transformed into less abstract models until code generation is accomplished. The process transformation’s chain is heuristic based, which served as source for the mapping. This process was evaluated through a case study and a controlled experiment by developers of different knowledge in Service Oriented Architecture and Model-Driven Development. The results of this study demonstrated that these professionals, from a process model and using DERIVA process, were able to execute the entire process, produce a service architecture and its Java’s code, with parameters and data types, highlighting the proposal viability and efficiency. Service derivation from the business process can be facilitated through model-driven development. In addition, the inclusion of system requirements modeling, as part of the derivation process, results in a more detailed service architecture.

7
  • FILIPE ADEODATO GARRIDO
  • Uma Abordagem Unificada de Design para Modelagem Educacional e da Comunicação em MOOC

     

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • BRUNO SANTANA DA SILVA
  • ECIVALDO DE SOUZA MATOS
  • RITA SUZANA PITANGUEIRA MACIEL
  • Data: 24/06/2018

  • Mostrar Resumo
  • Os Massive Open Online Courses (MOOC) foram apresentados como opção para democratizar e favorecer a educação para milhões de pessoas ao redor do mundo, por meio da participação e construção colaborativa de conhecimento. Essa difusão do conhecimento ocorre em virtude da comunicação entre estudantes, professores, conteudistas, conteúdo e sistema, durante a interação. A complexidade em harmonizar o discurso dos diversos agentes envolvidos na criação de um curso online torna-se um importante desafio para o designer de interação e instrucional. Pois, a comunicação entre sujeitos é essencial para o ensino-aprendizagem, evidenciando a importância de promover um processo de design adequado sob o aspecto da comunicabilidade. Nessa perspectiva, nesta pesquisa foi concebida e avaliada uma abordagem híbrida de design para MOOC, articulando o design de interação e o design instrucional contextualizado. A metodologia desta pesquisa dividiu-se em três etapas: investigação de estudos relacionados por intermédio de uma Revisão Sistemática de Literatura (RSL), um estudo de caso e a avaliação da abordagem híbrida de design. A RSL investigou estudos com propostas, técnicas, métodos ou práticas de design de interação ou design instrucional aplicados à MOOC. O estudo de caso, segunda etapa do estudo, foi realizado para ratificar a abordagem híbrida de design na concepção de um curso e plataforma MOOC. Para tanto, a MoLIC (Modeling Language for Interaction as Conversation) suportou a modelagem da interação articulada com o conteúdo instrucional. Adicionalmente, o conteúdo do curso foi concebido de forma participativa e distribuída com ferramentas computacionais em nuvem. Por fim, a abordagem híbrida foi avaliada pela análise de conteúdo dos usuários-estudantes, em tempo de interação no Saviesa, plataforma de MOOC concebida neste estudo, e por especialistas em design de interação e design instrucional. Em termos tecnológicos, esta pesquisa originou o Saviesa, um framework conceitual para design instrucional distribuído e colaborativo e uma abordagem híbrida de design para MOOC. Por fim, espera-se que essa abordagem híbrida de design possa ser replicada para outros sistemas educacionais interativos, como AVA, e favoreça a interação dos estudantes e processo de aprendizagem em MOOC.


  • Mostrar Abstract
  • -

8
  • ASSIS SANTOS VIEIRA
  • Localização de Conceitos Baseada em Microdomínios

  • Orientador : CLAUDIO NOGUEIRA SANT ANNA
  • MEMBROS DA BANCA :
  • CHRISTINA VON FLACH GARCIA CHAVEZ
  • CLAUDIO NOGUEIRA SANT ANNA
  • ROBERTO ALMEIDA BITTENCOURT
  • Data: 04/07/2018

  • Mostrar Resumo
  • Contexto - Localização de Conceitos é a etapa da modificação de software em que o desenvolvedor busca pelos trechos de código que devem ser modificados. Em ambientes industriais, essa etapa consome a maior parte do tempo e esforço empreendidos na modificação. Em essência, a localização de conceitos é um problema de compreensão de software. Na leitura do código fonte, modelos cognitivos apontam que os desenvolvedores refinam seus conhecimentos elaborando e veri cando hipóteses a partir das dicas sugeridas
    pelos identificadores. Problema - A Dependence Search (DepS) é uma das técnicas de localização de conceitos mais reconhecidas na literatura. Após a seleção de um trecho de código inicial, denominado de semente, a DepS sugere a inspeção das dependências estáticas, fornecendo apenas as dependências imediatas da semente. No entanto, realizamos um estudo do grafo de dependências de cinco softwares e descobrimos que, cerca de 50% dos métodos simples, métodos com apenas um chamador, o método chamador
    fornecia no máximo apenas um termo diferente. Para os outros 50%, em que os chamadores forneciam pelo menos 2 termos diferentes, observamos em algumas amostras que a similaridade ou afinidade entre os termos, do método chamador e do método chamado, não fornecia conhecimento que nos permitisse elaborar ou verificar as hipóteses sobre o código implementado. Proposta - Afim de refinar a DepS, desenvolvemos uma nova técnica denominada Localização de Conceitos baseada em Micromínios (LCM). O objetivo da técnica foi de apresentar métodos com termos diferentes dos usados pela semente e que ao mesmo tempo estivessem estaticamente relacionados entre si. Para alcançar esse objetivo, desenvolvemos dois conceitos, o Microdomínio e o Contexto da Semente. Um microdomíno é um cluster de métodos relacionados estaticamente, construído com base na análise de dominância. Ao selecionar uma semente, a LCM apresenta graficamente
    o contexto da semente, constituído pelo microdomínio da semente e os microdomínios vizinhos ao microdomínio da semente. Para a apoiar a aplicação da LCM, desenvolvemos uma ferramenta que denominamos de Visualizador de Contexto. Avaliação - Com o objetivo de coletar evidências da aplicabilidade da técnica, solicitamos uma tarefa de localização de conceitos a um desenvolvedor, utilizando o Visualizador de Contexto. Ao final da avaliação, realizamos uma entrevista. Conclusão - As dicas fornecidas pelo contexto da semente, construído pelo Visualizador de Contexto, ajudaram o desenvolvedor
    a perceber a relevância de uma das sementes e que o fez localizar os trechos de código desejado. Apesar dos indícios coletados em nosso estudo, novas pesquisas necessitam ser realizadas a afim de medir a similaridade entre os termos de um mesmo microdomínio e a diferença entre os termos de microdomínios vizinhos.


  • Mostrar Abstract
  • Concept Location is the step of software modification where the developer
    search for the chunks of code that must be modified. In industrial environments, this
    step consumes most of the time and effort. In essence, the concept location is a problem
    of software comprehension. In reading the source code, cognitive models point out that
    the developers refine their knowledge by elaborating and verifying hypotheses from the
    tips suggested by the identifiers. Problem - In the literature, Dependence Search (DepS)
    is one of the most recognized techniques for concept location. After selecting an initial
    code snippet called seed, DepS suggests inspecting static dependencies, providing only
    the immediate dependencies of the seed. However, we did a study of the dependency
    graph of five softwares and found that in some cases the nearest dependencies use terms
    similar or equal to the terms of the seed. For those who do not know the terms of the seed,
    the terms similar to or equal to those used by the seed will hardly refine the hypotheses
    about the concepts implemented. Proposal - In order to refine the DepS, we developed
    a new technique called Microdomain-based Concept Location (MCL). The objective of
    the technique is to provide methods with terms different from those used by the seed and
    that they were at the same time statically related to each other. To achieve this goal,
    we developed two concepts: Microdomain and Seed Context. A microdomain is a cluster
    of statically related methods, built on the basis of dominance analysis. When selecting
    a seed, the MCL presents graphically the seed context, constituted by the microdomain
    of the seed and the microdomains neighboring the microdomain of the seed. In order to
    support the use of MCL, we developed a tool called the Context Viewer. Evaluation - In
    order to collect evidence of the applicability of the technique, we assigned a task of concept
    location to a developer, who used the Context Viewer. At the end of the evaluation, we
    conducted an interview. Conclusion - The tips provided by seed context, built by
    Context Viewer, helped the developer to realize the relevance of a seed, completing the
    task with the desired code snippets. Despite the evidence collected in our study, further
    research needs to be conducted in order to measure the similarity between the terms of
    one microdomain and the difference between the terms of microdomain neighbors.

9
  • IGOR DAVID BRITO CALDEIRA
  • Uma Heurística de Tolerância a Falhas para Redes de Backbone Ciente de Qualidade de Serviço e Sensível ao Contexto

     

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • LEOBINO NASCIMENTO SAMPAIO
  • ALIRIO SANTOS DE SA
  • STÊNIO FLÁVIO DE LACERDA FERNANDES
  • Data: 05/07/2018

  • Mostrar Resumo
  • As estratégias atuais de tolerância à falhas em redes de backbone geralmente reagem com base no estado configurado pelo operador e não com base no histórico de desempenho da rede. Dessa forma, um enlace de backup previamente configurado pelo administrador pode não ser a melhor escolha no momento da falha. Isso ocorre devido às mudanças de comportamento da rede e às diferentes medições obtidas com as variações do tráfego subsequentes. Face às características da nova topologia e das classes de priorização, esse fator pode gerar congestionamento ou impacto na QoS das aplicações quando da ocorrência de falhas. A visão global e logicamente centralizada de controladores em redes definidas por software abre novas perspectivas para tratamento de falhas na rede. Ela é capaz de viabilizar o conhecimento do desempenho de cada enlace da rede, com dados além do caminho de produção. Se bem gerenciadas, essas informações são capazes de oferecer maior qualidade ao transporte digital de dados através de soluções tão inovadoras quanto essa tecnologia. Este trabalho propõe uma heurística híbrida para tratar localmente falhas dos enlaces, proporcionando rápida proteção, seguido pela otimização no caminho dos fluxos com recuperação ciente de QoS. Primeiramente a parcela pró-ativa instala uma redundância operacional na rede capaz de restaurar o fluxo a nível de encaminhamento diante da ocorrência de falhas simples, por caminhos alternativos não ótimos. Na sequência, a parcela reativa da solução realiza a otimização dos caminhos com sua base de métricas atualizada, para viabilizar melhores condições de transporte dos pacotes em trânsito, de acordo com as criticidades e restrições de sua aplicação. Os experimentos foram conduzidos emulando características de comportamento reproduzidas da Rede Ipê/RNP e inserindo neles falhas de enlaces e ativos. Resultados obtidos apontaram possibilidades de ganhos significativos em métricas de QoS quando comparados a estratégias convencionais utilizando ONOS e OSPF, destacando-se a redução das perdas de pacotes, da latência e do tempo de recuperação na ocorrência da falha.


  • Mostrar Abstract
  • --

10
  • MIRLEI MOURA DA SILVA
  • Agrupamento de Séries Temporais Utilizando Decomposição de Componentes Estocásticos e Determinísticos

  • Orientador : RICARDO ARAUJO RIOS
  • MEMBROS DA BANCA :
  • RICARDO ARAUJO RIOS
  • GECYNALDA SOARES DA SILVA GOMES
  • RODRIGO FERNANDES DE MELLO
  • Data: 13/07/2018

  • Mostrar Resumo
  • Com a grande quantidade dados produzidos e coletados diariamente por diferentes sistemas, técnicas de aprendizado de máquina vêm sendo propostas com o intuito de auxiliar o processo de extração automática de informações. Dentre essas técnicas, pode-se destacar os algoritmos de agrupamento que buscam encontrar padrões e estruturas implícitas em conjuntos de dados sem qualquer conhecimento fornecido à priori. Este trabalho de mestrado apresenta uma nova abordagem de agrupamento para dados, que possuem uma dependência temporal entre suas observações, conhecidos como séries temporais. A principal diferença dessa abordagem em relação aos trabalhos existentes na literatura baseia-se na hipótese de que dados coletados do mundo real possuem influências estocásticas e determinísticas que, se não forem individualmente analisadas, podem afetar o resultado do agrupamento. Neste sentido, a abordagem proposta avalia a importância da decomposição de séries temporais em componentes estocásticos e determinísticos no processo de agrupamento. Com isso, dados são agrupados analisando de maneira individual a similaridade entre cada componente. Os experimentos foram realizados em quatro etapas: i) a primeira etapa consistiu em verificar medidas para os componentes determinísticos; ii) na segunda etapa, foi proposta uma medida específica para os componentes estocásticos; iii) a terceira etapa consistiu em avaliar o uso das medidas considerando os componentes estocásticos e determinísticos de séries temporais; iv) e, por fim, foi realizado o processo de agrupamento de séries temporais com ruído aditivo. A partir da decomposição das séries temporais, foi possível observar que o processo de agrupamento obtido melhorou significativamente os valores dos índices de validação externa.


  • Mostrar Abstract
  • -As part of the unsupervised machine learning area, time series clustering aims at designing methods to extract patterns from temporal data in order to organize di erent series according to their similarities. According to the literature, most of researches either perform a preprocessing step to convert time series into an attribute-value matrix to be later analyzed by traditional clustering methods, or apply measures speci cally designed to compute the similarity among time series. Based on such studies, we have noticed two main issues: i) clustering methods do not take into account the stochastic and the deterministic in uences inherent of time series from real-world scenarios; and ii) similarity measures tend to look for recurrent patterns, which may not be available in stochastic time series. In order to overcome such drawbacks, we present a new clustering approach that considers both in uences and a new similarity measure to deal with purely stochastic time series. Experiments provided outstanding results, emphasizing time series are better clustered when their stochastic and deterministic in uences are properly analyzed.

11
  • ELISEU SILVA TORRES
  • BAMSDN: Um Arcabouço SDN/Openflow para a Alocação Dinâmica de Recursos Baseado em Modelo de Alocação de Banda

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • LEOBINO NASCIMENTO SAMPAIO
  • JOBERTO SERGIO BARBOSA MARTINS
  • KELVIN LOPES DIAS
  • Data: 16/07/2018

  • Mostrar Resumo
  • Cenários de redes de comunicação atuais e emergentes tais como 5G, nuvem, redes ópticas, redes MPLS e internet das coisas (IoT), são marcados pela grande variedade e distribuição de usuários, aplicações e serviços, com requisitos de comunicação e de qualidade (SLA, QoE, QoS) heterogêneos. Portanto, faz-se necessário encontrar novas maneiras para lidar com a dinamicidade do tráfego das redes, uma das alternativas adotadas é o uso de modelos de alocação de banda (BAM) que possuem os atributos para distribuição e controle dos recursos de rede através da classificação dos tipos de aplicações. Tem se tornado comum a utilização de BAMs juntamente com o paradigma SDN, visto que esse paradigma permite aos pesquisadores e aos administradores de rede explorar a perspectiva de alocação de recursos em cenários onde a configuração de equipamentos pertencentes a fabricantes distintos sejam um entrave, já que cada equipamento possui sua própria sintaxe de configuração. Assim, a exploração do conjunto BAM/SDN pode ser uma alternativa econômica aos altos custos de OPEX e CAPEX de redes puramente MPLS. Desta forma, o presente trabalho apresenta o arcabouço BAMSDN (Allocation Models through Software-Defined Networks) para a exploração dinâmica e flexível de recursos de redes baseados em MPLS através do uso conjunto de BAMs e SDN. O arcabouço explora a programabilidade e a visão global da rede do plano de controle para realizar engenharia de tráfego em toda a topologia e busca adequar a disponibilidade dos recursos de rede à demanda dos seus usuários, além de implantar o plano de gerência ao controlador SDN para permitir também a reconfiguração e o gerenciamento da largura de banda de cada porta de saída de um comutador.


  • Mostrar Abstract
  • Present and emerging communication network scenarios such as 5G, cloud, optical networks, MPLS networks and Internet of Things (IoT) are marked by the wide variety and distribution of users, applications and services with communication and quality requirements (SLA , QoE, QoS) heterogeneous. Therefore, it is necessary to find new ways to deal with the dynamics of network traffic, one of the alternatives adopted is the use of band-allocation models (BAM) that have the attributes for distribution and control of network resources through classification types of applications. It has become common to use BAMs together with the SDN paradigm, since this paradigm allows researchers and network administrators to explore the perspective of resource allocation in scenarios where the configuration of equipment owned by different manufacturers is a hindrance, since each device has its own configuration syntax. Thus, the exploitation of the BAM / SDN set can be an economical alternative to the high costs of OPEX and CAPEX of purely MPLS networks. Thus, the present work presents the BAMSDN framework (Allocation Models through Software-Defined Networks) for the dynamic and flexible exploitation of resources of MPLS-based networks through the joint use of BAMs and SDN. The framework explores the programmability and global vision of the control plan network to perform traffic engineering throughout the topology and seeks to match the availability of network resources to the demand of its users, as well as deploy the management plan to the SDN controller to also allow the reconfiguration and bandwidth management of each output port of a switch.

12
  • FRANCISCO RENATO CAVALCANTE ARAÚJO
  • Cache Colaborativo e Distribuído como Suporte à Mobilidade de Produtores em Redes Sem Fio de Dados Nomeados

  • Orientador : LEOBINO NASCIMENTO SAMPAIO
  • MEMBROS DA BANCA :
  • ANTONIO MARINHO PILLA BARCELLOS
  • FABIOLA GONCALVES PEREIRA GREVE
  • LEOBINO NASCIMENTO SAMPAIO
  • Data: 18/07/2018

  • Mostrar Resumo
  • A utilização da Internet vem sofrendo grandes transformações, a quantidade de dispositivos e conexões está em ritmo de crescimento acelerado, fatos não planejados no projeto de arquitetura da rede. Como consequência, a popularização dos dispositivos móveis está acarretando num aumento da demanda de Internet móvel e uma sobrecarga nas redes de acesso. Diante dos desafios impostos pelas comunicações emergentes, as Redes de Dados Nomeados (do inglês, Named Data Networking (NDN)) foram propostas para resolver os problemas enfrentados na rede atual, através de um modelo de comunicação centrado no conteúdo, em que os consumidores emitem interesses na rede em busca de dados que são gerados pelos produtores. A NDN suporta a mobilidade dos consumidores por intermédio da própria arquitetura, no entanto, o suporte à mobilidade dos produtores ainda representa um desafio, devido aos danos causados à rede, sobretudo no período de indisponibilidade do produtor. Desse modo, este trabalho propõe a SCaN-Mob (Shared Caching in Named Data Networking Mobile), uma nova estratégia de suporte à mobilidade de produtores em NDN. A SCaN-Mob se utiliza do armazenamento em cache nos dispositivos da rede local, com o objetivo de auxiliar os produtores a disseminar seus dados entre os nós vizinhos, de modo a manter na cache dos dispositivos os dados oriundos dos produtores mais propensos a efetuarem handoff. Assim, obtém-se uma maior diversidade de conteúdos na rede, o que aumenta as chances de resposta aos interesses que chegam no período de ausência do produtor. As principais contribuições deste trabalho são: i) uma política de substituição de cache que pode atuar com diferentes critérios de priorização de dados; e ii) uma estratégia de encaminhamento de pacotes que visa controlar o efeito da inundação de pacotes na rede. A proposta foi implementada no simulador ndnSIM e foi submetida a uma análise detalhada, comparando-a com a NDN padrão, sob diferentes métricas. Os resultados alcançados comprovam ganhos de até 35,32% na taxa de satisfação de interesses, mesmo com a indisponibilidade do produtor, e com uma redução de 56,23% no tempo para a obtenção de dados.


  • Mostrar Abstract
  • The use of the Internet has undergone major transformations, the number of devices and connections is with the pace of accelerated growth, unplanned facts in the network architecture project. As a result, the popularization of mobile devices is leading to increased demand for mobile Internet and an overload in access networks. Faced with the challenges posed by emerging communications, Named Data Networking (NDN) were proposed to solve the problems faced in the current network, through a content-centric communication model, in which consumers request interests in the network in search of data that are generated by the producers. NDN supports the mobility of consumers through the architecture itself, however, support for the mobility of producers still poses a challenge, due to damage to the network, especially during the period of unavailability of the producer. In this way, this work proposes the SCaN-Mob, a new strategy to support the mobility of producers in NDN. SCaN-Mob uses caching on local network devices to help producers disseminate their data between neighboring nodes, to maintain in the device cache the data from the producers most likely to perform handoff . Thus, a greater diversity of contents in the network is obtained, which increases the chances of responding to the interests that arrive in the absence period of the producer. The main contributions of this work are: i) a cache replacement policy that can act with different data prioritization criteria; and ii) a packet forwarding strategy to control the effect of packet flooding on the network. The proposal was implemented in the ndnSIM simulator and was submitted to a detailed analysis, comparing it with the standard NDN, under different metrics. The results obtained show gains of up to 35.32% in the interest satisfaction rate, even with the producer's unavailability of the producer, and with a reduction of 56.23% in the time to obtain data.

13
  • MARCO ANTONIO RUIZ RUEDA
  • A Tool for building multi-purpose and multi-pose synthetic data sets
  • Orientador : LUCIANO REBOUCAS DE OLIVEIRA
  • MEMBROS DA BANCA :
  • LUCIANO REBOUCAS DE OLIVEIRA
  • ANGELO AMANCIO DUARTE
  • RODRIGO TRIPODI CALUMBY
  • Data: 25/07/2018

  • Mostrar Resumo
  • Uma ferramenta para gerar conjuntos de dados sintéticos de múltiplos propósitos a partir de múltiplos pontos de vista de câmeras e condições ambientais é proposta aqui. Para gerar qualquer conjunto de dados, são necessários três passos: localizar modelos 3D na cena, definir os parâmetros de discretização e executar o gerador. O conjunto de imagens renderizadas fornece dados que podem ser usados para problemas geométricos de visão computacional, tais como: estimativa de profundidade, estimativa de pose de câmera, estimativa de caixa 3D, reconstrução 3D, calibração de câmera e também verdade de pixel perfeita para problemas de compreensão de cena, como As: segmentação semântica, segmentação de instância, detecção de objetos, apenas para citar alguns. Neste artigo, também pesquisamos os conjuntos de dados sintéticos mais conhecidos usados em tarefas de visão computacional, destacando a importância de usar imagens renderizadas. Quando comparado com ferramentas similares, nosso gerador contém um amplo conjunto de recursos fáceis de estender, além de permitir a construção de conjuntos de imagens no conhecido formato MSCOCO, tão pronto para trabalhos de aprendizagem profunda. Até onde sabemos, a ferramenta proposta é a primeira a gerar automaticamente conjuntos de dados sintéticos em grande escala, permitindo o treinamento e a avaliação de métodos supervisionados para todos os recursos abordados.

     


  • Mostrar Abstract
  • A tool to generate multi-purpose, synthetic data sets from multiple camera viewpoints and environmental conditions is proposed here. To generate any data set, three steps are required: locate 3D models in the scene, set the discretization parameters, and run the generator. The set of rendered images provide data that can be used for geometric computer vision problems, such as: Depth estimation, camera pose estimation, 3D box estimation, 3D reconstruction, camera calibration, and also pixel-perfect ground truth for scene understanding problems, such as: Semantic segmentation, instance segmentation, object detection, just to cite a few. In this paper, we also survey the most well-known synthetic data sets used in computer vision tasks, pointing out the importance to use rendered images. When compared to similar tools, our generator contains a wide set of features easy to extend, besides allowing for building sets of images in the well-known MSCOCO format, so ready for deep learning works. To the best of our knowledge, the proposed tool is the first one to generate large-scale, multi-pose, synthetic data sets automatically, allowing for training and evaluation of supervised methods for all of the covered features.

     

14
  • ALEX SILVA SANTOS
  • Degradação de Serviço com QoS Proporcional em Redes Ópticas Elásticas

  • Orientador : GUSTAVO BITTENCOURT FIGUEIREDO
  • MEMBROS DA BANCA :
  • GUSTAVO BITTENCOURT FIGUEIREDO
  • ANDRE COSTA DRUMMOND
  • ANDRE CASTELO BRANCO SOARES
  • Data: 27/07/2018

  • Mostrar Resumo
  • Dados coletados nos últimos anos mostram que a quantidade de informação trafegando no núcleo da rede vem crescendo a uma taxa exponencial, evidenciando a incapacidade das redes Wavelength-division Multiplexing em suprir tal demanda. As Redes Ópticas Elásticas representam uma nova abordagem para lidar com o elevado tráfego de dados oferecendo largura de banda mais próxima à solicitada pelos usuários, proporcionando maior aproveitamento dos recursos ópticos disponı́veis. Em cenários com elevado volume de tráfego, requisições podem ser bloqueadas devido à incapacidade da rede em alocar novos recursos. Uma das estratégias utilizadas para evitar o bloqueio de novas requisições é a degradação de serviço, onde determinadas requisições podem receber largura de banda menor que a solicitada de forma que elas possam operar sem maiores prejuízos. Na literatura atual é possı́vel perceber que a maioria dos estudos abordam a degradação de serviço utilizando um cenário estático onde todas as requisições são conhecidas antecipadamente, resultando na ausência de estratégias online que apresentam maior conformidade com cenários reais. Neste trabalho é proposta uma estratégia online para degradação de serviço utilizando o modelo de QoS proporcional. Esta estratégia visa reduzir a probabilidade de bloqueio causada por falta de recursos ópticos e oferecer melhor tratamento para diferentes classes de serviço. Além disso, os pares de nós origem-destino foram modelados como um sistema de enfileiramento operando sobre a polı́tica Generalized Processor Sharing com controle de admissão Leaky Bucket com o objetivo de quantificar o impacto da degradação nos lightpaths. Os resultados obtidos mostram que a estratégia proposta pode reduzir a probabilidade de bloqueio e fornecer aos operadores de rede maior controle entre diferentes classes de serviços degradadas.


  • Mostrar Abstract
  • Data collected in recent years show that the amount of information traveling in the network core has been increasing at an exponential rate, evidencing the inability of Wavelength-division Multiplexing networks to meet such demand. Elastic Optical Networks represent a new approach to dealing with high data traffic, offering bandwidth closer to that requested by users, providing greater use of available optical resources. In scenarios with high traffic volume, requests can be blocked due to the inability of the network to allocate new resources. One of the strategies used to avoid blocking new requests is service degradation, where certain requests may receive less than requested bandwidth so that they can operate without loss. In the current literature it is possible to perceive that most of the studies approach the degradation of service using a static scenario where all the requests are known in advance, resulting in the absence of online strategies that present greater conformity with real scenarios. This paper proposes an online strategy for service degradation using the proportional QoS model. This strategy aims to reduce the likelihood of blockage caused by lack of optical resources and offer better treatment for different classes of service. In addition, pairs of source-destination nodes were modeled as a queuing system operating on the Generalized Processor Sharing policy with Leaky Bucket admission control in order to quantify the impact of degradation on lightpaths. The results show that the proposed strategy can reduce the probability of blocking and provide network operators with greater control among different classes of degraded services.
15
  • IVE ANDRESSON DOS SANTOS TOURINHO
  • Agrupamento Flexível para Recomendação de Pontos de Interesse.

  • Orientador : TATIANE NOGUEIRA RIOS
  • MEMBROS DA BANCA :
  • FREDERICO ARAUJO DURAO
  • HELOISA DE ARRUDA CAMARGO
  • TATIANE NOGUEIRA RIOS
  • Data: 16/08/2018

  • Mostrar Resumo
  •  Perante o atual cenário de massiva produção de dados georreferenciados produzidos por usuários de redes sociais baseadas em localização, este trabalho tem como objetivo identificar padrões de mobilidade humana e modelar os fenômenos relacionados ao comportamento humano no espaço geográfico. Baseando-se na premissa de que o perfil de preferência de um usuário pode ser caracterizado pelo seu comportamento de mobilidade inferido através de seu histórico de check-ins, são propostas duas técnicas de recomendação baseada em agrupamento fuzzy, a fim de atestar a utilidade dos aspectos geográficos identificados em tarefas preditivas para recomendação de conteúdo.


  • Mostrar Abstract
  • Given the current scenario of massive production of geo-referenced data produced by users of social networks based on location, this work aims to identify patterns of human mobility and model the phenomena related to human behavior in the geographic space. Based on the premise that the preference profile of a user can be characterized by their mobility behavior inferred through their check-ins history, two techniques of recommendation based on fuzzy grouping are proposed, in order to attest the usefulness of the geographical aspects identified in predictive tasks to recommend content

16
  • FELIPE GUSTAVO DE SOUZA GOMES
  • Uma Infraestrutura  computacional para identificação e monitoramento de dívida técnica

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • GLAUCO DE FIGUEIREDO CARNEIRO
  • IVAN DO CARMO MACHADO
  • MANOEL GOMES DE MENDONCA NETO
  • Data: 27/08/2018

  • Mostrar Resumo
  • Em engenharia de software, o conceito de Dívida Técnica (DT) contextualiza o problema de tarefas técnicas não realizadas no presente, que podem incorrer em custos e adversidades no futuro. A exposição a dívidas pode trazer benefícios de curto prazo, tais como o aumento da produtividade atual e a redução do tempo de lançamento de um produto, mas esse benefício é obtido ao custo de esforço extra no futuro para resolver as dívidas incorridas. Neste contexto, faz-se necessário desenvolver-se mecanismos para se gerenciar dívidas técnicas. A identificação e monitoramento de DT é uma etapa importante e necessária no processo de gerenciamento de dívidas. Infelizmente estas tarefas são complexas, pois requerem a análise de grandes quantidades de informações. Diferentes trabalhos têm sido realizados no desenvolvimento de abordagens para identificar DT de forma automática ou semi-automática. A maioria destes trabalhos se baseiam em análise de métricas de código. Entretanto, estudos já apontaram que o uso apenas de métricas para a identificação de itens de DT limita a abrangência dessa atividade. É necessário também considerar o ponto de vista do desenvolvedor. Nessa direção, a combinação de uma abordagem que utiliza simultaneamente métricas, análise estática de código, análise de comentários, e visualização de informação, tem se mostrado promissora para a identificação e o monitoramento de DT. Este trabalho apresenta o desenvolvimento e evolução de duas ferramentas para materializar esta abordagem. A primeira, denominada RepositoryMiner, minera repositórios de software, calcula métricas, detecta code smells, analisa comentários e código fonte, e combina estes diferentes meios como indicadores de dívidas técnicas de módulos de software. A segunda, denominada VisminerTD, utiliza técnicas visuais para, baseada nos indicadores calculados, apoiar engenheiros de software na identificação e o monitoramento de dívidas técnicas ao longo do ciclo de vida de um projeto de software. Para mostrar a usabilidade e eficácia da abordagem, foram realizados dois estudos de viabilidade mostrando que as ferramentas podem apoiar o gerenciamento da DT em projetos de software de médio porte.

     


  • Mostrar Abstract
  • In software engineering, the concept of Technical Debt (DT) contextualizes the problem of technical tasks not performed in the present, which may incur costs and adversities in the future. Exposure to debt can bring short-term benefits, such as increasing current productivity and reducing the time to launch a product, but this benefit is obtained at the cost of extra effort in the future to resolve the debts incurred. In this context, it is necessary to develop mechanisms to manage technical debts. Identifying and monitoring DT is an important and necessary step in the debt management process. Unfortunately these tasks are complex because they require the analysis of large amounts of information. Different works have been carried out in the development of approaches to identify DT either automatically or semi-automatically. Most of these works are based on code metrics analysis. However, studies have already pointed out that the use of metrics only for the identification of DT items limits the scope of this activity. It is also necessary to consider the developer's point of view. In this direction, the combination of an approach that simultaneously uses metrics, static code analysis, comment analysis, and information visualization, has been shown to be promising for DT identification and monitoring. This work presents the development and evolution of two tools to materialize this approach. The first, called RepositoryMiner, mines software repositories, calculates metrics, detects code smells, analyzes comments and source code, and combines these different means as indicators of technical debts of software modules. The second, called VisminerTD, uses visual techniques to, based on the calculated indicators, support software engineers in the identification and monitoring of technical debts throughout the life cycle of a software project. To show the usability and effectiveness of the approach, two feasibility studies were conducted showing that the tools can support the management of DT in medium-sized software projects.

     

17
  • FELIPPE VIEIRA ZACARIAS
  • Intelligent colocation of HPC workloads for enhancing server efficiency

  • Orientador : VINICIUS TAVARES PETRUCCI
  • MEMBROS DA BANCA :
  • VINICIUS TAVARES PETRUCCI
  • MARCOS ENNES BARRETO
  • Rajiv Nishtala
  • Data: 30/08/2018

  • Mostrar Resumo
  • A eficiência de recursos é crucial para alcançar o desempenho do Exascale em sistemas de computação de alto desempenho (HPC). Muitos aplicativos HPC atingem apenas uma fração de seu desempenho máximo teórico porque é muito difícil para os desenvolvedores e sistemas de tempo de execução extrair perfeitamente o melhor desempenho dos aplicativos paralelos. A partir dessa perspectiva, as aplicações colocalizadas são uma técnica atraente para aumentar a utilização do sistema de HPC. No entanto, um aplicativo pode afetar negativamente o comportamento de outro aplicativo ao compartilhar recursos críticos, como caches e largura de banda de memória, no mesmo servidor. Argumentamos que a eficiência do servidor pode ser melhorada prevendo a desaceleração esperada do desempenho de aplicativos colocalizados a partir de contadores de desempenho de hardware medidos. Esse trabalho faz as seguintes contribuições: (1) um modelo de aprendizado de máquina para prever a lentidão do desempenho de aplicativos co-localizados e (2) um esquema de planejamento inteligente implantado no gerenciador do Slurm para permitir o compartilhamento de aplicativos em um nó de servidor com degradação mínima desempenho.


  • Mostrar Abstract
  • Resource efficiency is crucial for achieving Exascale performance in high performance computing (HPC) systems. Many HPC applications achieve only a fraction of their theoretical peak performance because it is very hard for developers and runtime systems to extract perfectly the best performance from parallel applications. From this perspective, colocating applications is an attractive technique to increase HPC system utilization. However, an application may adversely affect the behavior of another application when sharing critical resources, such as caches and memory bandwidth, in the same server. We argue that server efficiency can be improved by predicting the expected performance slowdown of colocated applications from measured hardware performance counters. This work makes the following contributions: (1) a machine learning model to predict the performance slowdown of co-located applications and (2) an intelligent scheduling scheme deployed in the Slurm manager to allow sharing applications in a server node with minimal degradation for improved performance.

     

18
  • BEATRIZ BRITO DO REGO
  • A influência da metacomunicação na permanência ou no abandono em MOOC: uma investigação sob perspectiva semiótica

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • ECIVALDO DE SOUZA MATOS
  • ARTUR HENRIQUE KRONBAUER
  • ANDRÉIA LIBÓRIO SAMPAIO
  • Data: 27/09/2018

  • Mostrar Resumo
  • MOOC é um acrônimo para Massive Open Online Course, uma modalidade de educação online com oferta de cursos gratuitos a diversos públicos, com diferentes idades, formações e nacionalidades. Os MOOC surgiram como inovação tecnológica que idealizam a democratização da educação, por meio da oferta de cursos gratuitos. Essa modalidade de ensino tem atraído uma população de diferentes idades, formações e nacionalidades. Todavia, os MOOC possuem alta taxa de abandono de seus estudantes, correspondendo a uma das suas principais críticas. Embora milhares de estudantes inscrevam-se a todo momento, a taxa de conclusão para a maioria dos cursos é de 13%. Algumas das razões pelas quais esses estudantes abandonem os cursos em MOOC estão relacionadas a limitações da plataforma tecnológica. Nesse sentido, esta pesquisa teve por objetivo investigar se a qualidade da metacomunicação semiótica influenciou a permanência ou o abandono dos estudantes em cursos MOOC. Esta pesquisa foi realizada em quatro etapas. A primeira consistiu na execução de uma revisão de literatura, com o objetivo de identificar elementos de natureza tecnológica que influenciaram a permanência ou o abandono em MOOC. Com a execução dessa revisão, foram encontradas vinte e quatro causas gerais de abandono em MOOC. Na segunda etapa foi realizado um estudo de caso com quatro momentos: desenvolvimento de uma plataforma de MOOC; avaliação da qualidade da metacomunicação do design de interação de um curso nesta plataforma; execução do curso; e, por último, identificação e avaliação das rupturas de comunicabilidade existentes no caso estudado. Na avaliação em tempo de design, foi utilizada a técnica MoLVERIC Check, para a identificação das rupturas de comunicabilidade no design de um curso MOOC, que posteriormente foram mitigadas. A coleta dos dados com sujeitos ocorreu por meio de questionários e análise do fórum do curso no período de sua execução. Por fim, foram utilizados os Métodos de Inspeção Semiótica (MIS) e Avaliação de Comunicabilidade (MAC) para identificação de rupturas de comunicabilidade na plataforma MOOC. Na terceira etapa ocorreu a análise dos dados coletados, relacionando a avaliação do design de interação, dos questionários, análise dos fóruns e da avaliação de comunicabilidade. Os resultados encontrados possibilitaram o desenvolvimento de um conjunto de diretrizes de design e avaliação de interação para MOOC, sob o ponto de vista da comunicabilidade.


  • Mostrar Abstract
  • MOOC is an acronym for Massive Open Online Course, an online education modality
    o ering video courses, with di erent ages, backgrounds and nationalities. The MOOCs
    have emerged as technological innovations that idealize a democratization of education,
    through a course of free courses. This modality of teaching has as characteristic a population
    of di erent ages, formations and nationalities. However, MOOCs are subject to a
    high rate of their students, corresponding to their main criticisms. You can participate
    at any time, a completion rate for most courses of 13%. Some of the conventions students
    attend are those related to the technology platform. In this sense, the research had
    to investigate the quality of semiotic metacommunication inuencing the permanence or
    the abandonment of education in MOOC courses. The research was carried out in four
    stages. The rst one consisted in the execution of a literature review, in order to identify
    the elements of the nature of the genetics that infuenced the permanence and the abandonment
    in MOOC. With the review vote, twenty-four general causes of abandonment in
    MOOC were found. The second stage was held a study of documentary events moments:
    development of a platform of MOOC; evaluation of the quality of the metacommunication
    of the interaction design of a course in this platform; course implementation; and, nally,
    to identify and evaluate the ruptures of communicability existing in the case studied. In
    the design-time evaluation, a MOOCLICAR technique was applied, which was mitigated.
    The data sheet with the data of the course of analysis and analysis of the course was not
    carried out. Finally, the Semiotic Inspection (SIM) and Communality Assessment (CEM)
    methods were used to identify communication disruptions in the MOOC platform. The
    third phase of the session had an analysis of the collected data, relating the evaluation
    of the interaction design, the questionnaires, the analysis of forums and the assessment
    of communicability. The results can be useful for the development of a set of interaction
    design and evaluation guidelines for the MOOC from a communication point of view.

19
  • JORGE FERNANDO SILVA PEREIRA FILHO
  • Variability Based Approach to Generate and Disseminate Emergency Public Communications.
  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • MANOEL GOMES DE MENDONCA NETO
  • CLAUDIO GUIMARAES CARDOSO
  • KARINA BARRETO VILLELA
  • Data: 28/09/2018

  • Mostrar Resumo
  • Uma emergência é imprevisível por natureza, mas apresenta padrões que podem ajudar os comunicadores a antecipar problemas e dar melhores respostas a situações de emergência. As soluções atuais para comunicação pública de emergência concentram-se na disseminação de uma única mensagem através de diferentes canais de comunicação. Esta estratégia vai contra as boas práticas de comunicação, porque diferentes públicos têm diferentes necessidades de informação. Mensagens inadequadas de comunicação pública criam ruído e podem ampliar a percepção de risco e insegurança. Nossa pesquisa propõe umanova abordagem  para comunicação pública em emergências. Mapeia e modela a variabilidade em processos de comunicação de emergência para garantir a flexibilidade e adaptabilidade da comunicação para diferentes cenários de emergência. Nossa abordagem visa facilitar a rápida instanciação de comunicações de emergência personalizadas e consistentes, em diferentes canais, para diferentes públicos. Nossa pesquisa foi conduzida como parte de um grande projeto de pesquisa denominado RESCUER, que utiliza informações de crowdsourcing para gerenciar situações de emergência. Para avaliar o modelo de comunicação, uma prova de conceito, denominada RESCUER News, foi construída e avaliada em simulações envolvendo forças reais públicas e operacionais, em três cenários distintos de emergência.


  • Mostrar Abstract
  • An emergency is unpredictable by nature, but it presents patterns that can help communicators to anticipate problems and give better responses to emergency situations. Current solutions for emergency public communication focus on the dissemination of a single message through different communication channels. This strategy goes against good communication practices because different audiences have different information needs. Inappropriate public communication messages create noise and can amplify the perception of risk and insecurity. Our research proposes a novel approach for public communication in emergencies. It maps and models variability in emergency communication processes to ensure the flexibility and adaptability of the communication for different emergency scenarios. Our approach aims to facilitate the rapid instantiation of customised and consistent emergency communications, over different channels, for different audiences. Our research was conducted as part of a large research project named RESCUER, which uses crowdsourcing information to manage emergency situations. To evaluate the communication model, a proof of concept, named RESCUER News, was built and evaluated in simulations involving real public and operational forces, over three distinct emergency scenarios.

     

20
  • LUCAS AMPARO BARBOSA
  • Remoção de expressões faciais em imagens 3D para fins de reconhecimento

  • Orientador : MAURICIO PAMPLONA SEGUNDO
  • MEMBROS DA BANCA :
  • ALEXANDRE DA COSTA E SILVA FRANCO
  • LUCIANO REBOUCAS DE OLIVEIRA
  • MAURICIO PAMPLONA SEGUNDO
  • Data: 17/10/2018

  • Mostrar Resumo
  • A pesquisa realizada apresenta um modelo de rede neural encoder-decoder para remover deformações causadas por expressões faciais em imagens 3D. Este modelo recebe uma imagem 3D da face com ou sem expressões como entrada e gera uma face neutra como saída. O objetivo não é obter um resultado realístico e sim melhorar a precisão de sistemas de reconhecimento facial 3D. Para realizar isso, foi proposto o uso de uma função de erro baseada em um sistema de reconhecimento durante o processo de treinamento para que a rede aprendesse a manter informações inerentes à identidade do indivíduo na saída. Os experimentos usando a base de dados Bosphorus 3D mostraram que a técnica foi bem sucedida em reduzir a diferença entre imagens do mesmo indivíduo afetadas por diferentes expressões faciais e ampliar a distância entre diferenças intraclasse e interclasse. Eles também mostram que nossas imagens neutras geradas sinteticamente melhoram os resultados de quatro métodos de reconhecimento, atingindo assim o objetivo original.


  • Mostrar Abstract
  • The research carried out has a neural coder model encoder-decoder of images removed by facial functions in 3D images. This model receives a 3D image of the face with or without the keys as input and generates a neutral face as an output. The real is not a device that can be developed but rather perfect an accuracy of 3D facial recognition systems. For ready to, the standard of an error based on a system information in the user? Experiments using a Bosporus 3D database had a difference in range between images of the same and different modes of interaction between intraclass and interclass differences. They were also shown in our synthetically generated neutral surveys and the results of our recognition methods, thus reaching the original.

21
  • MARCO ANTONIO PARANHOS SILVA
  • Variability Implementation: An Empirical Study of Stack Overflow Posts

  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • RODRIGO ROCHA GOMES E SOUZA
  • EDUARDO SANTANA DE ALMEIDA
  • RODRIGO OLIVEIRA SPINOLA
  • Data: 12/11/2018

  • Mostrar Resumo
  • Nesta dissertação, uma investigação empírica foi realizada com o objetivo de compreender como a implementação da variabilidade de tema é discutida pela comunidade de desenvolvedores de software que utilizam o site Stack Overflow. Inicialmente, uma lista de 52 palavras relacionadas a esse tema foi definida com base na literatura e na opinião de especialistas. Eles foram então usados como o vocabulário inicial para o algoritmo que implementa a Alocação de Dirichlet Latente (LDA) para identificar os principais tópicos relacionados à implementação da variabilidade, bem como para validar as palavras na lista. Em seguida, com as palavras mais utilizadas nas perguntas e respostas, validadas pela LDA, foram realizadas buscas no conjunto de dados recuperado da plataforma Stack Overflow e diversos estudos foram realizados para encontrar o melhor conjunto a ser analisado.O melhor resultado foi obtido combinando essas palavras dois a dois, e assim 1962 perguntas foram recuperadas. Essas questões de 1962 foram então analisadas com o objetivo de descobrir os mecanismos de implementação da variabilidade mais discutidos, menos discutidos e não discutidos; qual é o atraso na resposta às questões formais sobre a implementação da variabilidade e quanto tempo duram as discussões; e finalmente, qual é o perfil dos usuários do Stack Overflow que perguntaram e responderam as questões recuperadas, bem como o grau de confiança que se pode ter sobre a qualidade das perguntas e respostas apresentadas. Um dos principais resultados desta pesquisa foi a definição de uma lista de palavras que se referem a conceitos e técnicas de implementação de variabilidade que são mais comumente usados pela comunidade Stack Overflow. Outro são os resultados da pesquisa a partir da análise das questões e respostas selecionadas, tais como: dois grupos de palavras foram identificados como os mais utilizados pela comunidade Stack Overflow: mais uma conceitual e mais uma relacionada às técnicas de implementação de variabilidade; o tempo médio de atraso para a primeira resposta às perguntas e a duração da discussão quando há mais de uma resposta; e, finalmente, um estudo sobre o grau de confiança no grupo de usuários do Stack Overflow que fez perguntas ou respondeu perguntas com base no indicador de reputação dos membros da comunidade.

     


  • Mostrar Abstract
  • In this dissertation, an empirical investigation was carried out aiming at understanding how the theme variability implementation is discussed by the community of software developers who use the Stack Overflow website. Initially, a list of 52 words related to this theme was defined based on the literature and the opinion of experts. They were then used as the initial vocabulary for the algorithm that implements the Latent Dirichlet Allocation (LDA) in order to identify the main topics related to variability implementation, as well as to validate the words in the list. Then, with the most used words in the questions and answers, as validated by LDA, searches were performed on the dataset retrieved from the Stack Overflow platform and several studies were carried out to find the best set to be analyzed.

    The best result was obtained by combining these words two by two, and thus 1962 questions were retrieved. These 1962 questions were then analyzed with the objective of discover the mechanisms of variability implementation more discussed, less discussed and not discussed; what is the delay in responding to the formal questions on variability implementation and how long the discussions last; and finally, what is the profile of Stack Overflow users who asked and answered the questions retrieved, as well as the degree of confidence one can have about the quality of the questions and answers presented. One of the main results of this research was the definition of a list of words that refer to variability implementation concepts and techniques that are most commonly used by the Stack Overflow community. Other one are the research results from analyzing the questions and answers selected, such as: two groups of words were identified as those most used by the Stack Overflow community: one more conceptual and one more related to variability implementation techniques; the average delay time for the first answer to the questions and the duration of the discussion when there is more than one answer; and finally an study on the degree of confidence in the Stack Overflow user group who asked questions or answered questions based on the reputation indicator of community members.

     

22
  • LEANDRO MANUEL PEREIRA SANCHES
  • Anotação Semântica Semiautomática De Objetos De Aprendizagem Em Português

  • Orientador : LAIS DO NASCIMENTO SALVADOR
  • MEMBROS DA BANCA :
  • CLARISSA CASTELLÃ XAVIER
  • DANIELA BARREIRO CLARO
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • Data: 13/11/2018

  • Mostrar Resumo
  • No Brasil, o e-learning está em rápida expansão e os Objetivos de Aprendizagem (OA) são uma das formas de desenvolvimento para a modalidade de ensino. Uma das principais vantagens dos OA é uma possibilidade de reutilização de conteúdo didático digital na internet. No caso de reutilização, o OA deve estar disponível e acessível para professores e alunos. A disponibilidade de um OA pode ser influenciada por fatores, como: dificuldade de adicionar metadados em OA; falta de padronização e estruturação dos metadados; falta de descrição semântica dos objetos; as dificuldades de adicionar metadados semânticos a OA e uma falta de compreensão pela máquina do conteúdo dos OA. As tecnologias para Web semântica visam estruturar os dados presentes na Web de modo legível por máquina. No contexto educacional, essas tecnologias permitem anotar metadados semânticos, baseadas em ontologias, em Objetos de Aprendizagem Auxiliar na sua recuperação e reutilização. Contudo, uma anotação manual de metadados semânticos é o autor por autores como uma tarefa cara, mentalmente exigente e demorada. Uma vez que este é um documento que procura descobrir e atualizar as informações de um manual, este estudo acredita que é uma opção automatizada e uma anotação de metadados semânticos são temas importantes para uma educação baseada na Web. Assim, esse trabalho propoe um novo modelo para extração e anotação de metadados semânticos de forma semiautomática a Objetos de Aprendizagem em português. Esse modelo utiliza o padrão de metadados Metadados de Objetos de Aprendizagem (LOM) e tecnologias para a Web semântica como uma linguagem e uma estrutura de recursos (RDF). O presente estudo foi diferente de outros estudos que realizaram uma anotação semântica de OA em outros idiomas e seu principal diferencial é uma aplicação de um sistema de extração de informações e de desambiguação que objetivava a extração de relações semânticas no lugar da identificação de apenas entidades. Permitindo assim, anotar tanto a relação quanto os relacionamentos entre as entidades no texto. Para a avaliação deste modelo, um dos principais e mais recentes métodos de desambiguação de descritores de desempenho foram avaliados e avaliados. O protótipo de anotação foi capaz de extrair as semânticas da OA textuais com uma máxima precisão de 37,5%. O protótipo de anotação também foi capaz de converter as relações extras em metadados semânticos LOM na linguagem RDF.


  • Mostrar Abstract
  • In Brazil, e-learning is rapidly expanding and Learning Objectives (OA) are one of the forms of development for the teaching modality. One of the main advantages of OA is the possibility of reusing digital didactic content on the internet. In the case of re-use, OA must be available and accessible to teachers and students. The availability of an OA can be influenced by factors such as: difficulty in adding metadata to OA; lack of standardization and structuring of metadata; lack of semantic description of objects; the difficulties of adding semantic metadata to OA and a lack of machine understanding of OA content. Semantic Web technologies aim to structure the data present on the Web in a machine-readable way. In the educational context, these technologies allow to annotate semantic metadata, based on ontologies, in Auxiliary Learning Objects in their recovery and reuse. However, a manual annotation of semantic metadata is the author by authors as an expensive, mentally demanding and time consuming task. Since this is a document that seeks to discover and update the information of a manual, this study believes that it is an automated option and a semantic metadata annotation are important themes for a web-based education. Thus, this work proposes a new model for extracting and annotating semi-automatic semantic metadata from Learning Objects in Portuguese. This model uses the metadata Metadata for Learning Objects (LOM) and technologies for the Semantic Web as a language and a resource structure (RDF). The present study was different from other studies that carried out a semantic annotation of OA in other languages and its main differential is an application of a system of information extraction and disambiguation that aimed at the extraction of semantic relations rather than the identification of only entities. This allows us to note both the relationship and the relationships between the entities in the text. For the evaluation of this model, one of the main and most recent methods of disambiguation of performance descriptors was evaluated and evaluated. The annotation prototype was able to extract the textual OA semantics with a maximum accuracy of 37.5%. The annotation prototype was also able to convert the extra relations into semantic LOM metadata in the RDF language.

23
  • EDILTON LIMA DOS SANTOS
  • SHE: An automated support for dynamic software product lines engineering

  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • CASSIO VINICIUS SERAFIM PRAZERES
  • EDSON ALVES DE OLIVEIRA JUNIOR
  • Data: 26/11/2018

  • Mostrar Resumo
  • A engenharia de linhas de produto de software dinˆamica (DSPL) possibilita a entrega de produtos de software capazes de se adaptar `as flutua¸c˜oes nas necessidades do usu´ario e `a crescente limita¸c˜ao de recursos em tempo de execu¸c˜ao. Com base em uma abordagem centrada em arquitetura, uma DSPL ´e capaz de analisar mudan¸cas no contexto, respondendo e executando adapta¸c˜oes do sistema. Uma estrat´egia DSPL precisa responder a duas quest˜oes-chave: (i) Quando se adaptar? - Diz respeito a determinar o momento espec´ıfico em que certas circunstˆancias (contexto ou ambiente) s˜ao dadas e provocam adapta¸c˜oes ou mudan¸cas; e (ii) Como se adaptar? - Diz respeito `as decis˜oes de projeto tomadas no sentido de encontrar a sequˆencia apropriada de a¸c˜oes a serem adaptadas e os mecanismos que permitem essas adapta¸c˜oes, como por exemplo, substitui¸c˜oes de componentes, composi¸c˜ao e frameworks, t´ecnicas de plug-in, ativa¸c˜ao e desativa¸c˜ao de features, propriedades de contexto etc. Com o objetivo de responder `as quest˜oes-chave, esta investiga¸c˜ao prop˜oe um modelo de arquitetura para DSPL baseado no MAPE-K (Monitor-Analyze-Plan-Execute-Knowledge), como uma estrat´egia vi´avel para reunir e analisar informa¸c˜oes contextuais, permitindo a reconfigura¸c˜ao do produto em tempo de execu¸c˜ao. Neste estudo, avaliamos empiricamente a capacidade da infraestrutura de software e hardware em prover suporte `as necessidades de adapta¸c˜ao em cen´arios de mudan¸ca de contexto. A avalia¸c˜ao da arquitetura considerou a implementa¸c˜ao de um sistema no dom´ınio de Smart Homes, utilizando Open Service Gateway Initiative (OSGi) e o broker de comunica¸c˜ao Message Queue Telemetry Transport (MQTT). Desenvolvemos um framework baseado na arquitetura proposta, chamado de SHE Framework. Os resultados demonstraram a capacidade da DSPL em se adaptar e se reconfigurar de acordo com os novos sensores conectados ao sistema. A arquitetura proposta foi capaz de identificar a mudan¸ca de contexto e encontrar a sequˆencia apropriada de a¸c˜oes a serem adaptadas e os mecanismos que permitem tais adapta¸c˜oes. Al´em disso, avaliamos qualitativamente o framework proposto, com base na norma ISO/IEC 25010, tendo como participantes profissionais da ind´ustria e pesquisadores. Os seguintes atributos de qualidade foram considerados: modularidade, reusabilidade, analisabilidade, modificabilidade, testabilidade, adaptabilidade, instalabilidade, interoperabilidade e usabilidade. Como resultado, os participantes do estudo consideraram a arquitetura altamente modular e com alta capacidade de reutiliza¸c˜ao e adaptabilidade.


  • Mostrar Abstract
  • Dynamic Software Product Lines (DSPL) engineering makes it possible to deliver software products capable of adapting to fluctuations in user needs and evolving resource constraints at runtime. Based on an architecture-centric approach, a DSPL is capable to analyze changes in context, thus responding by performing system adaptations. In this work, we propose an architecture model for DSPL engineering based on the MAPE-K model concept, a feasible strategy to gather and analyze contextual information thus enabling product reconfiguration at runtime. We evaluated the proposed architecture model in a Smart Home System, using OSGi and MQTT. A proof of concept of the proposed model was performed and the results demonstrated  capability the DSPL to adapt and reconfigure itself according to the new sensors connected to the system. In addition, the framework built for proof of concept was evaluated by industry professionals and students of masters and doctorate. They consider the architecture to be highly modular and which has a high capacity for reuse and adaptability.

24
  • ANNA LUÍZA DE OLIVEIRA BARBOSA
  • Domain Specific Languages built from Software Product Lines: An Empirical Study on Visual and Textual Approaches
  • Orientador : EDUARDO SANTANA DE ALMEIDA
  • MEMBROS DA BANCA :
  • EDUARDO SANTANA DE ALMEIDA
  • RODRIGO ROCHA GOMES E SOUZA
  • ANDRÉ LUIS MEDEIROS SANTOS
  • Data: 26/11/2018

  • Mostrar Resumo
  • Soluções genéricas ou específicas podem ser aplicadas em todos os ramos da ciência e engenharia. Uma abordagem genérica fornece uma solução geral para muitos problemas em uma determinada área, mas essa solução pode ser sub-ótima. Uma abordagem específica fornece uma solução muito melhor para um conjunto menor de problemas. Linguagens Específicas de Domínio (DSL) são meios, não metas, direcionadas ao propósito final de simplificar o processo de desenvolvimento de software. Eles podem ser classificados como internos, escritos em uma linguagem hospedeira ou em idiomas externos e separados, que trazem sua própria sintaxe. Uma DSL externa precisa de um idioma, compilador ou intérprete e um editor para suportar o novo idioma. Uma DSL pode ser exibida em uma notação visual e / ou textual. Este estudo propõe a implementação de uma DSL textual e visual para os domínios Conference Management (CM) e Smart Home (SH), usando linhas de produtos legadas e integrar o desenvolvimento de DSL com o Software Product Lines Engineering (SPLE). Além disso, conduzimos um estudo exploratório com os desenvolvedores originais do sistema com o objetivo de validar nossa DSL e caracterizar barreiras e benefícios para o desenvolvimento de software usando DSL, bem como um estudo empírico para comparar a DSL textual e visual quanto à legibilidade, eficácia, eficiência e facilidade. de uso. O teste de hipótese demonstrou melhor facilidade de uso e eficiência ao relatar bugs usando a notação visual, enquanto as outras métricas não apresentaram diferença estatística. No entanto, a análise dos dados utilizando estatística descritiva mostrou evidências de que a notação visual apresentava melhor desempenho ao relatar bugs, enquanto a notação textual é mais rápida ao mudar programas de DSL. Em relação ao senso de sucesso dos participantes em concluir as atividades, o relatório de bugs usando a notação textual teve um resultado melhor do que o esperado.


  • Mostrar Abstract
  • Generic or specific solutions can be applied in all branches of science and engineering. A generic approach provides a general solution for many problems in a certain area, but this solution may be suboptimal. A specific approach provides a much better solution for a smaller set of problems. Domain Specific Languages (DSL) are means, not goals, targeted at the final purpose of simplifying the software development process. They can be classified as internal, written in a host language or external, separate languages which bring their own syntax. An external DSL needs a language, compiler or interpreter, and an editor to support the new language. An DSL can be displayed in a visual and/or textual notation. This study proposes to implement a textual and a visual DSL for the Conference Management (CM) and the Smart Home (SH) Domains, using legacy product lines and integrate the DSL development with Software Product Lines Engineering (SPLE). Additionally, we conducted an exploratory study with the system’s original developers aiming at validating our DSL and characterizing barriers and benefits to software development using DSL as well as an empirical study conducted to compare the textual and the visual DSL regarding readability, effectiveness, efficiency and ease of use. The hypothesis test demonstrated better ease of use and efficiency when reporting bugs using the visual notation while the other metrics did not present statistical difference. However, the data analysis using descriptive statistics showed evidence that the visual notation had better performance when reporting bugs, while the textual notation is faster when changing DSL programs. Regarding the participants’ sense of success in completing the activities, the report of bugs using the textual notation had a better outcome than they expected.

25
  • DENIVAN DO CARMO CAMPOS DA SILVA
  • Ferramentas de testes de interação combinatória para Linha de Produto de Software: Uma análise comparativa.
  • Orientador : IVAN DO CARMO MACHADO
  • MEMBROS DA BANCA :
  • RODRIGO ROCHA GOMES E SOUZA
  • IVAN DO CARMO MACHADO
  • WESLEY KLEWERTON GUEZ
  • Data: 28/11/2018

  • Mostrar Resumo
  • estar um sistema é uma atividade de rotina e desempenha um papel importante no processo de garantia de qualidade do software.
    No entanto, testar sistemas altamente configuráveis, como linhas de produto de software (SPL), é uma atividade muito complexa devido a presença de variabilidade em seu processo de engenharia, o que aumenta o número de configurações de produto a serem testadas. Em Caso um defeito afete um (ou um subconjunto) dessas funcionalidades, uma gama de produtos (e não apenas um, como Engenharia de Software tradicional) podem ser afetados. Tal complexidade também implica um aumento significativo no custo de teste. Nesse sentido, um dos principais desafios é reduzir esse custo e o uso de ferramentas de automação de traga uma contribuição significativa para alcançar essa redução. Entre as técnicas mais eficazes, combinatória O teste de interação (CIT) se destaca como uma estratégia acessível que busca otimizar o espaço de configuração a ser testado. este estudo teve como objetivo analisar a efetividade das ferramentas que implementam a técnica de CIT considerando um conjunto de métricas aplicado ao contexto de testes de variabilidade. Esta dissertação apresenta o MERCI, um método para avaliar a combinação Técnicas de Teste de Interação. O objetivo do MERCI é avaliar a adequação das ferramentas de CIT existentes, em grande teste de sistema único, para engenharia de SPL. Neste trabalho, consideramos três medidas: detecção de defeitos, teste cobertura e duração da execução do teste. Realizamos uma avaliação empírica para comparar quatro ferramentas de CIT: ACTS, CATS, PICTMaster e VPTag. Os resultados mostram que o método pode servir como um bom indicador para avaliar como as ferramentas do CIT poderia se comportar em um cenário de teste de SPL.


  • Mostrar Abstract
  • Testing a system is a routine activity and plays an important role in the software quality assurance process.
    However, testing highly-configurable systems, such as Software Product Lines (SPL), is a very complex activity due to
    the presence of variability in its engineering process, which increases the number of product configurations to test. In
    case a defect affects one (or a subset) of these functionalities, a range of products (and not just one, such as
    traditional Software Engineering) may be affected. Such complexity also implies a significant increase in the cost of
    testing. In this sense, one of the major challenges is to reduce this cost and the use of test automation tools could
    bring a significant contribution to achieve such a reduction. Among the most effective techniques, combinatorial
    interaction testing (CIT) stands out, as an affordable strategy seeking to optimize the configuration space to test. This
    study aimed to analyze the effectiveness of the tools that implement the CIT technique considering a set of metrics
    applied to the context of variability testing. This dissertation introduces the MERCI, a Method to Evaluate Combinatory
    Interaction Testing techniques. MERCI is aimed to evaluate the suitability of existing CIT tools, largely employed in
    single-system testing, for SPL engineering. In this work, we considered three measures: defect detection, test
    coverage and test execution length. We performed an empirical evaluation to compare four CIT tools: ACTS, CATS,
    PICTMaster and VPTag. The results show that the method can serve as a good indicator to evaluate how CIT tools
    could behave in an SPL testing scenario.

26
  • LEANDRO SOUZA DE OLIVEIRA
  • DptOIE: um método para Extração de Informação Aberta na língua Portuguesa baseado em Análise de Dependência

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • MARLO VIEIRA DOS SANTOS E SOUZA
  • RENATA VIEIRA
  • Data: 07/12/2018

  • Mostrar Resumo
  • Estima-se que mais de 80% das informações na Web estão armazenadas na forma textual e que elas podem agregar valor a diversos negócios. Contudo, a maior partede todo conteúdo gerado é heterogêneo. Nesse contexto, analisar todas as informações que surgem diariamente de forma manual é uma tarefa lenta e inviável. Por esse motivo, as pesquisas na área de Extração da Informação (EI) têm aumentado nos últimos anos. A EI tem a função de transformar dados não estruturados em estruturados por meios de técnicas de Extração de Relação (ER). Uma relação pode conectar um ou mais pares de entidades. Elas normalmente são compostas por sintagmas verbais e podem ser do tipo: "nasceu em", "é um", "correu" etc. Os métodos tradicionais de EI focam em domínios pequenos, homogêneos e necessitam que as relações sejam previamente estabelecidas. Porém, esse tipo de abordagem não é escalável para bases de dados maiores, tornando complicado estabelecer novas relações à medida que os documentos crescem ou odomínio se altere. Assim, uma nova abordagem de EI surgiu, a Extração deInformação Aberta (EIA). Ela permite extrair fatos, normalmente na forma detriplas, sem a necessidade de especificar previamente as relações, sendo mais escalável e independente de domínio. A EIA pode ser aplicada na área de business intelligence, mineração de opiniões, sistemas de perguntas e respostas, entre outros. Inicialmente, a maior parte dos métodos de EIA foram desenvolvidos para a língua inglesa. Todavia, outros idiomas, como o Português, também merecem destaque, visto que este engloba aproximadamente 2,5% de todo conteúdo disponível em Websites. Os sistemas de EIA que tem apresentado um dos melhores desempenhos no inglês tem utilizado análise de dependência e são baseados em regras, as quais são utilizadas para identificar um conjunto de informações nas sentenças para compor os fatos, como: sujeitos, objetos, advérbios, complementos, etc. Porém, na língua portuguesa, a mesma abordagem não tem demonstrado o mesmo efeito, pois muitas vezes as regras estabelecidas são genéricas e não cobrem aspectos específicos do idioma. Por esse motivo, neste trabalho é proposto o DptOIE, o qual utiliza novas regras e visa explorar as sentenças por meio da análise de dependência e uma busca em profundidade. Além disso, também foram desenvolvidos módulos para realizar tratamentos particulares e derivar novos fatos de sentenças que possuem conjunções coordenadas, orações subordinadas e aposto. O DptOIE foi comparado com outros três métodos de EIA que tem se destacado na língua Portuguesa, que são: PragmaticOIE, DependentIE e ArgOE. Os resultados confirmaram que o DptOIE obteve área sob a curva da precisão-yield maior e foi superior na quantidade de fatos coerentes extraídos, além de manter elevada precisão.


  • Mostrar Abstract
  • It is estimated that 80% of the information on the Web is stored and are textual that can add value to various businesses. However, most of the index is heterogeneous. In this context, all the information that comes manually daily is a slow and unfeasible task. For this reason, as research in the area of Information Extraction (EI) has advanced in recent years. The EI has a function of generating the data in a process by means of Relation Extraction (ER) techniques. A relationship can connect a couple of entities. The normal ones are the words related to the syntax and can be of the type: "born in", "is a", "ran", and so on. EI's arguments focus on small, homogeneous, and early commands. However, this type of approach is not scalable for larger databases, that is, new rules for hiring new ways to become incremental documents or odomains to change. Thus, a new EI approach emerged, an Open Information Extraction (EIA). It allows you to extract facts, usually in detriplas form, without the need to pre-specify relationships, being more scalable and domain independent. The EIA can be applied in the area of business intelligence, opinion mining, question and answer systems, among others. Initially, most EIA methods were developed for the English language. However, other languages, such as Portuguese, also deserve prominence, since it comprises approximately 2.5% of all content available on websites. The EIA systems that have presented one of the best performances in English have used dependency analysis and are based on rules, which are used to identify a set of information in the sentences to compose the facts, such as: subjects, objects, adverbs, complements , etc. However, in the Portuguese language, the same approach has not shown the same effect, since the established rules are often generic and do not cover specific aspects of the language. For this reason, in this work the DptOIE is proposed, which uses new rules and aims to explore sentences through dependency analysis and an in-depth search. In addition, modules have also been developed to perform particular treatments and derive new facts from sentences that have coordinated conjunctions, subordinate clauses and wording. The DptOIE has been compared to three other EIA methods that have stood out in the Portuguese language, which are: PragmaticOIE, DependentIE and ArgOE. The results confirmed that the DptOIE obtained area under the curve of the greater precision-yield and was superior in the quantity of coherent facts extracted, besides maintaining high precision.

27
  • NILSON RODRIGUES SOUSA
  • M2-FoT: Monitoramento e Gerenciamento de Plataformas da Névoa das Coisas

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • IVAN DO CARMO MACHADO
  • CELSO ALBERTO SAIBEL SANTOS
  • Data: 10/12/2018

  • Mostrar Resumo
  • A Internet das Coisas (Internet of Things - IoT) é um paradigma no qual objetos físicos embarcados com sensores e atuadores são conectados à Internet, possibilitando a criação de soluções para diversas áreas da vida humana. Dado que a quantidade de coisas conectadas à Internet tende a aumentar cada vez mais, são necessárias novas formas de gestão e monitoramento dessas coisas. Nesse contexto, este trabalho tem como objetivo de propor e desenvolver um método de gestão e monitoramento dos elementos que compõem um ambiente IoT. O método proposto abrange atividades de monitoramento e gerenciamento da configuração e dos estados dos componentes do ambiente IoT. Para alcançar esse objetivo, este trabalho utiliza o modelo arquitetural de referência ARM-IoT (Architectural Reference Model for the IoT), que possibilita elencar os elementos comuns que fazem parte de um ambiente IoT e necessitam de gerenciamento e monitoramento. A abordagem desenvolvida está baseada no protocolo SNMP (Simple Network Management Protocol), o qual utiliza um modelo de gerente/agente, em que um gerente concentra as ações mais complexas de gerenciamento e o agente é responsável por coletar as informações sobre a infraestrutura. Dessa forma, este trabalho de mestrado propõe o M2-FoT: um método, baseado no ARM-IoT e no SNMP, que utiliza uma abordagem de gerenciamento no qual um servidor (atuando como um gerente SNMP) concentra as ações mais robustas e delega ações para a infraestrutura através de agentes que são hospedados em gateways IoT (atuando como agentes SNMP). O método proposto foi implantado e validado utilizando a plataforma SOFT-IoT (Self-Organizing Fot of Things for the IoT), que implementa vários dos conceitos descritos na ARM-IoT. Diante desse contexto, este trabalho apresenta o M2-FoT que é composto pelo IoTManagerServer e o IoTManagerClient, similares ao modelo de gerente e agente do protocolo SNMP. Permitindo, assim, o gerenciamento e monitoramento de ambientes IoT. A implementação do M2-FoT foi experimentada dentro da plataforma SOFT-IoT e os aspectos avaliados foram: consumo de hardware pelos dispositivos; eficiência de resposta do M2-FoT na recuperação da configuração da infraestrutura; e a acurácia das informações armazenadas pelo M2-FoT.


  • Mostrar Abstract
  • The Internet of Things (IoT) is a paradigm in which physical objects embedded with sensors and actuators are connected to the Internet, enabling the creation of solutions for various areas of human life. As the amount of things connected to the Internet tends to increase more and more, new ways of managing and monitoring these things are needed. In this context, this work aims to propose and develop a method of management and monitoring of the elements that make up an IoT environment. The proposed method covers activities of monitoring and managing the configuration and states of the components of the IoT environment. In order to achieve this objective, this work uses the ARM-IoT (Architectural Reference Model for the IoT) reference model, which enables the listing of common elements that are part of an IoT environment and require management and monitoring. The approach developed is based on the Simple Network Management Protocol (SNMP), which uses a manager / agent model, where a manager concentrates the most complex management actions and the agent is responsible for collecting information about the infrastructure. Thus, this master's work proposes M2-FoT: a method, based on ARM-IoT and SNMP, that uses a management approach in which a server (acting as an SNMP manager) concentrates the most robust actions and delegates actions to the infrastructure through agents that are hosted on IoT gateways (acting as SNMP agents). The proposed method was implemented and validated using the SOFT-IoT (Self-Organizing Fot of Things for the IoT) platform, which implements several of the concepts described in ARM-IoT. Given this context, this work presents the M2-FoT that is composed by IoTManagerServer and IoTManagerClient, similar to the manager model and SNMP protocol agent. This allows the management and monitoring of IoT environments. The implementation of M2-FoT was tested within the SOFT-IoT platform and the evaluated aspects were: hardware consumption by the devices; response efficiency of M2-FoT in the recovery of the infrastructure configuration; and the accuracy of the information stored by M2-FoT.

28
  • MARCELO AIRES VIEIRA
  • Interoperabilidade entre DaaS heterogêneos em nuvens através de junções

  • Orientador : DANIELA BARREIRO CLARO
  • MEMBROS DA BANCA :
  • DANIELA BARREIRO CLARO
  • VANINHA VIEIRA DOS SANTOS
  • RONALDO DOS SANTOS MELLO
  • Data: 11/12/2018

  • Mostrar Resumo
  • Com o crescimento dos serviços em nuvem, muitas organizações começaram a persistir e disponibilizar seus dados por meio de serviços como Data as a Service (DaaS) e Database as a Service (DBaaS). Diferentes fontes de dados para serem utilizadas por um aplicativo exigem esforços na interoperabilidade destes dados que podem ainda ser de modelos distintos, tais como relacional, NoSQL e NewSQL, ou ainda não estruturados (texto simples), semi-estruturados (XML, JSON, CSV) e estruturado (SGBDR). A heterogeneidade inerente aos DaaS e DBaaS dificulta a junção destes serviços e a utilização unificada por uma aplicação. Assim, o presente trabalho propõe um método que visa interoperar os dados de DaaS e DBaaS heterogêneos através das junções dos dados. O método denominado MiDIJo (Middleware for Data Interoperability via Join) permite gerenciar um modelo unificado para interoperar modelos distintos. O MiDIJo reconhece a consulta, analisa o tipo de junção necessária, e relaciona os atributos da junção. O MiDIJo foi formalmente descrito através de modelos canônicos e incorporado ao middleware MIDAS com o intuito de validar o seu desempenho e eficácia. Um caso de uso e três experimentos foram realizados com a finalidade de validar o MiDIJo: (i) o primeiro experimento seleciona e obtém dados em diferentes DaaS e DBaaS; (ii) o segundo associa dados entre diferentes DaaS e DBaaS (junção); finalmente, (iii) o terceiro considera diferentes tipos de DBaaS (Relacional, NoSQL e NewSQL), com duas junções. O caso de uso e os experimentos possibilitaram avaliar a viabilidade, funcionalidade, interoperabilidade e desempenho do método MiDIJo. Os resultados demonstram a eficácia do método em selecionar e agregar dados nas nuvens apesar da complexidade do problema de interoperabilidade e junção.


  • Mostrar Abstract
  • With the media database, many organizations have begun providing and delivering data through services such as Data as a Service (DaaS) and Database as a Service (DBaaS). Different data sources for certain applications, such as Relational, NoSQL and NewSQL, or not yet structured (plain text), semi-structured (XML, JSON, CSV) and structured (RDBMS). Inherent heterogeneity of DaaS and DBaaS makes it difficult to merge services and unified use by an application. Thus, the present work is a method that aims to interoperate the heterogeneous DaAS and DBaaS data through the data junctions. The method called MiDIJo (Middleware for Data Interoperability via Join) allows a unified model to interoperate between different models. MiDIJo recognizes the query, the required join type analysis, and lists the join attributes. MiDIJo was formally discontinued through canonical models and incorporated into MIDAS middleware in order to validate its performance and effect. A use case and three experiments were performed with a MiDIJo validation purpose: (i) the first experiment selects and obtains data in different DaaS and DBaaS; (ii) the second associates data between different DaaS and DBaaS (junction); Finally, (iii) the third considers different types of DBaaS (Relational, NoSQL and NewSQL) with two joins. The use case and the experiments allowed the viability, functionality, interoperability and performance of the MiDIJo method. The results are demonstrated through a methodology that allows selecting and aggregating data in the clouds for the complexity of the interoperability and junction problem.

29
  • FABIO CORREIA DE REZENDE
  • O Raciocínio Computacional no desenvolvimento de competências de Língua Inglesa: práticas pedagógicas com BYOD

  • Orientador : ECIVALDO DE SOUZA MATOS
  • MEMBROS DA BANCA :
  • DEBORA ABDALLA SANTOS
  • ECIVALDO DE SOUZA MATOS
  • TACIANA PONTUAL DA ROCHA FALCAO
  • Data: 13/12/2018

  • Mostrar Resumo
  • Com objetivo de contribuir nas discussões e avanços nas pesquisas sobre a educação pública brasileira, esta pesquisa teve por objeto de estudo o raciocínio computacional. A pesquisa buscou compreender e discutir se o raciocínio computacional favorece o desenvolvimento de competências disciplinares no ensino de língua inglesa por meio de ações pedagógicas por meio da abordagem Bring Your Own Device (BYOD).

     


  • Mostrar Abstract
  • With the aim of contributing to the discussions and advances in the researches on the Brazilian public education, this research had as object of study the computational reasoning. The research sought to understand and discuss whether computational reasoning favors the development of disciplinary competences in English language teaching through pedagogical actions through the Bring Your Own Device (BYOD) approach.
30
  • CARLOS ALEXANDRE NASCIMENTO
  • Integração entre Ciência da Computação e Língua Portuguesa por meio de habilidades do Pensamento Computacional

  • Orientador : DEBORA ABDALLA SANTOS
  • MEMBROS DA BANCA :
  • DEBORA ABDALLA SANTOS
  • ECIVALDO DE SOUZA MATOS
  • Ismar Frango Silveira
  • Data: 13/12/2018

  • Mostrar Resumo
  • Discussões sobre a inserção da Ciência da Computação na educação básica e como esta pode contribuir nos processos de ensino aprendizagem que envolvem o uso das tecnologias digitais de informação e comunicação estão em crescente ascensão em pesquisas na área de Informática e Educação. O presente trabalho teve como objetivo investigar as possíveis contribuições do Pensamento Computacional para o ensino e aprendizado de Língua Portuguesa na Educação Básica. Para isso foram realizadas intervenções no ensino de conteúdos deLíngua Portuguesa através de sequências didáticas que contemplaram a associação da disciplina à Ciência da Computação. Os dados coletados, por meio de grupos focais, entrevistas e diários foram analisados qualitativamente com base na literatura. Os resultados mostraram indícios de que é viável a integração entre as habilidades do Pensamento Computacional e os conteúdos explorados durante as aulas de Língua Portuguesa e que esta integração contribui no ensino e na aprendizagem desta disciplina, além de promover a Ciência da Computação na Educação Básica.


  • Mostrar Abstract
  • Discussions about the insertion of Computer Science in basic education and how it can contribute in the processes of teaching learning that involve the use of digital information and communication technologies are in increasing ascension in researches in the area of Informatics and Education. The present work aimed to investigate the possible contributions of Computational Thinking to the teaching and learning of Portuguese Language in Basic Education. For this, interventions were made in the teaching of contents of Portuguese Language through didactic sequences that contemplated the association of the discipline to Computer Science. The data collected, through focus groups, interviews and journals were analyzed qualitatively based on the literature. The results showed that the integration between the Computational Thinking skills and the contents explored during the Portuguese Language classes is feasible and that this integration contributes to the teaching and learning of this discipline, as well as to promote Computer Science in Basic Education.
31
  • PAULO ROBERTO MAIA SIMÕES JUNIOR
  • USING AGGREGATION AND SUMMARIZATION PROCESSES TO ENHANCE CROWDSOURCE BASED EMERGENCY MANAGEMENT SYSTEMS

  • Orientador : MANOEL GOMES DE MENDONCA NETO
  • MEMBROS DA BANCA :
  • MANOEL GOMES DE MENDONCA NETO
  • DANILO BARBOSA COIMBRA
  • FLAVIO EDUARDO AOKI HORITA
  • Data: 14/12/2018

  • Mostrar Resumo
  • Emergências podem trazer grandes perdas para os seres humanos e para o meio ambiente. Sejam resultados de ações humanas ou forças da natureza, essas situações exigem uma resposta rápida para minimizar suas conseqüências adversas. As pessoas que presenciam uma emergência são uma valiosa fonte de informação para os responsáveis por tomar decisões sobre como reagir a ela. Por meio do crowdsourcing, os centros de comando podem obter vários tipos de informações da testemunha no local de emergência. Ao usar smartphones, por exemplo, essas pessoas podem enviar informações diretamente (por exemplo, textos, vídeos, imagens) ou indiretamente (por exemplo, GPS), o que pode ajudar na identificação de situações importantes no local de emergência. No entanto, os dados coletados devem ser processados e resumidos, pois os gerentes de emergência podem não conseguir analisar todas as informações obtidas, o que dá margem à perda de informações importantes. Pesquisadores vêm estudando e propondo ferramentas de visualização de informações que podem ajudar os gerentes de emergência a entender o alto volume de informações coletadas por meio do crowdsourcing. Algumas dessas ferramentas foram usadas e provadas úteis em emergências em larga escala na vida real. No entanto, um recente estudo de mapeamento sistemático mostra que a maioria dos pesquisadores usa técnicas semelhantes, focadas em mapas e ícones, para visualizar informações de emergência em um nível alto (por exemplo, área afetada, tipo de emergência). Os gerentes de emergência geralmente precisam filtrar e pesquisar os dados disponíveis para obter mais informações sobre a situação em questão. Este trabalho apresenta uma maneira de agregar dados de emergência, coletados por meio de crowdsourcing, e resumi-los usando a visualização de informações focada na apresentação de detalhes de emergência. As visualizações apresentadas devem apoiar o processo de tomada de decisão dos gestores de emergências, por meio de paradigmas visuais que facilitam um rápido entendimento da situação no pronto-socorro. Esta pesquisa foi realizada dentro do contexto de um projeto de colaboração entre o Brasil e a União Européia e teve o apoio de especialistas em gestão de emergências de ambos os lugares.


  • Mostrar Abstract
  • Emergencies may bring great loss for human beings and for the environment. Whether they are results of human actions or forces of nature, these situations ask for a swift response to minimize their adverse consequences. People that witness an emergency are a valuable source of information to those responsible for making decision on how to respond to it. Through crowdsourcing, command centers can obtain multiple types of information from witness at the emergency site. By using smartphones, for example, these people can send information directly (e.g. texts, videos, images) or indirectly (e.g. GPS), that may help in the identification of important situations at the emergency site. However, the gathered data must be processed and summarized, as the emergency managers may not be able to analyze all the obtained information, which gives space to loss of important information. Researchers have been studying and proposing information visualization tools that may help the emergency managers to understand the high volume of information gathered through crowdsourcing. Some of those tools had been used, and proven useful, in real life large scale emergencies. However, a recent systematic mapping study shows that most researchers use similar techniques, focused on maps and icons, to visualize emergency information in a high level (e.g. affected area, type of emergency). Emergency managers usually have to filter and search the available data to obtain more information about the situation at hand. This work presents a way to aggregate emergency data, gathered through crowdsourcing, and to summarize it using information visualization focused on presentation of emergency details. The presented visualizations, should support the emergency managers decision making process, through visual paradigms that facilitate a swift understanding of the situation at the emergency site. This research was within the context of a collaboration project between Brazil and European Union and had the support of emergency management specialists from both places.

32
  • FELIPE OLIVEIRA DOS SANTOS
  • Uma lógica epistêmica multiagente que integra conhecimento clássico e conhecimento construtivo.

  • Orientador : STEFFEN LEWITZKA
  • MEMBROS DA BANCA :
  • CIRO RUSSO
  • LAIS DO NASCIMENTO SALVADOR
  • STEFFEN LEWITZKA
  • Data: 14/12/2018

  • Mostrar Resumo
  • A Lógica Epistêmica é um ramo da lógica que lida com noções de conhecimento e crença. Através de seu estudo, é possível formalizar e efetuar inferências acerca do conhecimento de um ou mais agentes. Devido às recentes aplicações na Ciência da Computação, a lógica epistêmica vem ganhando novas contribuições e com elas surgem novos problemas e desafios. Neste trabalho será apresentada uma nova lógica epistêmica multiagente que tem como base a lógica EL5 introduzida originalmente por Lewitzka (2017) como um sistema modal capaz de representar tanto propriedades do conhecimento clássico como também caraterísticas de um conhecimento intuicionista (construtivo) que está em conformidade com a interpretação de BHK da lógica intuicionista. Esta ligação com o raciocínio construtivo é interessante do ponto de vista da ciência da computação. A lógica apresentada neste trabalho generaliza e estende EL5 para uma lógica multiagente com operadores para conhecimento comum de grupos de agentes. Um certo conceito de conhecimento comum é adotado e modelado por uma semântica algébrica (baseada em álgebras de Heyting) no lugar da comumente utilizada semântica de Kripke, dando assim uma abordagem natural e intuitiva. Finalmente, é provada a corretude e completude dessa nova lógica multiagente com respeito à semântica algébrica proposta.


  • Mostrar Abstract
  • EpistEpistemic Logic is a branch of logic that deals with notions of knowledge and belief. Through its study, it is possible to formalize and make inferences about the knowledge of one or more agents. Due to the recent applications in Computer Science, the epistemic logic has been gaining new contributions and with them new problems and challenges arise. In this work we will present a new epistemic multiagent logic based on the EL5 logic originally introduced by Lewitzka (2017) as a modal system capable of representing both properties of classical knowledge as well as characteristics of an intuitionist (constructive) knowledge that conforms to the BHK interpretation of intuitionist logic. This connection with constructive reasoning is interesting from the point of view of computer science. The logic presented in this paper generalizes and extends EL5 to a multiagent logic with operators for common knowledge of agent groups. A certain concept of common knowledge is adopted and modeled by an algebraic semantics (based on Heyting algebras) rather than the commonly used Kripke semantics, thus giving a natural and intuitive approach. Finally, we prove the correctness and completeness of this new multiagent logic with respect to the proposed algebraic semantics.emic Logic is a branch of logic that deals with notions of knowledge and belief. Through its study, it is possible to formalize and make inferences about the knowledge of one or more agents. Due to the recent applications in Computer Science, the epistemic logic has been gaining new contributions and with them new problems and challenges arise. In this work we will present a new epistemic multiagent logic based on the EL5 logic originally introduced by Lewitzka (2017) as a modal system capable of representing both properties of classical knowledge as well as characteristics of an intuitionist (constructive) knowledge that conforms to the BHK interpretation of intuitionist logic. This connection with constructive reasoning is interesting from the point of view of computer science. The logic presented in this paper generalizes and extends EL5 to a multiagent logic with operators for common knowledge of agent groups. A certain concept of common knowledge is adopted and modeled by an algebraic semantics (based on Heyting algebras) rather than the commonly used Kripke semantics, thus giving a natural and intuitive approach. Finally, we prove the correctness and completeness of this new multiagent logic with respect to the proposed algebraic semantics.
33
  • VANA HILMA VELOSO CARVALHO
  • ANÁLISE DOS ASPECTOS DE ACEITAÇÃO E USO DO REPOSITÓRIO INSTITUCIONAL DA UNIVERSIDADE FEDERAL DA BAHIA (RI-UFBA) COM BASE NO MODELO UTAUT.

  • Orientador : DEBORA ABDALLA SANTOS
  • MEMBROS DA BANCA :
  • DEBORA ABDALLA SANTOS
  • LAIS DO NASCIMENTO SALVADOR
  • FLAVIA GOULART MOTA GARCIA ROSA
  • Data: 18/12/2018

  • Mostrar Resumo
  • Os Repositórios Institucionais são referências crescentes para a comunicação científica com o objetivo de armazenar, disseminar e preservar a produção acadêmica e científica de uma instituição. Esses sistemas de informação web estão fundamentados nos movimentos das tecnologias abertas, por demandar que os arquivos depositados no repositório estejam aportados em licenças de acesso livre e de acesso aberto, com o propósito de difundir seu conteúdo junto à sociedade de forma colaborativa e democrática. Esta pesquisa traz a análise dos fatores que influenciam na aceitação e uso pela comunidade acadêmica e científica da UFBA ao seu repositório institucional. Foram utilizados o modelo de avaliação de sistemas de informação Teoria Unificada de Aceitação e Uso da Tecnologia (UTAUT) para coleta dos dados, como também o método Think Aloud, técnica relacionada à usabilidade do sistema, para observar o comportamento do usuário no uso do RI-UFBA. Na análise sobre os resultados obtidos através do modelo UTAUT, utilizou-se o Modelo Linear Generalizado (MLG), técnica estatística de análise de dados. A resposta da pesquisa se apresenta através dos comentários identificados pelo usuário no método Think Aloud e, principalmente nos indicadores estatísticos quanto à aceitação e uso da tecnologia que permitem oferecer subsídios para aperfeiçoamento do sistema estudado.


  • Mostrar Abstract
  • Institutional Repositories are increasing references for scientific communication with the purpose of storing, disseminating and preserving the academic and scientific production of an institution. These web information systems are based on the movements of open technologies, for demanding that the files deposited in the repository are provided in open access and free access licenses, with the purpose of disseminating their content to society in a collaborative and democratic manner. This research brings the analysis of the factors that influence the acceptance and use by the academic and scientific community of UFBA to its institutional repository. The Unified Theory of Acceptance and Use of Technology (UTAUT) information model was used to collect data, as well as the Think Aloud method, a technique related to the usability of the system, to observe the user behavior in the use of IR -UFBA. In the analysis of the results obtained through the UTAUT model, the Generalized Linear Model (MLG) was used, statistical technique of data analysis. The research response is presented through the user-identified comments in the Think Aloud method, and especially in the statistical indicators regarding the acceptance and use of the technology that allow to offer subsidies to improve the studied system.

34
  • DANIEL LUIS MOREIRA TIMPONI
  • Caracterização do desenvolvimento de bibliotecas de jogos multiplataforma

  • Orientador : RODRIGO ROCHA GOMES E SOUZA
  • MEMBROS DA BANCA :
  • IVAN DO CARMO MACHADO
  • RODRIGO ROCHA GOMES E SOUZA
  • SANDRO SANTOS ANDRADE
  • Data: 18/12/2018

  • Mostrar Resumo
  • "À medida que novos sistemas operacionais e dispositivos de hardware surgem e se tornam populares, desenvolvedores de jogos buscam bibliotecas para ajudá-los a construir jogos multiplataforma, com o propósito de otimizar o processo de desenvolvimento e obter um produto compatível com as plataformas mais populares. Apesar de sua importância, pouco se conhece sobre o processo de desenvolvimento de bibliotecas multiplataforma e sobre a equipe de desenvolvimento. Com o objetivo de caracterizar o desenvolvimento de bibliotecas de jogos multiplataforma, analisamos o log de commits de cinco bibliotecas de jogos livres escritas em C/C++ para extrair informações sobre mudanças no código-fonte e sobre a contribuição da equipe de desenvolvimento. Descobrimos que os desenvolvedores raramente alteram o código independente e específico de plataforma em conjunto no mesmo commit. A grande maioria das mudanças ocorrem pontualmente no código independente ou no código específico de cada plataforma.
    Além disso, verificamos um crescimento na proporção de desenvolvedores generalista em 3 de cinco das bibliotecas analisadas. Nossas descobertas podem ajudar desenvolvedores e gerentes de projetos a melhorar o desenvolvimento e manutenção de sistemas multiplataforma fornecendo evidências empíricas sobre mudanças no código-fonte e o conhecimento do desenvolvedor sobre plataformas ao longo do tempo."


  • Mostrar Abstract
  • "As new operating systems and hardware devices emerge and become popular, game developers are looking for libraries to help them build multiplatform games for the purpose of streamlining the development process and getting a product compatible with the most popular platforms In order to characterize the development of multiplatform game libraries, we have analyzed the log of commits of five libraries of free games written in C / C ++ to extract information about changes in the source code and the contribution of the development team We found that developers rarely change platform-independent and platform-specific code together in the same commit The vast majority of changes occur on a timely basis in the standalone code or in the specific code of each platform.
    In addition, we found a growth in the ratio of generalist developers in 3 of 5 of the analyzed libraries. Our findings can help developers and project managers improve the development and maintenance of cross-platform systems by providing empirical evidence on source code changes and developer knowledge of platforms over time. "

35
  • PEDRO OLIVEIRA RAIMUNDO
  • Low-cost 3D Reconstruction of Cultural Heritage

  • Orientador : KARL PHILIPS APAZA AGUERO
  • MEMBROS DA BANCA :
  • KARL PHILIPS APAZA AGUERO
  • ANTONIO LOPES APOLINARIO JUNIOR
  • ANTONIO CARLOS DOS SANTOS SOUZA
  • Data: 19/12/2018

  • Mostrar Resumo
  • The 3D reconstruction process follows a well-defined pipeline to generate a model that represents the geometry and appearance of an object captured using 3D scanners or other acquisition devices. The main steps of the commonplace 3D reconstruction pipeline are: a) acquisition of depth and color images of the object, b) alignment of the views acquired from different angles, c) integration of the acquired information into a single model, and d) synthesis and visualization of a textured 3D model. The models generated by following these steps are used in many areas where it is necessary to reconstruct real objects with nontrivial geometry such as engineering, architecture and museology. The present work focuses on the usage of low-cost 3D reconstruction to preserve cultural heritage artifacts, this is important not only for preservation purposes, but also as a means to study and transmit the values and traditions of the communities. In this context, we surveyed the literature for limitations of low-cost 3D reconstruction pipelines, and subsequently proposed pipeline specializations to leverage the characteristics of low-cost 3D acquisition devices and circumvent their limitations. The resulting reconstruction pipeline improved the quality of the data acquired using low-cost 3D scanners, streamlined some of the remaining following phases of the reconstruction process, and employed realism techniques to improve the appearance of the reconstructions. Several heritage artifacts from the Federal University of Bahia Museum of Archaeology and Ethnology were reconstructed using proposed approach, which yielded good results in terms of visual appearance. Thus, we conclude that low-cost 3D preservation of heritage is viable given a proper combination of pipeline specializations and realism techniques.


  • Mostrar Abstract
  • The 3D reconstruction process follows a well-defined pipeline to generate a model that represents the geometry and appearance of an object captured using 3D scanners or other acquisition devices. The main steps of the commonplace 3D reconstruction pipeline are: a) acquisition of depth and color images of the object, b) alignment of the views acquired from different angles, c) integration of the acquired information into a single model, and d) synthesis and visualization of a textured 3D model. The models generated by following these steps are used in many areas where it is necessary to reconstruct real objects with nontrivial geometry such as engineering, architecture and museology. The present work focuses on the usage of low-cost 3D reconstruction to preserve cultural heritage artifacts, this is important not only for preservation purposes, but also as a means to study and transmit the values and traditions of the communities. In this context, we surveyed the literature for limitations of low-cost 3D reconstruction pipelines, and subsequently proposed pipeline specializations to leverage the characteristics of low-cost 3D acquisition devices and circumvent their limitations. The resulting reconstruction pipeline improved the quality of the data acquired using low-cost 3D scanners, streamlined some of the remaining following phases of the reconstruction process, and employed realism techniques to improve the appearance of the reconstructions. Several heritage artifacts from the Federal University of Bahia Museum of Archaeology and Ethnology were reconstructed using proposed approach, which yielded good results in terms of visual appearance. Thus, we conclude that low-cost 3D preservation of heritage is viable given a proper combination of pipeline specializations and realism techniques.

2017
Dissertações
1
  • JURANDIR DA CRUZ BARBOSA
  • Auto-organização e Balanceamento de Serviços na Névoa das Coisas

  • Orientador : CASSIO VINICIUS SERAFIM PRAZERES
  • MEMBROS DA BANCA :
  • CASSIO VINICIUS SERAFIM PRAZERES
  • PAULO NAZARENO MAIA SAMPAIO
  • VINICIUS TAVARES PETRUCCI
  • Data: 18/12/2017

  • Mostrar Resumo
  • Este trabalho propõe uma solução para auto-organização e balanceamento de serviços da Névoa das Coisas. A Computação em Névoa, considerada uma extensão da IoT, possui vantagens como disponibilidade a nível local, facilidades em acesso e até mesmo interoperabilidade que facilita a comunicação entre diferentes. Nesse contexto, este trabalho utiliza uma solução funcional baseada na modularidade proposta pela especificação OSGi, Serviços Web, tecnologias e protocolos para auto-organização. Dessa forma, os serviços existentes em uma infraestrutura IoT foram separados em grupos de acordo com a organização do paradigma Névoa das Coisas (FoT - Fog of Things). Para auto-organizar os serviços em seus respectivos grupos, utilizou-se tecnologias de clusterização baseadas na modularidade do OSGi. Além disso, a solução OptaPlanner foi utilizada para encontrar um melhor arranjo entre a distribuição dos serviços a serem balanceados. A infraestrutura desenvolvida e implantada neste trabalho utiliza uma topologia chamada Rede de Nós, em que se emprega uma política de balanceamento que foi desenvolvida para adequar às necessidades da rede, visando uma menor sobrecarga da infraestrutura e garantindo o mínimo de serviços essenciais. Para validar a proposta, avaliou-se a Qualidade de Serviço (QoS) da infraestrutura IoT utilizada, calculando sua performance ao atender suas requisições em tempo de processamento e memórias aceitáveis. Também foi possível avaliar a disponibilidade dos serviços em rede, bem como, o tempo de resposta das requisições após simulação de falha em nós, de acordo com o cenário criado na rede IoT. A análise dos resultados obtidos nos experimentos realizados demonstra boa performance em termos de tempo de resposta das requisições, disponibilidade de serviços em eventuais falhas e melhora da QoS da infraestrutura IoT utilizada no trabalho.


  • Mostrar Abstract
  • This work proposes a solution for self-organization and balancing services of Mist of Things. Mine Computing, considered an extension of IoT, has advantages such as availability at the local level, facilities in access and even interoperability that facilitates communication between different. In this context, this work uses a functional solution based on the modularity proposed by the OSGi specification, Web Services, technologies and protocols for self-organization. In this way, existing services in an IoT infrastructure were separated into groups according to the organization of the Fog of Things (FoT) paradigm. To self-organize the services in their respective groups, we used clustering technologies based on the modularity of OSGi. In addition, the OptaPlanner solution was used to find a better arrangement between the distribution of services to be balanced. The infrastructure developed and implemented in this work uses a topology called Network of Nodes, which employs a balancing policy that was developed to adapt to the needs of the network, aiming at a lower infrastructure overhead and ensuring the minimum of essential services. In order to validate the proposal, the Quality of Service (QoS) of the IoT infrastructure used was evaluated, calculating its performance when meeting its requests in processing time and acceptable memories. It was also possible to evaluate the availability of the network services, as well as the response time of the requests after simulation of node failure, according to the scenario created in the IoT network. The analysis of the results obtained in the experiments performed shows a good performance in terms of the response time of the requests, availability of services in eventual failures and improvement of the QoS of the IoT infrastructure used in the work.

SIGAA | STI/SUPAC - - | Copyright © 2006-2024 - UFBA